diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000000..4f29a10053 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,29 @@ +# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.187.0/containers/python-3/.devcontainer/base.Dockerfile + +# [Choice] Python version: 3, 3.9, 3.8, 3.7, 3.6 +ARG VARIANT="3.9.0-buster" +FROM python:${VARIANT} + +# [Option] Install Node.js +ARG INSTALL_NODE="true" +ARG NODE_VERSION="lts/*" +RUN if [ "${INSTALL_NODE}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi + +# [Optional] If your pip requirements rarely change, uncomment this section to add them to the image. +# COPY requirements.txt /tmp/pip-tmp/ +# RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \ +# && rm -rf /tmp/pip-tmp + +# [Optional] Uncomment this section to install additional OS packages. +# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ +# && apt-get -y install --no-install-recommends + +# [Optional] Uncomment this line to install global node packages. +# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 + + +RUN pip install -U https://github.com/platformio/platformio-core/archive/develop.zip +RUN platformio update +# To get the test platforms +RUN pip install PyYaml +#ENV PATH /code/buildroot/bin/:/code/buildroot/tests/:${PATH} diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000000..54627d462b --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,51 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.187.0/containers/python-3 +{ + "name": "Python 3", + "build": { + "dockerfile": "Dockerfile", + "context": "..", + "args": { + // Update 'VARIANT' to pick a Python version: 3, 3.6, 3.7, 3.8, 3.9 + "VARIANT": "3.9.0-buster", + // Options + "INSTALL_NODE": "false", + "NODE_VERSION": "lts/*" + } + }, + + // Set *default* container specific settings.json values on container create. + "settings": { + "python.pythonPath": "/usr/local/bin/python", + "python.languageServer": "Pylance", + "python.linting.enabled": true, + "python.linting.pylintEnabled": true, + "python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8", + "python.formatting.blackPath": "/usr/local/py-utils/bin/black", + "python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf", + "python.linting.banditPath": "/usr/local/py-utils/bin/bandit", + "python.linting.flake8Path": "/usr/local/py-utils/bin/flake8", + "python.linting.mypyPath": "/usr/local/py-utils/bin/mypy", + "python.linting.pycodestylePath": "/usr/local/py-utils/bin/pycodestyle", + "python.linting.pydocstylePath": "/usr/local/py-utils/bin/pydocstyle", + "python.linting.pylintPath": "/usr/local/py-utils/bin/pylint" + }, + + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "ms-python.python", + "ms-python.vscode-pylance", + "platformio.platformio-ide", + "marlinfirmware.auto-build", + "editorconfig.editorconfig" + ], + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "pip3 install --user -r requirements.txt", + + // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + // "remoteUser": "vscode" +} diff --git a/.editorconfig b/.editorconfig index 57a5b2fb5e..84f2d090b1 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/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index efc5972325..b40d881a75 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -100,7 +100,7 @@ body: - type: input attributes: label: Printer model - description: Creality Ender 3, Prusa mini, or Kossel Delta? + description: Creality Ender-3, Prusa mini, or Kossel Delta? - type: input attributes: diff --git a/.github/workflows/bump-date.yml b/.github/workflows/bump-date.yml index 51b58ad493..a08eeea561 100644 --- a/.github/workflows/bump-date.yml +++ b/.github/workflows/bump-date.yml @@ -18,10 +18,10 @@ jobs: steps: - - name: Check out bugfix-2.1.x - uses: actions/checkout@v2 + - name: Check out bugfix-2.0.x + uses: actions/checkout@v3 with: - ref: bugfix-2.1.x + ref: bugfix-2.0.x - name: Bump Date (bugfix-2.0.x) run: | @@ -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 befec4498f..2eab285aee 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: diff --git a/.github/workflows/test-builds.yml b/.github/workflows/test-builds.yml index 9debb82bc9..7ebbcd0066 100644 --- a/.github/workflows/test-builds.yml +++ b/.github/workflows/test-builds.yml @@ -33,90 +33,110 @@ 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 - - - FYSETC_F6 - mega1280 + - at90usb1286_dfu + + # AVR Extended + - FYSETC_F6 + - melzi_optiboot - rambo - sanguino1284p - sanguino644p - # 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 - - BIGTREE_BTT002 - - BIGTREE_SKR_PRO - - BIGTREE_GTR_V1_0 - - mks_robin - - ARMED - - FYSETC_S6 - - STM32F070CB_malyan - - STM32F070RB_malyan - - malyan_M300 - - FLYF407ZG - - rumba32 - - LERDGEX - - LERDGEK - - mks_robin_nano_v1v2 - #- mks_robin_nano_v1v2_usbmod + #- 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_GTR_V1_0 + - BIGTREE_SKR_PRO + - FLYF407ZG + - FYSETC_S6 + - LERDGEK + - LERDGEX + - mks_robin_pro2 + - Opulo_Lumen_REV3 + - rumba32 + - STM32F401RC_creality + - STM32F407VE_black + - I3DBEEZ9_V1 + + # STM32F7 - NUCLEO_F767ZI - REMRAM_V1 + + # STM32H7 - BTT_SKR_SE_BX - - chitu_f103 - - Opulo_Lumen_REV3 - # ESP32 environments - - mks_tinybee - - # 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/.gitignore b/.gitignore index 6c68a71881..c7d47c607f 100755 --- a/.gitignore +++ b/.gitignore @@ -21,35 +21,21 @@ # Generated files _Version.h -bdf2u8g +bdf2u8g.exe +genpages.exe marlin_config.json mczip.h +language*.csv +out-csv/ +out-language/ *.gen *.sublime-workspace -# # OS -# applet/ .DS_Store -# -# Misc -# -*~ -*.orig -*.rej -*.bak -*.idea -*.i -*.ii -*.swp -tags - -# -# C++ -# -# Compiled Object files +# Compiled C++ Object files *.slo *.lo *.o @@ -80,10 +66,7 @@ tags *.out *.app -# -# C -# -# Object files +# Compiled C Object files *.o *.ko *.obj @@ -111,7 +94,7 @@ tags *.app *.i*86 *.x86_64 - +*.hex # Debug files *.dSYM/ @@ -143,14 +126,16 @@ vc-fileutils.settings .vscode/* !.vscode/extensions.json -#Simulation +# Simulation files imgui.ini eeprom.dat spi_flash.bin fs.img -#cmake +# CMake +buildroot/share/cmake/* CMakeLists.txt +!buildroot/share/cmake/CMakeLists.txt src/CMakeLists.txt CMakeListsPrivate.txt build/ @@ -170,4 +155,16 @@ __pycache__ # IOLogger logs *_log.csv -.vscode/extensions.json + +# Misc. +*~ +*.orig +*.rej +*.bak +*.idea +*.i +*.ii +*.swp +tags +*.logs +*.bak diff --git a/Makefile b/Makefile index d0495dc7d8..cfe0b77226 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,16 @@ +SCRIPTS_DIR := buildroot/share/scripts +CONTAINER_RT_BIN := docker +CONTAINER_RT_OPTS := --rm -v $(PWD):/code -v platformio-cache:/root/.platformio +CONTAINER_IMAGE := marlin-dev + help: @echo "Tasks for local development:" @echo "* tests-single-ci: Run a single test from inside the CI" @echo "* tests-single-local: Run a single test locally" - @echo "* tests-single-local-docker: Run a single test locally, using docker-compose" + @echo "* tests-single-local-docker: Run a single test locally, using docker" @echo "* tests-all-local: Run all tests locally" - @echo "* tests-all-local-docker: Run all tests locally, using docker-compose" - @echo "* setup-local-docker: Setup local docker-compose" + @echo "* tests-all-local-docker: Run all tests locally, using docker" + @echo "* setup-local-docker: Build the local docker image" @echo "" @echo "Options for testing:" @echo " TEST_TARGET Set when running tests-single-*, to select the" @@ -22,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: @@ -34,19 +39,21 @@ tests-single-local: tests-single-local-docker: @if ! test -n "$(TEST_TARGET)" ; then echo "***ERROR*** Set TEST_TARGET= or use make tests-all-local-docker" ; return 1; fi - docker-compose run --rm marlin $(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD) ONLY_TEST="$(ONLY_TEST)" + @if ! $(CONTAINER_RT_BIN) images -q $(CONTAINER_IMAGE) > /dev/null ; then $(MAKE) setup-local-docker ; fi + $(CONTAINER_RT_BIN) run $(CONTAINER_RT_OPTS) $(CONTAINER_IMAGE) $(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD) ONLY_TEST="$(ONLY_TEST)" .PHONY: tests-single-local-docker tests-all-local: export PATH="./buildroot/bin/:./buildroot/tests/:${PATH}" \ && export VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) \ - && for TEST_TARGET in $$(./get_test_targets.py) ; do echo "Running tests for $$TEST_TARGET" ; run_tests . $$TEST_TARGET ; done + && for TEST_TARGET in $$($(SCRIPTS_DIR)/get_test_targets.py) ; do echo "Running tests for $$TEST_TARGET" ; run_tests . $$TEST_TARGET ; done .PHONY: tests-all-local tests-all-local-docker: - docker-compose run --rm marlin $(MAKE) tests-all-local VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD) + @if ! $(CONTAINER_RT_BIN) images -q $(CONTAINER_IMAGE) > /dev/null ; then $(MAKE) setup-local-docker ; fi + $(CONTAINER_RT_BIN) run $(CONTAINER_RT_OPTS) $(CONTAINER_IMAGE) $(MAKE) tests-all-local VERBOSE_PLATFORMIO=$(VERBOSE_PLATFORMIO) GIT_RESET_HARD=$(GIT_RESET_HARD) .PHONY: tests-all-local-docker setup-local-docker: - docker-compose build + $(CONTAINER_RT_BIN) build -t $(CONTAINER_IMAGE) -f docker/Dockerfile . .PHONY: setup-local-docker diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index d261646ba1..af6053cd90 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -318,12 +318,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 @@ -987,24 +988,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) @@ -1015,7 +998,13 @@ #endif #endif -// A dual-nozzle that uses a servomotor to raise/lower one (or both) of the nozzles +// Switch extruders by bumping the toolhead. Requires EVENT_GCODE_TOOLCHANGE_#. +//#define MECHANICAL_SWITCHING_EXTRUDER + +/** + * A dual-nozzle that uses a servomotor to raise/lower one (or both) of the nozzles. + * Can be combined with SWITCHING_EXTRUDER. + */ //#define SWITCHING_NOZZLE #if ENABLED(SWITCHING_NOZZLE) #define SWITCHING_NOZZLE_SERVO_NR 0 @@ -1024,6 +1013,9 @@ #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move #endif +// Switch nozzles by bumping the toolhead. Requires EVENT_GCODE_TOOLCHANGE_#. +//#define MECHANICAL_SWITCHING_NOZZLE + /** * Two separate X-carriages with extruders that connect to a moving part * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. @@ -1040,7 +1032,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 @@ -1140,6 +1132,24 @@ #endif //#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 /** @@ -1187,8 +1197,8 @@ #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) - //#define AUTO_POWER_E_TEMP 50 // (°C) PSU on if any extruder is over this temperature + #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 #endif @@ -1200,78 +1210,68 @@ // @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 + * ================================================================ + * 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% + * 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 + * 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 - 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) @@ -1283,15 +1283,39 @@ * 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 + * + * ================================================================ + * SoC internal sensor + * ================================================================ + * 100 : SoC internal sensor + * + * ================================================================ * 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. - * */ #if ENABLED(ConfigurableThermistors) #define TEMP_SENSOR_0 1000 @@ -1337,6 +1361,7 @@ #endif #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 @@ -1451,14 +1476,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) #if NONE(MachineCR10Orig, SKRMiniE3V2) @@ -1540,21 +1569,24 @@ //#define DEFAULT_Ki 2.25 //#define DEFAULT_Kd 440 #endif +#else + #define BANG_MAX 255 // Limit hotend current while in bang-bang mode; 255=full current #endif /** * 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_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? @@ -1573,8 +1605,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. @@ -1589,24 +1625,7 @@ //====================== PID > Bed Temperature Control ====================== //=========================================================================== -/** - * 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 - */ -#if NONE(MachineCR10Orig, LowMemoryBoard, SKRMiniE3V2) || ENABLED(MelziHostOnly) - #define PIDTEMPBED -#endif -//#define BED_LIMIT_SWITCHING +// @section bed temp /** * Max Bed Power @@ -1616,6 +1635,21 @@ */ #define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current +/** + * PID Bed Heating + * + * 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. + * + * With this option disabled, bang-bang will be used. BED_LIMIT_SWITCHING enables hysteresis. + */ +#if NONE(MachineCR10Orig, LowMemoryBoard, SKRMiniE3V2) || ENABLED(MelziHostOnly) + #define PIDTEMPBED +#endif #if ENABLED(PIDTEMPBED) //#define MIN_BED_POWER 0 //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. @@ -1637,7 +1671,9 @@ #endif // 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 ==================== @@ -1794,7 +1830,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 @@ -1838,7 +1874,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 @@ -1859,8 +1895,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) @@ -1894,7 +1930,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 @@ -1967,38 +2003,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. -#if ANY(MachineEnder5, MachineEnder5Plus, MachineEnder6) - #define USE_ZMIN_PLUG - #define USE_XMAX_PLUG - #define USE_YMAX_PLUG -#else - #define USE_XMIN_PLUG - #if ENABLED(MachineEnder7) - #define USE_YMAX_PLUG - #else - #define USE_YMIN_PLUG - #endif - #define USE_ZMIN_PLUG -#endif -//#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) @@ -2051,36 +2055,38 @@ // Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup). #if ANY(MachineEnder4, MachineCR2020, MachineCR30, MachineCR5, MachineEnder3S1) - #define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop. + #define X_MIN_ENDSTOP_HIT_STATE LOW // set to true to invert the logic of the endstop. #else - #define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop. + #define X_MIN_ENDSTOP_HIT_STATE HIGH // set to true to invert the logic of the endstop. #endif +#define X_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE #if ANY(MachineCR2020, MachineCR30, MachineCR5, MachineEnder3S1) - #define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop. + #define Y_MIN_ENDSTOP_HIT_STATE LOW // set to true to invert the logic of the endstop. #else - #define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop. + #define Y_MIN_ENDSTOP_HIT_STATE HIGH // set to true to invert the logic of the endstop. #endif -#define I_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define J_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define K_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define U_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define V_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define W_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop. -#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop. -#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop. -#define I_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define J_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define K_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define W_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. +#define Y_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE +#define I_MIN_ENDSTOP_HIT_STATE HIGH +#define I_MAX_ENDSTOP_HIT_STATE HIGH +#define J_MIN_ENDSTOP_HIT_STATE HIGH +#define J_MAX_ENDSTOP_HIT_STATE HIGH +#define K_MIN_ENDSTOP_HIT_STATE HIGH +#define K_MAX_ENDSTOP_HIT_STATE HIGH +#define U_MIN_ENDSTOP_HIT_STATE HIGH +#define U_MAX_ENDSTOP_HIT_STATE HIGH +#define V_MIN_ENDSTOP_HIT_STATE HIGH +#define V_MAX_ENDSTOP_HIT_STATE HIGH +#define W_MIN_ENDSTOP_HIT_STATE HIGH +#define W_MAX_ENDSTOP_HIT_STATE HIGH #if NONE(ABL_EZABL, MachineCR2020) - #define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop. - #define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe. + #define Z_MIN_ENDSTOP_INVERTING HIGH // set to true to invert the logic of the endstop. + #define Z_MIN_PROBE_ENDSTOP_INVERTING HIGH // set to true to invert the logic of the probe. #else - #define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop. - #define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe. + #define Z_MIN_ENDSTOP_INVERTING LOW // set to true to invert the logic of the endstop. + #define Z_MIN_PROBE_ENDSTOP_INVERTING LOW // set to true to invert the logic of the probe. #endif +#define Z_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_INVERTING // Enable this feature if all enabled endstop pins are interrupt-capable. @@ -2347,17 +2353,15 @@ /** * Z_MIN_PROBE_PIN * - * Define this pin if the probe is not connected to Z_MIN_PIN. - * If not defined the default pin for the selected MOTHERBOARD - * will be used. Most of the time the default is what you want. + * Override this pin only if the probe cannot be connected to + * the default Z_MIN_PROBE_PIN for the selected MOTHERBOARD. * * - The simplest option is to use a free endstop connector. * - Use 5V for powered (usually inductive) sensors. * - * - RAMPS 1.3/1.4 boards may use the 5V, GND, and Aux4->D32 pin: - * - For simple switches connect... - * - normally-closed switches to GND and D32. - * - normally-open switches to 5V and D32. + * - For simple switches... + * - Normally-closed (NC) also connect to GND. + * - Normally-open (NO) also connect to 5V. */ #if ENABLED(MachineCR5) #define Z_MIN_PROBE_PIN 19 // Pin 32 is the RAMPS default @@ -2398,8 +2402,13 @@ /** * Z Servo Probe, such as an endstop switch on a rotating arm. */ -//#define Z_PROBE_SERVO_NR 0 // Defaults to SERVO 0 connector. -//#define Z_SERVO_ANGLES { 70, 0 } // Z Servo Deploy and Stow angles +//#define Z_PROBE_SERVO_NR 0 +#ifdef Z_PROBE_SERVO_NR + //#define Z_SERVO_ANGLES { 70, 0 } // Z Servo Deploy and Stow angles + //#define Z_SERVO_MEASURE_ANGLE 45 // Use if the servo must move to a "free" position for measuring after deploy + //#define Z_SERVO_INTERMEDIATE_STOW // Stow the probe between points + //#define Z_SERVO_DEACTIVATE_AFTER_STOW // Deactivate the servo when probe is stowed +#endif /** * The BLTouch probe uses a Hall effect sensor and emulates a servo. @@ -2427,7 +2436,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. */ #if ENABLED(ABL_TOUCH_MI) #define TOUCH_MI_PROBE @@ -2481,7 +2490,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) @@ -2497,7 +2506,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 @@ -2634,6 +2643,12 @@ #endif +// Enable and set to use a specific tool for probing. Disable to allow any tool. +#define PROBING_TOOL 0 +#ifdef PROBING_TOOL + //#define PROBE_TOOLCHANGE_NO_MOVE // Suppress motion on probe tool-change +#endif + // Most probes should stay away from the edges of the bed, but // with NOZZLE_AS_PROBE this can be negative for a wider probing area. #if ENABLED(ABL_BLTOUCH) @@ -2795,23 +2810,23 @@ // Disables axis stepper immediately when it's not being used. // WARNING: When motors turn off there is a chance of losing position accuracy! -#define DISABLE_X false -#define DISABLE_Y false -#define DISABLE_Z false -//#define DISABLE_I false -//#define DISABLE_J false -//#define DISABLE_K false -//#define DISABLE_U false -//#define DISABLE_V false -//#define DISABLE_W false +//#define DISABLE_X +//#define DISABLE_Y +//#define DISABLE_Z +//#define DISABLE_I +//#define DISABLE_J +//#define DISABLE_K +//#define DISABLE_U +//#define DISABLE_V +//#define DISABLE_W // Warn on display about possibly reduced accuracy //#define DISABLE_REDUCED_ACCURACY_WARNING // @section extruder -#define DISABLE_E false // For all extruders -#define DISABLE_INACTIVE_EXTRUDER // Keep only the active extruder enabled +#define DISABLE_E // Disable the extruder when not stepping +#define DISABLE_OTHER_EXTRUDERS // Keep only the active extruder enabled // @section motion @@ -2920,16 +2935,16 @@ */ //#define Z_IDLE_HEIGHT Z_HOME_POS -//#define UNKNOWN_Z_NO_RAISE // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off. #if ANY(MachineEnder5) - #define Z_HOMING_HEIGHT 0 + #define Z_CLEARANCE_FOR_HOMING 0 #elif ENABLED(TOUCH_MI_PROBE) - #define Z_HOMING_HEIGHT 10 + #define Z_CLEARANCE_FOR_HOMING 10 #else - #define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ... + #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. #endif -//#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] @@ -2953,6 +2968,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 print bed @@ -3217,7 +3247,7 @@ #define MAX_SOFTWARE_ENDSTOP_W #endif #if(NONE(MachineCR10Orig, LowMemoryBoard)) - #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 #endif @@ -3471,7 +3501,7 @@ #endif #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X -#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. @@ -3509,6 +3539,9 @@ #define UBL_HILBERT_CURVE // Use Hilbert distribution for less travel when probing multiple points + //#define UBL_TILT_ON_MESH_POINTS // Use nearest mesh points with G29 J for better Z reference + //#define UBL_TILT_ON_MESH_POINTS_3POINT // Use nearest mesh points with G29 J0 (3-point) + #define UBL_MESH_EDIT_MOVES_Z // Sophisticated users prefer no movement of nozzle #define UBL_SAVE_ACTIVE_ON_M500 // Save the currently active mesh in the current slot on M500 @@ -3517,6 +3550,25 @@ //#define UBL_MESH_WIZARD // Run several commands in a row to get a complete mesh + /** + * Probing not allowed within the position of an obstacle. + */ + //#define AVOID_OBSTACLES + #if ENABLED(AVOID_OBSTACLES) + #define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size + #define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size + + // Obstacle Rectangles defined as { X1, Y1, X2, Y2 } + #define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H } + #define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H } + #define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, (Y_BED_SIZE) - (CLIP_H), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE } + #define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, (Y_BED_SIZE) - (CLIP_H), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE } + + // The probed grid must be inset for G29 J. This is okay, since it is + // only used to compute a linear transformation for the mesh itself. + #define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1) + #endif + #elif ENABLED(MESH_BED_LEVELING) //=========================================================================== @@ -3558,9 +3610,9 @@ #define LCD_BED_TRAMMING #endif #if ENABLED(LCD_BED_TRAMMING) - #define BED_TRAMMING_INSET_LFRB { 22, 22, 22, 22 } // (mm) Left, Front, Right, Back insets - #define BED_TRAMMING_HEIGHT 0.0 // (mm) Z height of nozzle at leveling points - #define BED_TRAMMING_Z_HOP 4.0 // (mm) Z height of nozzle between leveling points + //#define BED_TRAMMING_INSET_LFRB { 22, 22, 22, 22 } // (mm) Left, Front, Right, Back insets + //#define BED_TRAMMING_HEIGHT 0.0 // (mm) Z height of nozzle at tramming points + //#define BED_TRAMMING_Z_HOP 4.0 // (mm) Z height of nozzle between tramming points //#define BED_TRAMMING_INCLUDE_CENTER // Move to the center after the last corner //#define BED_TRAMMING_USE_PROBE #if ENABLED(BED_TRAMMING_USE_PROBE) @@ -3624,8 +3676,9 @@ #endif #if ENABLED(Z_SAFE_HOMING) - #define Z_SAFE_HOMING_X_POINT (X_BED_SIZE / 2) // X point for Z homing - #define Z_SAFE_HOMING_Y_POINT (Y_BED_SIZE / 2) // Y point for Z homing + #define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing + #define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing + //#define Z_SAFE_HOMING_POINT_ABSOLUTE // Ignore home offsets (M206) for Z homing position #endif // Homing speeds (linear=mm/min, rotational=°/min) @@ -3827,11 +3880,18 @@ #define NOZZLE_CLEAN_FEATURE #endif #if ENABLED(NOZZLE_CLEAN_FEATURE) - // Default number of pattern repetitions - #define NOZZLE_CLEAN_STROKES 5 + #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 + + #define NOZZLE_CLEAN_STROKES 5 // Default number of pattern repetitions + + #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) }} @@ -3839,12 +3899,11 @@ #define NOZZLE_CLEAN_START_POINT { X_MAX_POS, 40, (Z_MIN_POS + 1)} #define NOZZLE_CLEAN_END_POINT { (X_MAX_POS - 10), 40, (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 @@ -3939,7 +3998,7 @@ #define PASSWORD_ON_STARTUP #define PASSWORD_UNLOCK_GCODE // Unlock with the M511 P command. Disable to prevent brute-force attack. #define PASSWORD_CHANGE_GCODE // Change the password with M512 P S. - //#define PASSWORD_ON_SD_PRINT_MENU // This does not prevent gcodes from running + //#define PASSWORD_ON_SD_PRINT_MENU // This does not prevent G-codes from running //#define PASSWORD_AFTER_SD_PRINT_END //#define PASSWORD_AFTER_SD_PRINT_ABORT //#include "Configuration_Secure.h" // External file with PASSWORD_DEFAULT_VALUE @@ -4141,6 +4200,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) ========================= @@ -4165,7 +4236,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 @@ -4195,7 +4266,6 @@ // // RigidBot Panel V1.0 -// http://www.inventapart.com/ // //#define RIGIDBOT_PANEL @@ -4244,15 +4314,16 @@ // // Elefu RA Board Control Panel -// http://www.elefu.com/index.php?route=product/product&product_id=53 +// https://web.archive.org/web/20140823033947/http://www.elefu.com/index.php?route=product/product&product_id=53 // //#define RA_CONTROL_PANEL // // 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 @@ -4285,7 +4356,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 @@ -4357,7 +4428,7 @@ // // MaKr3d Makr-Panel with graphic controller and SD support. -// https://reprap.org/wiki/MaKr3d_MaKrPanel +// https://reprap.org/wiki/MaKrPanel // //#define MAKRPANEL @@ -4375,7 +4446,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 @@ -4420,15 +4491,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 @@ -4551,11 +4622,15 @@ * - Product: https://www.aliexpress.com/item/1005002008179262.html * * RELOADED (T5UID1) - * - Download https://github.com/Desuuuu/DGUS-reloaded/releases + * - Download https://github.com/Neo2003/DGUS-reloaded/releases * - Copy the downloaded DWIN_SET folder to the SD card. * * IA_CREALITY (T5UID1) - * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z + * - 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 (T5L) + * - 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: @@ -4563,10 +4638,15 @@ * - 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', 'E3S1PRO' ] */ //#define DGUS_LCD_UI ORIGIN #if DGUS_UI_IS(MKS) #define USE_MKS_GREEN_UI +#elif DGUS_UI_IS(IA_CREALITY) + //#define LCD_SCREEN_ROTATE 90 // Portrait Mode or 800x480 displays + //#define IA_CREALITY_BOOT_DELAY 1500 // (ms) #endif // @@ -4588,15 +4668,23 @@ //#define TOUCH_UI_FTDI_EVE // -// Touch-screen LCD for Anycubic printers +// Touch-screen LCD for Anycubic Chiron +// +//#define ANYCUBIC_LCD_CHIRON + +// +// Touch-screen LCD for Anycubic i3 Mega // //#define ANYCUBIC_LCD_I3MEGA -//#define ANYCUBIC_LCD_CHIRON -#if EITHER(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON) - //#define ANYCUBIC_LCD_DEBUG +#if ENABLED(ANYCUBIC_LCD_I3MEGA) //#define ANYCUBIC_LCD_GCODE_EXT // Add ".gcode" to menu entries for DGUS clone compatibility #endif +// +// Touch-screen LCD for Anycubic Vyper +// +//#define ANYCUBIC_LCD_VYPER + // // 320x240 Nextion 2.8" serial TFT Resistive Touch Screen NX3224T028 // @@ -4629,6 +4717,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 @@ -4693,12 +4782,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 @@ -4739,17 +4830,28 @@ /** * TFT Font for Color_UI. Choose one of the following: * - * NOTOSANS - Default font with antialiasing. Supports Latin Extended and non-Latin characters. - * UNIFONT - Lightweight font, no antialiasing. Supports Latin Extended and non-Latin characters. - * HELVETICA - Lightweight font, no antialiasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. + * NOTOSANS - Default font with anti-aliasing. Supports Latin Extended and non-Latin characters. + * UNIFONT - Lightweight font, no anti-aliasing. Supports Latin Extended and non-Latin characters. + * HELVETICA - Lightweight font, no anti-aliasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. */ #define TFT_FONT NOTOSANS - //#define TFT_SHARED_SPI // SPI is shared between TFT display and other devices. Disable async data transfer + /** + * 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. + + #define COMPACT_MARLIN_BOOT_LOGO // Use compressed data to save Flash space #endif #if ENABLED(TFT_LVGL_UI) - //#define MKS_WIFI_MODULE // MKS WiFi module + //#define MKS_WIFI_MODULE // MKS WiFi module #endif /** @@ -4794,7 +4896,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 @@ -4892,7 +4994,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 @@ -4932,7 +5034,8 @@ // Use some of the NeoPixel LEDs for static (background) lighting //#define NEOPIXEL_BKGD_INDEX_FIRST 0 // Index of the first background LED //#define NEOPIXEL_BKGD_INDEX_LAST 5 // Index of the last background LED - //#define NEOPIXEL_BKGD_COLOR { 255, 255, 255, 0 } // R, G, B, W + //#define NEOPIXEL_BKGD_COLOR { 255, 255, 255, 0 } // R, G, B, W + //#define NEOPIXEL_BKGD_TIMEOUT_COLOR { 25, 25, 25, 0 } // R, G, B, W //#define NEOPIXEL_BKGD_ALWAYS_ON // Keep the backlight on when other NeoPixels are off #endif diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 09fd7c0c26..867572f48a 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -190,12 +190,10 @@ /** * 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) - #undef TEMP_SENSOR_BED - #define TEMP_SENSOR_BED 70 #define HEATER_BED_INVERTING true #endif @@ -278,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 /** @@ -303,10 +307,11 @@ #define THERMAL_PROTECTION_PERIOD 60 // Seconds #define THERMAL_PROTECTION_HYSTERESIS 10 // Degrees Celsius - #if DISABLED(MachineCR10Orig) || ENABLED(MelziHostOnly) - #define ADAPTIVE_FAN_SLOWING // Slow part cooling fan if temperature drops - #if ENABLED(ADAPTIVE_FAN_SLOWING) && EITHER(MPCTEMP, PIDTEMP) - //#define TEMP_TUNING_MAINTAIN_FAN // Don't slow fan speed during M303 or M306 T + #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 ANY(MPCTEMP, PIDTEMP) + #define TEMP_TUNING_MAINTAIN_FAN // Don't slow down the fan speed during M303 or M306 T #endif #endif @@ -389,10 +394,35 @@ #if ANY(THERMAL_PROTECTION_HOTENDS, THERMAL_PROTECTION_BED, THERMAL_PROTECTION_CHAMBER, THERMAL_PROTECTION_COOLER) /** - * Thermal Protection Variance Monitor - EXPERIMENTAL. - * Kill the machine on a stuck temperature sensor. Disable if you get false positives. + * Thermal Protection Variance Monitor - EXPERIMENTAL + * Kill the machine on a stuck temperature sensor. + * + * This feature may cause some thermally-stable systems to halt. Be sure to test it thoroughly under + * a variety of conditions. Disable if you get false positives. + * + * This feature ensures that temperature sensors are updating regularly. If sensors die or get "stuck", + * or if Marlin stops reading them, temperatures will remain constant while heaters may still be powered! + * This feature only monitors temperature changes so it should catch any issue, hardware or software. + * + * By default it uses the THERMAL_PROTECTION_*_PERIOD constants (above) for the time window, within which + * at least one temperature change must occur, to indicate that sensor polling is working. If any monitored + * heater's temperature remains totally constant (without even a fractional change) during this period, a + * thermal malfunction error occurs and the printer is halted. + * + * A very stable heater might produce a false positive and halt the printer. In this case, try increasing + * the corresponding THERMAL_PROTECTION_*_PERIOD constant a bit. Keep in mind that uncontrolled heating + * shouldn't be allowed to persist for more than a minute or two. + * + * Be careful to distinguish false positives from real sensor issues before disabling this feature. If the + * heater's temperature appears even slightly higher than expected after restarting, you may have a real + * thermal malfunction. Check the temperature graph in your host for any unusual bumps. */ - //#define THERMAL_PROTECTION_VARIANCE_MONITOR // Detect a sensor malfunction preventing temperature updates + //#define THERMAL_PROTECTION_VARIANCE_MONITOR + #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) + // Variance detection window to override the THERMAL_PROTECTION...PERIOD settings above. + // Keep in mind that some heaters heat up faster than others. + //#define THERMAL_PROTECTION_VARIANCE_MONITOR_PERIOD 30 // (s) Override all watch periods + #endif #endif #if ENABLED(PIDTEMP) @@ -410,7 +440,7 @@ * You can either just add a constant compensation with the DEFAULT_Kf value * or follow the instruction below to get speed-dependent compensation. * - * Constant compensation (use only with fanspeeds of 0% and 100%) + * Constant compensation (use only with fan speeds of 0% and 100%) * --------------------------------------------------------------------- * A good starting point for the Kf-value comes from the calculation: * kf = (power_fan * eff_fan) / power_heater * 255 @@ -437,7 +467,7 @@ //#define PID_FAN_SCALING_ALTERNATIVE_DEFINITION #if ENABLED(PID_FAN_SCALING_ALTERNATIVE_DEFINITION) // The alternative definition is used for an easier configuration. - // Just figure out Kf at fullspeed (255) and PID_FAN_SCALING_MIN_SPEED. + // Just figure out Kf at full speed (255) and PID_FAN_SCALING_MIN_SPEED. // DEFAULT_Kf and PID_FAN_SCALING_LIN_FACTOR are calculated accordingly. #define PID_FAN_SCALING_AT_FULL_SPEED 13.0 //=PID_FAN_SCALING_LIN_FACTOR*255+DEFAULT_Kf @@ -581,7 +611,10 @@ // 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 - #define CONTROLLER_FAN_EDITABLE // Enable M710 configurable settings + // 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 #endif @@ -623,7 +656,7 @@ * FAST_PWM_FAN_FREQUENCY * Set this to your desired frequency. * For AVR, if left undefined this defaults to F = F_CPU/(2*255*1) - * i.e., F = 31.4kHz on 16MHz microcontrollers or F = 39.2kHz on 20MHz microcontrollers. + * i.e., F = 31.4kHz on 16MHz micro-controllers or F = 39.2kHz on 20MHz micro-controllers. * For non AVR, if left undefined this defaults to F = 1Khz. * This F value is only to protect the hardware from an absence of configuration * and not to complete it when users are not aware that the frequency must be specifically set to support the target board. @@ -653,9 +686,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 @@ -761,10 +797,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 @@ -854,7 +890,7 @@ * 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 @@ -865,11 +901,11 @@ #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) - #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 @@ -888,14 +924,14 @@ #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 @@ -977,9 +1013,9 @@ * Danger: Don't activate 5V mode unless attached to a 5V-tolerant controller! * V3.0 or 3.1: Set default mode to 5V mode at Marlin startup. * If disabled, OD mode is the hard-coded default on 3.0 - * On startup, Marlin will compare its eeprom to this value. If the selected mode - * differs, a mode set eeprom write will be completed at initialization. - * Use the option below to force an eeprom write to a V3.1 probe regardless. + * On startup, Marlin will compare its EEPROM to this value. If the selected mode + * differs, a mode set EEPROM write will be completed at initialization. + * Use the option below to force an EEPROM write to a V3.1 probe regardless. */ #if NONE(SKR13, SKR14, SKR14Turbo, SKRPRO11, SKRMiniE3V2, SKRMiniE3V3, MachineEnder3S1, Creality422, Creality427, MachineEnder6, MachineEnder7, MachineSermoonD1, MachineCR30, MachineCR6, MachineCR6Max, MachineCR10SmartPro, MachineEnder2Pro) #define BLTOUCH_SET_5V_MODE @@ -1002,12 +1038,16 @@ */ #define BLTOUCH_HS_MODE true - // Safety: Enable voltage mode settings in the LCD menu. - //#define BLTOUCH_LCD_VOLTAGE_MENU + #ifdef BLTOUCH_HS_MODE + // The probe Z offset (M851 Z) is the height at which the probe triggers. + // This must be large enough to keep the probe pin off the bed and prevent + // it from snagging on the bed clips. + #define BLTOUCH_HS_EXTRA_CLEARANCE 7 // Extra Z Clearance + #endif #endif // BLTOUCH -// @section extras +// @section calibration /** * Z Steppers Auto-Alignment @@ -1080,7 +1120,7 @@ //#define ASSISTED_TRAMMING #if ENABLED(ASSISTED_TRAMMING) - // Define positions for probe points. + // Define from 3 to 9 points to probe. #define TRAMMING_POINT_XY { { 20, 20 }, { 180, 20 }, { 180, 180 }, { 20, 180 } } // Define position names for probe points. @@ -1106,7 +1146,53 @@ #endif -// @section motion +// @section motion control + +/** + * Fixed-time-based Motion Control -- EXPERIMENTAL + * Enable/disable and set parameters with G-code M493. + */ +//#define FT_MOTION +#if ENABLED(FT_MOTION) + #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. + #define FTM_LINEAR_ADV_DEFAULT_ENA false // Default linear advance enable (true) or disable (false). + #define FTM_LINEAR_ADV_DEFAULT_K 0.0f // Default linear advance gain. + #define FTM_SHAPING_ZETA 0.1f // Zeta used by input shapers. + #define FTM_SHAPING_V_TOL 0.05f // Vibration tolerance used by EI input shapers. + + /** + * Advanced configuration + */ + #define FTM_BATCH_SIZE 100 // Batch size for trajectory generation; + #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. + #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!). + // 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. + // Calculate as (FTM_STEPPER_FS / FTM_FS). + #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(). + + // 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 /** * Input Shaping -- EXPERIMENTAL @@ -1133,7 +1219,7 @@ #define INPUT_SHAPING_X #define INPUT_SHAPING_Y #endif -#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). @@ -1147,39 +1233,41 @@ //#define SHAPING_MENU // Add a menu to the LCD to set shaping parameters. #endif +// @section motion + #define AXIS_RELATIVE_MODES { false, false, false, false } // Add a Duplicate option for well-separated conjoined nozzles //#define MULTI_NOZZLE_DUPLICATION -// By default pololu step drivers require an active high signal. However, some high power drivers require an active low signal as step. -#define INVERT_X_STEP_PIN false -#define INVERT_Y_STEP_PIN false -#define INVERT_Z_STEP_PIN false -#define INVERT_I_STEP_PIN false -#define INVERT_J_STEP_PIN false -#define INVERT_K_STEP_PIN false -#define INVERT_U_STEP_PIN false -#define INVERT_V_STEP_PIN false -#define INVERT_W_STEP_PIN false -#define INVERT_E_STEP_PIN false +// By default stepper drivers require an active-HIGH signal but some high-power drivers require an active-LOW signal to step. +#define STEP_STATE_X HIGH +#define STEP_STATE_Y HIGH +#define STEP_STATE_Z HIGH +#define STEP_STATE_I HIGH +#define STEP_STATE_J HIGH +#define STEP_STATE_K HIGH +#define STEP_STATE_U HIGH +#define STEP_STATE_V HIGH +#define STEP_STATE_W HIGH +#define STEP_STATE_E HIGH /** * Idle Stepper Shutdown - * Set DISABLE_INACTIVE_? 'true' to shut down axis steppers after an idle period. - * The Deactive Time can be overridden with M18 and M84. Set to 0 for No Timeout. + * Enable DISABLE_IDLE_* to shut down axis steppers after an idle period. + * The default timeout duration can be overridden with M18 and M84. Set to 0 for No Timeout. */ -#define DEFAULT_STEPPER_DEACTIVE_TIME 120 -#define DISABLE_INACTIVE_X true -#define DISABLE_INACTIVE_Y true -#define DISABLE_INACTIVE_Z true // Set 'false' if the nozzle could fall onto your printed part! -#define DISABLE_INACTIVE_I true -#define DISABLE_INACTIVE_J true -#define DISABLE_INACTIVE_K true -#define DISABLE_INACTIVE_U true -#define DISABLE_INACTIVE_V true -#define DISABLE_INACTIVE_W true -#define DISABLE_INACTIVE_E true +#define DEFAULT_STEPPER_TIMEOUT_SEC 120 +#define DISABLE_IDLE_X +#define DISABLE_IDLE_Y +#define DISABLE_IDLE_Z // Disable if the nozzle could fall onto your printed part! +//#define DISABLE_IDLE_I +//#define DISABLE_IDLE_J +//#define DISABLE_IDLE_K +//#define DISABLE_IDLE_U +//#define DISABLE_IDLE_V +//#define DISABLE_IDLE_W +#define DISABLE_IDLE_E // Shut down all idle extruders // If the Nozzle or Bed falls when the Z stepper is disabled, set its resting position here. //#define Z_AFTER_DEACTIVATE Z_HOME_POS @@ -1317,7 +1405,7 @@ //#define CALIBRATION_MEASURE_WMAX // Probing at the exact top center only works if the center is flat. If - // probing on a screwhead or hollow washer, probe near the edges. + // probing on a screw head or hollow washer, probe near the edges. //#define CALIBRATION_MEASURE_AT_TOP_EDGES // Define the pin to read during calibration @@ -1329,6 +1417,12 @@ #endif #endif +/** + * Multi-stepping sends steps in bursts to reduce MCU usage for high step-rates. + * This allows higher feedrates than the MCU could otherwise support. + */ +#define MULTISTEPPING_LIMIT 16 //: [1, 2, 4, 8, 16, 32, 64, 128] + /** * Adaptive Step Smoothing increases the resolution of multi-axis moves, particularly at step frequencies * below 1kHz (for AVR) or 10kHz (for ARM), where aliasing between axes in multi-axis moves causes audible @@ -1382,7 +1476,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. @@ -1442,7 +1536,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) /** @@ -1495,23 +1589,46 @@ // 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 + /** + * *** VENDORS PLEASE READ *** + * + * Marlin allows you to add a custom boot image for Graphical LCDs. + * With this option Marlin will first show your custom screen followed + * by the standard Marlin logo with version number and web URL. + * + * We encourage you to take advantage of this new feature and we also + * respectfully request that you retain the unmodified Marlin boot screen. + */ + #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 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 ANY(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 // The timeout to return to the status screen from sub-menus //#define LCD_TIMEOUT_TO_STATUS 15000 // (ms) - #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 - #endif - - #if NONE(MachineCR10Orig, LowMemoryBoard, SKRMiniE3V2) // Scroll a longer status message into view #define STATUS_MESSAGE_SCROLLING #endif @@ -1525,6 +1642,9 @@ // Show the E position (filament used) during printing //#define LCD_SHOW_E_TOTAL + // Display a negative temperature instead of "err" + //#define SHOW_TEMPERATURE_BELOW_ZERO + /** * LED Control Menu * Add LED Control to the LCD menu @@ -1560,13 +1680,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 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(SDSUPPORT, 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') @@ -1575,7 +1695,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 @@ -1587,7 +1707,7 @@ #endif #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * SD Card SPI Speed * May be required to resolve "volume init" errors. @@ -1628,6 +1748,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 @@ -1846,7 +1967,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- @@ -1918,7 +2039,7 @@ #endif /** - * Status (Info) Screen customizations + * Status (Info) Screen customization * These options may affect code size and screen render time. * Custom status screens can forcibly override these settings. */ @@ -1937,12 +2058,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_SMALL // Show a smaller Marlin logo on the Boot Screen (saving 399 bytes of flash) - #if ENABLED(MachineLargeROM) - #define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. - #else - #define BOOT_MARLIN_LOGO_SMALL // Show a smaller Marlin logo on the Boot Screen (saving 399 bytes of flash) - #endif // Frivolous Game Options //#define MARLIN_BRICKOUT @@ -1967,6 +2082,8 @@ // Additional options for DGUS / DWIN displays // #if HAS_DGUS_LCD || ENABLED(DGUS_LCD_UI_CREALITY_TOUCH) || ENABLED(FORCE10SPRODISPLAY) + #define DGUS_RX_BUFFER_SIZE 256 + #define DGUS_TX_BUFFER_SIZE 32 #ifndef LCD_SERIAL_PORT #define LCD_SERIAL_PORT 3 #define LCD_BAUDRATE 115200 @@ -2000,6 +2117,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 @@ -2031,7 +2164,7 @@ // // Specify additional languages for the UI. Default specified by LCD_LANGUAGE. // -#if ANY(DOGLCD, TFT_COLOR_UI, TOUCH_UI_FTDI_EVE, IS_DWIN_MARLINUI) +#if ANY(DOGLCD, TFT_COLOR_UI, TOUCH_UI_FTDI_EVE, IS_DWIN_MARLINUI, ANYCUBIC_LCD_VYPER) //#define LCD_LANGUAGE_2 fr //#define LCD_LANGUAGE_3 de //#define LCD_LANGUAGE_4 es @@ -2175,13 +2308,13 @@ */ #define BABYSTEPPING #if ENABLED(BABYSTEPPING) - #define INTEGRATED_BABYSTEPPING // EXPERIMENTAL 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) #if ENABLED(MachineCR30) #define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! #endif - #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 10 // (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 @@ -2190,7 +2323,7 @@ #if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING) #define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds. // Note: Extra time may be added to mitigate controller latency. - //#define MOVE_Z_WHEN_IDLE // Jump to the move Z menu on doubleclick when printer is idle. + //#define MOVE_Z_WHEN_IDLE // Jump to the move Z menu on double-click when printer is idle. #if ENABLED(MOVE_Z_WHEN_IDLE) #define MOVE_Z_IDLE_MULTIPLICATOR 1 // Multiply 1mm by this factor for the move step size. #endif @@ -2204,9 +2337,10 @@ #if ENABLED(BABYSTEP_ZPROBE_OFFSET) //#define BABYSTEP_HOTEND_Z_OFFSET // For multiple hotends, babystep relative Z offsets #if NONE(MachineCR10Orig, LowMemoryBoard, EXTENSIBLE_UI, SKRMiniE3V2, MachineEnder3V2, MachineEnder3S1, MachineCR6, MachineCR6Max, FORCEV2DISPLAY) && (DISABLED(MachineEnder4) || ENABLED(GraphicLCD)) - #define BABYSTEP_ZPROBE_GFX_OVERLAY // Enable graphical overlay on Z-offset editor + #define BABYSTEP_GFX_OVERLAY // Enable graphical overlay on Z-offset editor #endif #endif + #define BABYSTEP_HOTEND_Z_OFFSET // For multiple hotends, babystep relative Z offsets #endif // @section extruder @@ -2260,13 +2394,10 @@ * Points to probe for all 3-point Leveling procedures. * Override if the automatically selected points are inadequate. */ -#if EITHER(AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_UBL) - //#define PROBE_PT_1_X 15 - //#define PROBE_PT_1_Y 180 - //#define PROBE_PT_2_X 15 - //#define PROBE_PT_2_Y 20 - //#define PROBE_PT_3_X 170 - //#define PROBE_PT_3_Y 20 +#if NEEDS_THREE_PROBE_POINTS + //#define PROBE_PT_1 { 15, 180 } // (mm) { x, y } + //#define PROBE_PT_2 { 15, 20 } + //#define PROBE_PT_3 { 170, 20 } #endif /** @@ -2295,7 +2426,7 @@ #define PROBING_MARGIN_BACK (PROBING_MARGIN + ClipClearance) #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 @@ -2303,7 +2434,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 @@ -2375,7 +2506,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 } @@ -2419,7 +2550,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 @@ -2552,7 +2683,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 @@ -2695,9 +2826,17 @@ * Extra G-code to run while executing tool-change commands. Can be used to use an additional * stepper motor (e.g., I axis in Configuration.h) to drive the tool-changer. */ - //#define EVENT_GCODE_TOOLCHANGE_T0 "G28 A\nG1 A0" // Extra G-code to run while executing tool-change command T0 - //#define EVENT_GCODE_TOOLCHANGE_T1 "G1 A10" // Extra G-code to run while executing tool-change command T1 - //#define EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN // Always execute above G-code sequences. Use with caution! + //#define EVENT_GCODE_TOOLCHANGE_T0 "G28 A\nG1 A0" // Extra G-code to run while executing tool-change command T0 + //#define EVENT_GCODE_TOOLCHANGE_T1 "G1 A10" // Extra G-code to run while executing tool-change command T1 + //#define EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN // Always execute above G-code sequences. Use with caution! + + /** + * Consider coordinates for EVENT_GCODE_TOOLCHANGE_Tx as relative to T0 + * so that moves in the specified axes are the same for all tools. + */ + //#define TC_GCODE_USE_GLOBAL_X // Use X position relative to Tool 0 + //#define TC_GCODE_USE_GLOBAL_Y // Use Y position relative to Tool 0 + //#define TC_GCODE_USE_GLOBAL_Z // Use Z position relative to Tool 0 /** * Tool Sensors detect when tools have been picked up or dropped. @@ -2893,10 +3032,10 @@ #endif #if AXIS_IS_TMC_CONFIG(X2) - #define X2_CURRENT 800 - #define X2_CURRENT_HOME X2_CURRENT - #define X2_MICROSTEPS X_MICROSTEPS - #define X2_RSENSE 0.11 + #define X2_CURRENT X_CURRENT + #define X2_CURRENT_HOME X_CURRENT_HOME + #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 @@ -2913,10 +3052,10 @@ #endif #if AXIS_IS_TMC_CONFIG(Y2) - #define Y2_CURRENT 800 - #define Y2_CURRENT_HOME Y2_CURRENT - #define Y2_MICROSTEPS Y_MICROSTEPS - #define Y2_RSENSE 0.11 + #define Y2_CURRENT Y_CURRENT + #define Y2_CURRENT_HOME Y_CURRENT_HOME + #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 @@ -2933,30 +3072,30 @@ #endif #if AXIS_IS_TMC_CONFIG(Z2) - #define Z2_CURRENT 850 - #define Z2_CURRENT_HOME Z2_CURRENT - #define Z2_MICROSTEPS Z_MICROSTEPS - #define Z2_RSENSE 0.11 + #define Z2_CURRENT Z_CURRENT + #define Z2_CURRENT_HOME Z_CURRENT_HOME + #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_HOME Z3_CURRENT - #define Z3_MICROSTEPS Z_MICROSTEPS - #define Z3_RSENSE 0.11 + #define Z3_CURRENT Z_CURRENT + #define Z3_CURRENT_HOME Z_CURRENT_HOME + #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_HOME Z4_CURRENT - #define Z4_MICROSTEPS Z_MICROSTEPS - #define Z4_RSENSE 0.11 + #define Z4_CURRENT Z_CURRENT + #define Z4_CURRENT_HOME Z_CURRENT_HOME + #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 @@ -3032,63 +3171,63 @@ #endif #if AXIS_IS_TMC_CONFIG(E1) - #define E1_CURRENT 730 + #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 @@ -3100,28 +3239,28 @@ * Override default SPI pins for TMC2130, TMC2160, TMC2660, TMC5130 and TMC5160 drivers here. * The default pins can be found in your board's pins file. */ - //#define X_CS_PIN -1 - //#define Y_CS_PIN -1 - //#define Z_CS_PIN -1 - //#define X2_CS_PIN -1 - //#define Y2_CS_PIN -1 - //#define Z2_CS_PIN -1 - //#define Z3_CS_PIN -1 - //#define Z4_CS_PIN -1 - //#define I_CS_PIN -1 - //#define J_CS_PIN -1 - //#define K_CS_PIN -1 - //#define U_CS_PIN -1 - //#define V_CS_PIN -1 - //#define W_CS_PIN -1 - //#define E0_CS_PIN -1 - //#define E1_CS_PIN -1 - //#define E2_CS_PIN -1 - //#define E3_CS_PIN -1 - //#define E4_CS_PIN -1 - //#define E5_CS_PIN -1 - //#define E6_CS_PIN -1 - //#define E7_CS_PIN -1 + //#define X_CS_PIN -1 + //#define Y_CS_PIN -1 + //#define Z_CS_PIN -1 + //#define X2_CS_PIN -1 + //#define Y2_CS_PIN -1 + //#define Z2_CS_PIN -1 + //#define Z3_CS_PIN -1 + //#define Z4_CS_PIN -1 + //#define I_CS_PIN -1 + //#define J_CS_PIN -1 + //#define K_CS_PIN -1 + //#define U_CS_PIN -1 + //#define V_CS_PIN -1 + //#define W_CS_PIN -1 + //#define E0_CS_PIN -1 + //#define E1_CS_PIN -1 + //#define E2_CS_PIN -1 + //#define E3_CS_PIN -1 + //#define E4_CS_PIN -1 + //#define E5_CS_PIN -1 + //#define E6_CS_PIN -1 + //#define E7_CS_PIN -1 /** * Software option for SPI driven drivers (TMC2130, TMC2160, TMC2660, TMC5130 and TMC5160). @@ -3131,9 +3270,9 @@ #if ENABLED(SKR_2130) #define TMC_USE_SW_SPI #endif - //#define TMC_SW_MOSI -1 - //#define TMC_SW_MISO -1 - //#define TMC_SW_SCK -1 + //#define TMC_SPI_MOSI -1 + //#define TMC_SPI_MISO -1 + //#define TMC_SPI_SCK -1 // @section tmc/serial @@ -3320,7 +3459,7 @@ * * It is recommended to set HOMING_BUMP_MM to { 0, 0, 0 }. * - * SPI_ENDSTOPS *** Beta feature! *** TMC2130/TMC5160 Only *** + * SPI_ENDSTOPS *** TMC2130/TMC5160 Only *** * Poll the driver through SPI to determine load when homing. * Removes the need for a wire from DIAG1 to an endstop pin. * @@ -3332,7 +3471,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 @@ -3348,7 +3487,7 @@ //#define U_STALL_SENSITIVITY 8 //#define V_STALL_SENSITIVITY 8 //#define W_STALL_SENSITIVITY 8 - //#define SPI_ENDSTOPS // TMC2130 only + //#define SPI_ENDSTOPS // TMC2130/TMC5160 only //#define IMPROVE_HOMING_RELIABILITY #endif @@ -3367,10 +3506,9 @@ //#define TMC_HOME_PHASE { 896, 896, 896 } /** - * Beta feature! - * Create a 50/50 square wave step pulse optimal for stepper drivers. + * Step on both rising and falling edge signals (as with a square wave). */ - #define SQUARE_WAVE_STEPPING + #define EDGE_STEPPING /** * Enable M122 debugging command for TMC stepper drivers. @@ -3455,7 +3593,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 @@ -3498,7 +3636,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 @@ -3609,7 +3747,7 @@ * Feed rates are set by the F parameter of a move command e.g. G1 X0 Y10 F6000 * Laser power would be calculated by bit shifting off 8 LSB's. In binary this is div 256. * The calculation gives us ocr values from 0 to 255, values over F65535 will be set as 255 . - * More refined power control such as compesation for accell/decell will be addressed in future releases. + * More refined power control such as compensation for accel/decel will be addressed in future releases. * * M5 I clears inline mode and set power to 0, M5 sets the power output to 0 but leaves inline mode on. */ @@ -3617,8 +3755,8 @@ /** * Enable M3 commands for laser mode inline power planner syncing. * This feature enables any M3 S-value to be injected into the block buffers while in - * CUTTER_MODE_CONTINUOUS. The option allows M3 laser power to be commited without waiting - * for a planner syncronization + * CUTTER_MODE_CONTINUOUS. The option allows M3 laser power to be committed without waiting + * for a planner synchronization */ //#define LASER_POWER_SYNC @@ -3787,6 +3925,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 @@ -3868,14 +4009,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. @@ -4087,7 +4231,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. @@ -4240,16 +4384,17 @@ * Sample debug features * If you add more debug displays, be careful to avoid conflicts! */ - #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix to show that the firmware is functioning - #define MAX7219_DEBUG_PLANNER_HEAD 2 // Show the planner queue head position on this and the next LED matrix row - #define MAX7219_DEBUG_PLANNER_TAIL 4 // Show the planner queue tail position on this and the next LED matrix row + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix to show that the firmware is functioning + #define MAX7219_DEBUG_PLANNER_HEAD 2 // Show the planner queue head position on this and the next LED matrix row + #define MAX7219_DEBUG_PLANNER_TAIL 4 // Show the planner queue tail position on this and the next LED matrix row - #define MAX7219_DEBUG_PLANNER_QUEUE 0 // Show the current planner queue depth on this and the next LED matrix row - // If you experience stuttering, reboots, etc. this option can reveal how - // tweaks made to the configuration are affecting the printer in real-time. - #define MAX7219_DEBUG_PROFILE 6 // Display the fraction of CPU time spent in profiled code on this LED matrix - // row. By default idle() is profiled so this shows how "idle" the processor is. - // See class CodeProfiler. + #define MAX7219_DEBUG_PLANNER_QUEUE 0 // Show the current planner queue depth on this and the next LED matrix row + // If you experience stuttering, reboots, etc. this option can reveal how + // tweaks made to the configuration are affecting the printer in real-time. + #define MAX7219_DEBUG_PROFILE 6 // Display the fraction of CPU time spent in profiled code on this LED matrix + // row. By default idle() is profiled so this shows how "idle" the processor is. + // See class CodeProfiler. + //#define MAX7219_DEBUG_MULTISTEPPING 6 // Show multi-stepping 1 to 128 on this LED matrix row. #endif /** @@ -4279,7 +4424,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 @@ -4330,35 +4475,34 @@ // 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 * 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) @@ -4376,6 +4520,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/Makefile b/Marlin/Makefile index ca7cacaa6a..e5ba9cb341 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/Marlin.ino b/Marlin/Marlin.ino index 57c825445f..744e98c2e3 100644 --- a/Marlin/Marlin.ino +++ b/Marlin/Marlin.ino @@ -27,7 +27,7 @@ Configuration - https://github.com/MarlinFirmware/Configurations Example configurations for several printer models. - - https://www.youtube.com/watch?v=3gwWVFtdg-4 + - https://youtu.be/3gwWVFtdg-4 A good 20-minute overview of Marlin configuration by Tom Sanladerer. (Applies to Marlin 1.0.x, so Jerk and Acceleration should be halved.) Also... https://www.google.com/search?tbs=vid%3A1&q=configure+marlin diff --git a/Marlin/Version.h b/Marlin/Version.h index b425b9415a..810e0c3f2d 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -131,7 +131,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -#define STRING_DISTRIBUTION_DATE "2023-02-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/config.ini b/Marlin/config.ini index 0fb9fb0c93..17ff3bec7e 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 @@ -69,13 +69,9 @@ 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_inverting = false -y_min_endstop_inverting = false -z_min_endstop_inverting = false +x_min_endstop_hit_state = HIGH +y_min_endstop_hit_state = HIGH +z_min_endstop_hit_state = HIGH default_axis_steps_per_unit = { 80, 80, 400, 500 } axis_relative_modes = { false, false, false, false } @@ -95,15 +91,15 @@ invert_y_dir = true invert_z_dir = false invert_e0_dir = false -invert_e_step_pin = false -invert_x_step_pin = false -invert_y_step_pin = false -invert_z_step_pin = false +step_state_e = HIGH +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 @@ -127,7 +123,7 @@ busy_while_heating = on default_ejerk = 5.0 default_keepalive_interval = 2 default_leveling_fade_height = 0.0 -disable_inactive_extruder = on +disable_other_extruders = on display_charset_hd44780 = JAPANESE eeprom_boot_silent = on eeprom_chitchat = on @@ -176,12 +172,12 @@ auto_report_temperatures = on autotemp = on autotemp_oldweight = 0.98 bed_check_interval = 5000 -default_stepper_deactive_time = 120 +default_stepper_timeout_sec = 120 default_volumetric_extruder_limit = 0.00 -disable_inactive_e = true -disable_inactive_x = true -disable_inactive_y = true -disable_inactive_z = true +disable_idle_x = on +disable_idle_y = on +disable_idle_z = on +disable_idle_e = on e0_auto_fan_pin = -1 encoder_100x_steps_per_sec = 80 encoder_10x_steps_per_sec = 30 diff --git a/Marlin/src/HAL/AVR/HAL.cpp b/Marlin/src/HAL/AVR/HAL.cpp index 5382eb36a2..407a570cde 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() { @@ -145,12 +162,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 +184,6 @@ void MarlinHAL::reboot() { } } -#endif // !SDSUPPORT +#endif // !HAS_MEDIA #endif // __AVR__ diff --git a/Marlin/src/HAL/AVR/HAL.h b/Marlin/src/HAL/AVR/HAL.h index 409bee63ad..a049ce076a 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 @@ -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/HAL_SPI.cpp b/Marlin/src/HAL/AVR/HAL_SPI.cpp index dc98f2f79e..32c0361d03 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/MarlinSerial.h b/Marlin/src/HAL/AVR/MarlinSerial.h index 50e187423b..fc5696f9a8 100644 --- a/Marlin/src/HAL/AVR/MarlinSerial.h +++ b/Marlin/src/HAL/AVR/MarlinSerial.h @@ -34,6 +34,7 @@ #include #include "../../inc/MarlinConfigPre.h" +#include "../../core/types.h" #include "../../core/serial_hook.h" #ifndef SERIAL_PORT @@ -138,10 +139,6 @@ #define BYTE 0 - // Templated type selector - template struct TypeSelector { typedef T type;} ; - template struct TypeSelector { typedef F type; }; - template class MarlinSerial { protected: @@ -164,7 +161,7 @@ static constexpr B_U2Xx B_U2X = 0; // Base size of type on buffer size - typedef typename TypeSelector<(Cfg::RX_SIZE>256), uint16_t, uint8_t>::type ring_buffer_pos_t; + typedef uvalue_t(Cfg::RX_SIZE - 1) ring_buffer_pos_t; struct ring_buffer_r { volatile ring_buffer_pos_t head, tail; @@ -283,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) || ENABLED(DWINOS_4)); + static constexpr bool RX_OVERRUNS = (ANY(HAS_DGUS_LCD, SERIAL_STATS_RX_BUFFER_OVERRUNS) || ENABLED(DWINOS_4)); }; typedef Serial1Class< MarlinSerial< LCDSerialCfg > > MSerialLCD; diff --git a/Marlin/src/HAL/AVR/eeprom.cpp b/Marlin/src/HAL/AVR/eeprom.cpp index 8d084dec7f..6465e47025 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/endstop_interrupts.h b/Marlin/src/HAL/AVR/endstop_interrupts.h index 5511aa406f..2532624d39 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 @@ -160,7 +160,7 @@ void setup_endstop_interrupts() { pciSetup(Z_MAX_PIN); #endif #endif - #if HAS_Z_MIN + #if USE_Z_MIN #if (digitalPinToInterrupt(Z_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z_MIN_PIN); #else @@ -168,97 +168,97 @@ 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"); + 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 - 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 - #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"); + 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 - 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 - #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"); + 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 - 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 - #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"); + 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 - 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 - #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"); + 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 - 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 - #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"); + 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 - 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 - #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/AVR/fast_pwm.cpp b/Marlin/src/HAL/AVR/fast_pwm.cpp index d361aaab38..6da68e6245 100644 --- a/Marlin/src/HAL/AVR/fast_pwm.cpp +++ b/Marlin/src/HAL/AVR/fast_pwm.cpp @@ -23,6 +23,10 @@ #include "../../inc/MarlinConfig.h" +//#define DEBUG_AVR_FAST_PWM +#define DEBUG_OUT ENABLED(DEBUG_AVR_FAST_PWM) +#include "../../core/debug_out.h" + struct Timer { volatile uint8_t* TCCRnQ[3]; // max 3 TCCR registers per timer volatile uint16_t* OCRnQ[3]; // max 3 OCR registers per timer @@ -108,12 +112,15 @@ const Timer get_pwm_timer(const pin_t pin) { } void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { + DEBUG_ECHOLNPGM("set_pwm_frequency(pin=", pin, ", freq=", f_desired, ")"); const Timer timer = get_pwm_timer(pin); if (timer.isProtected || !timer.isPWM) return; // Don't proceed if protected timer or not recognized const bool is_timer2 = timer.n == 2; const uint16_t maxtop = is_timer2 ? 0xFF : 0xFFFF; + DEBUG_ECHOLNPGM("maxtop=", maxtop); + uint16_t res = 0xFF; // resolution (TOP value) uint8_t j = CS_NONE; // prescaler index uint8_t wgm = WGM_PWM_PC_8; // waveform generation mode @@ -121,23 +128,29 @@ void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { // Calculating the prescaler and resolution to use to achieve closest frequency if (f_desired != 0) { constexpr uint16_t prescaler[] = { 1, 8, (32), 64, (128), 256, 1024 }; // (*) are Timer 2 only - uint16_t f = (F_CPU) / (2 * 1024 * maxtop) + 1; // Start with the lowest non-zero frequency achievable (1 or 31) + uint16_t f = (F_CPU) / (uint32_t(maxtop) << 11) + 1; // Start with the lowest non-zero frequency achievable (for 16MHz, 1 or 31) - LOOP_L_N(i, COUNT(prescaler)) { // Loop through all prescaler values - const uint16_t p = prescaler[i]; + DEBUG_ECHOLNPGM("f=", f); + DEBUG_ECHOLNPGM("(prescaler loop)"); + 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; if (is_timer2) { #if ENABLED(USE_OCR2A_AS_TOP) // No resolution calculation for TIMER2 unless enabled USE_OCR2A_AS_TOP const uint16_t rft = (F_CPU) / (p * f_desired); res_fast_temp = rft - 1; res_pc_temp = rft / 2; + DEBUG_ECHOLNPGM("(Timer2) res_fast_temp=", res_fast_temp, " res_pc_temp=", res_pc_temp); #else res_fast_temp = res_pc_temp = maxtop; + DEBUG_ECHOLNPGM("(Timer2) res_fast_temp=", maxtop, " res_pc_temp=", maxtop); #endif } else { if (p == 32 || p == 128) continue; // Skip TIMER2 specific prescalers when not TIMER2 const uint16_t rft = (F_CPU) / (p * f_desired); + DEBUG_ECHOLNPGM("(Not Timer 2) F_CPU=" STRINGIFY(F_CPU), " prescaler=", p, " f_desired=", f_desired); res_fast_temp = rft - 1; res_pc_temp = rft / 2; } @@ -147,23 +160,27 @@ void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { // Calculate frequencies of test prescaler and resolution values const uint16_t f_fast_temp = (F_CPU) / (p * (1 + res_fast_temp)), - f_pc_temp = (F_CPU) / (2 * p * res_pc_temp); - const int f_diff = _MAX(f, f_desired) - _MIN(f, f_desired), + f_pc_temp = (F_CPU) / ((p * res_pc_temp) << 1), + f_diff = _MAX(f, f_desired) - _MIN(f, f_desired), f_fast_diff = _MAX(f_fast_temp, f_desired) - _MIN(f_fast_temp, f_desired), f_pc_diff = _MAX(f_pc_temp, f_desired) - _MIN(f_pc_temp, f_desired); + DEBUG_ECHOLNPGM("f_fast_temp=", f_fast_temp, " f_pc_temp=", f_pc_temp, " f_diff=", f_diff, " f_fast_diff=", f_fast_diff, " f_pc_diff=", f_pc_diff); + if (f_fast_diff < f_diff && f_fast_diff <= f_pc_diff) { // FAST values are closest to desired f // Set the Wave Generation Mode to FAST PWM wgm = is_timer2 ? uint8_t(TERN(USE_OCR2A_AS_TOP, WGM2_FAST_PWM_OCR2A, WGM2_FAST_PWM)) : uint8_t(WGM_FAST_PWM_ICRn); // Remember this combination f = f_fast_temp; res = res_fast_temp; j = i + 1; + DEBUG_ECHOLNPGM("(FAST) updated f=", f); } else if (f_pc_diff < f_diff) { // PHASE CORRECT values are closes to desired f // Set the Wave Generation Mode to PWM PHASE CORRECT wgm = is_timer2 ? uint8_t(TERN(USE_OCR2A_AS_TOP, WGM2_PWM_PC_OCR2A, WGM2_PWM_PC)) : uint8_t(WGM_PWM_PC_ICRn); f = f_pc_temp; res = res_pc_temp; j = i + 1; + DEBUG_ECHOLNPGM("(PHASE) updated f=", f); } - } + } // prescaler loop } _SET_WGMnQ(timer, wgm); @@ -215,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/fastio.h b/Marlin/src/HAL/AVR/fastio.h index 8a5e4650f4..4516d9cd54 100644 --- a/Marlin/src/HAL/AVR/fastio.h +++ b/Marlin/src/HAL/AVR/fastio.h @@ -255,84 +255,6 @@ enum ClockSource2 : uint8_t { #define SET_FOCB(T,V) SET_FOC(T,B,V) #define SET_FOCC(T,V) SET_FOC(T,C,V) -#if 0 - -/** - * PWM availability macros - */ - -// Determine which hardware PWMs are already in use -#define _PWM_CHK_FAN_B(P) (P == E0_AUTO_FAN_PIN || P == E1_AUTO_FAN_PIN || P == E2_AUTO_FAN_PIN || P == E3_AUTO_FAN_PIN || P == E4_AUTO_FAN_PIN || P == E5_AUTO_FAN_PIN || P == E6_AUTO_FAN_PIN || P == E7_AUTO_FAN_PIN || P == CHAMBER_AUTO_FAN_PIN || P == COOLER_AUTO_FAN_PIN) -#if PIN_EXISTS(CONTROLLER_FAN) - #define PWM_CHK_FAN_B(P) (_PWM_CHK_FAN_B(P) || P == CONTROLLER_FAN_PIN) -#else - #define PWM_CHK_FAN_B(P) _PWM_CHK_FAN_B(P) -#endif - -#if ANY_PIN(FAN, FAN1, FAN2, FAN3, FAN4, FAN5, FAN6, FAN7) - #if PIN_EXISTS(FAN7) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN || P == FAN3_PIN || P == FAN4_PIN || P == FAN5_PIN || P == FAN6_PIN || P == FAN7_PIN) - #elif PIN_EXISTS(FAN6) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN || P == FAN3_PIN || P == FAN4_PIN || P == FAN5_PIN || P == FAN6_PIN) - #elif PIN_EXISTS(FAN5) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN || P == FAN3_PIN || P == FAN4_PIN || P == FAN5_PIN) - #elif PIN_EXISTS(FAN4) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN || P == FAN3_PIN || P == FAN4_PIN) - #elif PIN_EXISTS(FAN3) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN || P == FAN3_PIN) - #elif PIN_EXISTS(FAN2) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN || P == FAN2_PIN) - #elif PIN_EXISTS(FAN1) - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN || P == FAN1_PIN) - #else - #define PWM_CHK_FAN_A(P) (P == FAN0_PIN) - #endif -#else - #define PWM_CHK_FAN_A(P) false -#endif - -#if HAS_MOTOR_CURRENT_PWM - #if PIN_EXISTS(MOTOR_CURRENT_PWM_XY) - #define PWM_CHK_MOTOR_CURRENT(P) (P == MOTOR_CURRENT_PWM_E_PIN || P == MOTOR_CURRENT_PWM_E0_PIN || P == MOTOR_CURRENT_PWM_E1_PIN || P == MOTOR_CURRENT_PWM_Z_PIN || P == MOTOR_CURRENT_PWM_XY_PIN) - #elif PIN_EXISTS(MOTOR_CURRENT_PWM_Z) - #define PWM_CHK_MOTOR_CURRENT(P) (P == MOTOR_CURRENT_PWM_E_PIN || P == MOTOR_CURRENT_PWM_E0_PIN || P == MOTOR_CURRENT_PWM_E1_PIN || P == MOTOR_CURRENT_PWM_Z_PIN) - #else - #define PWM_CHK_MOTOR_CURRENT(P) (P == MOTOR_CURRENT_PWM_E_PIN || P == MOTOR_CURRENT_PWM_E0_PIN || P == MOTOR_CURRENT_PWM_E1_PIN) - #endif -#else - #define PWM_CHK_MOTOR_CURRENT(P) false -#endif - -#ifdef NUM_SERVOS - #if AVR_ATmega2560_FAMILY - #define PWM_CHK_SERVO(P) (P == 5 || (NUM_SERVOS > 12 && P == 6) || (NUM_SERVOS > 24 && P == 46)) // PWMS 3A, 4A & 5A - #elif AVR_ATmega2561_FAMILY - #define PWM_CHK_SERVO(P) (P == 5) // PWM3A - #elif AVR_ATmega1284_FAMILY - #define PWM_CHK_SERVO(P) false - #elif AVR_AT90USB1286_FAMILY - #define PWM_CHK_SERVO(P) (P == 16) // PWM3A - #elif AVR_ATmega328_FAMILY - #define PWM_CHK_SERVO(P) false - #endif -#else - #define PWM_CHK_SERVO(P) false -#endif - -#if ENABLED(BARICUDA) - #if HAS_HEATER_1 && HAS_HEATER_2 - #define PWM_CHK_HEATER(P) (P == HEATER_1_PIN || P == HEATER_2_PIN) - #elif HAS_HEATER_1 - #define PWM_CHK_HEATER(P) (P == HEATER_1_PIN) - #endif -#else - #define PWM_CHK_HEATER(P) false -#endif - -#define PWM_CHK(P) (PWM_CHK_HEATER(P) || PWM_CHK_SERVO(P) || PWM_CHK_MOTOR_CURRENT(P) || PWM_CHK_FAN_A(P) || PWM_CHK_FAN_B(P)) - -#endif // PWM_CHK is not used in Marlin - // define which hardware PWMs are available for the current CPU // all timer 1 PWMS deleted from this list because they are never available #if AVR_ATmega2560_FAMILY diff --git a/Marlin/src/HAL/AVR/fastio/fastio_1280.h b/Marlin/src/HAL/AVR/fastio/fastio_1280.h index f482f823e8..633774dda9 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1280.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1280.h @@ -27,43 +27,44 @@ * Hardware Pin : 02 03 06 07 01 05 15 16 17 18 23 24 25 26 64 63 13 12 46 45 44 43 78 77 76 75 74 73 72 71 60 59 58 57 56 55 54 53 50 70 52 51 42 41 40 39 38 37 36 35 22 21 20 19 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 | 04 08 09 10 11 14 27 28 29 30 31 32 33 34 47 48 49 61 62 65 66 67 68 69 79 80 81 98 99 100 * Port : E0 E1 E4 E5 G5 E3 H3 H4 H5 H6 B4 B5 B6 B7 J1 J0 H1 H0 D3 D2 D1 D0 A0 A1 A2 A3 A4 A5 A6 A7 C7 C6 C5 C4 C3 C2 C1 C0 D7 G2 G1 G0 L7 L6 L5 L4 L3 L2 L1 L0 B3 B2 B1 B0 F0 F1 F2 F3 F4 F5 F6 F7 K0 K1 K2 K3 K4 K5 K6 K7 | E2 E6 E7 xx xx H2 H7 G3 G4 xx xx xx xx xx D4 D5 D6 xx xx J2 J3 J4 J5 J6 J7 xx xx xx xx xx * Logical Pin : 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | 78 79 80 xx xx 84 85 71 70 xx xx xx xx xx 81 82 83 xx xx 72 73 75 76 77 74 xx xx xx xx xx + * Analog Input : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + * + * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA + * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #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 e0bc5e2995..6067248978 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1281.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1281.h @@ -26,36 +26,36 @@ * * Logical Pin: 38 39 40 41 42 43 44 45 16 10 11 12 06 07 08 09 30 31 32 33 34 35 36 37 17 18 19 20 21 22 23 24 00 01 13 05 02 03 14 15 46 47 48 49 50 51 52 53 25 26 27 28 29 04 * Port: A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 E0 E1 E2 E3 E4 E5 E6 E7 F0 F1 F2 F3 F4 F5 F6 F7 G0 G1 G2 G3 G4 G5 + * + * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA + * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #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 8cfdd1e8f8..cc55979740 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_168.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_168.h @@ -26,33 +26,34 @@ * * Logical Pin: 08 09 10 11 12 13 14 15 16 17 18 19 20 21 00 01 02 03 04 05 06 07 * Port: B0 B1 B2 B3 B4 B5 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 + * + * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA + * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #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 f4a9427e0a..94b322a819 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_644.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_644.h @@ -26,6 +26,9 @@ * * Logical Pin: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 * Port: B0 B1 B2 B3 B4 B5 B6 B7 D0 D1 D2 D3 D4 D5 D6 D7 C0 C1 C2 C3 C4 C5 C6 C7 A7 A6 A5 A4 A3 A2 A1 A0 + * + * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA + * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ /** ATMega644 @@ -56,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 51d400b705..0c434b157c 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h @@ -27,18 +27,18 @@ * Logical Pin: 28 29 30 31 32 33 34 35 20 21 22 23 24 25 26 27 10 11 12 13 14 15 16 17 00 01 02 03 04 05 06 07 08 09(46*47)36 37 18 19 38 39 40 41 42 43 44 45 * Port: A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 E0 E1 E2 E3 E4 E5 E6 E7 F0 F1 F2 F3 F4 F5 F6 F7 * The logical pins 46 and 47 are not supported by Teensyduino, but are supported below as E2 and E3 + * + * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA + * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #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/AVR/inc/Conditionals_LCD.h b/Marlin/src/HAL/AVR/inc/Conditionals_LCD.h index a611ccd7c4..5f1c4b1601 100644 --- a/Marlin/src/HAL/AVR/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/AVR/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/AVR." -#endif diff --git a/Marlin/src/HAL/AVR/inc/SanityCheck.h b/Marlin/src/HAL/AVR/inc/SanityCheck.h index ff1610f741..85ee683685 100644 --- a/Marlin/src/HAL/AVR/inc/SanityCheck.h +++ b/Marlin/src/HAL/AVR/inc/SanityCheck.h @@ -25,17 +25,21 @@ * Test AVR-specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/AVR." +#endif + /** * 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. @@ -69,8 +73,8 @@ /** * Checks for SOFT PWM */ -#if HAS_FAN0 && FAN_PIN == 9 && DISABLED(FAN_SOFT_PWM) && ENABLED(SPEAKER) - #error "FAN_PIN 9 Hardware PWM uses Timer 2 which conflicts with Arduino AVR Tone Timer (for SPEAKER)." +#if HAS_FAN0 && FAN0_PIN == 9 && DISABLED(FAN_SOFT_PWM) && ENABLED(SPEAKER) + #error "FAN0_PIN 9 Hardware PWM uses Timer 2 which conflicts with Arduino AVR Tone Timer (for SPEAKER)." #error "Disable SPEAKER or enable FAN_SOFT_PWM." #endif @@ -91,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/AVR/math.h b/Marlin/src/HAL/AVR/math.h index 34f859fbbb..16848524fa 100644 --- a/Marlin/src/HAL/AVR/math.h +++ b/Marlin/src/HAL/AVR/math.h @@ -84,32 +84,26 @@ FORCE_INLINE static uint16_t MultiU24X32toH16(uint32_t longIn1, uint32_t longIn2 return intRes; } -// intRes = intIn1 * intIn2 >> 8 +// charRes = charIn1 * charIn2 >> 8 // uses: -// r1, r0 for the result of mul. After the second mul, r0 holds bits 0-7 of the 24 bit result and -// the top bit of r0 is used for rounding. -// [tmp] to store 0. -// [intRes] (A B) is bits 8-15 and is the returned value. +// r1, r0 for the result of mul. After the mul, r0 holds bits 0-7 of the 16 bit result, +// and the top bit of r0 is used for rounding. +// [charRes] is bits 8-15 and is the returned value. // [charIn1] is an 8 bit parameter. -// [intIn2] (B A) is a 16 bit parameter. +// [charIn2] is an 8 bit parameter. // -FORCE_INLINE static uint16_t MultiU8X16toH16(uint8_t charIn1, uint16_t intIn2) { - uint8_t tmp; - uint16_t intRes; +FORCE_INLINE static uint8_t MultiU8X8toH8(uint8_t charIn1, uint8_t charIn2) { + uint8_t charRes; __asm__ __volatile__ ( - A("clr %[tmp]") - A("mul %[charIn1], %B[intIn2]") - A("movw %A[intRes], r0") - A("mul %[charIn1], %A[intIn2]") - A("lsl r0") - A("adc %A[intRes], r1") - A("adc %B[intRes], %[tmp]") + A("mul %[charIn1], %[charIn2]") + A("mov %[charRes], r1") A("clr r1") - : [intRes] "=&r" (intRes), - [tmp] "=&r" (tmp) + A("lsl r0") + A("adc %[charRes], r1") + : [charRes] "=&r" (charRes) : [charIn1] "d" (charIn1), - [intIn2] "d" (intIn2) + [charIn2] "d" (charIn2) : "cc" ); - return intRes; + return charRes; } diff --git a/Marlin/src/HAL/AVR/pinsDebug.h b/Marlin/src/HAL/AVR/pinsDebug.h index dab4e44715..fc51f41ef8 100644 --- a/Marlin/src/HAL/AVR/pinsDebug.h +++ b/Marlin/src/HAL/AVR/pinsDebug.h @@ -64,23 +64,25 @@ #define VALID_PIN(pin) (pin >= 0 && pin < NUM_DIGITAL_PINS ? 1 : 0) #if AVR_ATmega1284_FAMILY - #define DIGITAL_PIN_TO_ANALOG_PIN(P) int(analogInputToDigitalPin(0) - (P)) - #define IS_ANALOG(P) ((P) >= analogInputToDigitalPin(7) && (P) <= analogInputToDigitalPin(0)) + #define IS_ANALOG(P) WITHIN(P, analogInputToDigitalPin(7), analogInputToDigitalPin(0)) + #define DIGITAL_PIN_TO_ANALOG_PIN(P) int(IS_ANALOG(P) ? (P) - analogInputToDigitalPin(7) : -1) #else - #define DIGITAL_PIN_TO_ANALOG_PIN(P) int((P) - analogInputToDigitalPin(0)) - #define IS_ANALOG(P) ((P) >= analogInputToDigitalPin(0) && ((P) <= analogInputToDigitalPin(15) || (P) <= analogInputToDigitalPin(7))) + #define _ANALOG1(P) WITHIN(P, analogInputToDigitalPin(0), analogInputToDigitalPin(7)) + #define _ANALOG2(P) WITHIN(P, analogInputToDigitalPin(8), analogInputToDigitalPin(15)) + #define IS_ANALOG(P) (_ANALOG1(P) || _ANALOG2(P)) + #define DIGITAL_PIN_TO_ANALOG_PIN(P) int(_ANALOG1(P) ? (P) - analogInputToDigitalPin(0) : _ANALOG2(P) ? (P) - analogInputToDigitalPin(8) + 8 : -1) #endif #define GET_ARRAY_PIN(p) pgm_read_byte(&pin_array[p].pin) #define MULTI_NAME_PAD 26 // space needed to be pretty if not first name assigned to a pin 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; } } @@ -88,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 @@ -108,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)) { @@ -231,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); @@ -278,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) @@ -352,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(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); - 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 + #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 582ae79ba7..c812d4fb11 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/AVR/pinsDebug_plus_70.h b/Marlin/src/HAL/AVR/pinsDebug_plus_70.h index d9aa44c3cb..fa479cfe8f 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/AVR/registers.cpp b/Marlin/src/HAL/AVR/registers.cpp new file mode 100644 index 0000000000..08a74c952a --- /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 0000000000..64c0955c3e --- /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/AVR/timers.h b/Marlin/src/HAL/AVR/timers.h index 33c3880b6b..d9cdfc4f01 100644 --- a/Marlin/src/HAL/AVR/timers.h +++ b/Marlin/src/HAL/AVR/timers.h @@ -44,14 +44,14 @@ typedef uint16_t hal_timer_t; #define MF_TIMER_TEMP 0 #endif -#define TEMP_TIMER_FREQUENCY ((F_CPU) / 64.0 / 256.0) +#define TEMP_TIMER_FREQUENCY (((F_CPU) + 0x2000) / 0x4000) #define STEPPER_TIMER_RATE HAL_TIMER_RATE #define STEPPER_TIMER_PRESCALE 8 -#define STEPPER_TIMER_TICKS_PER_US ((STEPPER_TIMER_RATE) / 1000000) // Cannot be of type double +#define STEPPER_TIMER_TICKS_PER_US ((STEPPER_TIMER_RATE) / 1000000) -#define PULSE_TIMER_RATE STEPPER_TIMER_RATE // frequency of pulse timer -#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE +#define PULSE_TIMER_RATE STEPPER_TIMER_RATE +#define PULSE_TIMER_PRESCALE STEPPER_TIMER_PRESCALE #define PULSE_TIMER_TICKS_PER_US STEPPER_TIMER_TICKS_PER_US #define ENABLE_STEPPER_DRIVER_INTERRUPT() SBI(TIMSK1, OCIE1A) 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 45b54379db..79bafe2939 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/HAL.cpp b/Marlin/src/HAL/DUE/HAL.cpp index 4353f16497..1b57bdb2fa 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/HAL.h b/Marlin/src/HAL/DUE/HAL.h index 585b893841..7b9285488f 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/DUE/HAL_SPI.cpp b/Marlin/src/HAL/DUE/HAL_SPI.cpp index f5bcaacee5..63ebf164f2 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/MarlinSerial.h b/Marlin/src/HAL/DUE/MarlinSerial.h index 5a61bffee0..b80ae21823 100644 --- a/Marlin/src/HAL/DUE/MarlinSerial.h +++ b/Marlin/src/HAL/DUE/MarlinSerial.h @@ -30,6 +30,7 @@ #include #include "../../inc/MarlinConfigPre.h" +#include "../../core/types.h" #include "../../core/serial_hook.h" // Define constants and variables for buffering incoming serial data. We're @@ -52,10 +53,6 @@ // #error "TX_BUFFER_SIZE must be 0, a power of 2 greater than 1, and no greater than 256." //#endif -// Templated type selector -template struct TypeSelector { typedef T type;} ; -template struct TypeSelector { typedef F type; }; - // Templated structure wrapper template struct StructWrapper { constexpr StructWrapper(int) {} @@ -76,7 +73,7 @@ protected: static constexpr int HWUART_IRQ_ID = IRQ_IDS[Cfg::PORT]; // Base size of type on buffer size - typedef typename TypeSelector<(Cfg::RX_SIZE>256), uint16_t, uint8_t>::type ring_buffer_pos_t; + typedef uvalue_t(Cfg::RX_SIZE - 1) ring_buffer_pos_t; struct ring_buffer_r { volatile ring_buffer_pos_t head, tail; diff --git a/Marlin/src/HAL/DUE/MinSerial.cpp b/Marlin/src/HAL/DUE/MinSerial.cpp index e5b3dbfe6f..505a712aa9 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/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 904924793b..86c8a48470 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/endstop_interrupts.h b/Marlin/src/HAL/DUE/endstop_interrupts.h index c1bbcb121b..954eb625a5 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_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_(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)); + 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/DUE/fastio.h b/Marlin/src/HAL/DUE/fastio.h index a609210d81..77bc1911d8 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/HAL/DUE/fastio/G2_PWM.h b/Marlin/src/HAL/DUE/fastio/G2_PWM.h index dc4edffff8..2afe246cea 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/DUE/inc/Conditionals_LCD.h b/Marlin/src/HAL/DUE/inc/Conditionals_LCD.h index 5867414447..5f1c4b1601 100644 --- a/Marlin/src/HAL/DUE/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/DUE/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/DUE." -#endif diff --git a/Marlin/src/HAL/DUE/inc/Conditionals_post.h b/Marlin/src/HAL/DUE/inc/Conditionals_post.h index ce6d3fdde2..295596b78b 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/DUE/inc/SanityCheck.h b/Marlin/src/HAL/DUE/inc/SanityCheck.h index 1f5acc360c..a8f5de8298 100644 --- a/Marlin/src/HAL/DUE/inc/SanityCheck.h +++ b/Marlin/src/HAL/DUE/inc/SanityCheck.h @@ -25,6 +25,10 @@ * Test Arduino Due specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/DUE." +#endif + /** * Check for common serial pin conflicts */ @@ -64,9 +68,9 @@ * Usually the hardware SPI pins are only available to the LCD. This makes the DUE hard SPI used at the same time * as the TMC2130 soft SPI the most common setup. */ -#define _IS_HW_SPI(P) (defined(TMC_SW_##P) && (TMC_SW_##P == SD_MOSI_PIN || TMC_SW_##P == SD_MISO_PIN || TMC_SW_##P == SD_SCK_PIN)) +#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." @@ -77,7 +81,7 @@ #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on DUE." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for HAL/DUE." #endif #if HAS_TMC_SW_SERIAL diff --git a/Marlin/src/HAL/DUE/pinsDebug.h b/Marlin/src/HAL/DUE/pinsDebug.h index 2aafe9be0c..1544853553 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/DUE/usb/conf_usb.h b/Marlin/src/HAL/DUE/usb/conf_usb.h index 4de9e347e2..f66194c6e6 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/genclk.h b/Marlin/src/HAL/DUE/usb/genclk.h index cde03bc0d1..45eba5873f 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); +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; + 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_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_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_PLLBCK: + p_cfg->ctrl |= (PMC_PCK_CSS_UPLL_CLK); + break; - case GENCLK_PCK_SRC_MCK: - p_cfg->ctrl |= (PMC_PCK_CSS_MCK); - 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; +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_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_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_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_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_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_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; + 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_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 + #ifdef CONFIG_PLL1_SOURCE + case GENCLK_PCK_SRC_PLLBCK: + pll_enable_config_defaults(1); + break; + #endif - case GENCLK_PCK_SRC_MCK: - break; + case GENCLK_PCK_SRC_MCK: + break; - default: - Assert(false); - break; - } + default: + Assert(false); + break; + } } //! @} diff --git a/Marlin/src/HAL/DUE/usb/osc.h b/Marlin/src/HAL/DUE/usb/osc.h index 953bcbbed1..c0ae24381a 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; +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_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_XTAL: + pmc_osc_disable_xtal(PMC_OSC_XTAL); + break; - case OSC_MAINCK_BYPASS: - pmc_osc_disable_xtal(PMC_OSC_BYPASS); - 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; +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_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(); - } + 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; + 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 8eaf27672b..d25a1f65d0 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; + enum pll_source e_src, uint32_t ul_div, uint32_t ul_mul) { + uint32_t vco_hz; - Assert(e_src < PLL_NR_SOURCES); + 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); + 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); + 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); - } + /* 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) +#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; - } +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); +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; - } + 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; +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; - } + default: + Assert(false); + break; + } } -static inline void pll_enable_config_defaults(unsigned int ul_pll_id) -{ - struct pll_config pllcfg; +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)); + 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 ab845739fd..983ec7adca 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/sd_mmc_spi_mem.cpp b/Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp index 34cc256b30..65a926ff36 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/spc_protocol.h b/Marlin/src/HAL/DUE/usb/spc_protocol.h index d67cc5c788..808c388f4f 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 + /* 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; + /* 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 + /* 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]; + /* 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) + /* 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]; + /* 9th to 12th byte - COMMAND-SPECIFIC INFORMATION field */ + uint8_t CmdSpecINFO[4]; - /* 13th byte - ADDITIONAL SENSE CODE field */ - uint8_t AddSenseCode; + /* 13th byte - ADDITIONAL SENSE CODE field */ + uint8_t AddSenseCode; - /* 14th byte - ADDITIONAL SENSE CODE QUALIFIER field */ - uint8_t AddSnsCodeQlfr; + /* 14th byte - ADDITIONAL SENSE CODE QUALIFIER field */ + uint8_t AddSnsCodeQlfr; - /* 15th byte - FIELD REPLACEABLE UNIT CODE field */ - uint8_t FldReplUnitCode; + /* 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 + /* 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 16db8c86d3..0623378615 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 8d92eb5c03..6230a81b35 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 + // 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 + // 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 + // 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 + // 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_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_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]; + 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 */ diff --git a/Marlin/src/HAL/DUE/usb/udc_desc.h b/Marlin/src/HAL/DUE/usb/udc_desc.h index 052ca08eca..f1f328d035 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 -#else -# define UDC_DATA(x) COMPILER_ALIGNED(x) -# define UDC_BSS(x) COMPILER_ALIGNED(x) + #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) #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 319d8842f7..6eda465e54 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 febf03b718..bc5de086f3 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 b61845011a..2bc5fff187 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_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 + #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 + #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; - } + 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(); - } - } + 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 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_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 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_cdc_desc.c b/Marlin/src/HAL/DUE/usb/udi_cdc_desc.c index 97c334e2a8..4c79e8df13 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 da74fbe60d..b10d043b9f 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 dd34048772..3f70a8fb18 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() @@ -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 @@ -1127,6 +1063,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/udi_msc.h b/Marlin/src/HAL/DUE/usb/udi_msc.h index 730dbc8eec..0ede4d6a83 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 eca5e938bb..f0e55c896f 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 ea51a86896..4540247df8 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 d594db52e3..9b82afc624 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 e1e59237d8..cc30a94e4f 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/Marlin/src/HAL/DUE/usb/usb_task.c b/Marlin/src/HAL/DUE/usb/usb_task.c index 86ab27217a..6f027f83a1 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.cpp b/Marlin/src/HAL/ESP32/HAL.cpp index 29f3be3c02..27f6516f9a 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()); @@ -342,16 +342,16 @@ void MarlinHAL::set_pwm_duty(const pin_t pin, const uint16_t v, const uint16_t v } else pindata.pwm_duty_ticks = duty; // PWM duty count = # of 4µs ticks per full PWM cycle + + return; } - else #endif - { - const int8_t cid = get_pwm_channel(pin, PWM_FREQUENCY, PWM_RESOLUTION); - if (cid >= 0) { - const uint32_t duty = map(invert ? v_size - v : v, 0, v_size, 0, _BV(PWM_RESOLUTION)-1); - ledcWrite(cid, duty); - } - } + + const int8_t cid = get_pwm_channel(pin, PWM_FREQUENCY, PWM_RESOLUTION); + if (cid >= 0) { + const uint32_t duty = map(invert ? v_size - v : v, 0, v_size, 0, _BV(PWM_RESOLUTION)-1); + ledcWrite(cid, duty); + } } int8_t MarlinHAL::set_pwm_frequency(const pin_t pin, const uint32_t f_desired) { @@ -360,17 +360,15 @@ int8_t MarlinHAL::set_pwm_frequency(const pin_t pin, const uint32_t f_desired) { pwm_pin_data[pin & 0x7F].pwm_cycle_ticks = 1000000UL / f_desired / 4; // # of 4µs ticks per full PWM cycle return 0; } - else #endif - { - const int8_t cid = channel_for_pin(pin); - if (cid >= 0) { - if (f_desired == ledcReadFreq(cid)) return cid; // no freq change - ledcDetachPin(chan_pin[cid]); - chan_pin[cid] = 0; // remove old freq channel - } - return get_pwm_channel(pin, f_desired, PWM_RESOLUTION); // try for new one - } + + const int8_t cid = channel_for_pin(pin); + if (cid >= 0) { + if (f_desired == ledcReadFreq(cid)) return cid; // no freq change + ledcDetachPin(chan_pin[cid]); + chan_pin[cid] = 0; // remove old freq channel + } + return get_pwm_channel(pin, f_desired, PWM_RESOLUTION); // try for new one } // use hardware PWM if avail, if not then ISR diff --git a/Marlin/src/HAL/ESP32/HAL.h b/Marlin/src/HAL/ESP32/HAL.h index ddfedf92ee..97ed4d1e4f 100644 --- a/Marlin/src/HAL/ESP32/HAL.h +++ b/Marlin/src/HAL/ESP32/HAL.h @@ -50,14 +50,12 @@ #define MYSERIAL1 flushableSerial -#if EITHER(WIFISUPPORT, ESP3D_WIFISUPPORT) - #if ENABLED(ESP3D_WIFISUPPORT) - typedef ForwardSerial1Class< decltype(Serial2Socket) > DefaultSerial1; - extern DefaultSerial1 MSerial0; - #define MYSERIAL2 MSerial0 - #else - #define MYSERIAL2 webSocketSerial - #endif +#if ENABLED(ESP3D_WIFISUPPORT) + typedef ForwardSerial1Class< decltype(Serial2Socket) > DefaultSerial1; + extern DefaultSerial1 MSerial0; + #define MYSERIAL2 MSerial0 +#elif ENABLED(WIFISUPPORT) + #define MYSERIAL2 webSocketSerial #endif #define CRITICAL_SECTION_START() portENTER_CRITICAL(&hal.spinlock) @@ -171,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/ESP32/HAL_SPI.cpp b/Marlin/src/HAL/ESP32/HAL_SPI.cpp index 868ab1b671..6dc540864e 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/endstop_interrupts.h b/Marlin/src/HAL/ESP32/endstop_interrupts.h index 0536864610..1377345992 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_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_(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)); + 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/i2s.cpp b/Marlin/src/HAL/ESP32/i2s.cpp index 63ceed4c9d..69f8ca9845 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/ESP32/inc/Conditionals_LCD.h b/Marlin/src/HAL/ESP32/inc/Conditionals_LCD.h index 4da600179d..5f1c4b1601 100644 --- a/Marlin/src/HAL/ESP32/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/ESP32/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/ESP32." -#endif diff --git a/Marlin/src/HAL/ESP32/inc/SanityCheck.h b/Marlin/src/HAL/ESP32/inc/SanityCheck.h index 8c5621f10c..dd199c390d 100644 --- a/Marlin/src/HAL/ESP32/inc/SanityCheck.h +++ b/Marlin/src/HAL/ESP32/inc/SanityCheck.h @@ -21,19 +21,26 @@ */ #pragma once +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/ESP32." +#endif + #if ENABLED(EMERGENCY_PARSER) #error "EMERGENCY_PARSER is not yet implemented for ESP32. Disable EMERGENCY_PARSER to continue." #endif -#if (ENABLED(SPINDLE_LASER_USE_PWM) && SPINDLE_LASER_FREQUENCY > 78125) || (ENABLED(FAST_PWM_FAN_FREQUENCY) && FAST_PWM_FAN_FREQUENCY > 78125) - #error "SPINDLE_LASER_FREQUENCY and FAST_PWM_FREQUENCY maximum value is 78125Hz for ESP32." +#if ENABLED(SPINDLE_LASER_USE_PWM) && SPINDLE_LASER_FREQUENCY > 78125 + #error "SPINDLE_LASER_FREQUENCY maximum value is 78125Hz for ESP32." +#endif +#if ENABLED(FAST_PWM_FAN) && FAST_PWM_FAN_FREQUENCY > 78125 + #error "FAST_PWM_FREQUENCY maximum value is 78125Hz for ESP32." #endif #if HAS_TMC_SW_SERIAL #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 @@ -45,14 +52,14 @@ #error "FAST_PWM_FAN is not available on TinyBee." #endif -#if BOTH(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 -#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 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 69a3e25e56..c5c3082c30 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 @@ -50,7 +50,7 @@ void OTA_init() { }) .onError([](ota_error_t error) { Serial.printf("Error[%u]: ", error); - char *str; + const char *str = "unknown"; switch (error) { case OTA_AUTH_ERROR: str = "Auth Failed"; break; case OTA_BEGIN_ERROR: str = "Begin Failed"; break; diff --git a/Marlin/src/HAL/ESP32/spiffs.cpp b/Marlin/src/HAL/ESP32/spiffs.cpp index a0e713bff0..043ad7849a 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/timers.cpp b/Marlin/src/HAL/ESP32/timers.cpp index c37ad2430c..a6893150b6 100644 --- a/Marlin/src/HAL/ESP32/timers.cpp +++ b/Marlin/src/HAL/ESP32/timers.cpp @@ -111,12 +111,12 @@ void HAL_timer_start(const uint8_t timer_num, const uint32_t frequency) { /** * Set the upper value of the timer, when the timer reaches this upper value the * interrupt should be triggered and the counter reset - * @param timer_num timer number to set the count to - * @param count threshold at which the interrupt is triggered + * @param timer_num timer number to set the compare value to + * @param compare threshold at which the interrupt is triggered */ -void HAL_timer_set_compare(const uint8_t timer_num, hal_timer_t count) { +void HAL_timer_set_compare(const uint8_t timer_num, const hal_timer_t compare) { const tTimerConfig timer = timer_config[timer_num]; - timer_set_alarm_value(timer.group, timer.idx, count); + timer_set_alarm_value(timer.group, timer.idx, compare); } /** diff --git a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp index bd7ecdc9f2..012604dbfb 100644 --- a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp +++ b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp @@ -25,14 +25,14 @@ #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" #include "HAL.h" #include "SPI.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #if ENABLED(ESP3D_WIFISUPPORT) #include "sd_ESP32.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 7a27707a3e..63a101595f 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/HAL.h b/Marlin/src/HAL/HAL.h index 5186578019..f3e16cfdf1 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/LINUX/HAL.cpp b/Marlin/src/HAL/LINUX/HAL.cpp index db43f42eaa..6a767c76e7 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/HAL.h b/Marlin/src/HAL/LINUX/HAL.h index 22c3e521f0..d1c0cbe7ae 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/LINUX/inc/Conditionals_LCD.h b/Marlin/src/HAL/LINUX/inc/Conditionals_LCD.h index 99a6fc2753..5f1c4b1601 100644 --- a/Marlin/src/HAL/LINUX/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/LINUX/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/LINUX." -#endif diff --git a/Marlin/src/HAL/LINUX/inc/SanityCheck.h b/Marlin/src/HAL/LINUX/inc/SanityCheck.h index 36d3190a3e..861bade10f 100644 --- a/Marlin/src/HAL/LINUX/inc/SanityCheck.h +++ b/Marlin/src/HAL/LINUX/inc/SanityCheck.h @@ -31,13 +31,17 @@ #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on LINUX." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for HAL/LINUX." +#endif + +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/LINUX." #endif #if HAS_TMC_SW_SERIAL - #error "TMC220x Software Serial is not supported on LINUX." + #error "TMC220x Software Serial is not supported for HAL/LINUX." #endif #if ENABLED(POSTMORTEM_DEBUGGING) - #error "POSTMORTEM_DEBUGGING is not yet supported on LINUX." + #error "POSTMORTEM_DEBUGGING is not yet supported for HAL/LINUX." #endif diff --git a/Marlin/src/HAL/LINUX/pinsDebug.h b/Marlin/src/HAL/LINUX/pinsDebug.h index 7bfd97d024..e4ee27e8dd 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/LINUX/spi_pins.h b/Marlin/src/HAL/LINUX/spi_pins.h index 33136ac9dd..7bd2498be7 100644 --- a/Marlin/src/HAL/LINUX/spi_pins.h +++ b/Marlin/src/HAL/LINUX/spi_pins.h @@ -24,11 +24,11 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_ENABLE == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) - #define LPC_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 - // spiBeginTransaction. +#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 + // spiBeginTransaction. #endif // Onboard SD diff --git a/Marlin/src/HAL/LPC1768/HAL.cpp b/Marlin/src/HAL/LPC1768/HAL.cpp index 9ff3a6ba59..6fada12486 100644 --- a/Marlin/src/HAL/LPC1768/HAL.cpp +++ b/Marlin/src/HAL/LPC1768/HAL.cpp @@ -23,11 +23,22 @@ #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); uint32_t MarlinHAL::adc_result = 0; +pin_t MarlinHAL::adc_pin = 0; // U8glib required functions extern "C" { @@ -48,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() { @@ -112,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/HAL.h b/Marlin/src/HAL/LPC1768/HAL.h index 6e417fa50d..3986a399e6 100644 --- a/Marlin/src/HAL/LPC1768/HAL.h +++ b/Marlin/src/HAL/LPC1768/HAL.h @@ -100,8 +100,8 @@ extern DefaultSerial1 USBSerial; #else #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 || ENABLED(DWINOS_4) - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.available() + #if HAS_DGUS_LCD || ENABLED(DWINOS_4) + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.available() #endif #endif @@ -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 @@ -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 @@ -241,15 +243,18 @@ public: // Begin ADC sampling on the given pin. Called from Temperature::isr! static uint32_t adc_result; - static void adc_start(const pin_t pin) { - adc_result = FilteredADC::read(pin) >> (16 - HAL_ADC_RESOLUTION); // returns 16bit value, reduce to required bits - } + static pin_t adc_pin; + + static void adc_start(const pin_t pin) { adc_pin = pin; } // Is the ADC ready for reading? - static bool adc_ready() { return true; } + static bool adc_ready() { return LPC176x::adc_hardware.done(LPC176x::pin_get_adc_channel(adc_pin)); } // The current value of the ADC register - static uint16_t adc_value() { return uint16_t(adc_result); } + static uint16_t adc_value() { + adc_result = FilteredADC::read(adc_pin) >> (16 - HAL_ADC_RESOLUTION); // returns 16bit value, reduce to required bits + return uint16_t(adc_result); + } /** * Set the PWM duty cycle for the pin to the given value. diff --git a/Marlin/src/HAL/LPC1768/HAL_SPI.cpp b/Marlin/src/HAL/LPC1768/HAL_SPI.cpp index 257d8579e2..6ce7f75552 100644 --- a/Marlin/src/HAL/LPC1768/HAL_SPI.cpp +++ b/Marlin/src/HAL/LPC1768/HAL_SPI.cpp @@ -60,7 +60,7 @@ // ------------------------ // Public functions // ------------------------ -#if ENABLED(LPC_SOFTWARE_SPI) +#if ENABLED(SOFTWARE_SPI) // Software SPI @@ -161,7 +161,7 @@ // TODO: Implement this method } -#endif // LPC_SOFTWARE_SPI +#endif // SOFTWARE_SPI /** * @brief Wait until TXE (tx empty) flag is set and BSY (busy) flag unset. @@ -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/LPC1768/MinSerial.cpp b/Marlin/src/HAL/LPC1768/MinSerial.cpp index 7a1c038c0b..368bcb5259 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/LPC1768/eeprom_sdcard.cpp b/Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp index 1991d79719..5ebd437c1e 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/LPC1768/endstop_interrupts.h b/Marlin/src/HAL/LPC1768/endstop_interrupts.h index e4ac17f608..7a67b958b4 100644 --- a/Marlin/src/HAL/LPC1768/endstop_interrupts.h +++ b/Marlin/src/HAL/LPC1768/endstop_interrupts.h @@ -44,147 +44,171 @@ 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 _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN + #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 _ATTACH(Z_MIN_PIN); #endif - #if HAS_Z2_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 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 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 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 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." + #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." + #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." + #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." + #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." + #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." + #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." + #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." + #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." + #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." + #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." + #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." + #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/LPC1768/inc/Conditionals_LCD.h b/Marlin/src/HAL/LPC1768/inc/Conditionals_LCD.h index 32ef908d63..5f1c4b1601 100644 --- a/Marlin/src/HAL/LPC1768/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/LPC1768/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_FSMC_TFT - #error "Sorry! FSMC TFT displays are not current available for HAL/LPC1768." -#endif diff --git a/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h b/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h index 3549950008..0b03cb2aea 100644 --- a/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h +++ b/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h @@ -23,12 +23,12 @@ #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 // LPC1768 boards seem to lose steps when saving to EEPROM during print (issue #20785) // TODO: Which other boards are incompatible? #if defined(MCU_LPC1768) && ENABLED(FLASH_EEPROM_EMULATION) && PRINTCOUNTER_SAVE_INTERVAL > 0 - #define PRINTCOUNTER_SYNC 1 + #define PRINTCOUNTER_SYNC #endif diff --git a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h index 8265d58a6e..2782f225b0 100644 --- a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h +++ b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h @@ -77,6 +77,10 @@ static_assert(!(NUM_SERVOS && ENABLED(FAST_PWM_FAN)), "BLTOUCH and Servos are in #endif #endif +#if HAS_FSMC_TFT + #error "Sorry! FSMC TFT displays are not current available for HAL/LPC1768." +#endif + static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported on LPC176x."); /** @@ -95,7 +99,7 @@ static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported o #if USING_HW_SERIAL0 #define IS_TX0(P) (P == P0_02) #define IS_RX0(P) (P == P0_03) - #if IS_TX0(TMC_SW_MISO) || IS_RX0(TMC_SW_MOSI) + #if IS_TX0(TMC_SPI_MISO) || IS_RX0(TMC_SPI_MOSI) #error "Serial port pins (0) conflict with Trinamic SPI pins!" #elif HAS_PRUSA_MMU1 && (IS_TX0(E_MUX1_PIN) || IS_RX0(E_MUX0_PIN)) #error "Serial port pins (0) conflict with Multi-Material-Unit multiplexer pins!" @@ -111,7 +115,7 @@ static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported o #define IS_RX1(P) (P == P0_16) #define _IS_TX1_1 IS_TX1 #define _IS_RX1_1 IS_RX1 - #if IS_TX1(TMC_SW_SCK) + #if IS_TX1(TMC_SPI_SCK) #error "Serial port pins (1) conflict with other pins!" #elif HAS_ROTARY_ENCODER #if IS_TX1(BTN_EN2) || IS_RX1(BTN_EN1) @@ -146,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!" @@ -197,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!" @@ -237,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/LPC1768/main.cpp b/Marlin/src/HAL/LPC1768/main.cpp deleted file mode 100644 index 419c99793f..0000000000 --- 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 - LOOP_L_N(i, 6) { - 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 diff --git a/Marlin/src/HAL/LPC1768/pinsDebug.h b/Marlin/src/HAL/LPC1768/pinsDebug.h index a2f5c123a2..975511be9a 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/LPC1768/spi_pins.h b/Marlin/src/HAL/LPC1768/spi_pins.h index e7d774742f..babe8a11d7 100644 --- a/Marlin/src/HAL/LPC1768/spi_pins.h +++ b/Marlin/src/HAL/LPC1768/spi_pins.h @@ -23,11 +23,11 @@ #include "../../core/macros.h" -#if BOTH(SDSUPPORT, HAS_MARLINUI_U8GLIB) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_ENABLE == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) - #define LPC_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 - // spiBeginTransaction. +#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 + // spiBeginTransaction. #endif /** onboard SD card */ diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp index 804fc85e79..2342de002d 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 @@ -28,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); @@ -47,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(const uint16_t inReg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) @@ -70,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(inReg); - LOOP_L_N(i, 4) { + 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 @@ -101,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 @@ -124,22 +126,23 @@ 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_SPI, while (isBusy())); + TERN_(TFT_SHARED_IO, while (isBusy())); } #endif // HAS_SPI_TFT +#endif // TARGET_LPC1768 diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.h b/Marlin/src/HAL/LPC1768/tft/tft_spi.h index dad393981e..6d5829fc73 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.h +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.h @@ -49,41 +49,41 @@ #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 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(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); 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(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); } + 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_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp b/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp index 68a2176f5e..74596935e9 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 @@ -43,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); @@ -83,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++) { @@ -92,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]), @@ -105,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) { @@ -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/LPC1768/tft/xpt2046.h b/Marlin/src/HAL/LPC1768/tft/xpt2046.h index 7c456cf00e..8fdcacf926 100644 --- a/Marlin/src/HAL/LPC1768/tft/xpt2046.h +++ b/Marlin/src/HAL/LPC1768/tft/xpt2046.h @@ -65,12 +65,12 @@ private: 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 @@ public: 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/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp b/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp index f116a9b80a..f6ed7b0e7e 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; @@ -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/HAL.h b/Marlin/src/HAL/NATIVE_SIM/HAL.h index 52e5eb4f39..58f084af85 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/NATIVE_SIM/inc/SanityCheck.h b/Marlin/src/HAL/NATIVE_SIM/inc/SanityCheck.h index 2d7bef23a3..615e5254c9 100644 --- a/Marlin/src/HAL/NATIVE_SIM/inc/SanityCheck.h +++ b/Marlin/src/HAL/NATIVE_SIM/inc/SanityCheck.h @@ -31,7 +31,7 @@ #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on LINUX." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for HAL/LINUX." #endif #if HAS_TMC_SW_SERIAL diff --git a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp new file mode 100644 index 0000000000..e75826c58a --- /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 aa90eb39a3..28821acbd0 100644 --- a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h +++ b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h @@ -27,35 +27,19 @@ */ #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); -} - -inline int8_t get_pin_mode(pin_t pin) { - if (!VALID_PIN(pin)) return -1; - return 0; -} - -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 - return false; - - 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)); -} +// Active ADC function/mode/code values for PINSEL registers +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); diff --git a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h index a5138e0ccb..9b1bae9a58 100644 --- a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h +++ b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h @@ -24,8 +24,8 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_ENABLE == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) - #define LPC_SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently +#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 // spiBeginTransaction. diff --git a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h index f412e09e11..944b8267f6 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h @@ -33,35 +33,35 @@ #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 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(const uint16_t inReg); + 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(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); } + 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 4e999f88ff..c546646d16 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h @@ -62,12 +62,12 @@ private: 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 @@ public: 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/u8g/LCD_I2C_routines.h b/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_I2C_routines.h index 6d5f91d3ba..ec263b6dd3 100644 --- a/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_I2C_routines.h +++ b/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_I2C_routines.h @@ -34,4 +34,3 @@ void u8g_i2c_stop(); #ifdef __cplusplus } #endif - diff --git a/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_defines.h b/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_defines.h index 44ffbfeb90..2a50eddcd4 100644 --- a/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_defines.h +++ b/Marlin/src/HAL/NATIVE_SIM/u8g/LCD_defines.h @@ -40,5 +40,3 @@ uint8_t u8g_com_ST7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void #define U8G_COM_T6963 u8g_com_null_fn #define U8G_COM_FAST_PARALLEL u8g_com_null_fn #define U8G_COM_UC_I2C u8g_com_null_fn - - 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 7be84580b1..9184e2f618 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; @@ -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.cpp b/Marlin/src/HAL/SAMD21/HAL.cpp index 14c439eeb9..1bc0406ab3 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/SAMD21/HAL.h b/Marlin/src/HAL/SAMD21/HAL.h index 1854e523ed..fe72859549 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/SAMD21/HAL_SPI.cpp b/Marlin/src/HAL/SAMD21/HAL_SPI.cpp index 0fc530cdb2..e01f540cf8 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 @@ -64,7 +64,7 @@ } void spiInit(uint8_t spiRate) { - // Use datarates Marlin uses + // Use Marlin datarates uint32_t clock; switch (spiRate) { case SPI_FULL_SPEED: clock = 8000000; break; diff --git a/Marlin/src/HAL/SAMD21/endstop_interrupts.h b/Marlin/src/HAL/SAMD21/endstop_interrupts.h index d8711aa018..37fdb7504b 100644 --- a/Marlin/src/HAL/SAMD21/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD21/endstop_interrupts.h @@ -54,31 +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_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_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_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 \ && !MATCH_X_MAX_EILINE(P) && !MATCH_X_MIN_EILINE(P) \ @@ -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) \ @@ -100,153 +106,177 @@ 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." + #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." + #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." + #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." + #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." + #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 USE_Z_MIN #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 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 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 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 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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_Z_MIN_PROBE #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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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/SAMD21/fastio.h b/Marlin/src/HAL/SAMD21/fastio.h index db64f2166f..471e8b62ab 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) @@ -213,4 +213,3 @@ #define DIO53_PIN PIN_PA21 #define DIO54_PIN PIN_PA06 #define DIO55_PIN PIN_PA07 - diff --git a/Marlin/src/HAL/SAMD21/inc/Conditionals_LCD.h b/Marlin/src/HAL/SAMD21/inc/Conditionals_LCD.h index ca467937c3..9d58e45432 100644 --- a/Marlin/src/HAL/SAMD21/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/SAMD21/inc/Conditionals_LCD.h @@ -20,12 +20,4 @@ * */ -/** - * SAMD21 HAL developed by Bart Meijer (brupje) - * Based on SAMD51 HAL by Giuliano Zaro (AKA GMagician) - */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/SAMD21." -#endif diff --git a/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h b/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h index 7315dc12a7..87d3350c94 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/SAMD21/inc/SanityCheck.h b/Marlin/src/HAL/SAMD21/inc/SanityCheck.h index 95fa5e5940..83fafc9689 100644 --- a/Marlin/src/HAL/SAMD21/inc/SanityCheck.h +++ b/Marlin/src/HAL/SAMD21/inc/SanityCheck.h @@ -29,6 +29,10 @@ * Test SAMD21 specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/SAMD21." +#endif + #if SERVO_TC == MF_TIMER_RTC #error "Servos can't use RTC timer" #endif @@ -37,12 +41,12 @@ #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) - #error "Features requiring Hardware PWM (FAST_PWM_FAN) are not yet supported on SAMD21." + #error "Features requiring Hardware PWM (FAST_PWM_FAN) are not yet supported for HAL/SAMD21." #endif #if ENABLED(POSTMORTEM_DEBUGGING) 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 02dc772296..025e5a3bb6 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__ diff --git a/Marlin/src/HAL/SAMD51/HAL.cpp b/Marlin/src/HAL/SAMD51/HAL.cpp index 8c102b643d..8ec5d5a86c 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 @@ -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/SAMD51/HAL.h b/Marlin/src/HAL/SAMD51/HAL.h index fe29d6c7f4..c96401fd97 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/SAMD51/HAL_SPI.cpp b/Marlin/src/HAL/SAMD51/HAL_SPI.cpp index 58fdfe9499..63d3971965 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/endstop_interrupts.h b/Marlin/src/HAL/SAMD51/endstop_interrupts.h index e0e811c3a0..84b6c46da9 100644 --- a/Marlin/src/HAL/SAMD51/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD51/endstop_interrupts.h @@ -53,31 +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_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_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_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 \ && !MATCH_X_MAX_EILINE(P) && !MATCH_X_MIN_EILINE(P) \ @@ -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) \ @@ -99,153 +105,153 @@ 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." + #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." + #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." + #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." + #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." + #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 USE_Z_MIN #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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_Z_MIN_PROBE #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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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 USE_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/fastio.h b/Marlin/src/HAL/SAMD51/fastio.h index 0acf481317..3d43bdb24d 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/inc/Conditionals_LCD.h b/Marlin/src/HAL/SAMD51/inc/Conditionals_LCD.h index 932348c52f..5f1c4b1601 100644 --- a/Marlin/src/HAL/SAMD51/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/SAMD51/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/SAMD51." -#endif diff --git a/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h b/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h index ce6d3fdde2..295596b78b 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/SAMD51/inc/SanityCheck.h b/Marlin/src/HAL/SAMD51/inc/SanityCheck.h index ae1bc2f3ef..4719ac6eb8 100644 --- a/Marlin/src/HAL/SAMD51/inc/SanityCheck.h +++ b/Marlin/src/HAL/SAMD51/inc/SanityCheck.h @@ -29,6 +29,10 @@ * Test SAMD51 specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for HAL/SAMD51." +#endif + #if ENABLED(FLASH_EEPROM_EMULATION) #warning "Did you activate the SmartEEPROM? See https://github.com/GMagician/SAMD51-SmartEEprom-Manager/releases" #endif @@ -50,12 +54,12 @@ #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 - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on SAMD51." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for HAL/SAMD51." #endif #if ENABLED(POSTMORTEM_DEBUGGING) diff --git a/Marlin/src/HAL/SAMD51/spi_pins.h b/Marlin/src/HAL/SAMD51/spi_pins.h index f1e4fd4302..2c7cbeb994 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/STM32/HAL.cpp b/Marlin/src/HAL/STM32/HAL.cpp index aff52f597f..ce49f27a8e 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(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/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 3e5afa60d0..81ac331ebc 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" @@ -56,64 +57,64 @@ #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 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 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 "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 "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 || ENABLED(DGUS_LCD_UI_CREALITY_TOUCH) || ENABLED(DWINOS_4) - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() #endif #endif @@ -138,7 +139,7 @@ typedef double isr_float_t; // FPU ops are used for single-precision, so use double for ISRs. -#ifdef STM32G0B1xx +#if defined(STM32G0B1xx) || defined(STM32H7xx) typedef int32_t pin_t; #else typedef int16_t pin_t; @@ -159,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 @@ -174,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/STM32/HAL_SPI.cpp b/Marlin/src/HAL/STM32/HAL_SPI.cpp index 40d320d5e8..278d209c47 100644 --- a/Marlin/src/HAL/STM32/HAL_SPI.cpp +++ b/Marlin/src/HAL/STM32/HAL_SPI.cpp @@ -78,7 +78,6 @@ static SPISettings spiConfig; case SPI_SPEED_6: delaySPIFunc = &delaySPI_2000; break; // desired: 250,000 actual: ~210K default: delaySPIFunc = &delaySPI_4000; break; // desired: 125,000 actual: ~123K } - SPI.begin(); } // Begin SPI transaction, set clock, bit order, data mode diff --git a/Marlin/src/HAL/STM32/MarlinSerial.cpp b/Marlin/src/HAL/STM32/MarlinSerial.cpp index 37a8f40fd0..9f0b003a31 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 b0fcff20c1..f1fc806acb 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(); @@ -135,18 +138,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/HAL/STM32/eeprom_sdcard.cpp b/Marlin/src/HAL/STM32/eeprom_sdcard.cpp index 473b656f9a..1b5c0ae5b2 100644 --- a/Marlin/src/HAL/STM32/eeprom_sdcard.cpp +++ b/Marlin/src/HAL/STM32/eeprom_sdcard.cpp @@ -48,7 +48,7 @@ static char _ALIGN(4) HAL_eeprom_data[MARLIN_EEPROM_SIZE]; bool PersistentStore::access_start() { if (!card.isMounted()) return false; - SdFile file, root = card.getroot(); + MediaFile file, root = card.getroot(); if (!file.open(&root, EEPROM_FILENAME, O_RDONLY)) return true; @@ -63,7 +63,7 @@ bool PersistentStore::access_start() { bool PersistentStore::access_finish() { if (!card.isMounted()) return false; - SdFile file, root = card.getroot(); + MediaFile file, root = card.getroot(); int bytes_written = 0; if (file.open(&root, EEPROM_FILENAME, O_CREAT | O_WRITE | O_TRUNC)) { bytes_written = file.write(HAL_eeprom_data, MARLIN_EEPROM_SIZE); diff --git a/Marlin/src/HAL/STM32/endstop_interrupts.h b/Marlin/src/HAL/STM32/endstop_interrupts.h index d2f20ba1c7..0c92053d42 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_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_(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)); + 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/STM32/fastio.cpp b/Marlin/src/HAL/STM32/fastio.cpp index b34555b8c8..a4b3ba70c9 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/inc/Conditionals_adv.h b/Marlin/src/HAL/STM32/inc/Conditionals_adv.h index 451c94f25d..032716a294 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 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 c5ce66a26f..6c97a635b3 100644 --- a/Marlin/src/HAL/STM32/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32/inc/Conditionals_post.h @@ -24,11 +24,11 @@ // 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 // Some STM32F4 boards may lose steps when saving to EEPROM during print (PR #17946) #if defined(STM32F4xx) && ENABLED(FLASH_EEPROM_EMULATION) && PRINTCOUNTER_SAVE_INTERVAL > 0 - #define PRINTCOUNTER_SYNC 1 + #define PRINTCOUNTER_SYNC #endif diff --git a/Marlin/src/HAL/STM32/inc/SanityCheck.h b/Marlin/src/HAL/STM32/inc/SanityCheck.h index e8ddfa1720..80d0314dbb 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." @@ -51,11 +51,15 @@ #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 */ #define _CHECK_SERIAL_PIN(N) (( \ - BTN_EN1 == N || DOGLCD_CS == N || HEATER_BED_PIN == N || FAN_PIN == N || \ + BTN_EN1 == N || DOGLCD_CS == N || HEATER_BED_PIN == N || FAN0_PIN == N || \ SDIO_D2_PIN == N || SDIO_D3_PIN == N || SDIO_CK_PIN == N || SDIO_CMD_PIN == N \ )) #define CHECK_SERIAL_PIN(T,N) defined(UART##N##_##T##_PIN) && _CHECK_SERIAL_PIN(UART##N##_##T##_PIN) diff --git a/Marlin/src/HAL/STM32/pinsDebug.h b/Marlin/src/HAL/STM32/pinsDebug.h index 29a4e003f9..13990a69f5 100644 --- a/Marlin/src/HAL/STM32/pinsDebug.h +++ b/Marlin/src/HAL/STM32/pinsDebug.h @@ -111,13 +111,14 @@ const XrefInfo pin_xref[] PROGMEM = { #if NUM_ANALOG_FIRST >= NUM_DIGITAL_PINS #define HAS_HIGH_ANALOG_PINS 1 #endif -#define NUM_ANALOG_LAST ((NUM_ANALOG_FIRST) + (NUM_ANALOG_INPUTS) - 1) +#ifndef NUM_ANALOG_LAST + #define NUM_ANALOG_LAST ((NUM_ANALOG_FIRST) + (NUM_ANALOG_INPUTS) - 1) +#endif #define NUMBER_PINS_TOTAL ((NUM_DIGITAL_PINS) + TERN0(HAS_HIGH_ANALOG_PINS, NUM_ANALOG_INPUTS)) #define VALID_PIN(P) (WITHIN(P, 0, (NUM_DIGITAL_PINS) - 1) || TERN0(HAS_HIGH_ANALOG_PINS, WITHIN(P, NUM_ANALOG_FIRST, NUM_ANALOG_LAST))) #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 @@ -185,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/STM32/sdio.cpp b/Marlin/src/HAL/STM32/sdio.cpp index 72518ef1cc..de388b8e14 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/STM32/temp_soc.h b/Marlin/src/HAL/STM32/temp_soc.h new file mode 100644 index 0000000000..05fad695c3 --- /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_MV) / 1000.0f)) / ((TS_TYPICAL_SLOPE) / 1000) + TS_TYPICAL_TEMP) + +#endif diff --git a/Marlin/src/HAL/STM32/tft/gt911.cpp b/Marlin/src/HAL/STM32/tft/gt911.cpp index 82b7c5b103..52119c19b7 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,13 +150,13 @@ 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(); } -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 260c195eca..75e025245d 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 cf9e569336..8e4f97d0a3 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,48 +63,48 @@ 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 decreases 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; + // 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; __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_RCC_DMA2_CLK_ENABLE(); + HAL_SRAM_Init(&SRAMx, &timing, &extTiming); #ifdef STM32F1xx - DMAtx.Instance = DMA2_Channel1; + __HAL_RCC_DMA1_CLK_ENABLE(); + DMAtx.Instance = DMA1_Channel1; #elif defined(STM32F4xx) + __HAL_RCC_DMA2_CLK_ENABLE(); DMAtx.Instance = DMA2_Stream0; DMAtx.Init.Channel = DMA_CHANNEL_0; DMAtx.Init.FIFOMode = DMA_FIFOMODE_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(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; @@ -161,28 +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 41ff8c9a83..1776cbdb0f 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.h @@ -31,6 +31,10 @@ #error "FSMC TFT is currently only supported on STM32F1 and STM32F4 hardware." #endif +#ifndef HAL_SRAM_MODULE_ENABLED + #error "SRAM module disabled for the STM32 framework (HAL_SRAM_MODULE_ENABLED)! Please consult the development team." +#endif + #ifndef LCD_READ_ID #define LCD_READ_ID 0x04 // Read display identification information (0xD3 on ILI9341) #endif @@ -41,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; @@ -58,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(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); 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(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); } + 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_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; @@ -99,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 @@ -123,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 @@ -139,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 2be900618f..3bbc39f20a 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(const tft_data_t inReg) { 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,31 @@ 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) { -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 8d83839bb3..90cc58d8a5 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; @@ -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(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); - 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(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); } - inline static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { WriteMultiple(Color, Count); } + 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; + 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_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 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 5e79f156d2..cca247e20d 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); @@ -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; +void TFT_SPI::dataTransferBegin(uint16_t dataSize) { + SPIx.Init.DataSize = dataSize; HAL_SPI_Init(&SPIx); WRITE(TFT_CS_PIN, LOW); } @@ -132,11 +155,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,34 +168,49 @@ uint32_t TFT_SPI::GetID() { return id; } -uint32_t TFT_SPI::ReadID(uint16_t Reg) { - uint32_t Data = 0; +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; - DataTransferBegin(DATASIZE_8BIT); - WriteReg(Reg); + 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); - DataTransferEnd(); + #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 - SPIx.Init.BaudRatePrescaler = BaudRatePrescaler; + dataTransferEnd(); + SPIx.Init.BaudRatePrescaler = oldPrescaler; #endif - return Data >> 7; + return data >> 7; } bool TFT_SPI::isBusy() { @@ -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,91 +234,117 @@ 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(); + 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); + #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) { +void TFT_SPI::transmit(uint16_t data) { #if TFT_MISO_PIN == TFT_MOSI_PIN 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->DR = Data; + SPIx.Instance->TXDR = data; - while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) {} - while ( __HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_SR_EOT)) {} + + __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 #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_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); - TERN_(TFT_SHARED_SPI, while (isBusy())); + __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 +void TFT_SPI::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + transmitDMA(memoryIncrease, data, count); HAL_DMA_PollForTransfer(&DMAtx, HAL_DMA_FULL_TRANSFER, HAL_MAX_DELAY); - Abort(); + #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; + 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 6b8613e3f8..6345c91f6c 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,48 +40,49 @@ #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 +#define DMA_MAX_WORDS 0xFFFF class TFT_SPI { private: 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(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); #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(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); } + 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_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32/tft/xpt2046.cpp b/Marlin/src/HAL/STM32/tft/xpt2046.cpp index cf4a8f18e9..f0c54f3690 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); @@ -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); @@ -117,14 +130,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,17 +153,34 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { return (data[0] + data[1]) >> 1; } -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); +uint16_t XPT2046::hardwareIO(uint16_t data) { + #ifdef STM32H7xx + MODIFY_REG(SPIx.Instance->CR2, SPI_CR2_TSIZE, 1); + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR1, SPI_CR1_CSTART); - return SPIx.Instance->DR; + SPIx.Instance->TXDR = data; + + 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) { +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 71de6b0025..5ed0881ec6 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" @@ -69,13 +73,13 @@ private: 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/STM32/timers.cpp b/Marlin/src/HAL/STM32/timers.cpp index e68b59c46f..54506cb451 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 }; @@ -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/STM32/usb_host.cpp b/Marlin/src/HAL/STM32/usb_host.cpp index d77f0b28e9..afafe1d4f3 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" @@ -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"); diff --git a/Marlin/src/HAL/STM32F1/HAL.cpp b/Marlin/src/HAL/STM32F1/HAL.cpp index 4d3140001e..373116ba39 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) @@ -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/HAL/STM32F1/HAL.h b/Marlin/src/HAL/STM32F1/HAL.h index 43c286ca20..ca7361f88a 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 @@ -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 || ENABLED(DGUS_LCD_UI_CREALITY_TOUCH) || ENABLED(DWINOS_4) - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() #endif #endif @@ -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!? @@ -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/STM32F1/MarlinSerial.cpp b/Marlin/src/HAL/STM32F1/MarlinSerial.cpp index 6dabcde51e..568fc05d41 100644 --- a/Marlin/src/HAL/STM32F1/MarlinSerial.cpp +++ b/Marlin/src/HAL/STM32F1/MarlinSerial.cpp @@ -77,7 +77,7 @@ static inline __always_inline void my_usart_irq(ring_buffer *rb, ring_buffer *wb // Not every MarlinSerial port should handle emergency parsing. // It would not make sense to parse GCode from TMC responses, for example. constexpr bool serial_handles_emergency(int port) { - return false + return (false #ifdef SERIAL_PORT || (SERIAL_PORT) == port #endif @@ -87,7 +87,7 @@ constexpr bool serial_handles_emergency(int port) { #ifdef LCD_SERIAL_PORT || (LCD_SERIAL_PORT) == port #endif - ; + ); } #define DEFINE_HWSERIAL_MARLIN(name, n) \ @@ -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 dda32fe7a2..53bcd48476 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/SPI.h b/Marlin/src/HAL/STM32F1/SPI.h index 0941fa55b7..27bf684388 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 @@ private: friend class SPIClass; }; -/* +/** * Kept for compat. */ static const uint8_t ff = 0xFF; @@ -233,7 +233,7 @@ public: void onReceive(void(*)()); void onTransmit(void(*)()); - /* + /** * I/O */ @@ -314,7 +314,7 @@ public: uint8_t dmaSendRepeat(uint16_t length); uint8_t dmaSendAsync(const void * transmitBuf, uint16_t length, bool minc = 1); - /* + /** * Pin accessors */ @@ -398,7 +398,7 @@ private: void updateSettings(); - /* + /** * Functions added for DMA transfers with Callback. * Experimental. */ 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 26ea1ea19a..c57350aa2e 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" @@ -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/eeprom_sdcard.cpp b/Marlin/src/HAL/STM32F1/eeprom_sdcard.cpp index d608ccee14..9cfa97c1ab 100644 --- a/Marlin/src/HAL/STM32F1/eeprom_sdcard.cpp +++ b/Marlin/src/HAL/STM32F1/eeprom_sdcard.cpp @@ -47,7 +47,7 @@ static char _ALIGN(4) HAL_eeprom_data[MARLIN_EEPROM_SIZE]; bool PersistentStore::access_start() { if (!card.isMounted()) return false; - SdFile file, root = card.getroot(); + MediaFile file, root = card.getroot(); if (!file.open(&root, EEPROM_FILENAME, O_RDONLY)) return true; // false aborts the save @@ -62,7 +62,7 @@ bool PersistentStore::access_start() { bool PersistentStore::access_finish() { if (!card.isMounted()) return false; - SdFile file, root = card.getroot(); + MediaFile file, root = card.getroot(); int bytes_written = 0; if (file.open(&root, EEPROM_FILENAME, O_CREAT | O_WRITE | O_TRUNC)) { bytes_written = file.write(HAL_eeprom_data, MARLIN_EEPROM_SIZE); diff --git a/Marlin/src/HAL/STM32F1/endstop_interrupts.h b/Marlin/src/HAL/STM32F1/endstop_interrupts.h index a1ef8a8c3a..6ed920183b 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_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_(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)); + 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/fast_pwm.cpp b/Marlin/src/HAL/STM32F1/fast_pwm.cpp index 297804a3ac..c3f96f0f92 100644 --- a/Marlin/src/HAL/STM32F1/fast_pwm.cpp +++ b/Marlin/src/HAL/STM32F1/fast_pwm.cpp @@ -39,7 +39,7 @@ inline uint8_t timer_and_index_for_pin(const pin_t pin, timer_dev **timer_ptr) { void MarlinHAL::set_pwm_duty(const pin_t pin, const uint16_t v, const uint16_t v_size/*=255*/, const bool invert/*=false*/) { const uint16_t duty = invert ? v_size - v : v; if (PWM_PIN(pin)) { - timer_dev *timer; UNUSED(timer); + timer_dev *timer; if (timer_freq[timer_and_index_for_pin(pin, &timer)] == 0) set_pwm_frequency(pin, PWM_FREQUENCY); const uint8_t channel = PIN_MAP[pin].timer_channel; @@ -55,7 +55,7 @@ void MarlinHAL::set_pwm_duty(const pin_t pin, const uint16_t v, const uint16_t v void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { if (!PWM_PIN(pin)) return; // Don't proceed if no hardware timer - timer_dev *timer; UNUSED(timer); + timer_dev *timer; timer_freq[timer_and_index_for_pin(pin, &timer)] = f_desired; // Protect used timers diff --git a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h index 656fbe1ce2..f130f5cad8 100644 --- a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h @@ -24,11 +24,11 @@ // 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 -// Allow SDSUPPORT to be disabled -#if DISABLED(SDSUPPORT) - #undef SDIO_SUPPORT +// Allow for no media drives +#if !HAS_MEDIA + #undef ONBOARD_SDIO #endif diff --git a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h index fe8f6e0ec2..1da42dcc8f 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/HAL/STM32F1/pinsDebug.h b/Marlin/src/HAL/STM32F1/pinsDebug.h index 7828479658..6f8e48f455 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,12 +89,12 @@ 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; 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 @@ -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/STM32F1/sdio.cpp b/Marlin/src/HAL/STM32F1/sdio.cpp index 6e41d2cbf1..1ab76440b7 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" @@ -136,8 +136,13 @@ bool SDIO_ReadBlock_DMA(uint32_t blockAddress, uint8_t *data) { } bool SDIO_ReadBlock(uint32_t blockAddress, uint8_t *data) { - uint32_t retries = SDIO_READ_RETRIES; - while (retries--) if (SDIO_ReadBlock_DMA(blockAddress, data)) return true; + uint8_t retries = SDIO_READ_RETRIES; + while (retries--) { + if (SDIO_ReadBlock_DMA(blockAddress, data)) return true; + #if SD_RETRY_DELAY_MS + delay(SD_RETRY_DELAY_MS); + #endif + } return false; } diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp index 512e70cf3f..51f70b9365 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp @@ -20,6 +20,8 @@ * */ +#ifdef __STM32F1__ + #include "../../../inc/MarlinConfig.h" #if HAS_FSMC_TFT @@ -85,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; @@ -179,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(const uint16_t inReg) { + LCD->REG = inReg; __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(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; @@ -223,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 @@ -239,24 +241,28 @@ 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 } #endif // HAS_FSMC_TFT + +#endif // __STM32F1__ diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h index 8d26f6eac0..214acf127e 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h @@ -30,10 +30,17 @@ #include +#ifndef FSMC_DMA_DEV + #define FSMC_DMA_DEV DMA2 +#endif +#ifndef FSMC_DMA_CHANNEL + #define FSMC_DMA_CHANNEL DMA_CH5 +#endif + #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 @@ -47,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(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); 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(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); } + 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_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.cpp b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp index bb495d5f58..f26103b25d 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp @@ -20,6 +20,8 @@ * */ +#ifdef __STM32F1__ + #include "../../../inc/MarlinConfig.h" #if HAS_SPI_TFT @@ -28,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); @@ -68,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); } @@ -78,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; @@ -91,26 +93,25 @@ uint32_t TFT_SPI::GetID() { return id; } -uint32_t TFT_SPI::ReadID(uint16_t Reg) { - #if !PIN_EXISTS(TFT_MISO) - return 0; - #else - uint8_t d = 0; - uint32_t data = 0; - SPIx.setClockDivider(SPI_CLOCK_DIV16); - DataTransferBegin(DATASIZE_8BIT); - WriteReg(Reg); +uint32_t TFT_SPI::readID(const uint16_t inReg) { + uint32_t data = 0; - LOOP_L_N(i, 4) { - SPIx.read((uint8_t*)&d, 1); + #if PIN_EXISTS(TFT_MISO) + SPIx.setClockDivider(SPI_CLOCK_DIV16); + dataTransferBegin(DATASIZE_8BIT); + writeReg(inReg); + + for (uint8_t i = 0; i < 4; ++i) { + uint8_t d; + SPIx.read(&d, 1); data = (data << 8) | d; } - DataTransferEnd(); + dataTransferEnd(); SPIx.setClockDivider(SPI_CLOCK_MAX); - - return data >> 7; #endif + + return data >> 7; } bool TFT_SPI::isBusy() { @@ -129,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 @@ -145,23 +146,25 @@ 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_SPI, while (isBusy())); + 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 + +#endif // __STM32F1__ diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.h b/Marlin/src/HAL/STM32F1/tft/tft_spi.h index 2bda8c21f7..af53f352be 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.h @@ -56,41 +56,41 @@ #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 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(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); 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(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); } + 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_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp b/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp index ac9ad072aa..845a57a814 100644 --- a/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp +++ b/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp @@ -20,6 +20,8 @@ * */ +#ifdef __STM32F1__ + #include "../../../inc/MarlinConfig.h" #if HAS_TFT_XPT2046 || HAS_RES_TOUCH_BUTTONS @@ -57,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); @@ -95,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++) { @@ -104,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]), @@ -117,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) { @@ -141,4 +143,6 @@ uint16_t XPT2046::SoftwareIO(uint16_t data) { return result; } -#endif // HAS_TFT_XPT2046 +#endif // HAS_TFT_XPT2046 || HAS_RES_TOUCH_BUTTONS + +#endif // __STM32F1__ diff --git a/Marlin/src/HAL/STM32F1/tft/xpt2046.h b/Marlin/src/HAL/STM32F1/tft/xpt2046.h index 7c456cf00e..8fdcacf926 100644 --- a/Marlin/src/HAL/STM32F1/tft/xpt2046.h +++ b/Marlin/src/HAL/STM32F1/tft/xpt2046.h @@ -65,12 +65,12 @@ private: 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 @@ public: 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/STM32F1/timers.h b/Marlin/src/HAL/STM32F1/timers.h index 0cd807fc84..557522f336 100644 --- a/Marlin/src/HAL/STM32F1/timers.h +++ b/Marlin/src/HAL/STM32F1/timers.h @@ -81,7 +81,7 @@ typedef uint16_t hal_timer_t; #endif #if MB(BTT_SKR_MINI_E3_V1_0, BTT_SKR_E3_DIP, BTT_SKR_MINI_E3_V1_2, MKS_ROBIN_LITE, MKS_ROBIN_E3D, MKS_ROBIN_E3) - // SKR Mini E3 boards use PA8 as FAN_PIN, so TIMER 1 is used for Fan PWM. + // SKR Mini E3 boards use PA8 as FAN0_PIN, so TIMER 1 is used for Fan PWM. #ifdef STM32_HIGH_DENSITY #define MF_TIMER_SERVO0 8 // tone.cpp uses Timer 4 #else diff --git a/Marlin/src/HAL/TEENSY31_32/HAL.h b/Marlin/src/HAL/TEENSY31_32/HAL.h index a7aa9f0da2..fe913ed583 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/TEENSY31_32/endstop_interrupts.h b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h index c1bbcb121b..954eb625a5 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_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_(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)); + 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/inc/Conditionals_LCD.h b/Marlin/src/HAL/TEENSY31_32/inc/Conditionals_LCD.h index 54ec166643..5f1c4b1601 100644 --- a/Marlin/src/HAL/TEENSY31_32/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/TEENSY31_32/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/TEENSY31_32." -#endif diff --git a/Marlin/src/HAL/TEENSY31_32/inc/SanityCheck.h b/Marlin/src/HAL/TEENSY31_32/inc/SanityCheck.h index dbce187673..c5b25f2cb5 100644 --- a/Marlin/src/HAL/TEENSY31_32/inc/SanityCheck.h +++ b/Marlin/src/HAL/TEENSY31_32/inc/SanityCheck.h @@ -25,22 +25,26 @@ * Test TEENSY35_36 specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for Teensy 3.1/3.2." +#endif + #if ENABLED(EMERGENCY_PARSER) #error "EMERGENCY_PARSER is not yet implemented for Teensy 3.1/3.2. Disable EMERGENCY_PARSER to continue." #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on Teensy 3.1/3.2." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for Teensy 3.1/3.2." #endif #if HAS_TMC_SW_SERIAL - #error "TMC220x Software Serial is not supported on Teensy 3.1/3.2." + #error "TMC220x Software Serial is not supported for Teensy 3.1/3.2." #endif #if ENABLED(POSTMORTEM_DEBUGGING) - #error "POSTMORTEM_DEBUGGING is not yet supported on Teensy 3.1/3.2." + #error "POSTMORTEM_DEBUGGING is not yet supported for Teensy 3.1/3.2." #endif #if USING_PULLDOWNS - #error "PULLDOWN pin mode is not available on Teensy 3.1/3.2 boards." + #error "PULLDOWN pin mode is not available for Teensy 3.1/3.2." #endif diff --git a/Marlin/src/HAL/TEENSY35_36/HAL.h b/Marlin/src/HAL/TEENSY35_36/HAL.h index 2a192e4718..24dcf2ebab 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/TEENSY35_36/endstop_interrupts.h b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h index 48d3bbbfa1..bc8e177fb7 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_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_(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)); + 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/inc/Conditionals_LCD.h b/Marlin/src/HAL/TEENSY35_36/inc/Conditionals_LCD.h index 632ee533ac..5f1c4b1601 100644 --- a/Marlin/src/HAL/TEENSY35_36/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/TEENSY35_36/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/TEENSY35_36." -#endif diff --git a/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h b/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h index 3308707371..843905a851 100644 --- a/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h +++ b/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h @@ -25,22 +25,26 @@ * Test TEENSY35_36 specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for Teensy 3.5/3.6." +#endif + #if ENABLED(EMERGENCY_PARSER) #error "EMERGENCY_PARSER is not yet implemented for Teensy 3.5/3.6. Disable EMERGENCY_PARSER to continue." #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on Teensy 3.5/3.6." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for Teensy 3.5/3.6." #endif #if HAS_TMC_SW_SERIAL - #error "TMC220x Software Serial is not supported on Teensy 3.5/3.6." + #error "TMC220x Software Serial is not supported for Teensy 3.5/3.6." #endif #if ENABLED(POSTMORTEM_DEBUGGING) - #error "POSTMORTEM_DEBUGGING is not yet supported on Teensy 3.5/3.6." + #error "POSTMORTEM_DEBUGGING is not yet supported for Teensy 3.5/3.6." #endif #if USING_PULLDOWNS - #error "PULLDOWN pin mode is not available on Teensy 3.5/3.6 boards." + #error "PULLDOWN pin mode is not available for Teensy 3.5/3.6." #endif diff --git a/Marlin/src/HAL/TEENSY35_36/pinsDebug.h b/Marlin/src/HAL/TEENSY35_36/pinsDebug.h index 7a2e1d6e59..8526febf10 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(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(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/HAL.h b/Marlin/src/HAL/TEENSY40_41/HAL.h index c54a2e8a0b..84c5847677 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/HAL/TEENSY40_41/endstop_interrupts.h b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h index 4c3ddec9f1..722912c890 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_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_(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_(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)); + 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/inc/Conditionals_LCD.h b/Marlin/src/HAL/TEENSY40_41/inc/Conditionals_LCD.h index 6a8540927b..5f1c4b1601 100644 --- a/Marlin/src/HAL/TEENSY40_41/inc/Conditionals_LCD.h +++ b/Marlin/src/HAL/TEENSY40_41/inc/Conditionals_LCD.h @@ -20,7 +20,3 @@ * */ #pragma once - -#if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for HAL/TEENSY40_41." -#endif diff --git a/Marlin/src/HAL/TEENSY40_41/inc/SanityCheck.h b/Marlin/src/HAL/TEENSY40_41/inc/SanityCheck.h index 3d2668d749..731658b4a3 100644 --- a/Marlin/src/HAL/TEENSY40_41/inc/SanityCheck.h +++ b/Marlin/src/HAL/TEENSY40_41/inc/SanityCheck.h @@ -25,18 +25,22 @@ * Test TEENSY41 specific configuration values for errors at compile-time. */ +#if HAS_SPI_TFT || HAS_FSMC_TFT + #error "Sorry! TFT displays are not available for Teensy 4.0/4.1." +#endif + #if ENABLED(EMERGENCY_PARSER) #error "EMERGENCY_PARSER is not yet implemented for Teensy 4.0/4.1. Disable EMERGENCY_PARSER to continue." #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY - #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported on Teensy 4.0/4.1." + #error "Features requiring Hardware PWM (FAST_PWM_FAN, SPINDLE_LASER_FREQUENCY) are not yet supported for Teensy 4.0/4.1." #endif #if HAS_TMC_SW_SERIAL - #error "TMC220x Software Serial is not supported on Teensy 4.0/4.1." + #error "TMC220x Software Serial is not supported for Teensy 4.0/4.1." #endif #if ENABLED(POSTMORTEM_DEBUGGING) - #error "POSTMORTEM_DEBUGGING is not yet supported on Teensy 4.0/4.1." + #error "POSTMORTEM_DEBUGGING is not yet supported for Teensy 4.0/4.1." #endif diff --git a/Marlin/src/HAL/TEENSY40_41/pinsDebug.h b/Marlin/src/HAL/TEENSY40_41/pinsDebug.h index fc90f671cf..54f3cb5885 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(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(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/HAL/platforms.h b/Marlin/src/HAL/platforms.h index 488980ce09..84ba7087b0 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/HAL/shared/Delay.cpp b/Marlin/src/HAL/shared/Delay.cpp index c64376d25d..31c3f45765 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/HAL/shared/HAL_ST7920.h b/Marlin/src/HAL/shared/HAL_ST7920.h index 4e362f96ba..305736c3a5 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/backtrace/unwmemaccess.cpp b/Marlin/src/HAL/shared/backtrace/unwmemaccess.cpp index a4151b38c2..da1cff4fcc 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/HAL/shared/eeprom_api.cpp b/Marlin/src/HAL/shared/eeprom_api.cpp index 47cfa5a2db..083ccc70d7 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/HAL/shared/eeprom_if_i2c.cpp b/Marlin/src/HAL/shared/eeprom_if_i2c.cpp index 6b559e234b..bba9c626a4 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/HAL/shared/esp_wifi.cpp b/Marlin/src/HAL/shared/esp_wifi.cpp index a55f5ca39f..8a6ac2dfa9 100644 --- a/Marlin/src/HAL/shared/esp_wifi.cpp +++ b/Marlin/src/HAL/shared/esp_wifi.cpp @@ -21,6 +21,9 @@ */ #include "../../inc/MarlinConfig.h" + +#if ENABLED(WIFISUPPORT) + #include "Delay.h" void esp_wifi_init(void) { // init ESP01 WIFI module pins @@ -41,3 +44,5 @@ void esp_wifi_init(void) { // init ESP01 WIFI module pi OUT_WRITE(ESP_WIFI_MODULE_ENABLE_PIN, HIGH); #endif } + +#endif // WIFISUPPORT diff --git a/Marlin/src/HAL/shared/fauxpins.h b/Marlin/src/HAL/shared/fauxpins.h new file mode 100644 index 0000000000..924bfba02a --- /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_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 +#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_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 +#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_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 +#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_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 +#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_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 +#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/HAL/shared/servo.cpp b/Marlin/src/HAL/shared/servo.cpp index b838800de6..bb9d618018 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 ed892ac813..43a3cf04a8 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -34,6 +34,10 @@ #include "HAL/shared/esp_wifi.h" #include "HAL/shared/cpu_exception/exception_hook.h" +#if ENABLED(WIFISUPPORT) + #include "HAL/shared/esp_wifi.h" +#endif + #ifdef ARDUINO #include #endif @@ -46,6 +50,9 @@ #include "module/settings.h" #include "module/stepper.h" #include "module/temperature.h" +#if ENABLED(FT_MOTION) + #include "module/ft_motion.h" +#endif #include "gcode/gcode.h" #include "gcode/parser.h" @@ -153,7 +160,7 @@ #include "feature/spindle_laser.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA CardReader card; #endif @@ -192,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 @@ -314,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; } @@ -349,14 +356,12 @@ 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(); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA inline void abortSDPrinting() { IF_DISABLED(NO_SD_AUTOSTART, card.autofile_cancel()); @@ -386,11 +391,11 @@ 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()); } } -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * Minimal management of Marlin's core activities: @@ -429,7 +434,7 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { if (has_blocks) gcode.reset_stepper_timeout(ms); // Reset timeout for M18/M84, M85 max 'kill', and laser. // M18 / M84 : Handle steppers inactive time timeout - #if HAS_DISABLE_INACTIVE_AXIS + #if HAS_DISABLE_IDLE_AXES if (gcode.stepper_inactive_time) { static bool already_shutdown_steppers; // = false @@ -439,16 +444,16 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { already_shutdown_steppers = true; // Individual axes will be disabled if configured - TERN_(DISABLE_INACTIVE_X, stepper.disable_axis(X_AXIS)); - TERN_(DISABLE_INACTIVE_Y, stepper.disable_axis(Y_AXIS)); - TERN_(DISABLE_INACTIVE_Z, stepper.disable_axis(Z_AXIS)); - TERN_(DISABLE_INACTIVE_I, stepper.disable_axis(I_AXIS)); - TERN_(DISABLE_INACTIVE_J, stepper.disable_axis(J_AXIS)); - TERN_(DISABLE_INACTIVE_K, stepper.disable_axis(K_AXIS)); - TERN_(DISABLE_INACTIVE_U, stepper.disable_axis(U_AXIS)); - TERN_(DISABLE_INACTIVE_V, stepper.disable_axis(V_AXIS)); - TERN_(DISABLE_INACTIVE_W, stepper.disable_axis(W_AXIS)); - TERN_(DISABLE_INACTIVE_E, stepper.disable_e_steppers()); + TERN_(DISABLE_IDLE_X, stepper.disable_axis(X_AXIS)); + TERN_(DISABLE_IDLE_Y, stepper.disable_axis(Y_AXIS)); + TERN_(DISABLE_IDLE_Z, stepper.disable_axis(Z_AXIS)); + TERN_(DISABLE_IDLE_I, stepper.disable_axis(I_AXIS)); + TERN_(DISABLE_IDLE_J, stepper.disable_axis(J_AXIS)); + TERN_(DISABLE_IDLE_K, stepper.disable_axis(K_AXIS)); + TERN_(DISABLE_IDLE_U, stepper.disable_axis(U_AXIS)); + TERN_(DISABLE_IDLE_V, stepper.disable_axis(V_AXIS)); + TERN_(DISABLE_IDLE_W, stepper.disable_axis(W_AXIS)); + TERN_(DISABLE_IDLE_E, stepper.disable_e_steppers()); TERN_(AUTO_BED_LEVELING_UBL, bedlevel.steppers_were_disabled()); } @@ -520,8 +525,8 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { if (ELAPSED(ms, next_cub_ms_##N)) { \ next_cub_ms_##N = ms + CUB_DEBOUNCE_DELAY_##N; \ CODE; \ - queue.inject(F(BUTTON##N##_GCODE)); \ - TERN_(HAS_MARLINUI_MENU, ui.quick_feedback()); \ + queue.inject(F(BUTTON##N##_GCODE)); \ + TERN_(HAS_MARLINUI_MENU, ui.quick_feedback()); \ } \ } \ }while(0) @@ -669,28 +674,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 ENABLED(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 // !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; @@ -699,22 +685,7 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { planner.set_e_position_mm(olde); planner.synchronize(); - #if ENABLED(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 // !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 // !SWITCHING_EXTRUDER + if (e_off) stepper.DISABLE_EXTRUDER(e_stepper); gcode.reset_stepper_timeout(ms); } @@ -753,6 +724,10 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { #endif } +#if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) + #include "feature/babystep.h" +#endif + /** * Standard idle routine keeps the machine alive: * - Core Marlin activities @@ -775,7 +750,7 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { * - Update the Průša MMU2 * - Handle Joystick jogging */ -void idle(bool no_stepper_sleep/*=false*/) { +void idle(const bool no_stepper_sleep/*=false*/) { #ifdef MAX7219_DEBUG_PROFILE CodeProfiler idle_profiler; #endif @@ -823,11 +798,11 @@ void idle(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 - 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()); @@ -842,7 +817,7 @@ void idle(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) @@ -875,14 +850,23 @@ void idle(bool no_stepper_sleep/*=false*/) { // Handle Joystick jogging TERN_(POLL_JOG, joystick.inject_jog_moves()); + // Async Babystepping via the Emergency Parser + #if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) + babystep.do_ep_steps(); + #endif + // Direct Stepping TERN_(DIRECT_STEPPING, page_manager.write_responses()); // Update the LVGL interface TERN_(HAS_TFT_LVGL_UI, LV_TASK_HANDLER()); + // Manage Fixed-time Motion Control + TERN_(FT_MOTION, fxdTiCtrl.loop()); + IDLE_DONE: TERN_(MARLIN_DEV_MODE, idle_depth--); + return; } @@ -896,7 +880,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)); @@ -938,7 +922,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())) @@ -967,7 +951,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 @@ -1153,7 +1137,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)) @@ -1270,7 +1254,9 @@ void setup() { SETUP_RUN(hal.init_board()); - SETUP_RUN(esp_wifi_init()); + #if ENABLED(WIFISUPPORT) + SETUP_RUN(esp_wifi_init()); + #endif // Report Reset Reason if (mcu & RST_POWER_ON) SERIAL_ECHOLNPGM(STR_POWERUP); @@ -1327,14 +1313,14 @@ void setup() { #endif #endif - #if BOTH(SDSUPPORT, 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 @@ -1351,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 @@ -1409,7 +1395,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 @@ -1595,7 +1581,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 @@ -1611,13 +1597,13 @@ 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()); #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); @@ -1629,7 +1615,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 @@ -1645,8 +1631,18 @@ 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 + // Play a short startup tune before continuing. + constexpr uint16_t tune[] = STARTUP_TUNE; + for (uint8_t i = 0; i < COUNT(tune) - 1; i += 2) BUZZ(tune[i + 1], tune[i]); + #endif + SETUP_LOG("setup() completed."); TERN_(MARLIN_TEST_BUILD, runStartupTests()); @@ -1669,14 +1665,14 @@ 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 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/MarlinCore.h b/Marlin/src/MarlinCore.h index f80405a302..e9c63bb31f 100644 --- a/Marlin/src/MarlinCore.h +++ b/Marlin/src/MarlinCore.h @@ -30,7 +30,7 @@ void stop(); // Pass true to keep steppers from timing out -void idle(bool no_stepper_sleep=false); +void idle(const bool no_stepper_sleep=false); inline void idle_no_sleep() { idle(true); } #if ENABLED(G38_PROBE_TARGET) diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index fe904846e3..50a4ebc194 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 @@ -49,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 // @@ -118,6 +129,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 @@ -184,12 +197,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 @@ -221,7 +235,7 @@ #define BOARD_5DPRINT 1707 // 5DPrint D8 Driver Board // -// LPC1768 ARM Cortex M3 +// LPC1768 ARM Cortex-M3 // #define BOARD_RAMPS_14_RE_ARM_EFB 2000 // Re-ARM with RAMPS 1.4 (Power outputs: Hotend, Fan, Bed) @@ -242,7 +256,7 @@ #define BOARD_EMOTRONIC 2015 // eMotion-Tech eMotronic // -// LPC1769 ARM Cortex M3 +// LPC1769 ARM Cortex-M3 // #define BOARD_MKS_SGEN 2500 // MKS-SGen @@ -259,7 +273,7 @@ #define BOARD_FLY_CDY 2511 // FLYmaker FLY CDY // -// SAM3X8E ARM Cortex M3 +// SAM3X8E ARM Cortex-M3 // #define BOARD_DUE3DOM 3000 // DUE3DOM for Arduino DUE @@ -292,185 +306,203 @@ #define BOARD_KRATOS32 3027 // K.3D Kratos32 (Arduino Due Shield) // -// SAM3X8C ARM Cortex M3 +// SAM3X8C ARM Cortex-M3 // #define BOARD_PRINTRBOARD_G2 3100 // Printrboard G2 #define BOARD_ADSK 3101 // Arduino DUE Shield Kit (ADSK) +// +// STM32 ARM Cortex-M0+ +// + +#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_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_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) + // // STM32 ARM Cortex-M3 // -#define BOARD_MALYAN_M200_V2 4000 // STM32F070CB controller -#define BOARD_MALYAN_M300 4001 // STM32F070-based delta -#define BOARD_STM32F103RE 4002 // STM32F103RE Libmaple-based STM32F1 controller -#define BOARD_MALYAN_M200 4003 // STM32C8 Libmaple-based STM32F1 controller -#define BOARD_STM3R_MINI 4004 // STM32F103RE Libmaple-based STM32F1 controller -#define BOARD_GTM32_PRO_VB 4005 // STM32F103VE controller -#define BOARD_GTM32_MINI 4006 // STM32F103VE controller -#define BOARD_GTM32_MINI_A30 4007 // STM32F103VE controller -#define BOARD_GTM32_REV_B 4008 // STM32F103VE controller -#define BOARD_MORPHEUS 4009 // STM32F103C8 / STM32F103CB Libmaple-based STM32F1 controller -#define BOARD_CHITU3D 4010 // Chitu3D (STM32F103RE) -#define BOARD_MKS_ROBIN 4011 // MKS Robin (STM32F103ZE) -#define BOARD_MKS_ROBIN_MINI 4012 // MKS Robin Mini (STM32F103VE) -#define BOARD_MKS_ROBIN_NANO 4013 // MKS Robin Nano (STM32F103VE) -#define BOARD_MKS_ROBIN_NANO_V2 4014 // MKS Robin Nano V2 (STM32F103VE) -#define BOARD_MKS_ROBIN_LITE 4015 // MKS Robin Lite/Lite2 (STM32F103RC) -#define BOARD_MKS_ROBIN_LITE3 4016 // MKS Robin Lite3 (STM32F103RC) -#define BOARD_MKS_ROBIN_PRO 4017 // MKS Robin Pro (STM32F103ZE) -#define BOARD_MKS_ROBIN_E3 4018 // MKS Robin E3 (STM32F103RC) -#define BOARD_MKS_ROBIN_E3_V1_1 4019 // MKS Robin E3 V1.1 (STM32F103RC) -#define BOARD_MKS_ROBIN_E3D 4020 // MKS Robin E3D (STM32F103RC) -#define BOARD_MKS_ROBIN_E3D_V1_1 4021 // MKS Robin E3D V1.1 (STM32F103RC) -#define BOARD_MKS_ROBIN_E3P 4022 // MKS Robin E3p (STM32F103VE) -#define BOARD_BTT_EBB42_V1_1 4023 // BigTreeTech EBB42 V1.1 (STM32G0B1CB) -#define BOARD_BTT_SKR_MINI_V1_1 4024 // BigTreeTech SKR Mini v1.1 (STM32F103RC) -#define BOARD_BTT_SKR_MINI_E3_V1_0 4025 // BigTreeTech SKR Mini E3 (STM32F103RC) -#define BOARD_BTT_SKR_MINI_E3_V1_2 4026 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC) -#define BOARD_BTT_SKR_MINI_E3_V2_0 4027 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC / STM32F103RE) -#define BOARD_BTT_SKR_MINI_E3_V3_0 4028 // BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RE) -#define BOARD_BTT_SKR_MINI_E3_V3_0_1 4029 // BigTreeTech SKR Mini E3 V3.0.1 (STM32F401RC) -#define BOARD_BTT_SKR_MINI_MZ_V1_0 4030 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC) -#define BOARD_BTT_SKR_E3_DIP 4031 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE) -#define BOARD_BTT_SKR_CR6 4032 // BigTreeTech SKR CR6 v1.0 (STM32F103RE) -#define BOARD_JGAURORA_A5S_A1 4033 // JGAurora A5S A1 (STM32F103ZE) -#define BOARD_FYSETC_AIO_II 4034 // FYSETC AIO_II (STM32F103RC) -#define BOARD_FYSETC_CHEETAH 4035 // FYSETC Cheetah (STM32F103RC) -#define BOARD_FYSETC_CHEETAH_V12 4036 // FYSETC Cheetah V1.2 (STM32F103RC) -#define BOARD_LONGER3D_LK 4037 // Longer3D LK1/2 - Alfawise U20/U20+/U30 (STM32F103VE) -#define BOARD_CCROBOT_MEEB_3DP 4038 // ccrobot-online.com MEEB_3DP (STM32F103RC) -#define BOARD_CHITU3D_V5 4039 // Chitu3D TronXY X5SA V5 Board (STM32F103ZE) -#define BOARD_CHITU3D_V6 4040 // Chitu3D TronXY X5SA V6 Board (STM32F103ZE) -#define BOARD_CHITU3D_V9 4041 // Chitu3D TronXY X5SA V9 Board (STM32F103ZE) -#define BOARD_CREALITY_V4 4042 // Creality v4.x (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V422 4043 // Creality v4.2.2 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V423 4044 // Creality v4.2.3 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V425 4045 // Creality v4.2.5 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V427 4046 // Creality v4.2.7 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V4210 4047 // Creality v4.2.10 (STM32F103RC / STM32F103RE) as found in the CR-30 -#define BOARD_CREALITY_V431 4048 // Creality v4.3.1 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V431_A 4049 // Creality v4.3.1a (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V431_B 4050 // Creality v4.3.1b (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V431_C 4051 // Creality v4.3.1c (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V431_D 4052 // Creality v4.3.1d (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V452 4053 // Creality v4.5.2 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V453 4054 // Creality v4.5.3 (STM32F103RC / STM32F103RE) -#define BOARD_CREALITY_V521 4055 // Creality v5.2.1 (STM32F103VE) as found in the SV04 -#define BOARD_CREALITY_V24S1 4056 // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender-7 -#define BOARD_CREALITY_V24S1_301 4057 // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) v301 as found in the Ender-3 S1 -#define BOARD_CREALITY_V25S1 4058 // Creality v2.5.S1 (STM32F103RE) as found in the CR-10 Smart Pro -#define BOARD_TRIGORILLA_PRO 4059 // Trigorilla Pro (STM32F103ZE) -#define BOARD_FLY_MINI 4060 // FLYmaker FLY MINI (STM32F103RC) -#define BOARD_FLSUN_HISPEED 4061 // FLSUN HiSpeedV1 (STM32F103VE) -#define BOARD_BEAST 4062 // STM32F103RE Libmaple-based controller -#define BOARD_MINGDA_MPX_ARM_MINI 4063 // STM32F103ZE Mingda MD-16 -#define BOARD_GTM32_PRO_VD 4064 // STM32F103VE controller -#define BOARD_ZONESTAR_ZM3E2 4065 // Zonestar ZM3E2 (STM32F103RC) -#define BOARD_ZONESTAR_ZM3E4 4066 // Zonestar ZM3E4 V1 (STM32F103VC) -#define BOARD_ZONESTAR_ZM3E4V2 4067 // Zonestar ZM3E4 V2 (STM32F103VC) -#define BOARD_ERYONE_ERY32_MINI 4068 // Eryone Ery32 mini (STM32F103VE) -#define BOARD_PANDA_PI_V29 4069 // Panda Pi V2.9 - Standalone (STM32F103RC) +#define BOARD_MALYAN_M200_V2 5000 // STM32F070CB controller +#define BOARD_MALYAN_M300 5001 // STM32F070-based delta +#define BOARD_STM32F103RE 5002 // STM32F103RE Libmaple-based STM32F1 controller +#define BOARD_MALYAN_M200 5003 // STM32C8 Libmaple-based STM32F1 controller +#define BOARD_STM3R_MINI 5004 // STM32F103RE Libmaple-based STM32F1 controller +#define BOARD_GTM32_PRO_VB 5005 // STM32F103VE controller +#define BOARD_GTM32_MINI 5006 // STM32F103VE controller +#define BOARD_GTM32_MINI_A30 5007 // STM32F103VE controller +#define BOARD_GTM32_REV_B 5008 // STM32F103VE controller +#define BOARD_MORPHEUS 5009 // STM32F103C8 / STM32F103CB Libmaple-based STM32F1 controller +#define BOARD_CHITU3D 5010 // Chitu3D (STM32F103RE) +#define BOARD_MKS_ROBIN 5011 // MKS Robin (STM32F103ZE) +#define BOARD_MKS_ROBIN_MINI 5012 // MKS Robin Mini (STM32F103VE) +#define BOARD_MKS_ROBIN_NANO 5013 // MKS Robin Nano (STM32F103VE) +#define BOARD_MKS_ROBIN_NANO_V2 5014 // MKS Robin Nano V2 (STM32F103VE) +#define BOARD_MKS_ROBIN_LITE 5015 // MKS Robin Lite/Lite2 (STM32F103RC) +#define BOARD_MKS_ROBIN_LITE3 5016 // MKS Robin Lite3 (STM32F103RC) +#define BOARD_MKS_ROBIN_PRO 5017 // MKS Robin Pro (STM32F103ZE) +#define BOARD_MKS_ROBIN_E3 5018 // MKS Robin E3 (STM32F103RC) +#define BOARD_MKS_ROBIN_E3_V1_1 5019 // MKS Robin E3 V1.1 (STM32F103RC) +#define BOARD_MKS_ROBIN_E3D 5020 // MKS Robin E3D (STM32F103RC) +#define BOARD_MKS_ROBIN_E3D_V1_1 5021 // MKS Robin E3D V1.1 (STM32F103RC) +#define BOARD_MKS_ROBIN_E3P 5022 // MKS Robin E3P (STM32F103VE) +#define BOARD_BTT_SKR_MINI_V1_1 5023 // BigTreeTech SKR Mini v1.1 (STM32F103RC) +#define BOARD_BTT_SKR_MINI_E3_V1_0 5024 // BigTreeTech SKR Mini E3 (STM32F103RC) +#define BOARD_BTT_SKR_MINI_E3_V1_2 5025 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC) +#define BOARD_BTT_SKR_MINI_E3_V2_0 5026 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC / STM32F103RE) +#define BOARD_BTT_SKR_MINI_MZ_V1_0 5027 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC) +#define BOARD_BTT_SKR_E3_DIP 5028 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE) +#define BOARD_BTT_SKR_CR6 5029 // BigTreeTech SKR CR6 v1.0 (STM32F103RE) +#define BOARD_JGAURORA_A5S_A1 5030 // JGAurora A5S A1 (STM32F103ZE) +#define BOARD_FYSETC_AIO_II 5031 // FYSETC AIO_II (STM32F103RC) +#define BOARD_FYSETC_CHEETAH 5032 // FYSETC Cheetah (STM32F103RC) +#define BOARD_FYSETC_CHEETAH_V12 5033 // FYSETC Cheetah V1.2 (STM32F103RC) +#define BOARD_LONGER3D_LK 5034 // Longer3D LK1/2 - Alfawise U20/U20+/U30 (STM32F103VE) +#define BOARD_CCROBOT_MEEB_3DP 5035 // ccrobot-online.com MEEB_3DP (STM32F103RC) +#define BOARD_CHITU3D_V5 5036 // Chitu3D TronXY X5SA V5 Board (STM32F103ZE) +#define BOARD_CHITU3D_V6 5037 // Chitu3D TronXY X5SA V6 Board (STM32F103ZE) +#define BOARD_CHITU3D_V9 5038 // Chitu3D TronXY X5SA V9 Board (STM32F103ZE) +#define BOARD_CREALITY_V4 5039 // Creality v4.x (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V422 5040 // Creality v4.2.2 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V423 5041 // Creality v4.2.3 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V425 5042 // Creality v4.2.5 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V427 5043 // Creality v4.2.7 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V4210 5044 // Creality v4.2.10 (STM32F103RC / STM32F103RE) as found in the CR-30 +#define BOARD_CREALITY_V431 5045 // Creality v4.3.1 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V431_A 5046 // Creality v4.3.1a (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V431_B 5047 // Creality v4.3.1b (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V431_C 5048 // Creality v4.3.1c (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V431_D 5049 // Creality v4.3.1d (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V452 5050 // Creality v4.5.2 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V453 5051 // Creality v4.5.3 (STM32F103RC / STM32F103RE) +#define BOARD_CREALITY_V521 5052 // Creality v5.2.1 (STM32F103VE) as found in the SV04 +#define BOARD_CREALITY_V24S1 5053 // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender-7 +#define BOARD_CREALITY_V24S1_301 5054 // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) v301 as found in the Ender-3 S1 +#define BOARD_CREALITY_V25S1 5055 // Creality v2.5.S1 (STM32F103RE) as found in the CR-10 Smart Pro +#define BOARD_TRIGORILLA_PRO 5056 // Trigorilla Pro (STM32F103ZE) +#define BOARD_FLY_MINI 5057 // FLYmaker FLY MINI (STM32F103RC) +#define BOARD_FLSUN_HISPEED 5058 // FLSUN HiSpeedV1 (STM32F103VE) +#define BOARD_BEAST 5059 // STM32F103RE Libmaple-based controller +#define BOARD_MINGDA_MPX_ARM_MINI 5060 // STM32F103ZE Mingda MD-16 +#define BOARD_GTM32_PRO_VD 5061 // STM32F103VE controller +#define BOARD_ZONESTAR_ZM3E2 5062 // Zonestar ZM3E2 (STM32F103RC) +#define BOARD_ZONESTAR_ZM3E4 5063 // Zonestar ZM3E4 V1 (STM32F103VC) +#define BOARD_ZONESTAR_ZM3E4V2 5064 // Zonestar ZM3E4 V2 (STM32F103VC) +#define BOARD_ERYONE_ERY32_MINI 5065 // Eryone Ery32 mini (STM32F103VE) +#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 // -#define BOARD_TEENSY31_32 4100 // Teensy3.1 and Teensy3.2 -#define BOARD_TEENSY35_36 4101 // Teensy3.5 and Teensy3.6 +#define BOARD_TEENSY31_32 5100 // Teensy3.1 and Teensy3.2 +#define BOARD_TEENSY35_36 5101 // Teensy3.5 and Teensy3.6 // // STM32 ARM Cortex-M4F // -#define BOARD_ARMED 4200 // Arm'ed STM32F4-based controller -#define BOARD_RUMBA32_V1_0 4201 // RUMBA32 STM32F446VE based controller from Aus3D -#define BOARD_RUMBA32_V1_1 4202 // RUMBA32 STM32F446VE based controller from Aus3D -#define BOARD_RUMBA32_MKS 4203 // RUMBA32 STM32F446VE based controller from Makerbase -#define BOARD_RUMBA32_BTT 4204 // RUMBA32 STM32F446VE based controller from BIGTREETECH -#define BOARD_BLACK_STM32F407VE 4205 // BLACK_STM32F407VE -#define BOARD_BLACK_STM32F407ZE 4206 // BLACK_STM32F407ZE -#define BOARD_BTT_SKR_PRO_V1_1 4207 // BigTreeTech SKR Pro v1.1 (STM32F407ZG) -#define BOARD_BTT_SKR_PRO_V1_2 4208 // BigTreeTech SKR Pro v1.2 (STM32F407ZG) -#define BOARD_BTT_BTT002_V1_0 4209 // BigTreeTech BTT002 v1.0 (STM32F407VG) -#define BOARD_BTT_E3_RRF 4210 // BigTreeTech E3 RRF (STM32F407VG) -#define BOARD_BTT_SKR_V2_0_REV_A 4211 // BigTreeTech SKR v2.0 Rev A (STM32F407VG) -#define BOARD_BTT_SKR_V2_0_REV_B 4212 // BigTreeTech SKR v2.0 Rev B (STM32F407VG/STM32F429VG) -#define BOARD_BTT_GTR_V1_0 4213 // BigTreeTech GTR v1.0 (STM32F407IGT) -#define BOARD_BTT_OCTOPUS_V1_0 4214 // BigTreeTech Octopus v1.0 (STM32F446ZE) -#define BOARD_BTT_OCTOPUS_V1_1 4215 // BigTreeTech Octopus v1.1 (STM32F446ZE) -#define BOARD_BTT_OCTOPUS_PRO_V1_0 4216 // BigTreeTech Octopus Pro v1.0 (STM32F446ZE / STM32F429ZG) -#define BOARD_LERDGE_K 4217 // Lerdge K (STM32F407ZG) -#define BOARD_LERDGE_S 4218 // Lerdge S (STM32F407VE) -#define BOARD_LERDGE_X 4219 // Lerdge X (STM32F407VE) -#define BOARD_VAKE403D 4220 // VAkE 403D (STM32F446VE) -#define BOARD_FYSETC_S6 4221 // FYSETC S6 (STM32F446VE) -#define BOARD_FYSETC_S6_V2_0 4222 // FYSETC S6 v2.0 (STM32F446VE) -#define BOARD_FYSETC_SPIDER 4223 // FYSETC Spider (STM32F446VE) -#define BOARD_FLYF407ZG 4224 // FLYmaker FLYF407ZG (STM32F407ZG) -#define BOARD_MKS_ROBIN2 4225 // MKS_ROBIN2 (STM32F407ZE) -#define BOARD_MKS_ROBIN_PRO_V2 4226 // MKS Robin Pro V2 (STM32F407VE) -#define BOARD_MKS_ROBIN_NANO_V3 4227 // MKS Robin Nano V3 (STM32F407VG) -#define BOARD_MKS_ROBIN_NANO_V3_1 4228 // MKS Robin Nano V3.1 (STM32F407VE) -#define BOARD_MKS_MONSTER8_V1 4229 // MKS Monster8 V1 (STM32F407VE) -#define BOARD_MKS_MONSTER8_V2 4230 // MKS Monster8 V2 (STM32F407VE) -#define BOARD_ANET_ET4 4231 // ANET ET4 V1.x (STM32F407VG) -#define BOARD_ANET_ET4P 4232 // ANET ET4P V1.x (STM32F407VG) -#define BOARD_FYSETC_CHEETAH_V20 4233 // FYSETC Cheetah V2.0 (STM32F401RC) -#define BOARD_TH3D_EZBOARD_V2 4234 // TH3D EZBoard v2.0 (STM32F405RG) -#define BOARD_OPULO_LUMEN_REV3 4235 // Opulo Lumen PnP Controller REV3 (STM32F407VE / STM32F407VG) -#define BOARD_MKS_ROBIN_NANO_V1_3_F4 4236 // MKS Robin Nano V1.3 and MKS Robin Nano-S V1.3 (STM32F407VE) -#define BOARD_MKS_EAGLE 4237 // MKS Eagle (STM32F407VE) -#define BOARD_ARTILLERY_RUBY 4238 // Artillery Ruby (STM32F401RC) -#define BOARD_FYSETC_SPIDER_V2_2 4239 // FYSETC Spider V2.2 (STM32F446VE) -#define BOARD_CREALITY_V24S1_301F4 4240 // Creality v2.4.S1_301F4 (STM32F401RC) as found in the Ender-3 S1 F4 -#define BOARD_OPULO_LUMEN_REV4 4241 // Opulo Lumen PnP Controller REV4 (STM32F407VE / STM32F407VG) -#define BOARD_FYSETC_SPIDER_KING407 4242 // FYSETC Spider King407 (STM32F407ZG) -#define BOARD_MKS_SKIPR_V1 4243 // MKS SKIPR v1.0 all-in-one board (STM32F407VE) -#define BOARD_TRONXY_V10 4244 // TRONXY V10 (STM32F446ZE) +#define BOARD_ARMED 5200 // Arm'ed STM32F4-based controller +#define BOARD_RUMBA32_V1_0 5201 // RUMBA32 STM32F446VE based controller from Aus3D +#define BOARD_RUMBA32_V1_1 5202 // RUMBA32 STM32F446VE based controller from Aus3D +#define BOARD_RUMBA32_MKS 5203 // RUMBA32 STM32F446VE based controller from Makerbase +#define BOARD_RUMBA32_BTT 5204 // RUMBA32 STM32F446VE based controller from BIGTREETECH +#define BOARD_BLACK_STM32F407VE 5205 // BLACK_STM32F407VE +#define BOARD_BLACK_STM32F407ZE 5206 // BLACK_STM32F407ZE +#define BOARD_BTT_SKR_MINI_E3_V3_0_1 5207 // BigTreeTech SKR Mini E3 V3.0.1 (STM32F401RC) +#define BOARD_BTT_SKR_PRO_V1_1 5208 // BigTreeTech SKR Pro v1.1 (STM32F407ZG) +#define BOARD_BTT_SKR_PRO_V1_2 5209 // BigTreeTech SKR Pro v1.2 (STM32F407ZG) +#define BOARD_BTT_BTT002_V1_0 5210 // BigTreeTech BTT002 v1.0 (STM32F407VG) +#define BOARD_BTT_E3_RRF 5211 // BigTreeTech E3 RRF (STM32F407VG) +#define BOARD_BTT_SKR_V2_0_REV_A 5212 // BigTreeTech SKR v2.0 Rev A (STM32F407VG) +#define BOARD_BTT_SKR_V2_0_REV_B 5213 // BigTreeTech SKR v2.0 Rev B (STM32F407VG/STM32F429VG) +#define BOARD_BTT_GTR_V1_0 5214 // BigTreeTech GTR v1.0 (STM32F407IGT) +#define BOARD_BTT_OCTOPUS_V1_0 5215 // BigTreeTech Octopus v1.0 (STM32F446ZE) +#define BOARD_BTT_OCTOPUS_V1_1 5216 // BigTreeTech Octopus v1.1 (STM32F446ZE) +#define BOARD_BTT_OCTOPUS_PRO_V1_0 5217 // BigTreeTech Octopus Pro v1.0 (STM32F446ZE / STM32F429ZG) +#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_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 +// ARM Cortex-M7 // -#define BOARD_REMRAM_V1 5000 // RemRam v1 -#define BOARD_TEENSY41 5001 // Teensy 4.1 -#define BOARD_T41U5XBB 5002 // T41U5XBB Teensy 4.1 breakout board -#define BOARD_NUCLEO_F767ZI 5003 // ST NUCLEO-F767ZI Dev Board -#define BOARD_BTT_SKR_SE_BX_V2 5004 // BigTreeTech SKR SE BX V2.0 (STM32H743II) -#define BOARD_BTT_SKR_SE_BX_V3 5005 // BigTreeTech SKR SE BX V3.0 (STM32H743II) -#define BOARD_BTT_SKR_V3_0 5006 // BigTreeTech SKR V3.0 (STM32H743VG) -#define BOARD_BTT_SKR_V3_0_EZ 5007 // BigTreeTech SKR V3.0 EZ (STM32H743VG) +#define BOARD_REMRAM_V1 6000 // RemRam v1 +#define BOARD_TEENSY41 6001 // Teensy 4.1 +#define BOARD_T41U5XBB 6002 // T41U5XBB Teensy 4.1 breakout board +#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 (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 // -#define BOARD_ESPRESSIF_ESP32 6000 // Generic ESP32 -#define BOARD_MRR_ESPA 6001 // MRR ESPA based on ESP32 (native pins only) -#define BOARD_MRR_ESPE 6002 // MRR ESPE based on ESP32 (with I2S stepper stream) -#define BOARD_E4D_BOX 6003 // E4d@BOX -#define BOARD_RESP32_CUSTOM 6004 // Rutilea ESP32 custom board -#define BOARD_FYSETC_E4 6005 // FYSETC E4 -#define BOARD_PANDA_ZHU 6006 // Panda_ZHU -#define BOARD_PANDA_M4 6007 // Panda_M4 -#define BOARD_MKS_TINYBEE 6008 // MKS TinyBee based on ESP32 (with I2S stepper stream) -#define BOARD_ENWI_ESPNP 6009 // enwi ESPNP based on ESP32 (with I2S stepper stream) +#define BOARD_ESPRESSIF_ESP32 7000 // Generic ESP32 +#define BOARD_MRR_ESPA 7001 // MRR ESPA based on ESP32 (native pins only) +#define BOARD_MRR_ESPE 7002 // MRR ESPE based on ESP32 (with I2S stepper stream) +#define BOARD_E4D_BOX 7003 // E4d@BOX +#define BOARD_RESP32_CUSTOM 7004 // Rutilea ESP32 custom board +#define BOARD_FYSETC_E4 7005 // FYSETC E4 +#define BOARD_PANDA_ZHU 7006 // Panda_ZHU +#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 +// SAMD51 ARM Cortex-M4 // -#define BOARD_AGCM4_RAMPS_144 6100 // RAMPS 1.4.4 -#define BOARD_BRICOLEMON_V1_0 6101 // Bricolemon -#define BOARD_BRICOLEMON_LITE_V1_0 6102 // Bricolemon Lite +#define BOARD_AGCM4_RAMPS_144 7100 // RAMPS 1.4.4 +#define BOARD_BRICOLEMON_V1_0 7101 // Bricolemon +#define BOARD_BRICOLEMON_LITE_V1_0 7102 // Bricolemon Lite // -// SAMD21 ARM Cortex M4 +// SAMD21 ARM Cortex-M4 // -#define BOARD_MINITRONICS20 6103 // Minitronics v2.0 +#define BOARD_MINITRONICS20 7103 // Minitronics v2.0 // // Custom board @@ -482,7 +514,7 @@ // Simulations // -#define BOARD_LINUX_RAMPS 9999 +#define BOARD_SIMULATED 9999 #define _MB_1(B) (defined(BOARD_##B) && MOTHERBOARD==BOARD_##B) #define MB(V...) DO(MB,||,V) diff --git a/Marlin/src/core/debug_out.h b/Marlin/src/core/debug_out.h index eb1c91e507..92ee233e03 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 6e23d9e4ed..eb3d12fdf5 100644 --- a/Marlin/src/core/debug_section.h +++ b/Marlin/src/core/debug_section.h @@ -38,12 +38,9 @@ private: 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); + print_xyz(xyz_pos_t(current_position)); } }; diff --git a/Marlin/src/core/drivers.h b/Marlin/src/core/drivers.h index 72a7d1f4b7..fce8a5a9b2 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/core/endianness.h b/Marlin/src/core/endianness.h new file mode 100644 index 0000000000..8fa8e40078 --- /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/language.h b/Marlin/src/core/language.h index 2d0b23a529..649f05cf69 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -55,6 +55,7 @@ // eu Basque-Euskera // fi Finnish // fr French +// fr_na French without accents (DWIN T5UID1 touchscreen) // gl Galician // hr Croatian // hu Hungarian @@ -192,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" @@ -229,10 +231,9 @@ #define STR_PID_DEBUG_INPUT ": Input " #define STR_PID_DEBUG_OUTPUT " Output " #define STR_INVALID_EXTRUDER_NUM " - Invalid extruder number !" -#define STR_MPC_AUTOTUNE "MPC Autotune" -#define STR_MPC_AUTOTUNE_START " start for " STR_E -#define STR_MPC_AUTOTUNE_INTERRUPTED " interrupted!" -#define STR_MPC_AUTOTUNE_FINISHED " finished! Put the constants below into Configuration.h" +#define STR_MPC_AUTOTUNE_START "MPC Autotune start for " STR_E +#define STR_MPC_AUTOTUNE_INTERRUPTED "MPC Autotune interrupted!" +#define STR_MPC_AUTOTUNE_FINISHED "MPC Autotune finished! Put the constants below into Configuration.h" #define STR_MPC_COOLING_TO_AMBIENT "Cooling to ambient" #define STR_MPC_HEATING_PAST_200 "Heating to over 200C" #define STR_MPC_MEASURING_AMBIENT "Measuring ambient heatloss at " @@ -242,11 +243,14 @@ #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" #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" @@ -276,6 +280,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" @@ -323,10 +328,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" @@ -503,7 +510,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 c20cd17a7e..bb2bea2e30 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)) @@ -237,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' @@ -261,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 @@ -375,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)) @@ -429,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; } @@ -448,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 { @@ -462,7 +410,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) \ @@ -634,7 +616,9 @@ #define DEFER4(M) M EMPTY EMPTY EMPTY EMPTY()()()() // Force define expansion -#define EVAL(V...) EVAL16(V) +#define EVAL EVAL16 +#define EVAL4096(V...) EVAL2048(EVAL2048(V)) +#define EVAL2048(V...) EVAL1024(EVAL1024(V)) #define EVAL1024(V...) EVAL512(EVAL512(V)) #define EVAL512(V...) EVAL256(EVAL256(V)) #define EVAL256(V...) EVAL128(EVAL128(V)) @@ -712,10 +696,24 @@ ( DEFER2(__RREPEAT2)()(ADD1(_RPT_I),SUB1(_RPT_N),_RPT_OP,V) ) \ ( /* Do nothing */ ) #define __RREPEAT2() _RREPEAT2 -#define RREPEAT_S(S,N,OP) EVAL1024(_RREPEAT(S,SUB##S(N),OP)) -#define RREPEAT(N,OP) RREPEAT_S(0,N,OP) -#define RREPEAT2_S(S,N,OP,V...) EVAL1024(_RREPEAT2(S,SUB##S(N),OP,V)) -#define RREPEAT2(N,OP,V...) RREPEAT2_S(0,N,OP,V) +#define RREPEAT_S(S,N,OP) EVAL1024(_RREPEAT(S,SUB##S(N),OP)) +#define RREPEAT(N,OP) RREPEAT_S(0,N,OP) +#define RREPEAT_1(N,OP) RREPEAT_S(1,INCREMENT(N),OP) +#define RREPEAT2_S(S,N,OP,V...) EVAL1024(_RREPEAT2(S,SUB##S(N),OP,V)) +#define RREPEAT2(N,OP,V...) RREPEAT2_S(0,N,OP,V) + +// Emit a list of N OP(I) items with ascending counter. +#define _REPLIST(_RPT_I,_RPT_N,_RPT_OP) \ + _RPT_OP(_RPT_I) \ + IF_ELSE(SUB1(_RPT_N)) \ + ( , DEFER2(__REPLIST)()(ADD1(_RPT_I),SUB1(_RPT_N),_RPT_OP) ) \ + ( /* Do nothing */ ) +#define __REPLIST() _REPLIST + +// Repeat a macro, comma-separated, passing S...N-1. +#define REPLIST_S(S,N,OP) EVAL(_REPLIST(S,SUB##S(N),OP)) +#define REPLIST(N,OP) REPLIST_S(0,N,OP) +#define REPLIST_1(N,OP) REPLIST_S(1,INCREMENT(N),OP) // Call OP(A) with each item as an argument #define _MAP(_MAP_OP,A,V...) \ @@ -750,5 +748,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/core/millis_t.h b/Marlin/src/core/millis_t.h index 95bc40e1ec..e7032a2e55 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/core/mstring.h b/Marlin/src/core/mstring.h new file mode 100644 index 0000000000..9606fa22af --- /dev/null +++ b/Marlin/src/core/mstring.h @@ -0,0 +1,325 @@ +/** + * 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 + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + +#if DISABLED(UNSAFE_MSTRING) && GCC_VERSION >= 80000 + #pragma GCC diagnostic ignored "-Wstringop-truncation" +#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 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; } + 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); } + + 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; } + 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 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; } + 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 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)); } + 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; } + + 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); } + 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...); } + + // Catch unhandled types to prevent infinite recursion + 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 + 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; + } + +}; + +#pragma GCC diagnostic pop + +#ifndef TS_SIZE + #define TS_SIZE 63 +#endif +typedef MString TString; +#define TS(V...) TString(V) diff --git a/Marlin/src/core/multi_language.h b/Marlin/src/core/multi_language.h index 05a713e435..2c0eb7aa72 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/core/serial.cpp b/Marlin/src/core/serial.cpp index 727b191d04..2e07f3335a 100644 --- a/Marlin/src/core/serial.cpp +++ b/Marlin/src/core/serial.cpp @@ -68,31 +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(const bool onoff, FSTR_P const pre, FSTR_P const on, FSTR_P const off, FSTR_P const post/*=nullptr*/) { - if (pre) serial_print(pre); - serial_print(onoff ? on : off); - if (post) serial_print(post); +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--;) { @@ -101,10 +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*/) { - 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 (suffix) serial_print(suffix); else SERIAL_EOL(); +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 a1126d7461..96cff02508 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); -// 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)); } +// 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 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,131 +220,90 @@ 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) +#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 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) +// 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)) -#ifdef AllowDifferentTypeInList +// Print up to 255 spaces +void SERIAL_ECHO_SP(uint8_t count); - 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_TERNARY(TF, PRE, ON, OFF, POST) serial_ternary(TF, F(PRE), 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 - -// -// 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(); -void serial_ternary(const bool onoff, FSTR_P const pre, FSTR_P const on, FSTR_P const off, FSTR_P const post=nullptr); 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); -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); +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); } -#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_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 + */ +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/core/serial_base.h b/Marlin/src/core/serial_base.h index a5abd67d87..a2f49417b7 100644 --- a/Marlin/src/core/serial_base.h +++ b/Marlin/src/core/serial_base.h @@ -23,6 +23,8 @@ #include "../inc/MarlinConfigPre.h" +#include // for size_t + #if ENABLED(EMERGENCY_PARSER) #include "../feature/e_parser.h" #endif @@ -77,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) {} }; @@ -167,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 @@ -178,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(); } @@ -232,7 +233,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 f1fae85b5c..679cb2ce13 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -31,52 +31,108 @@ // // typename IF<(MYOPT==12), int, float>::type myvar; // -template -struct IF { typedef R type; }; -template -struct IF { typedef L type; }; +template struct IF { typedef R type; }; +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 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_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) -#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_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) +#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 + +#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 + +#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) +#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 #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) @@ -86,38 +142,56 @@ struct IF { typedef L type; }; #define AXIS_COLLISION(L) (AXIS4_NAME == L || AXIS5_NAME == L || AXIS6_NAME == L || AXIS7_NAME == L || AXIS8_NAME == L || AXIS9_NAME == L) +// Helpers +#define _RECIP(N) ((N) ? 1.0f / static_cast(N) : 0.0f) +#define _ABS(N) ((N) < 0 ? -(N) : (N)) +#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 +#define bits_t(W) typename IF<((W)> 16), uint32_t, typename IF<((W)> 8), uint16_t, uint8_t>::type>::type +#define uvalue_t(V) typename IF<((V)>65535), uint32_t, typename IF<((V)>255), uint16_t, uint8_t>::type>::type +#define value_t(V) typename IF<((V)>32767), int32_t, typename IF<((V)>127), int16_t, int8_t>::type>::type + // General Flags for some number of states template struct Flags { - typedef typename IF<(N>8), uint16_t, uint8_t>::type bits_t; + typedef value_t(N) flagbits_t; typedef struct { bool b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1; } N8; typedef struct { bool b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1, b8:1, b9:1, b10:1, b11:1, b12:1, b13:1, b14:1, b15:1; } N16; + typedef struct { bool b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1, b8:1, b9:1, b10:1, b11:1, b12:1, b13:1, b14:1, b15:1, + b16:1, b17:1, b18:1, b19:1, b20:1, b21:1, b22:1, b23:1, b24:1, b25:1, b26:1, b27:1, b28:1, b29:1, b30:1, b31:1; } N32; union { - bits_t b; - typename IF<(N>8), N16, N8>::type flag; + flagbits_t b; + typename IF<(N>16), N32, typename IF<(N>8), N16, N8>::type>::type flag; }; - void reset() { b = 0; } - void set(const int n, const bool onoff) { onoff ? set(n) : clear(n); } - void set(const int n) { b |= (bits_t)_BV(n); } - void clear(const int n) { b &= ~(bits_t)_BV(n); } - bool test(const int n) const { return TEST(b, n); } - bool operator[](const int n) { return test(n); } - bool operator[](const int n) const { return test(n); } - int size() const { return sizeof(b); } + FI void reset() { b = 0; } + FI void set(const int n, const bool onoff) { onoff ? set(n) : clear(n); } + FI void set(const int n) { b |= (flagbits_t)_BV(n); } + FI void clear(const int n) { b &= ~(flagbits_t)_BV(n); } + FI bool test(const int n) const { return TEST(b, n); } + FI bool operator[](const int n) { return test(n); } + FI bool operator[](const int n) const { return test(n); } + FI int size() const { return sizeof(b); } + FI operator bool() const { return b; } }; // Specialization for a single bool flag template<> struct Flags<1> { bool b; - void reset() { b = false; } - void set(const int n, const bool onoff) { onoff ? set(n) : clear(n); } - void set(const int) { b = true; } - void clear(const int) { b = false; } - bool test(const int) const { return b; } - bool& operator[](const int) { return b; } - bool operator[](const int) const { return b; } - int size() const { return sizeof(b); } + FI void reset() { b = false; } + FI void set(const int n, const bool onoff) { onoff ? set(n) : clear(n); } + FI void set(const int) { b = true; } + FI void clear(const int) { b = false; } + FI bool test(const int) const { return b; } + FI bool& operator[](const int) { return b; } + FI bool operator[](const int) const { return b; } + FI int size() const { return sizeof(b); } + FI operator bool() const { return b; } }; typedef Flags<8> flags_8_t; @@ -129,14 +203,15 @@ typedef struct AxisFlags { struct Flags flags; struct { bool LOGICAL_AXIS_LIST(e:1, x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); }; }; - void reset() { flags.reset(); } - void set(const int n) { flags.set(n); } - void set(const int n, const bool onoff) { flags.set(n, onoff); } - void clear(const int n) { flags.clear(n); } - bool test(const int n) const { return flags.test(n); } - bool operator[](const int n) { return flags[n]; } - bool operator[](const int n) const { return flags[n]; } - int size() const { return sizeof(flags); } + FI void reset() { flags.reset(); } + FI void set(const int n) { flags.set(n); } + FI void set(const int n, const bool onoff) { flags.set(n, onoff); } + FI void clear(const int n) { flags.clear(n); } + FI bool test(const int n) const { return flags.test(n); } + FI bool operator[](const int n) { return flags[n]; } + FI bool operator[](const int n) const { return flags[n]; } + FI int size() const { return sizeof(flags); } + FI operator bool() const { return flags; } } axis_flags_t; // @@ -149,49 +224,48 @@ 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 }; -typedef IF<(NUM_AXIS_ENUMS > 8), uint16_t, uint8_t>::type axis_bits_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, X_AXIS, NUM_AXES) -#define LOOP_LOGICAL_AXES(VAR) LOOP_S_L_N(VAR, X_AXIS, LOGICAL_AXES) -#define LOOP_DISTINCT_AXES(VAR) LOOP_S_L_N(VAR, X_AXIS, 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 @@ -217,21 +291,47 @@ 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) +// 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... // -// 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 FI FORCE_INLINE - // Forward declarations template struct XYval; template struct XYZval; @@ -315,6 +415,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 { @@ -325,157 +426,144 @@ struct XYval { }; // Set all to 0 - FI void reset() { x = y = 0; } + 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]; } + 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 { (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 { (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) }; } + 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; } + + // 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 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 !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 { union { - struct { T NUM_AXIS_ARGS(); }; - struct { T NUM_AXIS_LIST(a, b, c, _i, _j, _k, _u, _v, _w); }; + #if NUM_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); }; + #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) { 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(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 @@ -509,114 +597,98 @@ 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 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 pos; } + FI operator T* () { return pos; } // 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 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 _MIN(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)); } + 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 _MAX(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)); } + 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((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((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)); } + 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) { 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 { @@ -626,12 +698,12 @@ 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) { 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]); } @@ -673,32 +745,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; } @@ -707,80 +775,349 @@ 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((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((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)); } + 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) { 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 + +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 { +public: + typedef bits_t(NUM_AXIS_ENUMS) el; + union { + el bits; + // x, y, z ... e0, e1, e2 ... hx, hy, hz + struct { + #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 + #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 { + #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 + #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 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 + }; + }; + + AxisBits() { reset(); } + + // Constructor, setter, and operator= for bit mask + AxisBits(const el p) { set(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); } + 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); } + 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]); + } + 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 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); } + 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; } + 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 #undef _RS +#undef _LSE +#undef _RSE #undef FI diff --git a/Marlin/src/core/utility.cpp b/Marlin/src/core/utility.cpp index 597c536d8c..8476591d4b 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_ECHOPGM(TERN(IS_SCARA, "-Distal", "-Back")); + SERIAL_ECHO(F(TERN(IS_SCARA, "-Distal", "-Back"))); else if (probe.offset_xy.y < 0) - SERIAL_ECHOPGM(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 2731e62b67..891a4e4383 100644 --- a/Marlin/src/core/utility.h +++ b/Marlin/src/core/utility.h @@ -38,12 +38,12 @@ void safe_delay(millis_t ms); // Delay ensuring that temperatures are // 16x16 bit arrays template struct FlagBits { - typename IF<(W>8), uint16_t, uint8_t>::type bits[H]; - void fill() { memset(bits, 0xFF, sizeof(bits)); } - void reset() { memset(bits, 0x00, sizeof(bits)); } - void unmark(const uint8_t x, const uint8_t y) { CBI(bits[y], x); } - void mark(const uint8_t x, const uint8_t y) { SBI(bits[y], x); } - bool marked(const uint8_t x, const uint8_t y) { return TEST(bits[y], x); } + bits_t(W) flags[H]; + void fill() { memset(flags, 0xFF, sizeof(flags)); } + void reset() { memset(flags, 0x00, sizeof(flags)); } + void unmark(const uint8_t x, const uint8_t y) { CBI(flags[y], x); } + void mark(const uint8_t x, const uint8_t y) { SBI(flags[y], x); } + bool marked(const uint8_t x, const uint8_t y) { return TEST(flags[y], x); } inline void unmark(const xy_int8_t &xy) { unmark(xy.x, xy.y); } inline void mark(const xy_int8_t &xy) { mark(xy.x, xy.y); } inline bool marked(const xy_int8_t &xy) { return marked(xy.x, xy.y); } @@ -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/babystep.cpp b/Marlin/src/feature/babystep.cpp index 2e3d6a9fd2..c6717268a6 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 ALL(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) { @@ -62,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 @@ -73,7 +77,13 @@ 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) + // 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 bbf0c5a260..38a19a3b14 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -23,15 +23,10 @@ #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 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,6 +47,10 @@ public: static volatile int16_t steps[BS_AXIS_IND(Z_AXIS) + 1]; static int16_t accum; // Total babysteps in current edit + #if ALL(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 +62,21 @@ public: 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 @@ -76,7 +90,7 @@ public: // 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/backlash.cpp b/Marlin/src/feature/backlash.cpp index 13e2cd99ec..c6eb0d33f3 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 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; #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,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 = TEST(dm, axis); + const bool forward = dm[axis]; // When an axis changes direction, add axis backlash to the residual error - if (TEST(changed_dir, axis)) - residual_error[axis] += (reverse ? -f_corr : f_corr) * distance_mm[axis] * planner.settings.axis_steps_per_mm[axis]; + if (changed_dir[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 = TEST(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/backlash.h b/Marlin/src/feature/backlash.h index 0bace526e5..14c0fe20e3 100644 --- a/Marlin/src/feature/backlash.h +++ b/Marlin/src/feature/backlash.h @@ -29,7 +29,7 @@ public: 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 @@ public: 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/bedlevel/abl/bbl.cpp b/Marlin/src/feature/bedlevel/abl/bbl.cpp index be0e862cc1..14c4bd24bc 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; @@ -153,7 +153,7 @@ void LevelingBilinear::extrapolate_unprobed_bed_level() { } } -void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL*/) { +void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values/*=nullptr*/) { // print internal grid(s) or just the one passed as a parameter SERIAL_ECHOLNPGM("Bilinear Leveling Grid:"); print_2d_array(GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y, 3, _z_values ? *_z_values[0] : z_values[0]); @@ -175,13 +175,13 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL* xy_float_t LevelingBilinear::grid_factor_virt; #define LINEAR_EXTRAPOLATION(E, I) ((E) * 2 - (I)) - float LevelingBilinear::bed_level_virt_coord(const uint8_t x, const uint8_t y) { + float LevelingBilinear::virt_coord(const uint8_t x, const uint8_t y) { uint8_t ep = 0, ip = 1; if (x > (GRID_MAX_POINTS_X) + 1 || y > (GRID_MAX_POINTS_Y) + 1) { // The requested point requires extrapolating two points beyond the mesh. // These values are only requested for the edges of the mesh, which are always an actual mesh point, // and do not require interpolation. When interpolation is not needed, this "Mesh + 2" point is - // cancelled out in bed_level_virt_cmr and does not impact the result. Return 0.0 rather than + // cancelled out in virt_cmr and does not impact the result. Return 0.0 rather than // making this function more complex by extrapolating two points. return 0.0; } @@ -197,8 +197,8 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL* ); else return LINEAR_EXTRAPOLATION( - bed_level_virt_coord(ep + 1, y), - bed_level_virt_coord(ip + 1, y) + virt_coord(ep + 1, y), + virt_coord(ip + 1, y) ); } if (!y || y == ABL_TEMP_POINTS_Y - 1) { @@ -213,14 +213,14 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL* ); else return LINEAR_EXTRAPOLATION( - bed_level_virt_coord(x, ep + 1), - bed_level_virt_coord(x, ip + 1) + virt_coord(x, ep + 1), + virt_coord(x, ip + 1) ); } return z_values[x - 1][y - 1]; } - float LevelingBilinear::bed_level_virt_cmr(const float p[4], const uint8_t i, const float t) { + float LevelingBilinear::virt_cmr(const float p[4], const uint8_t i, const float t) { return ( p[i-1] * -t * sq(1 - t) + p[i] * (2 - 5 * sq(t) + 3 * t * sq(t)) @@ -229,33 +229,28 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL* ) * 0.5f; } - float LevelingBilinear::bed_level_virt_2cmr(const uint8_t x, const uint8_t y, const_float_t tx, const_float_t ty) { + 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) { - column[j] = bed_level_virt_coord(i + x - 1, j + y - 1); + 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] = bed_level_virt_cmr(column, 1, ty); + row[i] = virt_cmr(column, 1, ty); } - return bed_level_virt_cmr(row, 1, tx); + return virt_cmr(row, 1, tx); } - void LevelingBilinear::bed_level_virt_interpolate() { + 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] = - bed_level_virt_2cmr( - x + 1, - y + 1, - (float)tx / (BILINEAR_SUBDIVISIONS), - (float)ty / (BILINEAR_SUBDIVISIONS) - ); + virt_2cmr(x + 1, y + 1, (float)tx / (BILINEAR_SUBDIVISIONS), (float)ty / (BILINEAR_SUBDIVISIONS)); } } @@ -263,7 +258,7 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values /*= NULL* // Refresh after other values have been updated void LevelingBilinear::refresh_bed_level() { - TERN_(ABL_BILINEAR_SUBDIVISION, bed_level_virt_interpolate()); + TERN_(ABL_BILINEAR_SUBDIVISION, subdivide_mesh()); cached_rel.x = cached_rel.y = -999.999; cached_g.x = cached_g.y = -99; } diff --git a/Marlin/src/feature/bedlevel/abl/bbl.h b/Marlin/src/feature/bedlevel/abl/bbl.h index c2be4fee82..ca2e96593f 100644 --- a/Marlin/src/feature/bedlevel/abl/bbl.h +++ b/Marlin/src/feature/bedlevel/abl/bbl.h @@ -43,17 +43,17 @@ private: static xy_pos_t grid_spacing_virt; static xy_float_t grid_factor_virt; - static float bed_level_virt_coord(const uint8_t x, const uint8_t y); - static float bed_level_virt_cmr(const float p[4], const uint8_t i, const float t); - static float bed_level_virt_2cmr(const uint8_t x, const uint8_t y, const_float_t tx, const_float_t ty); - static void bed_level_virt_interpolate(); + static float virt_coord(const uint8_t x, const uint8_t y); + static float virt_cmr(const float p[4], const uint8_t i, const float t); + static float virt_2cmr(const uint8_t x, const uint8_t y, const_float_t tx, const_float_t ty); + static void subdivide_mesh(); #endif public: static void reset(); static void set_grid(const xy_pos_t& _grid_spacing, const xy_pos_t& _grid_start); static void extrapolate_unprobed_bed_level(); - static void print_leveling_grid(const bed_mesh_t* _z_values = NULL); + static void print_leveling_grid(const bed_mesh_t *_z_values=nullptr); static void refresh_bed_level(); static bool has_mesh() { return !!grid_spacing.x; } static bool mesh_is_valid() { return has_mesh(); } diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.cpp b/Marlin/src/feature/bedlevel/bdl/bdl.cpp index 1a27011a4b..14989a07d3 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(!INVERT_Z_DIR); - stepper.set_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.set_directions(); + 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 6307b1ab28..b3037bc1c2 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/feature/bedlevel/bedlevel.cpp b/Marlin/src/feature/bedlevel/bedlevel.cpp index 03b67745ec..a76c6cdd26 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 @@ -137,8 +137,8 @@ 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) { - serial_spaces(precision + (x < 10 ? 3 : 2)); + for (uint8_t x = 0; x < sx; ++x) { + SERIAL_ECHO_SP(precision + (x < 10 ? 3 : 2)); SERIAL_ECHO(x); } SERIAL_EOL(); @@ -146,19 +146,19 @@ 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)) { if (offset >= 0) SERIAL_CHAR('+'); - SERIAL_ECHO_F(offset, int(precision)); + SERIAL_ECHO(p_float_t(offset, precision)); } else { #ifdef SCAD_MESH_OUTPUT @@ -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 } @@ -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 aeafec10d6..ccb9543e72 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/bedlevel/hilbert_curve.cpp b/Marlin/src/feature/bedlevel/hilbert_curve.cpp index 7474123e3f..57cbdfb34d 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); diff --git a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp index 193cbbf765..f40cbccadd 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(); } @@ -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/mbl/mesh_bed_leveling.h b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h index aa97cb57ba..cb4f36cd59 100644 --- a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h +++ b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h @@ -32,8 +32,8 @@ enum MeshLevelingState : char { MeshReset // G29 S5 }; -#define MESH_X_DIST (float(MESH_MAX_X - (MESH_MIN_X)) / (GRID_MAX_CELLS_X)) -#define MESH_Y_DIST (float(MESH_MAX_Y - (MESH_MIN_Y)) / (GRID_MAX_CELLS_Y)) +#define MESH_X_DIST (float((MESH_MAX_X) - (MESH_MIN_X)) / (GRID_MAX_CELLS_X)) +#define MESH_Y_DIST (float((MESH_MAX_Y) - (MESH_MIN_Y)) / (GRID_MAX_CELLS_Y)) class mesh_bed_leveling { public: @@ -72,18 +72,18 @@ public: 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 @@ public: 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.cpp b/Marlin/src/feature/bedlevel/ubl/ubl.cpp index f2af1445b1..0228bd247e 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl.cpp @@ -51,15 +51,14 @@ 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 } } void unified_bed_leveling::report_state() { echo_name(); - SERIAL_ECHO_TERNARY(planner.leveling_active, " System v" UBL_VERSION " ", "", "in", "active\n"); + serial_ternary(F(" System v" UBL_VERSION " "), planner.leveling_active, nullptr, F("in"), F("active\n")); serial_delay(50); } @@ -149,7 +148,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 +198,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; @@ -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 a7103d6e18..7377f7dfc0 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -38,8 +38,8 @@ enum MeshPointType : char { INVALID, REAL, SET_IN_BITMAP, CLOSEST }; struct mesh_index_pair; -#define MESH_X_DIST (float(MESH_MAX_X - (MESH_MIN_X)) / (GRID_MAX_CELLS_X)) -#define MESH_Y_DIST (float(MESH_MAX_Y - (MESH_MIN_Y)) / (GRID_MAX_CELLS_Y)) +#define MESH_X_DIST (float((MESH_MAX_X) - (MESH_MIN_X)) / (GRID_MAX_CELLS_X)) +#define MESH_Y_DIST (float((MESH_MAX_Y) - (MESH_MIN_Y)) / (GRID_MAX_CELLS_Y)) #if ENABLED(OPTIMIZED_MESH_STORAGE) typedef int16_t mesh_store_t[GRID_MAX_POINTS_X][GRID_MAX_POINTS_Y]; @@ -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, @@ -77,7 +77,6 @@ private: 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) { @@ -141,26 +140,26 @@ public: 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); @@ -264,9 +263,9 @@ public: return UBL_Z_RAISE_WHEN_OFF_MESH; #endif - const uint8_t mx = _MIN(cx, (GRID_MAX_POINTS_X) - 2) + 1, my = _MIN(cy, (GRID_MAX_POINTS_Y) - 2) + 1, - x0 = get_mesh_x(cx), x1 = get_mesh_x(cx + 1); - const float z1 = calc_z0(rx0, x0, z_values[cx][cy], x1, z_values[mx][cy]), + const uint8_t mx = _MIN(cx, (GRID_MAX_POINTS_X) - 2) + 1, my = _MIN(cy, (GRID_MAX_POINTS_Y) - 2) + 1; + const float x0 = get_mesh_x(cx), x1 = get_mesh_x(cx + 1), + z1 = calc_z0(rx0, x0, z_values[cx][cy], x1, z_values[mx][cy]), z2 = calc_z0(rx0, x0, z_values[cx][my], x1, z_values[mx][my]); float z0 = calc_z0(ry0, get_mesh_y(cy), z1, get_mesh_y(cy + 1), z2); @@ -279,10 +278,8 @@ public: 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 d6cb0b762f..6f5187cc9f 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 @@ -306,21 +306,22 @@ void unified_bed_leveling::G29() { const uint8_t p_val = parser.byteval('P'); const bool may_move = p_val == 1 || p_val == 2 || p_val == 4 || parser.seen_test('J'); - #if HAS_MULTI_HOTEND - const uint8_t old_tool_index = active_extruder; - #endif // 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(); - TERN_(HAS_MULTI_HOTEND, if (active_extruder != 0) tool_change(0, true)); + #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. - #if defined(SAFE_BED_LEVELING_START_X) || defined(SAFE_BED_LEVELING_START_Y) || defined(SAFE_BED_LEVELING_START_Z) \ - || defined(SAFE_BED_LEVELING_START_I) || defined(SAFE_BED_LEVELING_START_J) || defined(SAFE_BED_LEVELING_START_K) \ - || defined(SAFE_BED_LEVELING_START_U) || defined(SAFE_BED_LEVELING_START_V) || defined(SAFE_BED_LEVELING_START_W) + #if HAS_SAFE_BED_LEVELING xyze_pos_t safe_position = current_position; #ifdef SAFE_BED_LEVELING_START_X safe_position.x = SAFE_BED_LEVELING_START_X; @@ -351,12 +352,12 @@ void unified_bed_leveling::G29() { #endif do_blocking_move_to(safe_position); - #endif + #endif // HAS_SAFE_BED_LEVELING } // 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--) { @@ -401,7 +402,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 @@ -463,12 +464,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(); @@ -698,7 +695,7 @@ void unified_bed_leveling::G29() { UNUSED(probe_deployed); #endif - TERN_(HAS_MULTI_HOTEND, if (old_tool_index != 0) tool_change(old_tool_index)); + probe.use_probing_tool(false); return; } @@ -727,10 +724,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) @@ -762,17 +759,17 @@ 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 - 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))); @@ -795,10 +792,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); @@ -826,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 @@ -887,8 +881,32 @@ void set_message_with_feedback(FSTR_P const fstr) { ui.capture(); save_ubl_active_state_and_disable(); // Disable bed level correction for probing - do_blocking_move_to(0.5f * (MESH_MAX_X - (MESH_MIN_X)), 0.5f * (MESH_MAX_Y - (MESH_MIN_Y)), MANUAL_PROBE_START_Z); - //, _MIN(planner.settings.max_feedrate_mm_s[X_AXIS], planner.settings.max_feedrate_mm_s[Y_AXIS]) * 0.5f); + do_blocking_move_to( + xyz_pos_t({ + 0.5f * ((MESH_MAX_X) - (MESH_MIN_X)), + 0.5f * ((MESH_MAX_Y) - (MESH_MIN_Y)), + MANUAL_PROBE_START_Z + #ifdef SAFE_BED_LEVELING_START_I + , SAFE_BED_LEVELING_START_I + #endif + #ifdef SAFE_BED_LEVELING_START_J + , SAFE_BED_LEVELING_START_J + #endif + #ifdef SAFE_BED_LEVELING_START_K + , SAFE_BED_LEVELING_START_K + #endif + #ifdef SAFE_BED_LEVELING_START_U + , SAFE_BED_LEVELING_START_U + #endif + #ifdef SAFE_BED_LEVELING_START_V + , SAFE_BED_LEVELING_START_V + #endif + #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(); SERIAL_ECHOPGM("Place shim under nozzle"); @@ -897,22 +915,19 @@ void set_message_with_feedback(FSTR_P const fstr) { echo_and_take_a_measurement(); const float z1 = measure_point_with_encoder(); - do_blocking_move_to_z(current_position.z + SIZE_OF_LITTLE_RAISE); - planner.synchronize(); + do_z_clearance_by(SIZE_OF_LITTLE_RAISE); SERIAL_ECHOPGM("Remove shim"); LCD_MESSAGE(MSG_UBL_BC_REMOVE); echo_and_take_a_measurement(); const float z2 = measure_point_with_encoder(); - do_blocking_move_to_z(current_position.z + Z_CLEARANCE_BETWEEN_PROBES); + do_z_clearance_by(Z_CLEARANCE_BETWEEN_PROBES); 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(); @@ -978,7 +993,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()); @@ -1016,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; @@ -1035,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) @@ -1045,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 @@ -1075,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; @@ -1095,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"); @@ -1120,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"); @@ -1430,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); @@ -1456,81 +1471,42 @@ void unified_bed_leveling::smart_fill_mesh() { #include "../../../libs/vector_3.h" void unified_bed_leveling::tilt_mesh_based_on_probed_grid(const bool do_3_pt_leveling) { - const float x_min = probe.min_x(), x_max = probe.max_x(), - y_min = probe.min_y(), y_max = probe.max_y(), - dx = (x_max - x_min) / (param.J_grid_size - 1), - dy = (y_max - y_min) / (param.J_grid_size - 1); - - xy_float_t points[3]; - probe.get_three_points(points); float measured_z; bool abort_flag = false; - #ifdef VALIDATE_MESH_TILT - float z1, z2, z3; // Needed for algorithm validation below - #endif - struct linear_fit_data lsf_results; incremental_LSF_reset(&lsf_results); if (do_3_pt_leveling) { - SERIAL_ECHOLNPGM("Tilting mesh (1/3)"); - TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " 1/3"), GET_TEXT(MSG_LCD_TILTING_MESH))); + xy_float_t points[3]; + probe.get_three_points(points); - measured_z = probe.probe_at_point(points[0], PROBE_PT_RAISE, param.V_verbosity); - if (isnan(measured_z)) - abort_flag = true; - else { - measured_z -= get_z_correction(points[0]); - #ifdef VALIDATE_MESH_TILT - z1 = measured_z; - #endif - if (param.V_verbosity > 3) { - serial_spaces(16); - SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); + #if ENABLED(UBL_TILT_ON_MESH_POINTS_3POINT) + mesh_index_pair cpos[3]; + 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(); } - incremental_LSF(&lsf_results, points[0], measured_z); - } + #endif - if (!abort_flag) { - SERIAL_ECHOLNPGM("Tilting mesh (2/3)"); - TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " 2/3"), GET_TEXT(MSG_LCD_TILTING_MESH))); + #if ENABLED(VALIDATE_MESH_TILT) + float gotz[3]; // Used for algorithm validation below + #endif - measured_z = probe.probe_at_point(points[1], PROBE_PT_RAISE, param.V_verbosity); - #ifdef VALIDATE_MESH_TILT - z2 = measured_z; - #endif - if (isnan(measured_z)) - abort_flag = true; - else { - measured_z -= get_z_correction(points[1]); - if (param.V_verbosity > 3) { - serial_spaces(16); - SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); - } - incremental_LSF(&lsf_results, points[1], measured_z); - } - } + 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)); - if (!abort_flag) { - SERIAL_ECHOLNPGM("Tilting mesh (3/3)"); - TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " 3/3"), GET_TEXT(MSG_LCD_TILTING_MESH))); + 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; - measured_z = probe.probe_at_point(points[2], PROBE_PT_LAST_STOW, param.V_verbosity); - #ifdef VALIDATE_MESH_TILT - z3 = measured_z; - #endif - if (isnan(measured_z)) - abort_flag = true; - else { - measured_z -= get_z_correction(points[2]); - if (param.V_verbosity > 3) { - serial_spaces(16); - SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); - } - incremental_LSF(&lsf_results, points[2], measured_z); - } + 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_ECHO_SP(16); SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); } + + incremental_LSF(&lsf_results, points[i], measured_z); } probe.stow(); @@ -1543,54 +1519,79 @@ void unified_bed_leveling::smart_fill_mesh() { } else { // !do_3_pt_leveling + #ifndef G29J_MESH_TILT_MARGIN + #define G29J_MESH_TILT_MARGIN 0 + #endif + const float x_min = _MAX((X_MIN_POS) + (G29J_MESH_TILT_MARGIN), MESH_MIN_X, probe.min_x()), + x_max = _MIN((X_MAX_POS) - (G29J_MESH_TILT_MARGIN), MESH_MAX_X, probe.max_x()), + y_min = _MAX((Y_MIN_POS) + (G29J_MESH_TILT_MARGIN), MESH_MIN_Y, probe.min_y()), + y_max = _MIN((Y_MAX_POS) - (G29J_MESH_TILT_MARGIN), MESH_MAX_Y, probe.max_y()), + dx = (x_max - x_min) / (param.J_grid_size - 1), + dy = (y_max - y_min) / (param.J_grid_size - 1); + bool zig_zag = false; const uint16_t total_points = sq(param.J_grid_size); uint16_t point_num = 1; - xy_pos_t rpos; - 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 (!abort_flag) { - SERIAL_ECHOLNPGM("Tilting mesh point ", point_num, "/", total_points, "\n"); - TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/%i"), GET_TEXT(MSG_LCD_TILTING_MESH), point_num, total_points)); - - measured_z = probe.probe_at_point(rpos, parser.seen_test('E') ? PROBE_PT_STOW : PROBE_PT_RAISE, param.V_verbosity); // TODO: Needs error handling - - abort_flag = isnan(measured_z); - + #if ENABLED(UBL_TILT_ON_MESH_POINTS) #if ENABLED(DEBUG_LEVELING_FEATURE) - if (DEBUGGING(LEVELING)) { - const xy_pos_t lpos = rpos.asLogical(); - 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: ", get_z_correction(rpos), 7); - } + xy_pos_t oldRpos; + if (DEBUGGING(LEVELING)) oldRpos = rpos; #endif + mesh_index_pair cpos; + rpos -= probe.offset; + cpos = find_closest_mesh_point_of_type(REAL, rpos, true); + rpos = cpos.meshpos(); + #endif - measured_z -= get_z_correction(rpos) /* + probe.offset.z */ ; + SERIAL_ECHOLNPGM("Tilting mesh point ", point_num, "/", total_points, "\n"); + TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/%i"), GET_TEXT(MSG_LCD_TILTING_MESH), point_num, total_points)); - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR_F(" final >>>---> ", measured_z, 7); + measured_z = probe.probe_at_point(rpos, parser.seen_test('E') ? PROBE_PT_STOW : PROBE_PT_RAISE, param.V_verbosity); // TODO: Needs error handling - if (param.V_verbosity > 3) { - serial_spaces(16); - SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); + if ((abort_flag = isnan(measured_z))) break; + + const float zcorr = TERN(UBL_TILT_ON_MESH_POINTS, z_values[cpos.pos.x][cpos.pos.y], get_z_correction(rpos)); + + #if ENABLED(DEBUG_LEVELING_FEATURE) + if (DEBUGGING(LEVELING)) { + #if ENABLED(UBL_TILT_ON_MESH_POINTS) + const xy_pos_t oldLpos = oldRpos.asLogical(); + 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 + 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) + ); } - incremental_LSF(&lsf_results, rpos, measured_z); + #endif + + measured_z -= zcorr; + + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM(" final >>>---> ", p_float_t(measured_z, 7)); + + if (param.V_verbosity > 3) { + SERIAL_ECHO_SP(16); + SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); } + incremental_LSF(&lsf_results, rpos, measured_z); point_num++; } + if (abort_flag) break; zig_zag ^= true; } } @@ -1598,20 +1599,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)); @@ -1619,24 +1614,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); } @@ -1646,17 +1631,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(); /** @@ -1667,25 +1644,24 @@ void unified_bed_leveling::smart_fill_mesh() { * The Z error between the probed point locations and the get_z_correction() * numbers for those locations should be 0. */ - #ifdef VALIDATE_MESH_TILT + #if ENABLED(VALIDATE_MESH_TILT) auto d_from = []{ DEBUG_ECHOPGM("D from "); }; auto normed = [&](const xy_pos_t &pos, const_float_t zadd) { return normal.x * pos.x + normal.y * pos.y + zadd; }; - auto debug_pt = [](FSTR_P const pre, const xy_pos_t &pos, const_float_t zadd) { - d_from(); SERIAL_ECHOF(pre); - DEBUG_ECHO_F(normed(pos, zadd), 6); - DEBUG_ECHOLNPAIR_F(" Z error = ", zadd - get_z_correction(pos), 6); + auto debug_pt = [](const int num, const xy_pos_t &pos, const_float_t zadd) { + 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(F("1st point: "), probe_pt[0], normal.z * z1); - debug_pt(F("2nd point: "), probe_pt[1], normal.z * z2); - debug_pt(F("3rd point: "), probe_pt[2], normal.z * z3); - d_from(); DEBUG_ECHOPGM("safe home with Z="); - DEBUG_ECHOLNPAIR_F("0 : ", normed(safe_homing_xy, 0), 6); - d_from(); DEBUG_ECHOPGM("safe home with Z="); - DEBUG_ECHOLNPAIR_F("mesh value ", normed(safe_homing_xy, get_z_correction(safe_homing_xy)), 6); - DEBUG_ECHOPGM(" Z error = (", Z_SAFE_HOMING_X_POINT, ",", Z_SAFE_HOMING_Y_POINT); - DEBUG_ECHOLNPAIR_F(") = ", get_z_correction(safe_homing_xy), 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_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) @@ -1712,17 +1688,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], @@ -1732,7 +1708,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; @@ -1743,7 +1719,7 @@ void unified_bed_leveling::smart_fill_mesh() { } } - SERIAL_ECHOLNPGM("done"); + SERIAL_ECHOLNPGM(" done."); } #endif // UBL_G29_P31 @@ -1756,20 +1732,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); @@ -1782,17 +1757,15 @@ 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) { - SERIAL_ECHO_F(LOGICAL_X_POSITION(get_mesh_x(i)), 3); - SERIAL_ECHOPGM(" "); + for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) { + 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: "); - LOOP_L_N(i, GRID_MAX_POINTS_Y) { - SERIAL_ECHO_F(LOGICAL_Y_POSITION(get_mesh_y(i)), 3); - SERIAL_ECHOPGM(" "); + for (uint8_t i = 0; i < GRID_MAX_POINTS_Y; ++i) { + SERIAL_ECHO(p_float_t(LOGICAL_Y_POSITION(get_mesh_y(i)), 3), F(" ")); serial_delay(25); } SERIAL_EOL(); @@ -1804,23 +1777,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/bedlevel/ubl/ubl_motion.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp index 1a2b6eb23a..053a68b77d 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/feature/binary_stream.h b/Marlin/src/feature/binary_stream.h index 417e39c745..a9cd12b85e 100644 --- a/Marlin/src/feature/binary_stream.h +++ b/Marlin/src/feature/binary_stream.h @@ -281,7 +281,7 @@ public: 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/bltouch.cpp b/Marlin/src/feature/bltouch.cpp index fe56341a47..02f76c1392 100644 --- a/Marlin/src/feature/bltouch.cpp +++ b/Marlin/src/feature/bltouch.cpp @@ -29,7 +29,7 @@ BLTouch bltouch; bool BLTouch::od_5v_mode; // Initialized by settings.load, 0 = Open Drain; 1 = 5V Drain -#ifdef BLTOUCH_HS_MODE +#if HAS_BLTOUCH_HS_MODE bool BLTouch::high_speed_mode; // Initialized by settings.load, 0 = Low Speed; 1 = High Speed #else constexpr bool BLTouch::high_speed_mode; @@ -42,9 +42,14 @@ bool BLTouch::od_5v_mode; // Initialized by settings.load, 0 = Open Drai #include "../core/debug_out.h" bool BLTouch::command(const BLTCommand cmd, const millis_t &ms) { - if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("BLTouch Command :", cmd); - servo[Z_PROBE_SERVO_NR].move(cmd); - safe_delay(_MAX(ms, (uint32_t)BLTOUCH_DELAY)); // BLTOUCH_DELAY is also the *minimum* delay + const BLTCommand current = servo[Z_PROBE_SERVO_NR].read(); + if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("BLTouch from ", current, " to ", cmd); + // If the new command is the same, skip it (and the delay). + // The previous write should've already delayed to detect the alarm. + if (cmd != current) { + servo[Z_PROBE_SERVO_NR].move(cmd); + safe_delay(_MAX(ms, (uint32_t)BLTOUCH_DELAY)); // BLTOUCH_DELAY is also the *minimum* delay + } return triggered(); } diff --git a/Marlin/src/feature/bltouch.h b/Marlin/src/feature/bltouch.h index fa857bb96a..0f9f2e68ba 100644 --- a/Marlin/src/feature/bltouch.h +++ b/Marlin/src/feature/bltouch.h @@ -70,13 +70,13 @@ public: static void init(const bool set_voltage=false); static bool od_5v_mode; // Initialized by settings.load, 0 = Open Drain; 1 = 5V Drain - #ifdef BLTOUCH_HS_MODE + #if HAS_BLTOUCH_HS_MODE static bool high_speed_mode; // Initialized by settings.load, 0 = Low Speed; 1 = High Speed #else static constexpr bool high_speed_mode = false; #endif - static float z_extra_clearance() { return high_speed_mode ? 7 : 0; } + static float z_extra_clearance() { return TERN0(HAS_BLTOUCH_HS_MODE, high_speed_mode ? BLTOUCH_HS_EXTRA_CLEARANCE : 0); } // DEPLOY and STOW are wrapped for error handling - these are used by homing and by probing static bool deploy() { return deploy_proc(); } diff --git a/Marlin/src/feature/cancel_object.cpp b/Marlin/src/feature/cancel_object.cpp index bffd2bb720..0040f6ed9d 100644 --- a/Marlin/src/feature/cancel_object.cpp +++ b/Marlin/src/feature/cancel_object.cpp @@ -44,9 +44,9 @@ 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)); + ui.set_status(MString<30>(GET_TEXT_F(MSG_PRINTING_OBJECT), ' ', active_object)); else ui.reset_status(); #endif diff --git a/Marlin/src/feature/controllerfan.cpp b/Marlin/src/feature/controllerfan.cpp index 6e5278ce74..816ffb23b7 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 @@ -61,10 +65,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: @@ -92,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 55eb2359b0..68502afa66 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/feature/cooler.cpp b/Marlin/src/feature/cooler.cpp index e0f99777d1..6c45e99226 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/digipot/digipot_mcp4018.cpp b/Marlin/src/feature/digipot/digipot_mcp4018.cpp index 3f2ecbfcdc..f776c5a339 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 ba5ecdad05..7416fe9f8d 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/direct_stepping.h b/Marlin/src/feature/direct_stepping.h index 962310281e..b8a803f811 100644 --- a/Marlin/src/feature/direct_stepping.h +++ b/Marlin/src/feature/direct_stepping.h @@ -80,9 +80,6 @@ namespace DirectStepping { static void set_page_state(const page_idx_t page_idx, const PageState page_state); }; - template struct TypeSelector { typedef T type;} ; - template struct TypeSelector { typedef F type; }; - template struct config_t { static constexpr char CONTROL_CHAR = '!'; @@ -98,8 +95,8 @@ namespace DirectStepping { static constexpr int TOTAL_STEPS = SEGMENT_STEPS * SEGMENTS; static constexpr int PAGE_SIZE = (AXIS_COUNT * BITS_SEGMENT * SEGMENTS) / 8; - typedef typename TypeSelector<(PAGE_SIZE>256), uint16_t, uint8_t>::type write_byte_idx_t; - typedef typename TypeSelector<(PAGE_COUNT>256), uint16_t, uint8_t>::type page_idx_t; + typedef uvalue_t(PAGE_SIZE - 1) write_byte_idx_t; + typedef uvalue_t(PAGE_COUNT - 1) page_idx_t; }; template diff --git a/Marlin/src/feature/e_parser.cpp b/Marlin/src/feature/e_parser.cpp index cfe0956aa7..da193ed30a 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) @@ -33,16 +33,199 @@ // 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; #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 3a15a7ffa0..8dacb0581c 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: @@ -58,9 +40,12 @@ public: 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(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 @@ -79,7 +64,7 @@ public: static bool killed_by_M112; static bool quickstop_by_M410; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static bool sd_abort_by_M524; #endif @@ -92,149 +77,7 @@ public: 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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - 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/feature/easythreed_ui.cpp b/Marlin/src/feature/easythreed_ui.cpp index b15daffc09..39248bfc7d 100644 --- a/Marlin/src/feature/easythreed_ui.cpp +++ b/Marlin/src/feature/easythreed_ui.cpp @@ -190,31 +190,28 @@ void EasythreedUI::printButton() { print_key_flag = PF_PAUSE; // The "Print" button now pauses the print card.mount(); // Force SD card to mount - now! if (!card.isMounted) { // Failed to mount? - blink_interval_ms = LED_OFF; // Turn off LED - print_key_flag = PF_START; - return; // Bail out + blink_interval_ms = LED_OFF; // Turn off LED + print_key_flag = PF_START; + return; // Bail out } card.ls(); // List all files to serial output - const uint16_t filecnt = card.countFilesInWorkDir(); // Count printable files in cwd + const int16_t filecnt = card.get_num_items(); // Count printable files in cwd if (filecnt == 0) return; // None are printable? card.selectFileByIndex(filecnt); // Select the last file according to current sort options card.openAndPrintFile(card.filename); // Start printing it - break; - } + } break; case PF_PAUSE: { // Pause printing (not currently firing) if (!printingIsActive()) break; blink_interval_ms = LED_ON; // Set indicator to steady ON queue.inject(F("M25")); // Queue Pause print_key_flag = PF_RESUME; // The "Print" button now resumes the print - break; - } + } break; case PF_RESUME: { // Resume printing if (printingIsActive()) break; blink_interval_ms = LED_BLINK_2; // Blink the indicator LED at 1 second intervals queue.inject(F("M24")); // Queue resume print_key_flag = PF_PAUSE; // The "Print" button now pauses the print - break; - } + } break; } } else { // Register a longer press diff --git a/Marlin/src/feature/encoder_i2c.cpp b/Marlin/src/feature/encoder_i2c.cpp index 092ce0f8b8..a367cea48d 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 @@ -138,7 +135,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 +167,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"); @@ -232,7 +229,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: @@ -404,7 +401,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 f25fe2ea6b..1ae05d1433 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 126b79b0a4..844191e7e4 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 2bd9c78980..3befd7752a 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/filwidth.h b/Marlin/src/feature/filwidth.h index 9eb1e77762..ab50fe0af3 100644 --- a/Marlin/src/feature/filwidth.h +++ b/Marlin/src/feature/filwidth.h @@ -67,7 +67,7 @@ public: } // 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/fwretract.cpp b/Marlin/src/feature/fwretract.cpp index 28355640d2..b4ef18a9b9 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/host_actions.cpp b/Marlin/src/feature/host_actions.cpp index 93bb915863..c3b9aba90a 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(); } @@ -187,13 +186,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 +208,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 ALL(ADVANCED_PAUSE_FEATURE, HAS_MEDIA) extern const char M24_STR[]; queue.inject_P(M24_STR); #endif diff --git a/Marlin/src/feature/host_actions.h b/Marlin/src/feature/host_actions.h index 3f75562398..c030ebad01 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/hotend_idle.cpp b/Marlin/src/feature/hotend_idle.cpp index 4b137f42da..050898e3b5 100644 --- a/Marlin/src/feature/hotend_idle.cpp +++ b/Marlin/src/feature/hotend_idle.cpp @@ -37,28 +37,33 @@ #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 + 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 + hp_interval; // ...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 } } @@ -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 40f557d5ed..a4229153c9 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/feature/leds/leds.cpp b/Marlin/src/feature/leds/leds.cpp index 94900445dc..ac7f181516 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); @@ -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); @@ -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); @@ -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 @@ -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); @@ -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 c6137b45c3..7a31ca685d 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 @@ public: #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 ab7ffe2177..1b0772c2f9 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 @@ -54,7 +54,15 @@ Adafruit_NeoPixel Marlin_NeoPixel::adaneo1(NEOPIXEL_PIXELS, NEOPIXEL_PIN, NEOPIX set_background_color(background_color); } -#endif + void Marlin_NeoPixel::set_background_off() { + #ifndef NEOPIXEL_BKGD_TIMEOUT_COLOR + #define NEOPIXEL_BKGD_TIMEOUT_COLOR { 0, 0, 0, 0 } + #endif + constexpr uint8_t background_color_off[4] = NEOPIXEL_BKGD_TIMEOUT_COLOR; + set_background_color(background_color_off); + } + +#endif // NEOPIXEL_BKGD_INDEX_FIRST void Marlin_NeoPixel::set_color(const uint32_t color) { if (neoindex >= 0) { diff --git a/Marlin/src/feature/leds/neopixel.h b/Marlin/src/feature/leds/neopixel.h index 2048e2c2ee..6cc8b6157e 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 @@ -66,7 +66,7 @@ // Types // ------------------------ -typedef IF<(TERN0(NEOPIXEL_LED, NEOPIXEL_PIXELS > 127)), int16_t, int8_t>::type pixel_index_t; +typedef value_t(TERN0(NEOPIXEL_LED, NEOPIXEL_PIXELS)) pixel_index_t; // ------------------------ // Classes @@ -91,6 +91,7 @@ public: static void set_background_color(const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w); static void set_background_color(const uint8_t (&rgbw)[4]) { set_background_color(rgbw[0], rgbw[1], rgbw[2], rgbw[3]); } static void reset_background_color(); + static void set_background_off(); #endif static void begin() { diff --git a/Marlin/src/feature/leds/pca9533.cpp b/Marlin/src/feature/leds/pca9533.cpp index 914db21ba3..d71760e2cb 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 431058c491..3a18e96b24 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/leds/pca9632.cpp b/Marlin/src/feature/leds/pca9632.cpp index abea988004..07c379a815 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 fb59a8c184..adef0200af 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/feature/leds/printer_event_leds.h b/Marlin/src/feature/leds/printer_event_leds.h index 2a4342e8f5..3a037eba96 100644 --- a/Marlin/src/feature/leds/printer_event_leds.h +++ b/Marlin/src/feature/leds/printer_event_leds.h @@ -59,7 +59,7 @@ public: 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 @@ public: #endif } - #endif // SDSUPPORT + #endif // HAS_MEDIA }; extern PrinterEventLEDs printerEventLEDs; diff --git a/Marlin/src/feature/max7219.cpp b/Marlin/src/feature/max7219.cpp index 2fdfcba32d..991f3e79db 100644 --- a/Marlin/src/feature/max7219.cpp +++ b/Marlin/src/feature/max7219.cpp @@ -44,6 +44,7 @@ #include "max7219.h" #include "../module/planner.h" +#include "../module/stepper.h" #include "../MarlinCore.h" #include "../HAL/shared/Delay.h" @@ -135,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(); @@ -155,7 +154,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; @@ -338,13 +337,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); } @@ -356,7 +355,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; } @@ -371,7 +370,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; } @@ -436,23 +435,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 @@ -471,7 +470,7 @@ void Max7219::register_setup() { constexpr millis_t pattern_delay = 4; int8_t spiralx, spiraly, spiral_dir; - IF<(MAX7219_LEDS > 255), uint16_t, uint8_t>::type spiral_count; + uvalue_t(MAX7219_LEDS) spiral_count; void Max7219::test_pattern() { constexpr int8_t way[][2] = { { 1, 0 }, { 0, 1 }, { -1, 0 }, { 0, -1 } }; @@ -723,10 +722,23 @@ void Max7219::idle_tasks() { } #endif + #ifdef MAX7219_DEBUG_MULTISTEPPING + static uint8_t last_multistepping = 0; + const uint8_t multistepping = Stepper::steps_per_isr; + if (multistepping != last_multistepping) { + static uint8_t log2_old = 0; + uint8_t log2_new = 0; + for (uint8_t val = multistepping; val > 1; val >>= 1) log2_new++; + mark16(MAX7219_DEBUG_MULTISTEPPING, log2_old, log2_new, &row_change_mask); + last_multistepping = multistepping; + log2_old = log2_new; + } + #endif + // 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/meatpack.cpp b/Marlin/src/feature/meatpack.cpp index 07ff41e5be..5d2d112967 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/meatpack.h b/Marlin/src/feature/meatpack.h index 98a535e592..37039c3056 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/feature/mixing.cpp b/Marlin/src/feature/mixing.cpp index b1a069e320..6cf59fdb56 100644 --- a/Marlin/src/feature/mixing.cpp +++ b/Marlin/src/feature/mixing.cpp @@ -24,8 +24,6 @@ #if ENABLED(MIXING_EXTRUDER) -//#define MIXER_NORMALIZER_DEBUG - #include "mixing.h" Mixer mixer; @@ -44,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 @@ -62,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 @@ -77,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 @@ -96,13 +87,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 @@ -140,7 +131,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 85d52d69c8..4340a510a5 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,11 +118,11 @@ 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]; } - #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 @@ -137,26 +137,24 @@ 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 } static void update_mix_from_vtool(const uint8_t j=selected_vtool) { float ctot = 0; MIXER_STEPPER_LOOP(i) ctot += color[j][i]; - //MIXER_STEPPER_LOOP(i) mix[i] = 100.0f * color[j][i] / ctot; - MIXER_STEPPER_LOOP(i) mix[i] = mixer_perc_t(100.0f * color[j][i] / ctot); + 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 } @@ -197,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 } @@ -234,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/feature/mmu/mmu2-serial-protocol.md b/Marlin/src/feature/mmu/mmu2-serial-protocol.md index 93135e406f..42f30e418d 100644 --- a/Marlin/src/feature/mmu/mmu2-serial-protocol.md +++ b/Marlin/src/feature/mmu/mmu2-serial-protocol.md @@ -91,4 +91,3 @@ Eject filament - MMU <= 'E*Filament index*\n' - MMU => 'ok\n' - diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index 75cb17cbf1..36f4606451 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) +#if ANY(HAS_PRUSA_MMU2S, MMU_EXTRUDER_SENSOR) #define FILAMENT_PRESENT() (READ(FIL_RUNOUT1_PIN) != runout.out_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: @@ -289,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; @@ -406,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(); } @@ -416,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(); } @@ -458,12 +455,19 @@ 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); - 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); @@ -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; } @@ -815,8 +824,7 @@ void MMU2::manage_response(const bool move_axes, const bool turn_off_nozzle) { resume_hotend_temp = thermalManager.degTargetHotend(active_extruder); resume_position = current_position; - if (move_axes && all_axes_homed()) - nozzle.park(0, park_point /*= NOZZLE_PARK_POINT*/); + if (move_axes && all_axes_homed()) nozzle.park(0, park_point); if (turn_off_nozzle) thermalManager.setTargetHotend(0, active_extruder); @@ -824,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); } @@ -843,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)); } @@ -878,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)); + 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'); if (mmu2s_triggered) ++filament_detected_count; @@ -912,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); @@ -923,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)) { @@ -933,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); @@ -942,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; @@ -971,20 +973,17 @@ 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); 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.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); @@ -1018,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); @@ -1033,23 +1032,26 @@ bool MMU2::unload() { return true; } +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) { + 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); - - 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 18d6d38a35..bebbae667e 100644 --- a/Marlin/src/feature/mmu/mmu2.h +++ b/Marlin/src/feature/mmu/mmu2.h @@ -47,13 +47,12 @@ public: 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 @@ private: 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 @@ private: 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/feature/pause.cpp b/Marlin/src/feature/pause.cpp index f789576fac..4fc9ff99b7 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 @@ -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); @@ -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 LOOP_S_LE_N(i, 1, NUM_RUNOUT_SENSORS) { pin_t pin; @@ -243,6 +243,8 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load TERN_(BELTPRINTER, do_blocking_move_to_xy(0.00, 50.00)); + TERN_(MPCTEMP, MPC::e_paused = true); + // Slow Load filament if (slow_load_length) unscaled_e_move(slow_load_length, FILAMENT_CHANGE_SLOW_LOAD_FEEDRATE); @@ -269,7 +271,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); @@ -306,6 +308,9 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load } while (TERN0(M600_PURGE_MORE_RESUMABLE, pause_menu_response == PAUSE_RESPONSE_EXTRUDE_MORE)); #endif + + TERN_(MPCTEMP, MPC::e_paused = false); + TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_end()); return true; @@ -335,18 +340,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 @@ -406,8 +411,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) @@ -424,7 +427,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(); @@ -449,7 +452,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 ALL(ADVANCED_PAUSE_FANS_PAUSE, HAS_FAN) thermalManager.set_fans_paused(true); #endif @@ -469,7 +472,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; @@ -508,7 +511,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) { @@ -534,7 +537,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) { @@ -552,15 +555,17 @@ 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 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); @@ -576,9 +581,12 @@ 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)); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(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); @@ -704,7 +712,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/pause.h b/Marlin/src/feature/pause.h index 134b1d1b32..7ea0c03b6b 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 b6ed9e7637..3dba3bce4b 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 @@ -116,12 +116,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 @@ -141,7 +141,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; @@ -193,7 +193,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 839366ca60..fdbb7126ce 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/power_monitor.h b/Marlin/src/feature/power_monitor.h index fa06909053..d57ef6fa67 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 @@ -119,7 +119,7 @@ public: volts.reset(); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA display_item_ms = 0; display_item = 0; #endif diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index d4450adcd8..7fb60349c6 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -31,9 +31,13 @@ #include "powerloss.h" #include "../core/macros.h" +#if ENABLED(EXTENSIBLE_UI) + #include "../lcd/extui/ui_api.h" +#endif + bool PrintJobRecovery::enabled; // Initialized by settings.load() -SdFile PrintJobRecovery::file; +MediaFile PrintJobRecovery::file; job_recovery_info_t PrintJobRecovery::info; const char PrintJobRecovery::filename[5] = "/PLR"; uint8_t PrintJobRecovery::queue_index_r; @@ -78,6 +82,13 @@ PrintJobRecovery recovery; #define POWER_LOSS_RETRACT_LEN 0 #endif +// Allow power-loss recovery to be aborted +#define PLR_CAN_ABORT +#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 */ @@ -101,6 +112,7 @@ void PrintJobRecovery::changed() { purge(); else if (IS_SD_PRINTING()) save(true); + TERN_(EXTENSIBLE_UI, ExtUI::onSetPowerLoss(enabled)); } /** @@ -195,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) @@ -259,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 @@ -305,6 +314,9 @@ void PrintJobRecovery::save(const bool force/*=false*/, const float zraise/*=POW // and a flag whether the raise was already done here. if (IS_SD_PRINTING()) save(true, zraise, ENABLED(BACKUP_POWER_SUPPLY)); + // Tell the LCD about the outage, even though it is about to die + TERN_(EXTENSIBLE_UI, ExtUI::onPowerLoss()); + // Disable all heaters to reduce power loss thermalManager.disable_all_heaters(); @@ -344,29 +356,34 @@ 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 if (info.flag.dryrun) marlin_debug_flags |= MARLIN_DEBUG_DRYRUN; + #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) + struct OnExit { + uint8_t old_flags; + OnExit() { + old_flags = marlin_debug_flags; + marlin_debug_flags |= MARLIN_DEBUG_ECHO; + } + ~OnExit() { marlin_debug_flags = old_flags; } + } on_exit; + #endif + // Restore cold extrusion permission TERN_(PREVENT_COLD_EXTRUSION, thermalManager.allow_cold_extrude = info.flag.allow_cold_extrusion); #if HAS_LEVELING // Make sure leveling is off before any G92 and G28 - gcode.process_subcommands_now(F("M420 S0 Z0")); + PROCESS_SUBCOMMANDS_NOW(F("M420S0")); #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); - gcode.process_subcommands_now(cmd); - } + if (bt) PROCESS_SUBCOMMANDS_NOW(TS(F("M190S"), bt)); #endif // Heat hotend enough to soften material @@ -374,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); - gcode.process_subcommands_now(cmd); - #endif - sprintf_P(cmd, PSTR("M109S%i"), et); - gcode.process_subcommands_now(cmd); + TERN_(HAS_MULTI_HOTEND, PROCESS_SUBCOMMANDS_NOW(TS('T', e, 'S'))); + PROCESS_SUBCOMMANDS_NOW(TS(F("M109S"), et)); } } #endif @@ -393,18 +406,18 @@ void PrintJobRecovery::resume() { // establish the current position as best we can. // - gcode.process_subcommands_now(F("G92.9E0")); // Reset E to 0 + PROCESS_SUBCOMMANDS_NOW(F("G92.9E0")); // Reset E to 0 #if Z_HOME_TO_MAX 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)); - gcode.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) @@ -416,27 +429,24 @@ 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)); - gcode.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)); - gcode.process_subcommands_now(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F600Z"), p_float_t(z_now, 3))); } // Home XY with no Z raise - gcode.process_subcommands_now(F("G28R0XY")); // No raise during G28 + PROCESS_SUBCOMMANDS_NOW(F("G28R0XY")); // No raise during G28 #endif #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)); - gcode.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) @@ -446,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)); - gcode.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)); - gcode.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)); - gcode.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)); - gcode.process_subcommands_now(cmd); - } - if (!info.flag.volumetric_enabled) { - sprintf_P(cmd, PSTR("M200T%iD0"), info.active_extruder); - gcode.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)); - gcode.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 @@ -487,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); - gcode.process_subcommands_now(cmd); - #endif - sprintf_P(cmd, PSTR("M109S%i"), et); - gcode.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); - gcode.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); - gcode.process_subcommands_now(cmd); - } + if (f) PROCESS_SUBCOMMANDS_NOW(TS(F("M106P"), i, 'S', f)); } #endif @@ -531,77 +524,57 @@ void PrintJobRecovery::resume() { // Un-retract if there was a retract at outage #if ENABLED(BACKUP_POWER_SUPPLY) && POWER_LOSS_RETRACT_LEN > 0 - gcode.process_subcommands_now(F("G1F3000E" STRINGIFY(POWER_LOSS_RETRACT_LEN))); + PROCESS_SUBCOMMANDS_NOW(F("G1F3000E" STRINGIFY(POWER_LOSS_RETRACT_LEN))); #endif // 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)); - gcode.process_subcommands_now(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F3000E"), (POWER_LOSS_PURGE_LEN) + (POWER_LOSS_RETRACT_LEN))); #endif #if ENABLED(NOZZLE_CLEAN_FEATURE) - gcode.process_subcommands_now(F("G12")); + PROCESS_SUBCOMMANDS_NOW(F("G12")); #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) - ); - gcode.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)); - gcode.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); - gcode.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)); - gcode.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); - 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; - #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) - const uint8_t old_flags = marlin_debug_flags; - marlin_debug_flags |= MARLIN_DEBUG_ECHO; - #endif - // Continue to apply PLR when a file is resumed! enable(true); // Resume the SD file from the last position - char *fn = info.sd_filename; - sprintf_P(cmd, M23_STR, fn); - gcode.process_subcommands_now(cmd); - sprintf_P(cmd, PSTR("M24S%ldT%ld"), resume_sdpos, info.print_job_elapsed); - gcode.process_subcommands_now(cmd); - - TERN_(DEBUG_POWER_LOSS_RECOVERY, marlin_debug_flags = old_flags); + 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) 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(); @@ -611,7 +584,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 @@ -619,16 +592,16 @@ 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 - #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_DECIMAL(info.position_shift[i]); + DEBUG_ECHO(info.workspace_offset[i]); } DEBUG_EOL(); #endif @@ -680,7 +653,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/powerloss.h b/Marlin/src/feature/powerloss.h index 4bf0c06e2d..a69862b259 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; @@ -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 { @@ -138,7 +138,7 @@ class PrintJobRecovery { public: static const char filename[5]; - static SdFile file; + static MediaFile file; static job_recovery_info_t info; static uint8_t queue_index_r; //!< Queue index of the active command diff --git a/Marlin/src/feature/probe_temp_comp.cpp b/Marlin/src/feature/probe_temp_comp.cpp index b5f636e698..f640a9fd2f 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,17 +84,12 @@ 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( - 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; } @@ -232,7 +227,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 fed7ac0908..4484dab95b 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 fc11e4a9e2..8a54149b3d 100644 --- a/Marlin/src/feature/repeat.h +++ b/Marlin/src/feature/repeat.h @@ -40,7 +40,7 @@ private: 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 261831403b..ae33a85e4a 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" @@ -151,7 +152,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(int i; i < 8; i++) SERIAL_ECHO('0' + TEST(runout_flags, i)); SERIAL_ECHOPGM(" -> ", extruder); if (ran_out) SERIAL_ECHOPGM(" RUN OUT"); SERIAL_EOL(); @@ -210,7 +211,7 @@ class FilamentSensorBase { #undef _INIT_RUNOUT_PIN #undef INIT_RUNOUT_PIN } - + // Return a bitmask of runout pin states static uint8_t poll_runout_pins() { @@ -252,7 +253,7 @@ class FilamentSensorCore : public FilamentSensorBase { #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) if (change) { SERIAL_ECHOPGM("Motion detected:"); - LOOP_L_N(e, NUM_RUNOUT_SENSORS) + for(int e; e < NUM_RUNOUT_SENSORS; e++) if (TEST(change, e)) SERIAL_CHAR(' ', '0' + e); SERIAL_EOL(); } @@ -279,7 +280,7 @@ class FilamentSensorCore : public FilamentSensorBase { poll_motion_sensor(); } else if (runout.mode[active_extruder] != RM_NONE) { - LOOP_L_N(s, NUM_RUNOUT_SENSORS) { + for(int 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) @@ -308,7 +309,7 @@ class RunoutResponseDelayed { static float runout_distance_mm[NUM_RUNOUT_SENSORS]; static void reset() { - LOOP_L_N(i, NUM_RUNOUT_SENSORS) filament_present(i); + for(int i = 0; i < NUM_RUNOUT_SENSORS; i++) filament_present(i); } static void run() { @@ -317,7 +318,7 @@ class RunoutResponseDelayed { const millis_t ms = millis(); if (ELAPSED(ms, t)) { t = millis() + 1000UL; - LOOP_L_N(i, NUM_RUNOUT_SENSORS) + for(int i; i < NUM_RUNOUT_SENSORS; i++) SERIAL_ECHOF(i ? F(", ") : F("Remaining mm: "), runout_mm_countdown[i]); SERIAL_EOL(); } @@ -326,7 +327,7 @@ class RunoutResponseDelayed { static uint8_t has_run_out() { uint8_t runout_flags = 0; - LOOP_L_N(i, NUM_RUNOUT_SENSORS) if (runout_mm_countdown[i] < 0) SBI(runout_flags, i); + for(int i = 0; i < NUM_RUNOUT_SENSORS; i++) if (runout_mm_countdown[i] < 0) SBI(runout_flags, i); return runout_flags; } diff --git a/Marlin/src/feature/solenoid.cpp b/Marlin/src/feature/solenoid.cpp index 861e44ed05..46364eaf8f 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/feature/spindle_laser.cpp b/Marlin/src/feature/spindle_laser.cpp index e7898268e8..c0635c7220 100644 --- a/Marlin/src/feature/spindle_laser.cpp +++ b/Marlin/src/feature/spindle_laser.cpp @@ -141,7 +141,7 @@ void SpindleLaser::apply_power(const uint8_t opwr) { else ocr_off(); #elif ENABLED(SPINDLE_SERVO) - MOVE_SERVO(SPINDLE_SERVO_NR, power); + servo[SPINDLE_SERVO_NR].move(opwr); #else WRITE(SPINDLE_LASER_ENA_PIN, enabled() ? SPINDLE_LASER_ACTIVE_STATE : !SPINDLE_LASER_ACTIVE_STATE); isReadyForUI = true; diff --git a/Marlin/src/feature/spindle_laser.h b/Marlin/src/feature/spindle_laser.h index a49e5611a4..8908ae6df5 100644 --- a/Marlin/src/feature/spindle_laser.h +++ b/Marlin/src/feature/spindle_laser.h @@ -201,8 +201,6 @@ public: 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; @@ -210,7 +208,7 @@ public: 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; @@ -281,7 +279,7 @@ public: 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); diff --git a/Marlin/src/feature/spindle_laser_types.h b/Marlin/src/feature/spindle_laser_types.h index 2f36a68a1a..4e5e4d06f6 100644 --- a/Marlin/src/feature/spindle_laser_types.h +++ b/Marlin/src/feature/spindle_laser_types.h @@ -57,7 +57,7 @@ #endif #endif -typedef IF<(SPEED_POWER_MAX > 255), uint16_t, uint8_t>::type cutter_cpower_t; +typedef uvalue_t(SPEED_POWER_MAX) cutter_cpower_t; #if CUTTER_UNIT_IS(RPM) && SPEED_POWER_MAX > 255 typedef uint16_t cutter_power_t; diff --git a/Marlin/src/feature/stepper_driver_safety.cpp b/Marlin/src/feature/stepper_driver_safety.cpp index d3fc161486..acdd695909 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 0867686363..bff6872e4d 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 + 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) SERIAL_CHAR('F'); // otpw Flag - SERIAL_CHAR('|'); - if (st.otpw_count > 0) SERIAL_ECHO(st.otpw_count); - SERIAL_CHAR('\t'); + 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 @@ -562,7 +561,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) { @@ -601,8 +600,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; @@ -680,7 +679,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 +727,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; @@ -773,8 +772,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 +855,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 +943,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 +1069,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 +1153,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"); @@ -1228,7 +1227,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; } @@ -1236,7 +1235,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 c10bab6274..a0a72058aa 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 @@ -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; @@ -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/feature/tramming.cpp b/Marlin/src/feature/tramming.cpp index d03f0cf53b..3721c5eb81 100644 --- a/Marlin/src/feature/tramming.cpp +++ b/Marlin/src/feature/tramming.cpp @@ -29,31 +29,11 @@ #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" -PGMSTR(point_name_1, TRAMMING_POINT_NAME_1); -PGMSTR(point_name_2, TRAMMING_POINT_NAME_2); -PGMSTR(point_name_3, TRAMMING_POINT_NAME_3); -#ifdef TRAMMING_POINT_NAME_4 - PGMSTR(point_name_4, TRAMMING_POINT_NAME_4); - #ifdef TRAMMING_POINT_NAME_5 - PGMSTR(point_name_5, TRAMMING_POINT_NAME_5); - #ifdef TRAMMING_POINT_NAME_6 - PGMSTR(point_name_6, TRAMMING_POINT_NAME_6); - #endif - #endif -#endif +#define _TRAM_NAME_DEF(N) PGMSTR(point_name_##N, TRAMMING_POINT_NAME_##N); +#define _TRAM_NAME_ITEM(N) point_name_##N +REPEAT_1(_NR_TRAM_NAMES, _TRAM_NAME_DEF) -PGM_P const tramming_point_name[] PROGMEM = { - point_name_1, point_name_2, point_name_3 - #ifdef TRAMMING_POINT_NAME_4 - , point_name_4 - #ifdef TRAMMING_POINT_NAME_5 - , point_name_5 - #ifdef TRAMMING_POINT_NAME_6 - , point_name_6 - #endif - #endif - #endif -}; +PGM_P const tramming_point_name[] PROGMEM = { REPLIST_1(_NR_TRAM_NAMES, _TRAM_NAME_ITEM) }; #ifdef ASSISTED_TRAMMING_WAIT_POSITION diff --git a/Marlin/src/feature/tramming.h b/Marlin/src/feature/tramming.h index 925659e29d..c8f20f0010 100644 --- a/Marlin/src/feature/tramming.h +++ b/Marlin/src/feature/tramming.h @@ -31,43 +31,34 @@ constexpr xy_pos_t tramming_points[] = TRAMMING_POINT_XY; #define G35_PROBE_COUNT COUNT(tramming_points) -static_assert(WITHIN(G35_PROBE_COUNT, 3, 6), "TRAMMING_POINT_XY requires between 3 and 6 XY positions."); +static_assert(WITHIN(G35_PROBE_COUNT, 3, 9), "TRAMMING_POINT_XY requires between 3 and 9 XY positions."); -#define VALIDATE_TRAMMING_POINT(N) static_assert(N >= G35_PROBE_COUNT || Probe::build_time::can_reach(tramming_points[N]), \ - "TRAMMING_POINT_XY point " STRINGIFY(N) " is not reachable with the default NOZZLE_TO_PROBE offset and PROBING_MARGIN.") -VALIDATE_TRAMMING_POINT(0); VALIDATE_TRAMMING_POINT(1); VALIDATE_TRAMMING_POINT(2); VALIDATE_TRAMMING_POINT(3); VALIDATE_TRAMMING_POINT(4); VALIDATE_TRAMMING_POINT(5); - -extern const char point_name_1[], point_name_2[], point_name_3[] - #ifdef TRAMMING_POINT_NAME_4 - , point_name_4[] - #ifdef TRAMMING_POINT_NAME_5 - , point_name_5[] - #ifdef TRAMMING_POINT_NAME_6 - , point_name_6[] - #endif - #endif - #endif -; - -#define _NR_TRAM_NAMES 2 -#ifdef TRAMMING_POINT_NAME_3 - #undef _NR_TRAM_NAMES +#ifdef TRAMMING_POINT_NAME_9 + #define _NR_TRAM_NAMES 9 +#elif defined(TRAMMING_POINT_NAME_8) + #define _NR_TRAM_NAMES 8 +#elif defined(TRAMMING_POINT_NAME_7) + #define _NR_TRAM_NAMES 7 +#elif defined(TRAMMING_POINT_NAME_6) + #define _NR_TRAM_NAMES 6 +#elif defined(TRAMMING_POINT_NAME_5) + #define _NR_TRAM_NAMES 5 +#elif defined(TRAMMING_POINT_NAME_4) + #define _NR_TRAM_NAMES 4 +#elif defined(TRAMMING_POINT_NAME_3) #define _NR_TRAM_NAMES 3 - #ifdef TRAMMING_POINT_NAME_4 - #undef _NR_TRAM_NAMES - #define _NR_TRAM_NAMES 4 - #ifdef TRAMMING_POINT_NAME_5 - #undef _NR_TRAM_NAMES - #define _NR_TRAM_NAMES 5 - #ifdef TRAMMING_POINT_NAME_6 - #undef _NR_TRAM_NAMES - #define _NR_TRAM_NAMES 6 - #endif - #endif - #endif +#else + #define _NR_TRAM_NAMES 0 #endif + static_assert(_NR_TRAM_NAMES >= G35_PROBE_COUNT, "Define enough TRAMMING_POINT_NAME_s for all TRAMMING_POINT_XY entries."); -#undef _NR_TRAM_NAMES + +#define _TRAM_NAME_PTR(N) point_name_##N[] +extern const char REPLIST_1(_NR_TRAM_NAMES, _TRAM_NAME_PTR); + +#define _CHECK_TRAM_POINT(N) static_assert(Probe::build_time::can_reach(tramming_points[N]), "TRAMMING_POINT_XY point " STRINGIFY(N) " is not reachable with the default NOZZLE_TO_PROBE offset and PROBING_MARGIN."); +REPEAT(_NR_TRAM_NAMES, _CHECK_TRAM_POINT) +#undef _CHECK_TRAM_POINT extern PGM_P const tramming_point_name[]; diff --git a/Marlin/src/feature/twibus.cpp b/Marlin/src/feature/twibus.cpp index 9aec6b0305..5cfe9f9421 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 @@ -145,7 +144,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 b5ad25cba8..b8f7e52ab6 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 aa6e0c1f0c..30643cb84e 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); @@ -636,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 @@ -715,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 @@ -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/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index dd828bf0c8..a37e5623e7 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -86,11 +86,7 @@ void GcodeSuite::G35() { workspace_plane = PLANE_XY; #endif - // Always home with tool 0 active - #if HAS_MULTI_HOTEND - const uint8_t old_tool_index = active_extruder; - tool_change(0, true); - #endif + probe.use_probing_tool(); // Disable duplication mode on homing TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); @@ -101,30 +97,23 @@ void GcodeSuite::G35() { bool err_break = false; // 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. - do_blocking_move_to_z(SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance())); - const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE, 0, true); - + 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; @@ -134,7 +123,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]; @@ -154,11 +143,9 @@ void GcodeSuite::G35() { SERIAL_ECHOLNPGM("G35 aborted."); // Restore the active tool after homing - #if HAS_MULTI_HOTEND - if (old_tool_index != 0) tool_change(old_tool_index, DISABLED(PARKING_EXTRUDER)); // Fetch previous toolhead if not PARKING_EXTRUDER - #endif + 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/M420.cpp b/Marlin/src/gcode/bedlevel/M420.cpp index 277f95b9ff..d870a4f430 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 f74df68c3f..4ec87adaa2 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) @@ -78,7 +81,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()); } } @@ -97,20 +100,16 @@ public: bool dryrun, reenable; - #if HAS_MULTI_HOTEND - uint8_t tool_index; - #endif - - #if EITHER(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) + #if ANY(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) int abl_probe_index; #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 @@ -136,16 +135,16 @@ public: #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 }; -#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 int G29_State::abl_points; + constexpr grid_count_t G29_State::abl_points; #endif /** @@ -235,7 +234,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) @@ -281,12 +280,9 @@ G29_TYPE GcodeSuite::G29() { */ if (!g29_in_progress) { - #if HAS_MULTI_HOTEND - abl.tool_index = active_extruder; - if (active_extruder != 0) tool_change(0, true); - #endif + 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 @@ -409,7 +405,7 @@ G29_TYPE GcodeSuite::G29() { if (!probe.good_bounds(abl.probe_position_lf, abl.probe_position_rb)) { if (DEBUGGING(LEVELING)) { DEBUG_ECHOLNPGM("G29 L", abl.probe_position_lf.x, " R", abl.probe_position_rb.x, - " F", abl.probe_position_lf.y, " B", abl.probe_position_rb.y); + " F", abl.probe_position_lf.y, " B", abl.probe_position_rb.y); } SERIAL_ECHOLNPGM("? (L,R,F,B) out of bounds."); G29_RETURN(false, false); @@ -417,7 +413,7 @@ G29_TYPE GcodeSuite::G29() { // Probe at the points of a lattice grid abl.gridSpacing.set((abl.probe_position_rb.x - abl.probe_position_lf.x) / (abl.grid_points.x - 1), - (abl.probe_position_rb.y - abl.probe_position_lf.y) / (abl.grid_points.y - 1)); + (abl.probe_position_rb.y - abl.probe_position_lf.y) / (abl.grid_points.y - 1)); #endif // ABL_USES_GRID @@ -433,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()); @@ -443,8 +439,8 @@ 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) - HMI_data.BedLevT + #if ALL(DWIN_LCD_PROUI, HAS_HEATED_BED) + hmiData.bedLevT #else LEVELING_BED_TEMP #endif @@ -453,9 +449,7 @@ G29_TYPE GcodeSuite::G29() { } // Position bed horizontally and Z probe vertically. - #if defined(SAFE_BED_LEVELING_START_X) || defined(SAFE_BED_LEVELING_START_Y) || defined(SAFE_BED_LEVELING_START_Z) \ - || defined(SAFE_BED_LEVELING_START_I) || defined(SAFE_BED_LEVELING_START_J) || defined(SAFE_BED_LEVELING_START_K) \ - || defined(SAFE_BED_LEVELING_START_U) || defined(SAFE_BED_LEVELING_START_V) || defined(SAFE_BED_LEVELING_START_W) + #if HAS_SAFE_BED_LEVELING xyze_pos_t safe_position = current_position; #ifdef SAFE_BED_LEVELING_START_X safe_position.x = SAFE_BED_LEVELING_START_X; @@ -486,14 +480,14 @@ G29_TYPE GcodeSuite::G29() { #endif do_blocking_move_to(safe_position); - #endif + #endif // HAS_SAFE_BED_LEVELING // Disable auto bed leveling during G29. // Be formal so G29 can be done successively without G28. if (!no_action) set_bed_leveling_enabled(false); // Deploy certain probes before starting probing - #if ENABLED(BLTOUCH) + #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) @@ -503,20 +497,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 @@ -558,7 +545,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 @@ -693,7 +680,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 @@ -709,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); @@ -744,7 +790,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))); @@ -833,11 +879,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(); } @@ -853,9 +899,9 @@ 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--) { - 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 }; @@ -864,7 +910,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 @@ -951,7 +997,8 @@ G29_TYPE GcodeSuite::G29() { TERN_(HAS_DWIN_E3V2_BASIC, DWIN_LevelingDone()); TERN_(EXTENSIBLE_UI, ExtUI::onLevelingDone()); - TERN_(HAS_MULTI_HOTEND, if (abl.tool_index != 0) tool_change(abl.tool_index)); + TERN_(HAS_MULTI_HOTEND, if (active_extruder != 0) tool_change(0)); + probe.use_probing_tool(false); report_current_position(); diff --git a/Marlin/src/gcode/bedlevel/abl/M421.cpp b/Marlin/src/gcode/bedlevel/abl/M421.cpp index 3272ea1bd2..f66d023190 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/bedlevel/mbl/G29.cpp b/Marlin/src/gcode/bedlevel/mbl/G29.cpp index e98f3d5ee3..c5e02b91f9 100644 --- a/Marlin/src/gcode/bedlevel/mbl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/mbl/G29.cpp @@ -103,14 +103,11 @@ void GcodeSuite::G29() { bedlevel.reset(); mbl_probe_index = 0; if (!ui.wait_for_move) { - queue.inject(parser.seen_test('N') ? F("G28" TERN(CAN_SET_LEVELING_AFTER_G28, "L0", "") "\nG29S2") : F("G29S2")); - TERN_(EXTENSIBLE_UI, ExtUI::onLevelingStart()); - TERN_(DWIN_LCD_PROUI, DWIN_LevelingStart()); + if (parser.seen_test('N')) + queue.inject(F("G28" TERN_(CAN_SET_LEVELING_AFTER_G28, "L0"))); // Position bed horizontally and Z probe vertically. - #if defined(SAFE_BED_LEVELING_START_X) || defined(SAFE_BED_LEVELING_START_Y) || defined(SAFE_BED_LEVELING_START_Z) \ - || defined(SAFE_BED_LEVELING_START_I) || defined(SAFE_BED_LEVELING_START_J) || defined(SAFE_BED_LEVELING_START_K) \ - || defined(SAFE_BED_LEVELING_START_U) || defined(SAFE_BED_LEVELING_START_V) || defined(SAFE_BED_LEVELING_START_W) + #if HAS_SAFE_BED_LEVELING xyze_pos_t safe_position = current_position; #ifdef SAFE_BED_LEVELING_START_X safe_position.x = SAFE_BED_LEVELING_START_X; @@ -141,7 +138,12 @@ void GcodeSuite::G29() { #endif do_blocking_move_to(safe_position); - #endif + #endif // HAS_SAFE_BED_LEVELING + + queue.inject(F("G29S2")); + + TERN_(EXTENSIBLE_UI, ExtUI::onLevelingStart()); + TERN_(DWIN_LCD_PROUI, dwinLevelingStart()); return; } @@ -167,11 +169,11 @@ 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. - 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); @@ -234,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 ff74f4c6f7..3a5aa8cb03 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/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 0b6548a3e3..fd034f0ba6 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 @@ -86,7 +82,7 @@ NUM_AXIS_LIST( TERN0(X_SENSORLESS, tmc_enable_stallguard(stepperX)), TERN0(Y_SENSORLESS, tmc_enable_stallguard(stepperY)), - false, false, false, false + false, false, false, false, false, false, false ) , TERN0(X2_SENSORLESS, tmc_enable_stallguard(stepperX2)) , TERN0(Y2_SENSORLESS, tmc_enable_stallguard(stepperY2)) @@ -124,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 - 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); @@ -206,20 +195,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,6 +205,13 @@ 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"); @@ -241,198 +223,327 @@ 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! - 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); + #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(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); + + 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 - #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); + + // 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); + + #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_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); + + #if HAS_HOMING_CURRENT + + #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) + _SAVE_SET_CURRENT(X); + #endif + #if HAS_CURRENT_HOME(X2) + _SAVE_SET_CURRENT(X2); + #endif + #if HAS_CURRENT_HOME(Y) + _SAVE_SET_CURRENT(Y); + #endif + #if HAS_CURRENT_HOME(Y2) + _SAVE_SET_CURRENT(Y2); + #endif + #if HAS_CURRENT_HOME(Z) + _SAVE_SET_CURRENT(Z); + #endif + #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) + _SAVE_SET_CURRENT(I); + #endif + #if HAS_CURRENT_HOME(J) + _SAVE_SET_CURRENT(J); + #endif + #if HAS_CURRENT_HOME(K) + _SAVE_SET_CURRENT(K); + #endif + #if HAS_CURRENT_HOME(U) + _SAVE_SET_CURRENT(U); + #endif + #if HAS_CURRENT_HOME(V) + _SAVE_SET_CURRENT(V); + #endif + #if HAS_CURRENT_HOME(W) + _SAVE_SET_CURRENT(W); + #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 - #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); + + // 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 - #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 - #if ENABLED(IMPROVE_HOMING_RELIABILITY) - motion_state_t saved_motion_state = begin_slow_homing(); - #endif + TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); - // 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 + remember_feedrate_scaling_off(); - TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); - - remember_feedrate_scaling_off(); - - endstops.enable(true); // Enable endstops for next homing move - - #if ENABLED(DELTA) - - constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a DELTA - - home_delta(); - - TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); - - #elif ENABLED(AXEL_TPARA) - - constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a TPARA - - home_TPARA(); - - #else - - #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 - ); + endstops.enable(true); // Enable endstops for next homing move #if HAS_Z_AXIS - UNUSED(needZ); UNUSED(homeZZ); - #else - constexpr bool doZ = false; + bool finalRaiseZ = false; + #endif + + #if ENABLED(DELTA) + + constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a DELTA + + home_delta(); + + TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); + + #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 + + 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); + + // '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; + + // 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 (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()); + + #endif // HAS_Z_AXIS + + // 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 + + // Home X + #if HAS_X_AXIS + if (doX || (doY && ENABLED(CODEPENDENT_XY_HOMING) && DISABLED(HOME_Y_BEFORE_X))) { + + #if ENABLED(DUAL_X_CARRIAGE) + + // 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; + + // Home the 1st (left) extruder + active_extruder = 0; + homeaxis(X_AXIS); + + // Consider the active extruder to be in its "parked" position + idex_set_parked(); + + #else + + homeaxis(X_AXIS); + + #endif + } + #endif // HAS_X_AXIS + + #if ALL(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 ALL(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)); + + #if ENABLED(FOAMCUTTER_XYUV) + + // Skip homing of unused Z axis for foamcutters + if (doZ) set_axis_is_at_home(Z_AXIS); + + #elif HAS_Z_AXIS + + // Home Z last if homing towards the bed + #if DISABLED(HOME_Z_FIRST) + if (doZ) { + #if ANY(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 ANY(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) + ); + + #endif // HAS_Z_AXIS + + sync_plan_position(); + #endif - TERN_(HOME_Z_FIRST, if (doZ) homeaxis(Z_AXIS)); + /** + * 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) - const bool seenR = parser.seenval('R'); - const float z_homing_height = seenR ? parser.value_linear_units() : Z_HOMING_HEIGHT; + if (idex_is_duplicating()) { - if (z_homing_height && (seenR || NUM_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW))) { - // Raise Z before homing any other axes and z is not already high enough (never lower z) - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z (before homing) by ", z_homing_height); - do_z_clearance(z_homing_height); - TERN_(BLTOUCH, bltouch.init()); - } - - // 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 - - // Home X - if (doX || (doY && ENABLED(CODEPENDENT_XY_HOMING) && DISABLED(HOME_Y_BEFORE_X))) { - - #if ENABLED(DUAL_X_CARRIAGE) + TERN_(IMPROVE_HOMING_RELIABILITY, saved_motion_state = begin_slow_homing()); // Always home the 2nd (right) extruder first active_extruder = 1; @@ -445,170 +556,102 @@ void GcodeSuite::G28() { active_extruder = 0; homeaxis(X_AXIS); - // Consider the active extruder to be in its "parked" position + // Consider the active extruder to be parked idex_set_parked(); - #else + dual_x_carriage_mode = IDEX_saved_mode; + set_duplication_enabled(IDEX_saved_duplication_state); - homeaxis(X_AXIS); + TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); + } + #endif // DUAL_X_CARRIAGE + + endstops.not_homing(); + + // 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(saved_current_X); #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 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)); - - #if ENABLED(FOAMCUTTER_XYUV) - // skip homing of unused Z axis for foamcutters - if (doZ) set_axis_is_at_home(Z_AXIS); - #else - // Home Z last if homing towards the bed - #if HAS_Z_AXIS && 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 - probe.move_z_after_homing(); - } + #if HAS_CURRENT_HOME(X2) + stepperX2.rms_current(saved_current_X2); #endif + #if HAS_CURRENT_HOME(Y) + stepperY.rms_current(saved_current_Y); + #endif + #if HAS_CURRENT_HOME(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(Z4) + stepperZ4.rms_current(saved_current_Z4); + #endif + #if HAS_CURRENT_HOME(I) + stepperI.rms_current(saved_current_I); + #endif + #if HAS_CURRENT_HOME(J) + stepperJ.rms_current(saved_current_J); + #endif + #if HAS_CURRENT_HOME(K) + stepperK.rms_current(saved_current_K); + #endif + #if HAS_CURRENT_HOME(U) + stepperU.rms_current(saved_current_U); + #endif + #if HAS_CURRENT_HOME(V) + stepperV.rms_current(saved_current_V); + #endif + #if HAS_CURRENT_HOME(W) + stepperW.rms_current(saved_current_W); + #endif + #if SENSORLESS_STALLGUARD_DELAY + safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle + #endif + #endif // HAS_HOMING_CURRENT - 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) - ); + // 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)); + + #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 - sync_plan_position(); + TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); - #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) - - if (idex_is_duplicating()) { - - TERN_(IMPROVE_HOMING_RELIABILITY, saved_motion_state = begin_slow_homing()); - - // 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; - - // Home the 1st (left) extruder - active_extruder = 0; - homeaxis(X_AXIS); - - // Consider the active extruder to be parked - idex_set_parked(); - - dual_x_carriage_mode = IDEX_saved_mode; - set_duplication_enabled(IDEX_saved_duplication_state); - - TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); - } - - #endif // DUAL_X_CARRIAGE - - endstops.not_homing(); - - // 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) - stepperX.rms_current(tmc_save_current_X); + // 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_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 + + 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(); - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_HomingDone()); + TERN_(HAS_DWIN_E3V2_BASIC, dwinHomingDone()); TERN_(EXTENSIBLE_UI, ExtUI::onHomingDone()); report_current_position(); - if (ENABLED(NANODLP_Z_SYNC) && (doZ || ENABLED(NANODLP_ALL_AXIS))) - 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/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 836d5c867b..10f5afca2d 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -63,22 +63,18 @@ enum CalEnum : char { // the 7 main calibration points - #define LOOP_CAL_RAD(VAR) LOOP_CAL_PT(VAR, __A, _7P_STEP) #define LOOP_CAL_ACT(VAR, _4P, _OP) LOOP_CAL_PT(VAR, _OP ? _AB : __A, _4P ? _4P_STEP : _7P_STEP) -#if HAS_MULTI_HOTEND - const uint8_t old_tool_index = active_extruder; -#endif - 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(); } void ac_setup(const bool reset_bed) { - TERN_(HAS_MULTI_HOTEND, tool_change(0, true)); + TERN_(HAS_BED_PROBE, probe.use_probing_tool()); planner.synchronize(); remember_feedrate_scaling_off(); @@ -92,12 +88,11 @@ void ac_cleanup(TERN_(HAS_MULTI_HOTEND, const uint8_t old_tool_index)) { 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(); - TERN_(HAS_MULTI_HOTEND, tool_change(old_tool_index, true)); + TERN_(HAS_BED_PROBE, probe.use_probing_tool(false)); } 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); } @@ -174,7 +169,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); @@ -480,8 +475,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; @@ -641,47 +635,44 @@ 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]; - 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<15> 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_ECHOLNPAIR_F("std dev:", zero_std_dev, 3); - ui.set_status(mess); + SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); + ui.set_status(msg); if (verbose_level > 1) print_calibration_settings(_endstop_results, _angle_results); } } 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); - - char mess[21]; - strcpy_P(mess, FTOP(enddryrun)); - strcpy_P(&mess[11], PSTR(" sd:")); + SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); + 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.cpp b/Marlin/src/gcode/calibrate/G34.cpp index 1be3952ffe..9a0cb0054b 100644 --- a/Marlin/src/gcode/calibrate/G34.cpp +++ b/Marlin/src/gcode/calibrate/G34.cpp @@ -39,6 +39,23 @@ #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) #include "../../core/debug_out.h" +/** + * G34 - Align the ends of the X gantry. See https://youtu.be/3jAFQdTk8iw + * + * - The carriage moves to GANTRY_CALIBRATION_SAFE_POSITION, also called the “pounce” position. + * - If possible, the Z stepper current is reduced to the value specified by 'S' + * (or GANTRY_CALIBRATION_CURRENT) to prevent damage to steppers and other parts. + * The reduced current should be just high enough to move the Z axis when not blocked. + * - The Z axis is jogged past the Z limit, only as far as the specified Z distance + * (or GANTRY_CALIBRATION_EXTRA_HEIGHT) at the GANTRY_CALIBRATION_FEEDRATE. + * - The Z axis is moved back to the working area (also at GANTRY_CALIBRATION_FEEDRATE). + * - Stepper current is restored back to normal. + * - The machine is re-homed, according to GANTRY_CALIBRATION_COMMANDS_POST. + * + * Parameters: + * [S] - Current value to use for the raise move. (Default: GANTRY_CALIBRATION_CURRENT) + * [Z] - Extra distance past Z_MAX_POS to move the Z axis. (Default: GANTRY_CALIBRATION_EXTRA_HEIGHT) + */ void GcodeSuite::G34() { // Home before the alignment procedure @@ -58,7 +75,7 @@ void GcodeSuite::G34() { // Move XY to safe position if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Parking XY"); const xy_pos_t safe_pos = GANTRY_CALIBRATION_SAFE_POSITION; - do_blocking_move_to(safe_pos, MMM_TO_MMS(GANTRY_CALIBRATION_XY_PARK_FEEDRATE)); + do_blocking_move_to_xy(safe_pos, MMM_TO_MMS(GANTRY_CALIBRATION_XY_PARK_FEEDRATE)); #endif const float move_distance = parser.intval('Z', GANTRY_CALIBRATION_EXTRA_HEIGHT), diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index 8cf652cd84..f76df4316c 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" @@ -108,6 +108,7 @@ void GcodeSuite::G34() { } #if ENABLED(Z_STEPPER_AUTO_ALIGN) + do { // break out on error const int8_t z_auto_align_iterations = parser.intval('I', Z_STEPPER_ALIGN_ITERATIONS); @@ -142,26 +143,18 @@ void GcodeSuite::G34() { TERN_(CNC_WORKSPACE_PLANES, workspace_plane = PLANE_XY); - // Always home with tool 0 active - #if HAS_MULTI_HOTEND - const uint8_t old_tool_index = active_extruder; - tool_change(0, true); - #endif + probe.use_probing_tool(); TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); - // In BLTOUCH HS mode, the probe travels in a deployed state. - // Users of G34 might have a badly misaligned bed, so raise Z by the - // length of the deployed pin (BLTOUCH stroke < 7mm) - #define Z_BASIC_CLEARANCE (Z_CLEARANCE_BETWEEN_PROBES + TERN0(BLTOUCH, bltouch.z_extra_clearance())) - // Compute a worst-case clearance height to probe from. After the first // iteration this will be re-calculated based on the actual bed position auto magnitude2 = [&](const uint8_t i, const uint8_t j) { 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_BASIC_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 @@ -173,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 @@ -217,24 +204,20 @@ 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; - // 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; @@ -242,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]); @@ -256,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_BASIC_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 @@ -272,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]); } @@ -294,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) { @@ -347,12 +309,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 @@ -367,7 +329,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); @@ -428,7 +390,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(...) @@ -436,26 +398,26 @@ 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 - // Restore the active tool after homing - TERN_(HAS_MULTI_HOTEND, tool_change(old_tool_index, DISABLED(PARKING_EXTRUDER))); // Fetch previous tool for parking extruder + 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 }while(0); + + probe.use_probing_tool(false); + #endif // Z_STEPPER_AUTO_ALIGN } @@ -518,8 +480,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; } @@ -546,7 +507,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, @@ -555,7 +516,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 a22608f5b4..fb211ad88c 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) @@ -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(); } @@ -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,14 +395,16 @@ 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) - 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) @@ -503,7 +505,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 +513,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 +524,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 +532,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 +540,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 +548,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 +556,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 +577,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) @@ -616,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/G76_M871.cpp b/Marlin/src/gcode/calibrate/G76_M871.cpp index c484d4f1b7..6fe3dd89cf 100644 --- a/Marlin/src/gcode/calibrate/G76_M871.cpp +++ b/Marlin/src/gcode/calibrate/G76_M871.cpp @@ -34,7 +34,6 @@ #include "../../module/probe.h" #include "../../feature/bedlevel/bedlevel.h" #include "../../module/temperature.h" -#include "../../module/probe.h" #include "../../feature/probe_temp_comp.h" #include "../../lcd/marlinui.h" @@ -82,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."); } @@ -108,14 +107,13 @@ }; auto g76_probe = [](const TempSensorID sid, celsius_t &targ, const xy_pos_t &nozpos) { - do_z_clearance(5.0); // Raise nozzle before probing ptc.set_enabled(false); const float measured_z = probe.probe_at_point(nozpos, PROBE_PT_STOW, 0, false); // verbose=0, probe_relative=false ptc.set_enabled(true); 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 338392b597..c05fe12fc3 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, @@ -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); @@ -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/M425.cpp b/Marlin/src/gcode/calibrate/M425.cpp index a6c6ff9dae..cd206ca489 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) { @@ -111,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/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index ff14175c71..9f285b8b8a 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; } @@ -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(); } }; @@ -148,7 +146,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 +173,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; @@ -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,14 +214,14 @@ 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 } // 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); @@ -243,14 +241,11 @@ 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) { - 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/M666.cpp b/Marlin/src/gcode/calibrate/M666.cpp index 90fad1811c..dbee73f394 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 ANY(DELTA, HAS_EXTRA_ENDSTOPS) #include "../gcode.h" diff --git a/Marlin/src/gcode/calibrate/M852.cpp b/Marlin/src/gcode/calibrate/M852.cpp index 6c661dcd61..6d3c004548 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/M200-M205.cpp b/Marlin/src/gcode/config/M200-M205.cpp index 87c1f2ce30..e5e1edf326 100644 --- a/Marlin/src/gcode/config/M200-M205.cpp +++ b/Marlin/src/gcode/config/M200-M205.cpp @@ -143,24 +143,32 @@ 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) { + for (uint8_t i = 0; i < E_STEPPERS; ++i) { report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( PSTR(" M201 T"), i @@ -191,24 +199,32 @@ 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) { + for (uint8_t i = 0; i < E_STEPPERS; ++i) { if (!forReplay) SERIAL_ECHO_START(); SERIAL_ECHOLNPGM_P( PSTR(" M203 T"), i @@ -221,9 +237,9 @@ void GcodeSuite::M203_report(const bool forReplay/*=true*/) { /** * M204: Set Accelerations in units/sec^2 (M204 P1200 R3000 T3000) * - * P = Printing moves - * R = Retract only (no X, Y, Z) moves - * T = Travel (non printing) moves + * P Printing moves + * R Retract only (no X, Y, Z) moves + * T Travel (non printing) moves */ void GcodeSuite::M204() { if (!parser.seen("PRST")) @@ -247,24 +263,37 @@ void GcodeSuite::M204_report(const bool forReplay/*=true*/) { ); } +#if AXIS_COLLISION('B') + #define M205_MIN_SEG_TIME_PARAM 'D' + #define M205_MIN_SEG_TIME_STR "D" + #warning "Use 'M205 D' for Minimum Segment Time." +#else + #define M205_MIN_SEG_TIME_PARAM 'B' + #define M205_MIN_SEG_TIME_STR "B" +#endif + /** * M205: Set Advanced Settings * - * B = Min Segment Time (µs) - * S = Min Feed Rate (units/s) - * T = Min Travel Feed Rate (units/s) - * X = Max X Jerk (units/sec^2) - * Y = Max Y Jerk (units/sec^2) - * Z = Max Z Jerk (units/sec^2) - * E = Max E Jerk (units/sec^2) - * J = Junction Deviation (mm) (If not using CLASSIC_JERK) + * B<µs> : Min Segment Time + * S : Min Feed Rate + * T : Min Travel Feed Rate + * + * With CLASSIC_JERK: + * X : Max X Jerk + * Y : Max Y Jerk + * Z : Max Z Jerk + * ... : etc + * E : Max E Jerk + * + * Without CLASSIC_JERK: + * J(mm) : Junction Deviation */ void GcodeSuite::M205() { - if (!parser.seen("BST" TERN_(HAS_JUNCTION_DEVIATION, "J") TERN_(HAS_CLASSIC_JERK, "XYZE"))) - return M205_report(); + if (!parser.seen_any()) return M205_report(); //planner.synchronize(); - if (parser.seenval('B')) planner.settings.min_segment_time_us = parser.value_ulong(); + if (parser.seenval(M205_MIN_SEG_TIME_PARAM)) planner.settings.min_segment_time_us = parser.value_ulong(); if (parser.seenval('S')) planner.settings.min_feedrate_mm_s = parser.value_linear_units(); if (parser.seenval('T')) planner.settings.min_travel_feedrate_mm_s = parser.value_linear_units(); #if HAS_JUNCTION_DEVIATION @@ -304,7 +333,7 @@ void GcodeSuite::M205() { void GcodeSuite::M205_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F( - "Advanced (B S T" + "Advanced (" M205_MIN_SEG_TIME_STR " S T" TERN_(HAS_JUNCTION_DEVIATION, " J") #if HAS_CLASSIC_JERK NUM_AXIS_GANG( @@ -317,13 +346,13 @@ void GcodeSuite::M205_report(const bool forReplay/*=true*/) { ")" )); SERIAL_ECHOLNPGM_P( - PSTR(" M205 B"), LINEAR_UNIT(planner.settings.min_segment_time_us) + PSTR(" M205 " M205_MIN_SEG_TIME_STR), LINEAR_UNIT(planner.settings.min_segment_time_us) , PSTR(" S"), LINEAR_UNIT(planner.settings.min_feedrate_mm_s) , SP_T_STR, LINEAR_UNIT(planner.settings.min_travel_feedrate_mm_s) #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 b360739e21..908a19fae7 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 c39447a28d..ff63dcaf34 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) @@ -58,14 +64,14 @@ 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( + 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/M281.cpp b/Marlin/src/gcode/config/M281.cpp index e4ef3ab40b..2e7f08fe86 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/M302.cpp b/Marlin/src/gcode/config/M302.cpp index 12408c8987..3373e14325 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')) @@ -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/M305.cpp b/Marlin/src/gcode/config/M305.cpp index e7746923b3..48d7cf1882 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 5807844012..5ea89b7136 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" @@ -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))) { @@ -139,24 +139,15 @@ inline void servo_probe_test() { bool deploy_state = false, stow_state; #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - #define PROBE_TEST_PIN Z_MIN_PIN - constexpr bool probe_inverting = Z_MIN_ENDSTOP_INVERTING; - - SERIAL_ECHOLNPGM(". Probe Z_MIN_PIN: ", PROBE_TEST_PIN); - SERIAL_ECHOPGM(". Z_MIN_ENDSTOP_INVERTING: "); - + #define _PROBE_PREF "Z_MIN" #else - #define PROBE_TEST_PIN Z_MIN_PROBE_PIN - constexpr bool probe_inverting = Z_MIN_PROBE_ENDSTOP_INVERTING; - - SERIAL_ECHOLNPGM(". Probe Z_MIN_PROBE_PIN: ", PROBE_TEST_PIN); - SERIAL_ECHOPGM( ". Z_MIN_PROBE_ENDSTOP_INVERTING: "); - + #define _PROBE_PREF "Z_MIN_PROBE" #endif - serialprint_truefalse(probe_inverting); + 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_EOL(); SET_INPUT_PULLUP(PROBE_TEST_PIN); @@ -173,11 +164,11 @@ inline void servo_probe_test() { SERIAL_ECHOLNPGM(". Check for BLTOUCH"); bltouch._reset(); bltouch._stow(); - if (probe_inverting == READ(PROBE_TEST_PIN)) { + if (!PROBE_TRIGGERED()) { bltouch._set_SW_mode(); - if (probe_inverting != READ(PROBE_TEST_PIN)) { + if (PROBE_TRIGGERED()) { bltouch._deploy(); - if (probe_inverting == READ(PROBE_TEST_PIN)) { + 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 @@ -195,31 +186,30 @@ inline void servo_probe_test() { if (!blt) { // DEPLOY and STOW 4 times and see if the signal follows // Then it is a mechanical switch - uint8_t i = 0; SERIAL_ECHOLNPGM(". Deploy & stow 4 times"); - do { + 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); servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][1]); // Stow safe_delay(500); stow_state = READ(PROBE_TEST_PIN); - } while (++i < 4); + } - if (probe_inverting != deploy_state) SERIAL_ECHOLNPGM("WARNING: INVERTING setting probably backwards."); + 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"); if (deploy_state) { - SERIAL_ECHOLNPGM(" DEPLOYED state: HIGH (logic 1)", - " STOWED (triggered) state: LOW (logic 0)"); + SERIAL_ECHOLNPGM(". DEPLOYED state: HIGH (logic 1)\n" + ". STOWED (triggered) state: LOW (logic 0)"); } else { - SERIAL_ECHOLNPGM(" DEPLOYED state: LOW (logic 0)", - " STOWED (triggered) state: HIGH (logic 1)"); + SERIAL_ECHOLNPGM(". DEPLOYED state: LOW (logic 0)\n" + ". STOWED (triggered) state: HIGH (logic 1)"); } #if ENABLED(BLTOUCH) - SERIAL_ECHOLNPGM("FAIL: BLTOUCH enabled - Set up this device as a Servo Probe with INVERTING set to 'true'."); + SERIAL_ECHOLNPGM("FAIL: Can't enable BLTOUCH. Check your settings."); #endif return; } @@ -302,9 +292,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; } @@ -313,7 +301,7 @@ void GcodeSuite::M43() { // 'P' Get the range of pins to test or watch uint8_t first_pin = PARSED_PIN_INDEX('P', 0), - last_pin = parser.seenval('L') ? PARSED_PIN_INDEX('L', 0) : parser.seenval('P') ? first_pin : (NUMBER_PINS_TOTAL) - 1; + last_pin = parser.seenval('L') ? PARSED_PIN_INDEX('L', 0) : (parser.seenval('P') ? first_pin : (NUMBER_PINS_TOTAL) - 1); NOMORE(first_pin, (NUMBER_PINS_TOTAL) - 1); NOMORE(last_pin, (NUMBER_PINS_TOTAL) - 1); @@ -329,15 +317,18 @@ void GcodeSuite::M43() { // 'W' Watch until click, M108, or reset if (parser.boolval('W')) { - SERIAL_ECHOLNPGM("Watching pins"); #ifdef ARDUINO_ARCH_SAM NOLESS(first_pin, 2); // Don't hijack the UART pins #endif - uint8_t pin_state[last_pin - first_pin + 1]; - LOOP_S_LE_N(i, first_pin, last_pin) { + + const uint8_t pin_count = last_pin - first_pin + 1; + uint8_t pin_state[pin_count]; + bool can_watch = false; + 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; + can_watch = true; pinMode(pin, INPUT_PULLUP); delay(1); /* @@ -348,16 +339,36 @@ void GcodeSuite::M43() { pin_state[i - first_pin] = extDigitalRead(pin); } + const bool multipin = (pin_count > 1); + + if (!can_watch) { + SERIAL_ECHOPGM("Specified pin"); + SERIAL_ECHOPGM_P(multipin ? PSTR("s are") : PSTR(" is")); + SERIAL_ECHOLNPGM(" protected. Use 'I' to override."); + return; + } + + // "Watching pin(s) # - #" + SERIAL_ECHOPGM("Watching pin"); + if (multipin) SERIAL_CHAR('s'); + SERIAL_CHAR(' '); SERIAL_ECHO(first_pin); + if (multipin) SERIAL_ECHOPGM(" - ", last_pin); + SERIAL_EOL(); + #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 Wait Called"), FPSTR(CONTINUE_STR))); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(F("M43 Wait Called"))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(F("M43 Waiting..."))); + #if ENABLED(EXTENSIBLE_UI) + ExtUI::onUserConfirmRequired(F("M43 Waiting...")); + #else + LCD_MESSAGE(MSG_USERWAIT); + #endif #endif for (;;) { - LOOP_S_LE_N(i, first_pin, last_pin) { - pin_t pin = GET_PIN_MAP_PIN_M43(i); + 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; const byte val = @@ -368,7 +379,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; } } @@ -380,11 +391,13 @@ void GcodeSuite::M43() { safe_delay(200); } + + TERN_(HAS_RESUME_CONTINUE, ui.reset_status()); } 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); + 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 257b49471f..064d05d0b6 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 c7610b83a9..67f55e2232 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(" }"); @@ -92,24 +92,30 @@ 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) { + 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 a92d334ae9..02f37f8497 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/control/M17_M18_M84.cpp b/Marlin/src/gcode/control/M17_M18_M84.cpp index 4ff48568fa..1742d288b3 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; } @@ -71,7 +73,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) { @@ -212,7 +214,7 @@ void try_to_disable(const stepper_flags_t to_disable) { void GcodeSuite::M18_M84() { if (parser.seenval('S')) { reset_stepper_timeout(); - #if HAS_DISABLE_INACTIVE_AXIS + #if HAS_DISABLE_IDLE_AXES const millis_t ms = parser.value_millis_from_seconds(); #if LASER_SAFETY_TIMEOUT_MS > 0 if (ms && ms <= LASER_SAFETY_TIMEOUT_MS) { diff --git a/Marlin/src/gcode/control/M211.cpp b/Marlin/src/gcode/control/M211.cpp index 95ae052a7b..8e7d10ce65 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/gcode/control/M350_M351.cpp b/Marlin/src/gcode/control/M350_M351.cpp index ac6b5a329b..425abad529 100644 --- a/Marlin/src/gcode/control/M350_M351.cpp +++ b/Marlin/src/gcode/control/M350_M351.cpp @@ -29,9 +29,6 @@ #if NUM_AXES == XYZ && EXTRUDERS >= 1 #define HAS_M350_B_PARAM 1 // "5th axis" (after E0) for an original XYZEB setup. - #if AXIS_COLLISION('B') - #error "M350 parameter 'B' collision with axis name." - #endif #endif /** diff --git a/Marlin/src/gcode/control/M380_M381.cpp b/Marlin/src/gcode/control/M380_M381.cpp index 6bcec891e2..20d24484ed 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/M42.cpp b/Marlin/src/gcode/control/M42.cpp index 1b3a29d100..6e75ffd4e7 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); } @@ -53,6 +54,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)); @@ -86,30 +88,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 @@ -119,7 +99,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/gcode/control/M605.cpp b/Marlin/src/gcode/control/M605.cpp index a52c706fa6..6bf99df4c2 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/gcode/control/M7-M9.cpp b/Marlin/src/gcode/control/M7-M9.cpp index ccde4f552c..837bb114b2 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 90b25e7ed3..2d3e407446 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; } @@ -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/M993_M994.cpp b/Marlin/src/gcode/control/M993_M994.cpp index 598a73fab7..bc634ae13c 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 SPI_FLASH_BACKUP #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_BACKUP diff --git a/Marlin/src/gcode/control/M997.cpp b/Marlin/src/gcode/control/M997.cpp index 74ed8b0d07..5ac0ba23bb 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/control/T.cpp b/Marlin/src/gcode/control/T.cpp index 5e8f6b5436..5e1579ec12 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/eeprom/M500-M504.cpp b/Marlin/src/gcode/eeprom/M500-M504.cpp index 412d003355..c3962117e5 100644 --- a/Marlin/src/gcode/eeprom/M500-M504.cpp +++ b/Marlin/src/gcode/eeprom/M500-M504.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfig.h" #if ENABLED(CONFIGURATION_EMBEDDING) - #include "../../sd/SdBaseFile.h" + #include "../../sd/cardreader.h" #include "../../mczip.h" #endif @@ -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("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]); + success = (file.write(c) == 1); + } + success = file.close() && success; + + if (success) SERIAL_ECHO_MSG("Configuration saved as 'mc.zip'"); + } } #endif } diff --git a/Marlin/src/gcode/feature/advance/M900.cpp b/Marlin/src/gcode/feature/advance/M900.cpp index 8c0da41801..28cc4f8047 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/camera/M240.cpp b/Marlin/src/gcode/feature/camera/M240.cpp index 19051ffd42..bb1d3f9eee 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)); } @@ -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 @@ -128,11 +128,13 @@ void GcodeSuite::M240() { if (homing_needed_error()) return; - const xyz_pos_t old_pos = { + const xyz_pos_t old_pos = NUM_AXIS_ARRAY( current_position.x + parser.linearval('A'), current_position.y + parser.linearval('B'), - current_position.z - }; + current_position.z, + current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w + ); #ifdef PHOTO_RETRACT_MM const float rval = parser.linearval('R', _PHOTO_RETRACT_MM); @@ -140,7 +142,7 @@ void GcodeSuite::M240() { e_move_m240(-rval, sval); #endif - feedRate_t fr_mm_s = MMM_TO_MMS(parser.linearval('F')); + feedRate_t fr_mm_s = parser.feedrateval('F'); if (fr_mm_s) NOLESS(fr_mm_s, 10.0f); constexpr xyz_pos_t photo_position = PHOTO_POSITION; diff --git a/Marlin/src/gcode/feature/clean/G12.cpp b/Marlin/src/gcode/feature/clean/G12.cpp index 0113170f1d..a5e312f8fd 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 = 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/gcode/feature/digipot/M907-M910.cpp b/Marlin/src/gcode/feature/digipot/M907-M910.cpp index 9ebe713cde..8869f8d494 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/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp new file mode 100644 index 0000000000..e3231480f3 --- /dev/null +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -0,0 +1,324 @@ +/** + * 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(FT_MOTION) + +#include "../../gcode.h" +#include "../../../module/ft_motion.h" + +void say_shaping() { + // FT Enabled + SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.mode, "Fixed-Time Motion ", "en", "dis", "abled"); + + // FT Shaping + #if HAS_X_AXIS + 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"); + } + #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(p_float_t(fxdTiCtrl.cfg.baseFreq[X_AXIS], 2), F("Hz")); + #if HAS_DYNAMIC_FREQ + 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(p_float_t(fxdTiCtrl.cfg.baseFreq[Y_AXIS], 2), F(" Hz")); + #if HAS_DYNAMIC_FREQ + 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 + } + + #if HAS_EXTRUDERS + SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.linearAdvEna, "Linear Advance ", "en", "dis", "abled"); + SERIAL_ECHOLN(F(". Gain: "), p_float_t(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(); +} + +/** + * M493: Set Fixed-time Motion Control parameters + * + * S Set the motion / shaping mode. Shaping requires an X axis, at the minimum. + * 0: NORMAL + * 1: FIXED-TIME + * 10: ZV + * 11: ZVD + * 12: EI + * 13: 2HEI + * 14: 3HEI + * 15: MZV + * + * P Enable (1) or Disable (0) Linear Advance pressure control + * + * K Set Linear Advance gain + * + * D Set Dynamic Frequency mode + * 0: DISABLED + * 1: Z-based (Requires a Z axis) + * 2: Mass-based (Requires X and E axes) + * + * A Set static/base frequency for the X axis + * F Set frequency scaling for the X axis + * + * B Set static/base frequency for the Y axis + * 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; + else + planner.synchronize(); + + // Parse 'S' mode parameter. + if (parser.seenval('S')) { + const ftMotionMode_t oldmm = fxdTiCtrl.cfg.mode, + newmm = (ftMotionMode_t)parser.value_byte(); + + 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_EI: + 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; + } + } + } + + #if HAS_EXTRUDERS + + // Pressure control (linear advance) parameter. + if (parser.seen('P')) { + const bool val = parser.value_bool(); + 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; + flag.report_h = true; + } + else // Value out of range. + SERIAL_ECHOLNPGM("Linear Advance gain out of range."); + } + + #endif // HAS_EXTRUDERS + + #if HAS_DYNAMIC_FREQ + + // Dynamic frequency mode parameter. + if (parser.seenval('D')) { + if (fxdTiCtrl.cfg.modeHasShaper()) { + const dynFreqMode_t val = dynFreqMode_t(parser.value_byte()); + switch (val) { + case dynFreqMode_DISABLED: + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; + break; + #if HAS_DYNAMIC_FREQ_MM + case dynFreqMode_Z_BASED: + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; + break; + #endif + #if HAS_DYNAMIC_FREQ_G + case dynFreqMode_MASS_BASED: + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; + break; + #endif + default: + SERIAL_ECHOLNPGM("?Invalid Dynamic Frequency Mode [D] value."); + break; + } + } + else { + SERIAL_ECHOLNPGM("?Wrong shaper for [D] Dynamic Frequency mode."); + } + } + + 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 (fxdTiCtrl.cfg.modeHasShaper()) { + const float val = parser.value_float(); + // TODO: Frequency minimum is dependent on the shaper used; the above check isn't always correct. + 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 [", AS_CHAR('A'), "] frequency value."); + } + else // Mode doesn't use frequency. + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('A'), "] frequency."); + } + + #if HAS_DYNAMIC_FREQ + // Parse frequency scaling parameter (X axis). + if (parser.seenval('F')) { + if (modeUsesDynFreq) { + fxdTiCtrl.cfg.dynFreqK[X_AXIS] = parser.value_float(); + flag.report_h = true; + } + else + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('F'), "] frequency scaling."); + } + #endif + + #endif // HAS_X_AXIS + + #if HAS_Y_AXIS + + // Parse frequency parameter (Y axis). + if (parser.seenval('B')) { + if (fxdTiCtrl.cfg.modeHasShaper()) { + const float val = parser.value_float(); + 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("Wrong mode for [", AS_CHAR('B'), "] frequency."); + } + + #if HAS_DYNAMIC_FREQ + // Parse frequency scaling parameter (Y axis). + if (parser.seenval('H')) { + if (modeUsesDynFreq) { + fxdTiCtrl.cfg.dynFreqK[Y_AXIS] = parser.value_float(); + flag.report_h = true; + } + else + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('H'), "] frequency scaling."); + } + #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/feature/input_shaping/M593.cpp b/Marlin/src/gcode/feature/input_shaping/M593.cpp index a4b3cd3fee..1b6a43f9dd 100644 --- a/Marlin/src/gcode/feature/input_shaping/M593.cpp +++ b/Marlin/src/gcode/feature/input_shaping/M593.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfig.h" -#if HAS_SHAPING +#if HAS_ZV_SHAPING #include "../../gcode.h" #include "../../../module/stepper.h" diff --git a/Marlin/src/gcode/feature/leds/M7219.cpp b/Marlin/src/gcode/feature/leds/M7219.cpp index 40d3554dfe..1f74217be3 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 0973fb87bf..7633ec1fd5 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,12 +59,11 @@ 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('.'); } - SERIAL_ECHOPGM(" ; "); - SERIAL_ECHOLNF(post); + SERIAL_ECHOLN(F(" ; "), post); } /** diff --git a/Marlin/src/gcode/feature/pause/G60.cpp b/Marlin/src/gcode/feature/pause/G60.cpp index b32935b341..aa74a57596 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/pause/G61.cpp b/Marlin/src/gcode/feature/pause/G61.cpp index 889709c045..423632e72e 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); @@ -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 @@ -101,8 +100,6 @@ void GcodeSuite::G61() { } #endif } - - feedrate_mm_s = saved_feedrate; } #endif // SAVED_POSITIONS diff --git a/Marlin/src/gcode/feature/pause/M125.cpp b/Marlin/src/gcode/feature/pause/M125.cpp index 9b18eda4fb..b8d9d4811b 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); @@ -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(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/gcode/feature/pause/M701_M702.cpp b/Marlin/src/gcode/feature/pause/M701_M702.cpp index 2afc5c36a0..aec3a16a2a 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; @@ -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/feature/powerloss/M1000.cpp b/Marlin/src/gcode/feature/powerloss/M1000.cpp index 1629a154bc..1a1ebd517b 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 @@ -72,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); + jyersDWIN.popupHandler(Popup_Resume); #elif ENABLED(EXTENSIBLE_UI) ExtUI::onPowerLossResume(); #else diff --git a/Marlin/src/gcode/feature/powerloss/M413.cpp b/Marlin/src/gcode/feature/powerloss/M413.cpp index f6d82b0ad9..5e508d4f28 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/runout/M591.cpp b/Marlin/src/gcode/feature/runout/M591.cpp index 2d9892460d..067769cf2c 100644 --- a/Marlin/src/gcode/feature/runout/M591.cpp +++ b/Marlin/src/gcode/feature/runout/M591.cpp @@ -78,7 +78,7 @@ void GcodeSuite::M591() { void GcodeSuite::M591_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_FILAMENT_RUNOUT_SENSOR)); - LOOP_S_L_N(e, 0, NUM_RUNOUT_SENSORS) + for(int e=0; e < NUM_RUNOUT_SENSORS; e++) SERIAL_ECHOLNPGM( " M591" #if MULTI_FILAMENT_SENSOR diff --git a/Marlin/src/gcode/feature/trinamic/M122.cpp b/Marlin/src/gcode/feature/trinamic/M122.cpp index 07fe9e5bd8..a1765bfb43 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); @@ -47,7 +55,7 @@ void GcodeSuite::M122() { if (sflag && !sval) tmc_set_report_interval(0); else if (parser.seenval('P')) - tmc_set_report_interval(_MAX(250, parser.value_ushort())); + tmc_set_report_interval(_MAX(uint16_t(250), parser.value_ushort())); else if (sval) tmc_set_report_interval(MONITOR_DRIVER_STATUS_INTERVAL_MS); #endif diff --git a/Marlin/src/gcode/feature/trinamic/M569.cpp b/Marlin/src/gcode/feature/trinamic/M569.cpp index db31fe3d8e..6f1af7b681 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) { @@ -53,12 +52,16 @@ static void set_stealth_status(const bool enable, const int8_t eindex) { constexpr int8_t index = -1; #endif + UNUSED(index); + 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: @@ -157,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(); }; @@ -196,13 +196,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/M906.cpp b/Marlin/src/gcode/feature/trinamic/M906.cpp index b2cab13553..b949200ad7 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/feature/trinamic/M911-M914.cpp b/Marlin/src/gcode/feature/trinamic/M911-M914.cpp index 0fbf1def67..fa1cc1227c 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/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 2ec0d32d2e..b86286a016 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -75,26 +75,14 @@ GcodeSuite gcode; millis_t GcodeSuite::previous_move_ms = 0, GcodeSuite::max_inactive_time = 0; -#if HAS_DISABLE_INACTIVE_AXIS - millis_t GcodeSuite::stepper_inactive_time = SEC_TO_MS(DEFAULT_STEPPER_DEACTIVE_TIME); +#if HAS_DISABLE_IDLE_AXES + millis_t GcodeSuite::stepper_inactive_time = SEC_TO_MS(DEFAULT_STEPPER_TIMEOUT_SEC); #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) +#if ANY(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) bool GcodeSuite::autoreport_paused; // = false #endif @@ -117,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(); } } @@ -216,13 +203,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 @@ -454,7 +441,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 @@ -496,11 +483,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 @@ -519,7 +506,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 @@ -540,12 +527,12 @@ 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 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 @@ -581,7 +568,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 @@ -640,7 +627,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 @@ -671,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 @@ -721,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 @@ -769,6 +763,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 @@ -836,7 +834,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 @@ -879,7 +877,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 @@ -891,6 +889,10 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 486: M486(); break; // M486: Identify and cancel objects #endif + #if ENABLED(FT_MOTION) + case 493: M493(); break; // M493: Fixed-Time Motion control + #endif + case 500: M500(); break; // M500: Store settings in EEPROM case 501: M501(); break; // M501: Read settings from EEPROM case 502: M502(); break; // M502: Revert to default settings @@ -911,7 +913,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 @@ -934,8 +936,8 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 591: M591(); break; // M591 Configure filament runout detection #endif - #if HAS_SHAPING - case 593: M593(); break; // M593: Set Input Shaping parameters + #if HAS_ZV_SHAPING + case 593: M593(); break; // M593: Input Shaping control #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) @@ -951,7 +953,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 ANY(DELTA, HAS_EXTRA_ENDSTOPS) case 666: M666(); break; // M666: Set delta or multiple endstop adjustment #endif @@ -992,7 +994,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 @@ -1058,7 +1060,11 @@ 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 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 #endif @@ -1078,7 +1084,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 @@ -1121,7 +1127,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) @@ -1168,10 +1174,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/gcode.h b/Marlin/src/gcode/gcode.h index 759ecfc285..d8018b1f7c 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) @@ -335,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 @@ -344,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 @@ -403,7 +410,7 @@ public: } FORCE_INLINE static void reset_stepper_timeout(const millis_t ms=millis()) { previous_move_ms = ms; } - #if HAS_DISABLE_INACTIVE_AXIS + #if HAS_DISABLE_IDLE_AXES static millis_t stepper_inactive_time; FORCE_INLINE static bool stepper_inactive_timeout(const millis_t ms=millis()) { return ELAPSED(ms, previous_move_ms + stepper_inactive_time); @@ -435,7 +442,7 @@ public: 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; @@ -476,6 +483,9 @@ public: private: friend class MarlinSettings; + #if ENABLED(ARC_SUPPORT) + friend void plan_arc(const xyze_pos_t&, const ab_float_t&, const bool, const uint8_t); + #endif #if ENABLED(MARLIN_DEV_MODE) static void D(const int16_t dcode); @@ -582,7 +592,7 @@ private: static void G59(); #endif - #if BOTH(PTC_PROBE, PTC_BED) + #if ALL(PTC_PROBE, PTC_BED) static void G76(); #endif @@ -614,11 +624,11 @@ private: 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 @@ -639,7 +649,7 @@ private: static void M18_M84(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M20(); static void M21(); static void M22(); @@ -655,14 +665,14 @@ private: static void M31(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if HAS_MEDIA_SUBCALLS static void M32(); #endif #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 @@ -701,6 +711,13 @@ private: #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); @@ -710,10 +727,9 @@ private: #if ENABLED(BD_SENSOR) static void M102(); - 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); } @@ -811,7 +827,7 @@ private: static void M154(); #endif - #if BOTH(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) + #if ALL(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) static void M155(); #endif @@ -844,7 +860,7 @@ private: 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 @@ -920,6 +936,10 @@ private: #if ENABLED(BABYSTEPPING) static void M290(); + #if ENABLED(EP_BABYSTEPPING) + static void M293(); + static void M294(); + #endif #endif #if HAS_SOUND @@ -979,7 +999,7 @@ private: 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 @@ -1024,7 +1044,7 @@ private: static void M425_report(const bool forReplay=true); #endif - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET static void M428(); #endif @@ -1036,6 +1056,11 @@ private: static void M486(); #endif + #if ENABLED(FT_MOTION) + static void M493(); + static void M493_report(const bool forReplay=true); + #endif + static void M500(); static void M501(); static void M502(); @@ -1056,7 +1081,7 @@ private: #endif #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M524(); #endif @@ -1082,7 +1107,7 @@ private: static void M575(); #endif - #if HAS_SHAPING + #if HAS_ZV_SHAPING static void M593(); static void M593_report(const bool forReplay=true); #endif @@ -1102,7 +1127,7 @@ private: 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 @@ -1189,10 +1214,14 @@ private: static void M910(); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M928(); #endif + #if ENABLED(OTA_FIRMWARE_UPDATE) + static void M936(); + #endif + #if ENABLED(MAGNETIC_PARKING_EXTRUDER) static void M951(); #endif @@ -1201,7 +1230,7 @@ private: static void M995(); #endif - #if BOTH(SPI_FLASH, SDSUPPORT) + #if SPI_FLASH_BACKUP static void M993(); static void M994(); #endif @@ -1223,7 +1252,7 @@ private: 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 be431eed0d..28edf9dcdb 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/geometry/G17-G19.cpp b/Marlin/src/gcode/geometry/G17-G19.cpp index fbac7470ca..312b89286c 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/geometry/G53-G59.cpp b/Marlin/src/gcode/geometry/G53-G59.cpp index c51c29f423..017b54a084 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 b36f21d3c0..626441f4e2 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 @@ -88,28 +85,27 @@ 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_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 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 } } @@ -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 b12e680605..7017eabbdc 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" @@ -33,9 +33,7 @@ /** * M206: Set Additional Homing Offset (X Y Z). SCARA aliases T=X, P=Y * - * *** @thinkyhead: I recommend deprecating M206 for SCARA in favor of M665. - * *** M206 for SCARA will remain enabled in 1.1.x for compatibility. - * *** In the 2.0 release, it will simply be disabled by default. + * *** TODO: Deprecate M206 for SCARA in favor of M665. */ void GcodeSuite::M206() { if (!parser.seen_any()) return M206_report(); @@ -103,4 +101,4 @@ void GcodeSuite::M428() { OKAY_BUZZ(); } -#endif // HAS_M206_COMMAND +#endif // HAS_HOME_OFFSET diff --git a/Marlin/src/gcode/host/M114.cpp b/Marlin/src/gcode/host/M114.cpp index e6e83ba6e5..979764f75e 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)); @@ -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/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index 755cee1afd..6d6d6019ab 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -39,28 +39,24 @@ //#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 /** * 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" @@ -85,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); @@ -100,10 +96,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 +120,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 +149,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) @@ -168,10 +164,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 +175,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)); @@ -208,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)); @@ -223,9 +222,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); diff --git a/Marlin/src/gcode/host/M360.cpp b/Marlin/src/gcode/host/M360.cpp index d8e166dad8..9649e99e17 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/lcd/M0_M1.cpp b/Marlin/src/gcode/lcd/M0_M1.cpp index 35afea0f6e..fcab61b59d 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 @@ -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) { @@ -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/lcd/M117.cpp b/Marlin/src/gcode/lcd/M117.cpp index 86023e12e3..57a26851fd 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/lcd/M145.cpp b/Marlin/src/gcode/lcd/M145.cpp index 942d20afd2..d72d5d6789 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/lcd/M300.cpp b/Marlin/src/gcode/lcd/M300.cpp index 76d4b96b24..7ee811f0bd 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. diff --git a/Marlin/src/gcode/lcd/M73.cpp b/Marlin/src/gcode/lcd/M73.cpp index 02d44ca00b..5ac2839beb 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) + #if ENABLED(SET_PROGRESS_PERCENT) + if (parser.seenval('P')) + ui.set_progress((PROGRESS_SCALE) > 1 + ? parser.value_float() * (PROGRESS_SCALE) + : parser.value_byte() + ); + #endif - 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_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/motion/G0_G1.cpp b/Marlin/src/gcode/motion/G0_G1.cpp index b10f1ac920..957541a361 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 @@ -45,91 +45,75 @@ extern xyze_pos_t destination; * G0, G1: Coordinated movement of X Y Z E axes */ void GcodeSuite::G0_G1(TERN_(HAS_FAST_MOVES, const bool fast_move/*=false*/)) { + if (!MOTION_CONDITIONS) return; - if (IsRunning() - #if ENABLED(NO_MOTION_BEFORE_HOMING) - && !homing_needed_error( - NUM_AXIS_GANG( - (parser.seen_test('X') ? _BV(X_AXIS) : 0), - | (parser.seen_test('Y') ? _BV(Y_AXIS) : 0), - | (parser.seen_test('Z') ? _BV(Z_AXIS) : 0), - | (parser.seen_test(AXIS4_NAME) ? _BV(I_AXIS) : 0), - | (parser.seen_test(AXIS5_NAME) ? _BV(J_AXIS) : 0), - | (parser.seen_test(AXIS6_NAME) ? _BV(K_AXIS) : 0), - | (parser.seen_test(AXIS7_NAME) ? _BV(U_AXIS) : 0), - | (parser.seen_test(AXIS8_NAME) ? _BV(V_AXIS) : 0), - | (parser.seen_test(AXIS9_NAME) ? _BV(W_AXIS) : 0)) - ) - #endif - ) { - TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_RUNNING)); + TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_RUNNING)); - #ifdef G0_FEEDRATE - feedRate_t old_feedrate; - #if ENABLED(VARIABLE_G0_FEEDRATE) - if (fast_move) { - old_feedrate = feedrate_mm_s; // Back up the (old) motion mode feedrate - feedrate_mm_s = fast_move_feedrate; // Get G0 feedrate from last usage - } - #endif - #endif - - get_destination_from_command(); // Get X Y [Z[I[J[K]]]] [E] F (and set cutter power) - - #ifdef G0_FEEDRATE + #ifdef G0_FEEDRATE + feedRate_t old_feedrate; + #if ENABLED(VARIABLE_G0_FEEDRATE) if (fast_move) { - #if ENABLED(VARIABLE_G0_FEEDRATE) - fast_move_feedrate = feedrate_mm_s; // Save feedrate for the next G0 - #else - old_feedrate = feedrate_mm_s; // Back up the (new) motion mode feedrate - feedrate_mm_s = MMM_TO_MMS(G0_FEEDRATE); // Get the fixed G0 feedrate - #endif + old_feedrate = feedrate_mm_s; // Back up the (old) motion mode feedrate + feedrate_mm_s = fast_move_feedrate; // Get G0 feedrate from last usage } #endif + #endif - #if BOTH(FWRETRACT, FWRETRACT_AUTORETRACT) + get_destination_from_command(); // Get X Y [Z[I[J[K]]]] [E] F (and set cutter power) - if (MIN_AUTORETRACT <= MAX_AUTORETRACT) { - // When M209 Autoretract is enabled, convert E-only moves to firmware retract/recover moves - if (fwretract.autoretract_enabled && parser.seen_test('E') - && !parser.seen(STR_AXES_MAIN) - ) { - const float echange = destination.e - current_position.e; - // Is this a retract or recover move? - if (WITHIN(ABS(echange), MIN_AUTORETRACT, MAX_AUTORETRACT) && fwretract.retracted[active_extruder] == (echange > 0.0)) { - current_position.e = destination.e; // Hide a G1-based retract/recover from calculations - sync_plan_position_e(); // AND from the planner - return fwretract.retract(echange < 0.0); // Firmware-based retract/recover (double-retract ignored) - } + #ifdef G0_FEEDRATE + if (fast_move) { + #if ENABLED(VARIABLE_G0_FEEDRATE) + fast_move_feedrate = feedrate_mm_s; // Save feedrate for the next G0 + #else + old_feedrate = feedrate_mm_s; // Back up the (new) motion mode feedrate + feedrate_mm_s = MMM_TO_MMS(G0_FEEDRATE); // Get the fixed G0 feedrate + #endif + } + #endif + + #if ALL(FWRETRACT, FWRETRACT_AUTORETRACT) + + if (MIN_AUTORETRACT <= MAX_AUTORETRACT) { + // When M209 Autoretract is enabled, convert E-only moves to firmware retract/recover moves + if (fwretract.autoretract_enabled && parser.seen_test('E') + && !parser.seen(STR_AXES_MAIN) + ) { + const float echange = destination.e - current_position.e; + // Is this a retract or recover move? + if (WITHIN(ABS(echange), MIN_AUTORETRACT, MAX_AUTORETRACT) && fwretract.retracted[active_extruder] == (echange > 0.0)) { + current_position.e = destination.e; // Hide a G1-based retract/recover from calculations + sync_plan_position_e(); // AND from the planner + return fwretract.retract(echange < 0.0); // Firmware-based retract/recover (double-retract ignored) } } + } - #endif // FWRETRACT + #endif // FWRETRACT - #if EITHER(IS_SCARA, POLAR) - fast_move ? prepare_fast_move_to_destination() : prepare_line_to_destination(); + #if ANY(IS_SCARA, POLAR) + fast_move ? prepare_fast_move_to_destination() : prepare_line_to_destination(); + #else + prepare_line_to_destination(); + #endif + + #ifdef G0_FEEDRATE + // Restore the motion mode feedrate + if (fast_move) feedrate_mm_s = old_feedrate; + #endif + + #if ENABLED(NANODLP_Z_SYNC) + #if ENABLED(NANODLP_ALL_AXIS) + #define _MOVE_SYNC parser.seenval('X') || parser.seenval('Y') || parser.seenval('Z') // For any move wait and output sync message #else - prepare_line_to_destination(); + #define _MOVE_SYNC parser.seenval('Z') // Only for Z move #endif - - #ifdef G0_FEEDRATE - // Restore the motion mode feedrate - if (fast_move) feedrate_mm_s = old_feedrate; - #endif - - #if ENABLED(NANODLP_Z_SYNC) - #if ENABLED(NANODLP_ALL_AXIS) - #define _MOVE_SYNC parser.seenval('X') || parser.seenval('Y') || parser.seenval('Z') // For any move wait and output sync message - #else - #define _MOVE_SYNC parser.seenval('Z') // Only for Z move - #endif - if (_MOVE_SYNC) { - planner.synchronize(); - SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); - } - TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE)); - #else - TERN_(FULL_REPORT_TO_HOST_FEATURE, report_current_grblstate_moving()); - #endif - } + if (_MOVE_SYNC) { + planner.synchronize(); + SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); + } + TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE)); + #else + TERN_(FULL_REPORT_TO_HOST_FEATURE, report_current_grblstate_moving()); + #endif } diff --git a/Marlin/src/gcode/motion/G2_G3.cpp b/Marlin/src/gcode/motion/G2_G3.cpp index b029193311..120b456112 100644 --- a/Marlin/src/gcode/motion/G2_G3.cpp +++ b/Marlin/src/gcode/motion/G2_G3.cpp @@ -142,8 +142,8 @@ void plan_arc( part_per_circle = RADIANS(360) / total_angular; // Each circle's part of the total ARC_LIJKUVWE_CODE( - const float per_circle_L = travel_L * part_per_circle, // L movement per circle - const float per_circle_I = travel_I * part_per_circle, + const float per_circle_L = travel_L * part_per_circle, // X, Y, or Z movement per circle + const float per_circle_I = travel_I * part_per_circle, // The rest are also non-arc const float per_circle_J = travel_J * part_per_circle, const float per_circle_K = travel_K * part_per_circle, const float per_circle_U = travel_U * part_per_circle, @@ -154,9 +154,9 @@ void plan_arc( xyze_pos_t temp_position = current_position; for (uint16_t n = circles; n--;) { - ARC_LIJKUVWE_CODE( // Destination Linear Axes - temp_position[axis_l] += per_circle_L, - temp_position.i += per_circle_I, + ARC_LIJKUVWE_CODE( // Destination Linear Axes + temp_position[axis_l] += per_circle_L, // Linear X, Y, or Z + temp_position.i += per_circle_I, // The rest are also non-circular temp_position.j += per_circle_J, temp_position.k += per_circle_K, temp_position.u += per_circle_U, @@ -167,8 +167,8 @@ void plan_arc( plan_arc(temp_position, offset, clockwise, 0); // Plan a single whole circle } ARC_LIJKUVWE_CODE( - travel_L = cart[axis_l] - current_position[axis_l], - travel_I = cart.i - current_position.i, + travel_L = cart[axis_l] - current_position[axis_l], // Linear X, Y, or Z + travel_I = cart.i - current_position.i, // The rest are also non-arc travel_J = cart.j - current_position.j, travel_K = cart.k - current_position.k, travel_U = cart.u - current_position.u, @@ -183,16 +183,21 @@ void plan_arc( // Return if the move is near zero if (flat_mm < 0.0001f - GANG_N(SUB2(NUM_AXES), - && travel_L < 0.0001f, - && travel_I < 0.0001f, - && travel_J < 0.0001f, - && travel_K < 0.0001f, - && travel_U < 0.0001f, - && travel_V < 0.0001f, - && travel_W < 0.0001f + GANG_N(SUB2(NUM_AXES), // Two axes for the arc + && NEAR_ZERO(travel_L), // Linear X, Y, or Z + && NEAR_ZERO(travel_I), + && NEAR_ZERO(travel_J), + && NEAR_ZERO(travel_K), + && NEAR_ZERO(travel_U), + && NEAR_ZERO(travel_V), + && NEAR_ZERO(travel_W) ) - ) return; + ) { + #if HAS_EXTRUDERS + if (!NEAR_ZERO(travel_E)) gcode.G0_G1(); // Handle retract/recover as G1 + return; + #endif + } // Feedrate for the move, scaled by the feedrate multiplier const feedRate_t scaled_fr_mm_s = MMS_SCALED(feedrate_mm_s); @@ -298,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; @@ -428,71 +433,70 @@ void plan_arc( * G3 X20 Y12 R14 ; CCW circle with r=14 ending at X20 Y12 */ void GcodeSuite::G2_G3(const bool clockwise) { - if (MOTION_CONDITIONS) { + if (!MOTION_CONDITIONS) return; - TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_RUNNING)); + TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_RUNNING)); - #if ENABLED(SF_ARC_FIX) - const bool relative_mode_backup = relative_mode; - relative_mode = true; - #endif + #if ENABLED(SF_ARC_FIX) + const bool relative_mode_backup = relative_mode; + relative_mode = true; + #endif - get_destination_from_command(); // Get X Y [Z[I[J[K...]]]] [E] F (and set cutter power) + get_destination_from_command(); // Get X Y [Z[I[J[K...]]]] [E] F (and set cutter power) - TERN_(SF_ARC_FIX, relative_mode = relative_mode_backup); + TERN_(SF_ARC_FIX, relative_mode = relative_mode_backup); - ab_float_t arc_offset = { 0, 0 }; - if (parser.seenval('R')) { - const float r = parser.value_linear_units(); - if (r) { - const xy_pos_t p1 = current_position, p2 = destination; - if (p1 != p2) { - const xy_pos_t d2 = (p2 - p1) * 0.5f; // XY vector to midpoint of move from current - const float e = clockwise ^ (r < 0) ? -1 : 1, // clockwise -1/1, counterclockwise 1/-1 - len = d2.magnitude(), // Distance to mid-point of move from current - h2 = (r - len) * (r + len), // factored to reduce rounding error - h = (h2 >= 0) ? SQRT(h2) : 0.0f; // Distance to the arc pivot-point from midpoint - const xy_pos_t s = { -d2.y, d2.x }; // Perpendicular bisector. (Divide by len for unit vector.) - arc_offset = d2 + s / len * e * h; // The calculated offset (mid-point if |r| <= len) - } + ab_float_t arc_offset = { 0, 0 }; + if (parser.seenval('R')) { + const float r = parser.value_linear_units(); + if (r) { + const xy_pos_t p1 = current_position, p2 = destination; + if (p1 != p2) { + const xy_pos_t d2 = (p2 - p1) * 0.5f; // XY vector to midpoint of move from current + const float e = clockwise ^ (r < 0) ? -1 : 1, // clockwise -1/1, counterclockwise 1/-1 + len = d2.magnitude(), // Distance to mid-point of move from current + h2 = (r - len) * (r + len), // factored to reduce rounding error + h = (h2 >= 0) ? SQRT(h2) : 0.0f; // Distance to the arc pivot-point from midpoint + const xy_pos_t s = { -d2.y, d2.x }; // Perpendicular bisector. (Divide by len for unit vector.) + arc_offset = d2 + s / len * e * h; // The calculated offset (mid-point if |r| <= len) } } - else { - #if ENABLED(CNC_WORKSPACE_PLANES) - char achar, bchar; - switch (workspace_plane) { - default: - case GcodeSuite::PLANE_XY: achar = 'I'; bchar = 'J'; break; - case GcodeSuite::PLANE_YZ: achar = 'J'; bchar = 'K'; break; - case GcodeSuite::PLANE_ZX: achar = 'K'; bchar = 'I'; break; - } - #else - constexpr char achar = 'I', bchar = 'J'; - #endif - if (parser.seenval(achar)) arc_offset.a = parser.value_linear_units(); - if (parser.seenval(bchar)) arc_offset.b = parser.value_linear_units(); - } - - if (arc_offset) { - - #if ENABLED(ARC_P_CIRCLES) - // P indicates number of circles to do - const int8_t circles_to_do = parser.byteval('P'); - if (!WITHIN(circles_to_do, 0, 100)) - SERIAL_ERROR_MSG(STR_ERR_ARC_ARGS); - #else - constexpr uint8_t circles_to_do = 0; - #endif - - // Send the arc to the planner - plan_arc(destination, arc_offset, clockwise, circles_to_do); - reset_stepper_timeout(); - } - else - SERIAL_ERROR_MSG(STR_ERR_ARC_ARGS); - - TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE)); } + else { + #if ENABLED(CNC_WORKSPACE_PLANES) + char achar, bchar; + switch (workspace_plane) { + default: + case GcodeSuite::PLANE_XY: achar = 'I'; bchar = 'J'; break; + case GcodeSuite::PLANE_YZ: achar = 'J'; bchar = 'K'; break; + case GcodeSuite::PLANE_ZX: achar = 'K'; bchar = 'I'; break; + } + #else + constexpr char achar = 'I', bchar = 'J'; + #endif + if (parser.seenval(achar)) arc_offset.a = parser.value_linear_units(); + if (parser.seenval(bchar)) arc_offset.b = parser.value_linear_units(); + } + + if (arc_offset) { + + #if ENABLED(ARC_P_CIRCLES) + // P indicates number of circles to do + const int8_t circles_to_do = parser.byteval('P'); + if (!WITHIN(circles_to_do, 0, 100)) + SERIAL_ERROR_MSG(STR_ERR_ARC_ARGS); + #else + constexpr uint8_t circles_to_do = 0; + #endif + + // Send the arc to the planner + plan_arc(destination, arc_offset, clockwise, circles_to_do); + reset_stepper_timeout(); + } + else + SERIAL_ERROR_MSG(STR_ERR_ARC_ARGS); + + TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE)); } #endif // ARC_SUPPORT diff --git a/Marlin/src/gcode/motion/G6.cpp b/Marlin/src/gcode/motion/G6.cpp index fb6281707b..342741e634 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/gcode/motion/M290.cpp b/Marlin/src/gcode/motion/M290.cpp index 4fe83ccd40..d10f9ee73c 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/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/ota/M936.cpp b/Marlin/src/gcode/ota/M936.cpp new file mode 100644 index 0000000000..6324b3db43 --- /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/gcode/parser.cpp b/Marlin/src/gcode/parser.cpp index 3fc1fc1625..ccd6b4111f 100644 --- a/Marlin/src/gcode/parser.cpp +++ b/Marlin/src/gcode/parser.cpp @@ -229,11 +229,11 @@ void GCodeParser::parse(char *p) { } #endif - } break; + } break; #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 6893d4bec2..f8fe88d339 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,12 +38,8 @@ #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 current XY + * G30: Do a single Z probe at the given XY (default: current) * * Parameters: * @@ -53,61 +50,63 @@ */ void GcodeSuite::G30() { - #if HAS_MULTI_HOTEND - const uint8_t old_tool_index = active_extruder; - tool_change(0); - #endif + xy_pos_t old_pos = current_position, + probepos = current_position; - // Convert the given logical position to native position - const xy_pos_t pos = { - parser.seenval('X') ? RAW_X_POSITION(parser.value_linear_units()) : current_position.x, - parser.seenval('Y') ? RAW_Y_POSITION(parser.value_linear_units()) : current_position.y - }; + const bool seenX = parser.seenval('X'); + if (seenX) probepos.x = RAW_X_POSITION(parser.value_linear_units()); + const bool seenY = parser.seenval('Y'); + if (seenY) probepos.y = RAW_Y_POSITION(parser.value_linear_units()); + + probe.use_probing_tool(); + + if (probe.can_reach(probepos)) { + + if (seenX) old_pos.x = probepos.x; + if (seenY) old_pos.y = probepos.y; - if (probe.can_reach(pos)) { // Disable leveling so the planner won't mess with us TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); remember_feedrate_scaling_off(); - #if EITHER(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) + #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; - TERN_(HAS_PTC, ptc.set_enabled(!parser.seen('C') || parser.value_bool())); - const float measured_z = probe.probe_at_point(pos, raise_after, 1); + 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: ", pos.asLogical().x, " Y: ", pos.asLogical().y, " Z: ", measured_z); - #if EITHER(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(pos.x, 1, 1, str_1), - dtostrf(pos.y, 1, 1, str_2), - dtostrf(measured_z, 1, 2, str_3) - ); + 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) ui.set_status(msg); #endif } restore_feedrate_and_scaling(); + do_blocking_move_to(old_pos); + if (raise_after == PROBE_PT_STOW) probe.move_z_after_probing(); 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_ECHOLN(GET_EN_TEXT_F(MSG_ZPROBE_OUT)); + LCD_MESSAGE(MSG_ZPROBE_OUT); } - // Restore the active tool - TERN_(HAS_MULTI_HOTEND, tool_change(old_tool_index)); + probe.use_probing_tool(false); } #endif // HAS_BED_PROBE diff --git a/Marlin/src/gcode/probe/G38.cpp b/Marlin/src/gcode/probe/G38.cpp index 1b2da756b1..5b138fdaf6 100644 --- a/Marlin/src/gcode/probe/G38.cpp +++ b/Marlin/src/gcode/probe/G38.cpp @@ -110,13 +110,7 @@ void GcodeSuite::G38(const int8_t subcode) { remember_feedrate_scaling_off(); - const bool error_on_fail = - #if ENABLED(G38_PROBE_AWAY) - !TEST(subcode, 0) - #else - (subcode == 2) - #endif - ; + const bool error_on_fail = TERN(G38_PROBE_AWAY, !TEST(subcode, 0), subcode == 2); // If any axis has enough movement, do the move LOOP_NUM_AXES(i) diff --git a/Marlin/src/gcode/probe/M102.cpp b/Marlin/src/gcode/probe/M102.cpp index b70c9aed18..f24a723ed7 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/gcode/probe/M401_M402.cpp b/Marlin/src/gcode/probe/M401_M402.cpp index 3389574919..05230e05ea 100644 --- a/Marlin/src/gcode/probe/M401_M402.cpp +++ b/Marlin/src/gcode/probe/M401_M402.cpp @@ -28,7 +28,7 @@ #include "../../module/motion.h" #include "../../module/probe.h" -#ifdef BLTOUCH_HS_MODE +#if HAS_BLTOUCH_HS_MODE #include "../../feature/bltouch.h" #endif @@ -38,31 +38,36 @@ * With BLTOUCH_HS_MODE: * H Report the current BLTouch HS mode state and exit * S Set High Speed (HS) Mode and exit without deploy + * + * R Remain in place after deploying (and before activating) the probe */ void GcodeSuite::M401() { - const bool seenH = parser.seen_test('H'), - seenS = parser.seen('S'); - if (seenH || seenS) { - #ifdef BLTOUCH_HS_MODE + #if HAS_BLTOUCH_HS_MODE + const bool seenH = parser.seen_test('H'), + seenS = parser.seen('S'); + if (seenH || seenS) { if (seenS) bltouch.high_speed_mode = parser.value_bool(); SERIAL_ECHO_START(); SERIAL_ECHOPGM("BLTouch HS mode "); serialprintln_onoff(bltouch.high_speed_mode); - #endif - } - else { - probe.deploy(); - TERN_(PROBE_TARE, probe.tare()); - report_current_position(); - } + return; + } + #endif + + probe.deploy(parser.boolval('R')); + TERN_(PROBE_TARE, probe.tare()); + report_current_position(); } /** * M402: Deactivate and stow the Z probe + * R Remain in place after stowing (and before deactivating) the probe */ void GcodeSuite::M402() { - probe.stow(); - probe.move_z_after_probing(); + probe.stow(parser.boolval('R')); + #ifdef Z_AFTER_PROBING + do_z_clearance(Z_AFTER_PROBING); + #endif report_current_position(); } diff --git a/Marlin/src/gcode/probe/M423.cpp b/Marlin/src/gcode/probe/M423.cpp index fde5aaaf87..7c82a4f8af 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/probe/M951.cpp b/Marlin/src/gcode/probe/M951.cpp index 7a06400e33..93feffdce9 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/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index c951fc6333..9ce28f781c 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; @@ -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; @@ -303,10 +303,28 @@ static bool serial_data_available(serial_index_t index) { inline int read_serial(const serial_index_t index) { return SERIAL_IMPL.read(index); } +#if (defined(ARDUINO_ARCH_STM32F4) || defined(ARDUINO_ARCH_STM32)) && defined(USBCON) + + /** + * arduinoststm32's USB receive buffer is not well behaved when the buffer overflows + * + * This can happen when the host programs (such as Pronterface) automatically + * send M105 temperature requests. + */ + void GCodeQueue::flush_rx() { + // Flush receive buffer + 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); + } + } + +#endif // (ARDUINO_ARCH_STM32F4 || ARDUINO_ARCH_STM32) && USBCON + 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; @@ -423,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; @@ -494,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); @@ -544,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 @@ -597,7 +615,7 @@ void GCodeQueue::get_serial_commands() { } } -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * Add to the circular command queue the next command from: @@ -610,7 +628,7 @@ void GCodeQueue::get_available_commands() { get_serial_commands(); - TERN_(SDSUPPORT, get_sdcard_commands()); + TERN_(HAS_MEDIA, get_sdcard_commands()); } /** @@ -649,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(); @@ -685,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); @@ -695,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; diff --git a/Marlin/src/gcode/queue.h b/Marlin/src/gcode/queue.h index 1422830080..25b9f5cf9b 100644 --- a/Marlin/src/gcode/queue.h +++ b/Marlin/src/gcode/queue.h @@ -79,11 +79,11 @@ public: 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()) ); @@ -201,6 +201,12 @@ public: */ static void flush_and_request_resend(const serial_index_t serial_ind); + #if (defined(ARDUINO_ARCH_STM32F4) || defined(ARDUINO_ARCH_STM32)) && defined(USBCON) + static void flush_rx(); + #else + static void flush_rx() {} + #endif + /** * (Re)Set the current line number for the last received command */ @@ -250,7 +256,7 @@ private: 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 c7728a5a47..a00ca61228 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" @@ -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 @@ -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) @@ -97,7 +95,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(); } @@ -114,4 +112,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 2a7e0d08df..9dca2bb3e0 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 aec0de27ca..3347168151 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 8722e9b6de..7727d4958f 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 847af65b12..7bf1ab74d5 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" @@ -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()); } @@ -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 e0557bfa14..9ddc436e8c 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 88238190e2..590efbf79d 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 373938d99b..ac1ba08788 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 b95a895f1e..da8e51bb8b 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/M34.cpp b/Marlin/src/gcode/sd/M34.cpp index 2dd7dc580c..0a7d4d8c62 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/gcode/sd/M524.cpp b/Marlin/src/gcode/sd/M524.cpp index f2b9274223..a3c03e90ba 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 03a7877a90..0d86b330c7 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/gcode/stats/M31.cpp b/Marlin/src/gcode/stats/M31.cpp index 1a1c13ba2f..a76ec7ee4d 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/stats/M75-M78.cpp b/Marlin/src/gcode/stats/M75-M78.cpp index 2ff04797eb..bced97351d 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/M104_M109.cpp b/Marlin/src/gcode/temp/M104_M109.cpp index 331ceeb61d..db150d5518 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/gcode/temp/M106_M107.cpp b/Marlin/src/gcode/temp/M106_M107.cpp index ae517c977b..afa2ebfc56 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'); @@ -85,7 +83,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); @@ -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/gcode/temp/M155.cpp b/Marlin/src/gcode/temp/M155.cpp index 48c23986ae..f1744c8a1e 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/gcode/temp/M303.cpp b/Marlin/src/gcode/temp/M303.cpp index e0ad26027e..f9f3abc5bd 100644 --- a/Marlin/src/gcode/temp/M303.cpp +++ b/Marlin/src/gcode/temp/M303.cpp @@ -25,12 +25,13 @@ #if HAS_PID_HEATING #include "../gcode.h" +#include "../queue.h" // for flush_tx #include "../../lcd/marlinui.h" #include "../../module/temperature.h" #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 @@ -68,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; } @@ -78,13 +79,15 @@ 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)); LCD_MESSAGE(MSG_PID_AUTOTUNE); thermalManager.PID_autotune(temp, hid, c, u); ui.reset_status(); + + queue.flush_rx(); } #endif // HAS_PID_HEATING diff --git a/Marlin/src/gcode/temp/M306.cpp b/Marlin/src/gcode/temp/M306.cpp index 582eb13f81..2830a77ab4 100644 --- a/Marlin/src/gcode/temp/M306.cpp +++ b/Marlin/src/gcode/temp/M306.cpp @@ -31,28 +31,48 @@ /** * M306: MPC settings and autotune * - * T Autotune the active extruder. + * E Extruder index. (Default: Active Extruder) * + * Set MPC values manually for the specified or active extruder: * A Ambient heat transfer coefficient (no fan). * C Block heat capacity. - * E Extruder number to set. (Default: E0) * F Ambient heat transfer coefficient (fan on full). * H Filament heat capacity per mm. * P Heater power. * R Sensor responsiveness (= transfer coefficient / heat capcity). + * + * With MPC_AUTOTUNE: + * 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() { - if (parser.seen_test('T')) { - LCD_MESSAGE(MSG_MPC_AUTOTUNE); - thermalManager.MPC_autotune(); - ui.reset_status(); + const uint8_t e = TERN(HAS_MULTI_EXTRUDER, parser.intval('E', active_extruder), 0); + if (e >= (EXTRUDERS)) { + SERIAL_ECHOLNPGM("?(E)xtruder index out of range (0-", (EXTRUDERS) - 1, ")."); return; } + #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, tuning_type); + ui.reset_status(); + return; + } + #endif + if (parser.seen("ACFPRH")) { - const heater_id_t hid = (heater_id_t)parser.intval('E', 0); - MPC_t &mpc = thermalManager.temp_hotend[hid].mpc; + MPC_t &mpc = thermalManager.temp_hotend[e].mpc; if (parser.seenval('P')) mpc.heater_power = parser.value_float(); if (parser.seenval('C')) mpc.block_heat_capacity = parser.value_float(); if (parser.seenval('R')) mpc.sensor_responsiveness = parser.value_float(); @@ -72,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/temp/M86-M87.cpp b/Marlin/src/gcode/temp/M86-M87.cpp new file mode 100644 index 0000000000..7fb4461961 --- /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/gcode/units/M149.cpp b/Marlin/src/gcode/units/M149.cpp index a04247cbcb..43091b6710 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/Changes.h b/Marlin/src/inc/Changes.h new file mode 100644 index 0000000000..b64b6a7ca7 --- /dev/null +++ b/Marlin/src/inc/Changes.h @@ -0,0 +1,683 @@ +/** + * 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 + */ +#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." +#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. 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) + #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." +#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(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')" +#elif defined(INTEGRATED_BABYSTEPPING) + #error "INTEGRATED_BABYSTEPPING is no longer needed and should be removed." +#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_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index a0f26ee52e..6dfbb47650 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -26,13 +26,17 @@ * 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) +#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 @@ -49,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 /** @@ -66,7 +72,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 @@ -79,7 +85,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 @@ -212,12 +218,12 @@ #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 - #if ENABLED(SDSUPPORT) && DISABLED(LCD_PROGRESS_BAR) + #if HAS_MEDIA && DISABLED(LCD_PROGRESS_BAR) #define LCD_PROGRESS_BAR #endif #if ENABLED(TFTGLCD_PANEL_I2C) @@ -242,7 +248,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 @@ -272,7 +278,7 @@ #endif // ST7565 / 64128N graphical displays -#if EITHER(MAKRPANEL, MINIPANEL) +#if ANY(MAKRPANEL, MINIPANEL) #define IS_ULTIPANEL 1 #define DOGLCD #if ENABLED(MAKRPANEL) @@ -324,24 +330,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 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 ANY(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) + #define TFT_LVGL_UI + #endif #endif // FSMC/SPI TFT Panels (LVGL) @@ -385,7 +389,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 @@ -423,7 +427,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 @@ -450,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 @@ -461,15 +465,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 @@ -477,7 +481,7 @@ #endif // Aliases for LCD features -#if !DGUS_UI_IS(NONE) +#if !DGUS_UI_IS(NONE) || ENABLED(ANYCUBIC_LCD_VYPER) #define HAS_DGUS_LCD 1 #if DGUS_UI_IS(ORIGIN, FYSETC, HIPRECY, MKS) #define HAS_DGUS_LCD_CLASSIC 1 @@ -491,24 +495,28 @@ #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 -#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 @@ -525,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 @@ -532,7 +554,11 @@ #define HAS_LCDPRINT 1 #endif -#if HAS_DISPLAY || HAS_DWIN_E3V2 +#if HAS_DISPLAY || HAS_LCDPRINT + #define HAS_UTF8_UTILS 1 +#endif + +#if ANY(HAS_DISPLAY, HAS_DWIN_E3V2) #define HAS_STATUS_MESSAGE 1 #endif @@ -613,28 +639,35 @@ #undef TEMP_SENSOR_7 #undef SINGLENOZZLE #undef SWITCHING_EXTRUDER + #undef MECHANICAL_SWITCHING_EXTRUDER #undef SWITCHING_NOZZLE + #undef MECHANICAL_SWITCHING_NOZZLE #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 - #undef DISABLE_INACTIVE_EXTRUDER + #undef DISABLE_OTHER_EXTRUDERS #endif #define E_OPTARG(N) OPTARG(HAS_MULTI_EXTRUDER, N) #define E_TERN_(N) TERN_(HAS_MULTI_EXTRUDER, N) #define E_TERN0(N) TERN0(HAS_MULTI_EXTRUDER, N) +#if ANY(SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_EXTRUDER) + #define HAS_SWITCHING_EXTRUDER 1 +#endif +#if ANY(SWITCHING_NOZZLE, MECHANICAL_SWITCHING_NOZZLE) + #define HAS_SWITCHING_NOZZLE 1 +#endif + #if ENABLED(E_DUAL_STEPPER_DRIVERS) // E0/E1 steppers act in tandem as E0 #define E_STEPPERS 2 #define E_MANUAL 1 -#elif ENABLED(SWITCHING_EXTRUDER) // One stepper for every two EXTRUDERS +#elif HAS_SWITCHING_EXTRUDER // One stepper for every two EXTRUDERS #if EXTRUDERS > 4 #define E_STEPPERS 3 @@ -643,9 +676,6 @@ #else #define E_STEPPERS 1 #endif - #if DISABLED(SWITCHING_NOZZLE) - #define HOTENDS E_STEPPERS - #endif #elif ENABLED(MIXING_EXTRUDER) // Multiple feeds are mixed proportionally @@ -667,9 +697,9 @@ #endif -// No inactive extruders with SWITCHING_NOZZLE or Průša MMU1 -#if ENABLED(SWITCHING_NOZZLE) || HAS_PRUSA_MMU1 - #undef DISABLE_INACTIVE_EXTRUDER +// 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 // Průša MMU1, MMU(S) 2.0 and EXTENDABLE_EMU_MMU2(S) force SINGLENOZZLE @@ -677,16 +707,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 @@ -694,6 +715,45 @@ #define E_MANUAL EXTRUDERS #endif +// Number of hotends... +#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" + #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 @@ -752,35 +812,30 @@ #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 -#define HAS_X_AXIS 1 -#if NUM_AXES >= XY - #define HAS_Y_AXIS 1 - #if NUM_AXES >= XYZ - #define HAS_Z_AXIS 1 - #ifdef Z4_DRIVER_TYPE - #define NUM_Z_STEPPERS 4 - #elif defined(Z3_DRIVER_TYPE) - #define NUM_Z_STEPPERS 3 - #elif defined(Z2_DRIVER_TYPE) - #define NUM_Z_STEPPERS 2 - #else - #define NUM_Z_STEPPERS 1 - #endif - #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 +#if NUM_AXES >= 1 + #define HAS_X_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 @@ -790,11 +845,30 @@ #endif #endif +#if !HAS_X_AXIS + #undef AVOID_OBSTACLES + #undef ENDSTOPPULLUP_XMIN + #undef ENDSTOPPULLUP_XMAX + #undef X_MIN_ENDSTOP_HIT_STATE + #undef X_MAX_ENDSTOP_HIT_STATE + #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 #undef ENDSTOPPULLUP_YMAX - #undef Y_MIN_ENDSTOP_INVERTING - #undef Y_MAX_ENDSTOP_INVERTING + #undef Y_MIN_ENDSTOP_HIT_STATE + #undef Y_MAX_ENDSTOP_HIT_STATE #undef Y2_DRIVER_TYPE #undef Y_ENABLE_ON #undef DISABLE_Y @@ -807,11 +881,21 @@ #undef MAX_SOFTWARE_ENDSTOP_Y #endif -#if !HAS_Z_AXIS +#if HAS_Z_AXIS + #ifdef Z4_DRIVER_TYPE + #define NUM_Z_STEPPERS 4 + #elif defined(Z3_DRIVER_TYPE) + #define NUM_Z_STEPPERS 3 + #elif defined(Z2_DRIVER_TYPE) + #define NUM_Z_STEPPERS 2 + #else + #define NUM_Z_STEPPERS 1 + #endif +#else #undef ENDSTOPPULLUP_ZMIN #undef ENDSTOPPULLUP_ZMAX - #undef Z_MIN_ENDSTOP_INVERTING - #undef Z_MAX_ENDSTOP_INVERTING + #undef Z_MIN_ENDSTOP_HIT_STATE + #undef Z_MAX_ENDSTOP_HIT_STATE #undef Z2_DRIVER_TYPE #undef Z3_DRIVER_TYPE #undef Z4_DRIVER_TYPE @@ -822,6 +906,7 @@ #undef Z_MIN_POS #undef Z_MAX_POS #undef MANUAL_Z_HOME_POS + #undef Z_SAFE_HOMING #undef MIN_SOFTWARE_ENDSTOP_Z #undef MAX_SOFTWARE_ENDSTOP_Z #endif @@ -829,8 +914,8 @@ #if !HAS_I_AXIS #undef ENDSTOPPULLUP_IMIN #undef ENDSTOPPULLUP_IMAX - #undef I_MIN_ENDSTOP_INVERTING - #undef I_MAX_ENDSTOP_INVERTING + #undef I_MIN_ENDSTOP_HIT_STATE + #undef I_MAX_ENDSTOP_HIT_STATE #undef I_ENABLE_ON #undef DISABLE_I #undef INVERT_I_DIR @@ -845,8 +930,8 @@ #if !HAS_J_AXIS #undef ENDSTOPPULLUP_JMIN #undef ENDSTOPPULLUP_JMAX - #undef J_MIN_ENDSTOP_INVERTING - #undef J_MAX_ENDSTOP_INVERTING + #undef J_MIN_ENDSTOP_HIT_STATE + #undef J_MAX_ENDSTOP_HIT_STATE #undef J_ENABLE_ON #undef DISABLE_J #undef INVERT_J_DIR @@ -861,8 +946,8 @@ #if !HAS_K_AXIS #undef ENDSTOPPULLUP_KMIN #undef ENDSTOPPULLUP_KMAX - #undef K_MIN_ENDSTOP_INVERTING - #undef K_MAX_ENDSTOP_INVERTING + #undef K_MIN_ENDSTOP_HIT_STATE + #undef K_MAX_ENDSTOP_HIT_STATE #undef K_ENABLE_ON #undef DISABLE_K #undef INVERT_K_DIR @@ -877,8 +962,8 @@ #if !HAS_U_AXIS #undef ENDSTOPPULLUP_UMIN #undef ENDSTOPPULLUP_UMAX - #undef U_MIN_ENDSTOP_INVERTING - #undef U_MAX_ENDSTOP_INVERTING + #undef U_MIN_ENDSTOP_HIT_STATE + #undef U_MAX_ENDSTOP_HIT_STATE #undef U_ENABLE_ON #undef DISABLE_U #undef INVERT_U_DIR @@ -893,8 +978,8 @@ #if !HAS_V_AXIS #undef ENDSTOPPULLUP_VMIN #undef ENDSTOPPULLUP_VMAX - #undef V_MIN_ENDSTOP_INVERTING - #undef V_MAX_ENDSTOP_INVERTING + #undef V_MIN_ENDSTOP_HIT_STATE + #undef V_MAX_ENDSTOP_HIT_STATE #undef V_ENABLE_ON #undef DISABLE_V #undef INVERT_V_DIR @@ -909,8 +994,8 @@ #if !HAS_W_AXIS #undef ENDSTOPPULLUP_WMIN #undef ENDSTOPPULLUP_WMAX - #undef W_MIN_ENDSTOP_INVERTING - #undef W_MAX_ENDSTOP_INVERTING + #undef W_MIN_ENDSTOP_HIT_STATE + #undef W_MAX_ENDSTOP_HIT_STATE #undef W_ENABLE_ON #undef DISABLE_W #undef INVERT_W_DIR @@ -922,18 +1007,25 @@ #undef MAX_SOFTWARE_ENDSTOP_W #endif +#define _OR_HAS_DA(A) ENABLED(DISABLE_##A) || +#if MAP(_OR_HAS_DA, X, Y, Z, I, J, K, U, V, W) 0 + #define HAS_DISABLE_MAIN_AXES 1 +#endif +#if HAS_DISABLE_MAIN_AXES || ENABLED(DISABLE_E) + #define HAS_DISABLE_AXES 1 +#endif +#undef _OR_HAS_DA + #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 /** * Number of Primary Linear Axes (e.g., XYZ) - * X, XY, or XYZ axes. Excluding duplicate axes (X2, Y2. Z2. Z3, Z4) + * X, XY, or XYZ axes. Excluding duplicate axes (X2, Y2, Z2, Z3, Z4) */ #if NUM_AXES >= 3 #define PRIMARY_LINEAR_AXES 3 @@ -1011,19 +1103,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) @@ -1035,33 +1114,18 @@ #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 */ #if DISABLED(SINGLENOZZLE) #undef SINGLENOZZLE_STANDBY_TEMP #endif -#if !BOTH(HAS_FAN, SINGLENOZZLE) +#if !ALL(HAS_FAN, SINGLENOZZLE) #undef SINGLENOZZLE_STANDBY_FAN #endif // Switching extruder has its own servo? -#if ENABLED(SWITCHING_EXTRUDER) && (DISABLED(SWITCHING_NOZZLE) || SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR) +#if ENABLED(SWITCHING_EXTRUDER) && (!HAS_SWITCHING_NOZZLE || SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR) #define DO_SWITCH_EXTRUDER 1 #endif @@ -1069,10 +1133,8 @@ * The BLTouch Probe emulates a servo probe * and uses "special" angles for its state. */ -#if ENABLED(BLTOUCH) - #ifndef Z_PROBE_SERVO_NR - #define Z_PROBE_SERVO_NR 0 - #endif +#if ENABLED(BLTOUCH) && !defined(Z_PROBE_SERVO_NR) + #define Z_PROBE_SERVO_NR 0 #endif /** @@ -1098,6 +1160,14 @@ #define HAS_BED_PROBE 1 #endif +// Probing tool change +#if !HAS_MULTI_EXTRUDER + #undef PROBING_TOOL +#endif +#if HAS_BED_PROBE && defined(PROBING_TOOL) + #define DO_TOOLCHANGE_FOR_PROBING 1 +#endif + /** * Fill in undefined Filament Sensor options */ @@ -1176,11 +1246,104 @@ #endif #endif // FILAMENT_RUNOUT_SENSOR +#if ENABLED(FILAMENT_SWITCH_AND_MOTION) + #if NUM_MOTION_SENSORS >= 1 + #ifndef FIL_MOTION1_STATE + #define FIL_MOTION1_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION1_PULLUP + #define FIL_MOTION1_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION1_PULLDOWN + #define FIL_MOTION1_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 2 + #ifndef FIL_MOTION2_STATE + #define FIL_MOTION2_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION2_PULLUP + #define FIL_MOTION2_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION2_PULLDOWN + #define FIL_MOTION2_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 3 + #ifndef FIL_MOTION3_STATE + #define FIL_MOTION3_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION3_PULLUP + #define FIL_MOTION3_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION3_PULLDOWN + #define FIL_MOTION3_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 4 + #ifndef FIL_MOTION4_STATE + #define FIL_MOTION4_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION4_PULLUP + #define FIL_MOTION4_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION4_PULLDOWN + #define FIL_MOTION4_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 5 + #ifndef FIL_MOTION5_STATE + #define FIL_MOTION5_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION5_PULLUP + #define FIL_MOTION5_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION5_PULLDOWN + #define FIL_MOTION5_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 6 + #ifndef FIL_MOTION6_STATE + #define FIL_MOTION6_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION6_PULLUP + #define FIL_MOTION6_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION6_PULLDOWN + #define FIL_MOTION6_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 7 + #ifndef FIL_MOTION7_STATE + #define FIL_MOTION7_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION7_PULLUP + #define FIL_MOTION7_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION7_PULLDOWN + #define FIL_MOTION7_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif + #if NUM_MOTION_SENSORS >= 8 + #ifndef FIL_MOTION8_STATE + #define FIL_MOTION8_STATE FIL_RUNOUT_STATE + #endif + #ifndef FIL_MOTION8_PULLUP + #define FIL_MOTION8_PULLUP FIL_RUNOUT_PULLUP + #endif + #ifndef FIL_MOTION8_PULLDOWN + #define FILMOTION8_PULLDOWN FIL_RUNOUT_PULLDOWN + #endif + #endif +#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 @@ -1243,24 +1406,26 @@ * Conditionals based on the type of Bed Probe */ #if HAS_BED_PROBE + #if ALL(DELTA, SENSORLESS_PROBING) + #define HAS_DELTA_SENSORLESS_PROBING 1 + #else + #define HAS_REAL_BED_PROBE 1 + #endif + #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 && (!NEED_Z_MIN_PROBE_PIN || ENABLED(USE_PROBE_FOR_Z_HOMING)) + #define HOMING_Z_WITH_PROBE 1 + #endif #if DISABLED(NOZZLE_AS_PROBE) #define HAS_PROBE_XY_OFFSET 1 #endif - #if BOTH(DELTA, SENSORLESS_PROBING) - #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 - #endif - #if Z_HOME_TO_MIN && (DISABLED(USES_Z_MIN_PROBE_PIN) || ENABLED(USE_PROBE_FOR_Z_HOMING)) - #define HOMING_Z_WITH_PROBE 1 + #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 EITHER(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 #if EXTRA_PROBING > 0 #define TOTAL_PROBING (MULTIPLE_PROBING + EXTRA_PROBING) @@ -1288,14 +1453,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) @@ -1304,16 +1469,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 @@ -1324,7 +1489,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) @@ -1333,7 +1498,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 @@ -1344,13 +1509,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 @@ -1371,7 +1536,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 @@ -1395,7 +1560,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 @@ -1443,6 +1608,10 @@ #define HAS_PID_DEBUG 1 #endif +#if DISABLED(MPC_AUTOTUNE) + #undef MPC_AUTOTUNE_MENU +#endif + /** * TFT Displays * @@ -1455,12 +1624,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 @@ -1478,7 +1647,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 @@ -1524,7 +1693,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) @@ -1541,8 +1710,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 @@ -1563,7 +1737,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) @@ -1584,23 +1758,32 @@ #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) + +// 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) + #else + #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' @@ -1628,18 +1811,7 @@ #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) \ +#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 @@ -1679,3 +1851,6 @@ #undef FIL_RUNOUT_STATE #undef FILAMENT_RUNOUT_DISTANCE_MM #endif +#if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) + #define SPI_FLASH_BACKUP 1 +#endif diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 0b3d96f8dd..25050d972f 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -30,26 +30,26 @@ #define AXIS_RELATIVE_MODES {} #endif -#ifdef SWITCHING_NOZZLE_E1_SERVO_NR +#if defined(SWITCHING_NOZZLE_E1_SERVO_NR) && DISABLED(MECHANICAL_SWITCHING_NOZZLE) #define SWITCHING_NOZZLE_TWO_SERVOS 1 #endif // Determine NUM_SERVOS if none was supplied #ifndef NUM_SERVOS #define NUM_SERVOS 0 - #if ANY(HAS_Z_SERVO_PROBE, CHAMBER_VENT, SWITCHING_TOOLHEAD, SWITCHING_EXTRUDER, SWITCHING_NOZZLE, SPINDLE_SERVO) - #if NUM_SERVOS <= Z_PROBE_SERVO_NR - #undef NUM_SERVOS - #define NUM_SERVOS (Z_PROBE_SERVO_NR + 1) - #endif - #if NUM_SERVOS <= CHAMBER_VENT_SERVO_NR - #undef NUM_SERVOS - #define NUM_SERVOS (CHAMBER_VENT_SERVO_NR + 1) - #endif - #if NUM_SERVOS <= SWITCHING_TOOLHEAD_SERVO_NR - #undef NUM_SERVOS - #define NUM_SERVOS (SWITCHING_TOOLHEAD_SERVO_NR + 1) - #endif + #if HAS_Z_SERVO_PROBE && NUM_SERVOS <= Z_PROBE_SERVO_NR + #undef NUM_SERVOS + #define NUM_SERVOS (Z_PROBE_SERVO_NR + 1) + #endif + #if ENABLED(CHAMBER_VENT) && NUM_SERVOS <= CHAMBER_VENT_SERVO_NR + #undef NUM_SERVOS + #define NUM_SERVOS (CHAMBER_VENT_SERVO_NR + 1) + #endif + #if ENABLED(SWITCHING_TOOLHEAD) && NUM_SERVOS <= SWITCHING_TOOLHEAD_SERVO_NR + #undef NUM_SERVOS + #define NUM_SERVOS (SWITCHING_TOOLHEAD_SERVO_NR + 1) + #endif + #if ENABLED(SWITCHING_NOZZLE) #if NUM_SERVOS <= SWITCHING_NOZZLE_SERVO_NR #undef NUM_SERVOS #define NUM_SERVOS (SWITCHING_NOZZLE_SERVO_NR + 1) @@ -58,6 +58,8 @@ #undef NUM_SERVOS #define NUM_SERVOS (SWITCHING_NOZZLE_E1_SERVO_NR + 1) #endif + #endif + #if ENABLED(SWITCHING_EXTRUDER) #if NUM_SERVOS <= SWITCHING_EXTRUDER_SERVO_NR #undef NUM_SERVOS #define NUM_SERVOS (SWITCHING_EXTRUDER_SERVO_NR + 1) @@ -66,17 +68,22 @@ #undef NUM_SERVOS #define NUM_SERVOS (SWITCHING_EXTRUDER_E23_SERVO_NR + 1) #endif - #if NUM_SERVOS <= SPINDLE_SERVO_NR - #undef NUM_SERVOS - #define NUM_SERVOS (SPINDLE_SERVO_NR + 1) - #endif #endif -#endif + #if ENABLED(SPINDLE_SERVO) && NUM_SERVOS <= SPINDLE_SERVO_NR + #undef NUM_SERVOS + #define NUM_SERVOS (SPINDLE_SERVO_NR + 1) + #endif +#endif // !defined(NUM_SERVOS) // Convenience override for a BLTouch alone -#if ENABLED(BLTOUCH) && NUM_SERVOS == 1 - #undef SERVO_DELAY - #define SERVO_DELAY { 50 } +#if ENABLED(BLTOUCH) + #ifdef BLTOUCH_HS_MODE + #define HAS_BLTOUCH_HS_MODE 1 + #endif + #if NUM_SERVOS == 1 + #undef SERVO_DELAY + #define SERVO_DELAY { 50 } + #endif #endif #if !HAS_BED_PROBE @@ -87,75 +94,205 @@ #endif // Some options are disallowed without required axes +#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 + #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 SAFE_BED_LEVELING_START_Y #undef ARC_SUPPORT + #undef CALIBRATION_MEASURE_BACK + #undef CALIBRATION_MEASURE_FRONT + #undef CALIBRATION_MEASURE_YMAX + #undef CALIBRATION_MEASURE_YMIN + #undef DISABLE_IDLE_Y + #undef HOME_Y_BEFORE_X #undef INPUT_SHAPING_Y - #undef SHAPING_FREQ_Y + #undef QUICK_HOME + #undef SAFE_BED_LEVELING_START_Y #undef SHAPING_BUFFER_Y + #undef SHAPING_FREQ_Y + #undef STEALTHCHOP_Y + #undef STEP_STATE_Y #endif + #if !HAS_Z_AXIS + #undef CALIBRATION_MEASURE_ZMAX + #undef CALIBRATION_MEASURE_ZMIN + #undef CNC_WORKSPACE_PLANES + #undef DISABLE_IDLE_Z + #undef ENABLE_LEVELING_FADE_HEIGHT + #undef HOME_Z_FIRST + #undef HOMING_Z_WITH_PROBE + #undef NUM_Z_STEPPERS #undef SAFE_BED_LEVELING_START_Z + #undef STEALTHCHOP_Z + #undef STEP_STATE_Z + #undef Z_IDLE_HEIGHT + #undef Z_PROBE_SLED + #undef Z_SAFE_HOMING #endif + #if !HAS_I_AXIS + #undef CALIBRATION_MEASURE_IMAX + #undef CALIBRATION_MEASURE_IMIN + #undef DISABLE_IDLE_I #undef SAFE_BED_LEVELING_START_I + #undef STEALTHCHOP_I + #undef STEP_STATE_I #endif + #if !HAS_J_AXIS + #undef CALIBRATION_MEASURE_JMAX + #undef CALIBRATION_MEASURE_JMIN + #undef DISABLE_IDLE_J #undef SAFE_BED_LEVELING_START_J + #undef STEALTHCHOP_J + #undef STEP_STATE_J #endif + #if !HAS_K_AXIS + #undef CALIBRATION_MEASURE_KMAX + #undef CALIBRATION_MEASURE_KMIN + #undef DISABLE_IDLE_K #undef SAFE_BED_LEVELING_START_K + #undef STEALTHCHOP_K + #undef STEP_STATE_K #endif + #if !HAS_U_AXIS + #undef CALIBRATION_MEASURE_UMAX + #undef CALIBRATION_MEASURE_UMIN + #undef DISABLE_IDLE_U #undef SAFE_BED_LEVELING_START_U + #undef STEALTHCHOP_U + #undef STEP_STATE_U #endif + #if !HAS_V_AXIS + #undef CALIBRATION_MEASURE_VMAX + #undef CALIBRATION_MEASURE_VMIN + #undef DISABLE_IDLE_V #undef SAFE_BED_LEVELING_START_V + #undef STEALTHCHOP_V + #undef STEP_STATE_V #endif + #if !HAS_W_AXIS + #undef CALIBRATION_MEASURE_WMAX + #undef CALIBRATION_MEASURE_WMIN + #undef DISABLE_IDLE_W #undef SAFE_BED_LEVELING_START_W + #undef STEALTHCHOP_W + #undef STEP_STATE_W #endif // Disallowed with no extruders #if !HAS_EXTRUDERS #define NO_VOLUMETRICS - #undef FWRETRACT - #undef PIDTEMP - #undef AUTOTEMP - #undef PID_EXTRUSION_SCALING - #undef LIN_ADVANCE - #undef FILAMENT_RUNOUT_SENSOR - #undef FIL_RUNOUT_ENABLED - #undef FIL_RUNOUT_MODE - #undef FIL_RUNOUT_DISTANCE_MM #undef ADVANCED_PAUSE_FEATURE - #undef FILAMENT_LOAD_UNLOAD_GCODES - #undef DISABLE_INACTIVE_EXTRUDER + #undef DISABLE_IDLE_E #undef EXTRUDER_RUNOUT_PREVENT - #undef THERMAL_PROTECTION_PERIOD - #undef WATCH_TEMP_PERIOD - #undef SHOW_TEMP_ADC_VALUES + #undef FILAMENT_LOAD_UNLOAD_GCODES + #undef FWRETRACT #undef LCD_SHOW_E_TOTAL + #undef LIN_ADVANCE #undef MANUAL_E_MOVES_RELATIVE + #undef PID_EXTRUSION_SCALING + #undef SHOW_TEMP_ADC_VALUES #undef STEALTHCHOP_E #endif -#if HOTENDS <= 7 +#if ENABLED(DISABLE_X) && !defined(DISABLE_IDLE_X) + #define DISABLE_IDLE_X +#endif +#if ENABLED(DISABLE_Y) && !defined(DISABLE_IDLE_Y) + #define DISABLE_IDLE_Y +#endif +#if ENABLED(DISABLE_Z) && !defined(DISABLE_IDLE_Z) + #define DISABLE_IDLE_Z +#endif +#if ENABLED(DISABLE_I) && !defined(DISABLE_IDLE_I) + #define DISABLE_IDLE_I +#endif +#if ENABLED(DISABLE_J) && !defined(DISABLE_IDLE_J) + #define DISABLE_IDLE_J +#endif +#if ENABLED(DISABLE_K) && !defined(DISABLE_IDLE_K) + #define DISABLE_IDLE_K +#endif +#if ENABLED(DISABLE_U) && !defined(DISABLE_IDLE_U) + #define DISABLE_IDLE_U +#endif +#if ENABLED(DISABLE_V) && !defined(DISABLE_IDLE_V) + #define DISABLE_IDLE_V +#endif +#if ENABLED(DISABLE_W) && !defined(DISABLE_IDLE_W) + #define DISABLE_IDLE_W +#endif +#if ENABLED(DISABLE_E) && !defined(DISABLE_IDLE_E) + #define DISABLE_IDLE_E +#endif + +#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 + +// 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 @@ -170,34 +307,35 @@ */ // Temperature sensor IDs -#define HID_REDUNDANT -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) #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 #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 @@ -235,9 +373,6 @@ #elif TEMP_SENSOR_0 == 998 || TEMP_SENSOR_0 == 999 #define TEMP_SENSOR_0_IS_DUMMY 1 #endif -#else - #undef HEATER_0_MINTEMP - #undef HEATER_0_MAXTEMP #endif #if TEMP_SENSOR_IS_MAX_TC(1) @@ -281,9 +416,6 @@ #elif TEMP_SENSOR_1 == 998 || TEMP_SENSOR_1 == 999 #define TEMP_SENSOR_1_IS_DUMMY 1 #endif -#else - #undef HEATER_1_MINTEMP - #undef HEATER_1_MAXTEMP #endif #if TEMP_SENSOR_IS_MAX_TC(2) @@ -327,9 +459,51 @@ #elif TEMP_SENSOR_2 == 998 || TEMP_SENSOR_2 == 999 #define TEMP_SENSOR_2_IS_DUMMY 1 #endif -#else - #undef HEATER_2_MINTEMP - #undef HEATER_2_MAXTEMP +#endif + +#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 > 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 > 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 > 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 > 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 #if TEMP_SENSOR_IS_MAX_TC(REDUNDANT) @@ -393,12 +567,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 @@ -423,16 +597,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 @@ -443,16 +614,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 @@ -463,16 +631,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 @@ -483,16 +648,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 @@ -503,16 +665,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 @@ -531,8 +690,6 @@ #define TEMP_SENSOR_BED_IS_DUMMY 1 #endif #else - #undef THERMAL_PROTECTION_BED - #undef THERMAL_PROTECTION_BED_PERIOD #undef BED_MINTEMP #undef BED_MAXTEMP #endif @@ -566,12 +723,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 @@ -613,11 +770,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 @@ -655,7 +812,7 @@ #undef MENU_ADDAUTOSTART #endif -#if EITHER(SDSUPPORT, SET_PROGRESS_MANUALLY) +#if ANY(HAS_MEDIA, SET_PROGRESS_MANUALLY) #define HAS_PRINT_PROGRESS 1 #endif @@ -673,15 +830,15 @@ #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 -#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 -#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 @@ -699,7 +856,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) @@ -711,7 +868,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 @@ -721,21 +878,32 @@ #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 -#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 @@ -746,15 +914,22 @@ #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 // // 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 @@ -827,7 +1002,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 @@ -862,7 +1037,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 @@ -885,7 +1060,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 @@ -905,12 +1080,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 @@ -984,6 +1153,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 @@ -996,58 +1168,17 @@ #endif #endif -// Remove unused STEALTHCHOP flags -#if NUM_AXES < 9 - #undef STEALTHCHOP_W - #undef CALIBRATION_MEASURE_WMIN - #undef CALIBRATION_MEASURE_WMAX - #if NUM_AXES < 8 - #undef STEALTHCHOP_V - #undef CALIBRATION_MEASURE_VMIN - #undef CALIBRATION_MEASURE_VMAX - #if NUM_AXES < 7 - #undef STEALTHCHOP_U - #undef CALIBRATION_MEASURE_UMIN - #undef CALIBRATION_MEASURE_UMAX - #if NUM_AXES < 6 - #undef STEALTHCHOP_K - #undef CALIBRATION_MEASURE_KMIN - #undef CALIBRATION_MEASURE_KMAX - #if NUM_AXES < 5 - #undef STEALTHCHOP_J - #undef CALIBRATION_MEASURE_JMIN - #undef CALIBRATION_MEASURE_JMAX - #if NUM_AXES < 4 - #undef STEALTHCHOP_I - #undef CALIBRATION_MEASURE_IMIN - #undef CALIBRATION_MEASURE_IMAX - #if NUM_AXES < 3 - #undef STEALTHCHOP_Z - #undef Z_IDLE_HEIGHT - #undef Z_PROBE_SLED - #undef Z_SAFE_HOMING - #undef HOME_Z_FIRST - #undef HOMING_Z_WITH_PROBE - #undef ENABLE_LEVELING_FADE_HEIGHT - #undef NUM_Z_STEPPERS - #undef CNC_WORKSPACE_PLANES - #if NUM_AXES < 2 - #undef STEALTHCHOP_Y - #undef QUICK_HOME - #endif - #endif - #endif - #endif - #endif - #endif - #endif +#if defined(SAFE_BED_LEVELING_START_X) || defined(SAFE_BED_LEVELING_START_Y) || defined(SAFE_BED_LEVELING_START_Z) \ + || defined(SAFE_BED_LEVELING_START_I) || defined(SAFE_BED_LEVELING_START_J) || defined(SAFE_BED_LEVELING_START_K) \ + || defined(SAFE_BED_LEVELING_START_U) || defined(SAFE_BED_LEVELING_START_V) || defined(SAFE_BED_LEVELING_START_W) + #define HAS_SAFE_BED_LEVELING 1 #endif // // 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 @@ -1055,10 +1186,11 @@ #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 -#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 @@ -1077,7 +1209,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 @@ -1094,7 +1226,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 @@ -1102,17 +1234,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 @@ -1122,32 +1253,35 @@ #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__) || DISABLED(SDSUPPORT) || 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 -#if ANY(DISABLE_INACTIVE_X, DISABLE_INACTIVE_Y, DISABLE_INACTIVE_Z, DISABLE_INACTIVE_I, DISABLE_INACTIVE_J, DISABLE_INACTIVE_K, DISABLE_INACTIVE_U, DISABLE_INACTIVE_V, DISABLE_INACTIVE_W, DISABLE_INACTIVE_E) - #define HAS_DISABLE_INACTIVE_AXIS 1 -#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_SHAPING 1 +#if ANY(INPUT_SHAPING_X, INPUT_SHAPING_Y) + #define HAS_ZV_SHAPING 1 +#endif + +// Toolchange Event G-code +#if !HAS_MULTI_EXTRUDER || !(defined(EVENT_GCODE_TOOLCHANGE_T0) || defined(EVENT_GCODE_TOOLCHANGE_T1) || defined(EVENT_GCODE_TOOLCHANGE_T2) || defined(EVENT_GCODE_TOOLCHANGE_T3) || defined(EVENT_GCODE_TOOLCHANGE_T4) || defined(EVENT_GCODE_TOOLCHANGE_T5) || defined(EVENT_GCODE_TOOLCHANGE_T6) || defined(EVENT_GCODE_TOOLCHANGE_T7)) + #undef TC_GCODE_USE_GLOBAL_X + #undef TC_GCODE_USE_GLOBAL_Y + #undef TC_GCODE_USE_GLOBAL_Z +#endif + +// Multi-Stepping Limit +#ifndef MULTISTEPPING_LIMIT + #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/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index e2325e0122..8340493c15 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -31,14 +31,14 @@ #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 -#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 @@ -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)) @@ -101,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 @@ -130,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) @@ -161,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 @@ -184,33 +192,37 @@ #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 } #endif #if HAS_I_AXIS - #define I_CENTER TERN(BED_CENTER_AT_0_0, 0, _I_HALF_BED) + #define I_CENTER _I_HALF_BED #endif #if HAS_J_AXIS - #define J_CENTER TERN(BED_CENTER_AT_0_0, 0, _J_HALF_BED) + #define J_CENTER _J_HALF_BED #endif #if HAS_K_AXIS - #define K_CENTER TERN(BED_CENTER_AT_0_0, 0, _K_HALF_BED) + #define K_CENTER _K_HALF_BED #endif #if HAS_U_AXIS - #define U_CENTER TERN(BED_CENTER_AT_0_0, 0, _U_HALF_BED) + #define U_CENTER _U_HALF_BED #endif #if HAS_V_AXIS - #define V_CENTER TERN(BED_CENTER_AT_0_0, 0, _V_HALF_BED) + #define V_CENTER _V_HALF_BED #endif #if HAS_W_AXIS - #define W_CENTER TERN(BED_CENTER_AT_0_0, 0, _W_HALF_BED) + #define W_CENTER _W_HALF_BED #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) @@ -253,14 +265,16 @@ #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) (_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 @@ -286,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 @@ -341,21 +357,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 @@ -450,14 +466,14 @@ #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 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 @@ -508,9 +524,9 @@ * 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) + #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 @@ -542,8 +558,8 @@ #endif #endif - #if DISABLED(USB_FLASH_DRIVE_SUPPORT) || BOTH(MULTI_VOLUME, VOLUME_SD_ONBOARD) - #if ENABLED(SDIO_SUPPORT) + #if DISABLED(USB_FLASH_DRIVE_SUPPORT) || ALL(MULTI_VOLUME, VOLUME_SD_ONBOARD) + #if ENABLED(ONBOARD_SDIO) #define NEED_SD2CARD_SDIO 1 #else #define NEED_SD2CARD_SPI 1 @@ -554,7 +570,7 @@ #define REINIT_NOISY_LCD 1 // Have the LCD re-init on SD insertion #endif -#endif +#endif // HAS_MEDIA /** * Power Supply @@ -681,213 +697,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 + // 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_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 + #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_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 + #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(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 - #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 - #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 - #endif - - #endif // TEMP_SENSOR_IS_MAX_TC(2) + #endif // // User-defined thermocouple libraries @@ -895,13 +731,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 @@ -914,19 +750,19 @@ */ #if ENABLED(X_DUAL_ENDSTOPS) #if X_HOME_TO_MAX - #ifndef X2_MAX_ENDSTOP_INVERTING - #if X2_USE_ENDSTOP == _XMIN_ - #define X2_MAX_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MAX_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MAX_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MAX_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MAX_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MAX_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef X2_MAX_ENDSTOP_HIT_STATE + #if X2_STOP_PIN == X_MIN_PIN + #define X2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == X_MAX_PIN + #define X2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Y_MIN_PIN + #define X2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Y_MAX_PIN + #define X2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Z_MIN_PIN + #define X2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Z_MAX_PIN + #define X2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(X2_MAX) @@ -936,19 +772,19 @@ #endif #endif #else - #ifndef X2_MIN_ENDSTOP_INVERTING - #if X2_USE_ENDSTOP == _XMIN_ - #define X2_MIN_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MIN_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MIN_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MIN_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MIN_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MIN_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef X2_MIN_ENDSTOP_HIT_STATE + #if X2_STOP_PIN == X_MIN_PIN + #define X2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == X_MAX_PIN + #define X2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Y_MIN_PIN + #define X2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Y_MAX_PIN + #define X2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Z_MIN_PIN + #define X2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif X2_STOP_PIN == Z_MAX_PIN + #define X2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(X2_MIN) @@ -958,11 +794,11 @@ #endif #endif #endif - #ifndef X2_MAX_ENDSTOP_INVERTING - #define X2_MAX_ENDSTOP_INVERTING false + #ifndef X2_MAX_ENDSTOP_HIT_STATE + #define X2_MAX_ENDSTOP_HIT_STATE HIGH #endif - #ifndef X2_MIN_ENDSTOP_INVERTING - #define X2_MIN_ENDSTOP_INVERTING false + #ifndef X2_MIN_ENDSTOP_HIT_STATE + #define X2_MIN_ENDSTOP_HIT_STATE HIGH #endif #endif @@ -971,19 +807,19 @@ */ #if ENABLED(Y_DUAL_ENDSTOPS) #if Y_HOME_TO_MAX - #ifndef Y2_MAX_ENDSTOP_INVERTING - #if Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MAX_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MAX_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MAX_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MAX_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MAX_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MAX_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Y2_MAX_ENDSTOP_HIT_STATE + #if Y2_STOP_PIN == X_MIN_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == X_MAX_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Y_MIN_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Y_MAX_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Z_MIN_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Z_MAX_PIN + #define Y2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Y2_MAX) @@ -993,19 +829,19 @@ #endif #endif #else - #ifndef Y2_MIN_ENDSTOP_INVERTING - #if Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MIN_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MIN_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MIN_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MIN_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MIN_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MIN_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Y2_MIN_ENDSTOP_HIT_STATE + #if Y2_STOP_PIN == X_MIN_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == X_MAX_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Y_MIN_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Y_MAX_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Z_MIN_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Y2_STOP_PIN == Z_MAX_PIN + #define Y2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Y2_MIN) @@ -1015,11 +851,11 @@ #endif #endif #endif - #ifndef Y2_MAX_ENDSTOP_INVERTING - #define Y2_MAX_ENDSTOP_INVERTING false + #ifndef Y2_MAX_ENDSTOP_HIT_STATE + #define Y2_MAX_ENDSTOP_HIT_STATE HIGH #endif - #ifndef Y2_MIN_ENDSTOP_INVERTING - #define Y2_MIN_ENDSTOP_INVERTING false + #ifndef Y2_MIN_ENDSTOP_HIT_STATE + #define Y2_MIN_ENDSTOP_HIT_STATE HIGH #endif #endif @@ -1029,19 +865,19 @@ #if ENABLED(Z_MULTI_ENDSTOPS) #if Z_HOME_TO_MAX - #ifndef Z2_MAX_ENDSTOP_INVERTING - #if Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MAX_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MAX_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MAX_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MAX_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MAX_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MAX_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z2_MAX_ENDSTOP_HIT_STATE + #if Z2_STOP_PIN == X_MIN_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == X_MAX_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Y_MIN_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Y_MAX_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Z_MIN_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Z_MAX_PIN + #define Z2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z2_MAX) @@ -1051,19 +887,19 @@ #endif #endif #else - #ifndef Z2_MIN_ENDSTOP_INVERTING - #if Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MIN_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MIN_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MIN_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MIN_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MIN_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MIN_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z2_MIN_ENDSTOP_HIT_STATE + #if Z2_STOP_PIN == X_MIN_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == X_MAX_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Y_MIN_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Y_MAX_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Z_MIN_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z2_STOP_PIN == Z_MAX_PIN + #define Z2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z2_MIN) @@ -1073,28 +909,28 @@ #endif #endif #endif - #ifndef Z2_MAX_ENDSTOP_INVERTING - #define Z2_MAX_ENDSTOP_INVERTING false + #ifndef Z2_MAX_ENDSTOP_HIT_STATE + #define Z2_MAX_ENDSTOP_HIT_STATE HIGH #endif - #ifndef Z2_MIN_ENDSTOP_INVERTING - #define Z2_MIN_ENDSTOP_INVERTING false + #ifndef Z2_MIN_ENDSTOP_HIT_STATE + #define Z2_MIN_ENDSTOP_HIT_STATE HIGH #endif #if NUM_Z_STEPPERS >= 3 #if Z_HOME_TO_MAX - #ifndef Z3_MAX_ENDSTOP_INVERTING - #if Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MAX_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MAX_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MAX_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MAX_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MAX_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MAX_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z3_MAX_ENDSTOP_HIT_STATE + #if Z3_STOP_PIN == X_MIN_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == X_MAX_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Y_MIN_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Y_MAX_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Z_MIN_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Z_MAX_PIN + #define Z3_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z3_MAX) @@ -1104,19 +940,19 @@ #endif #endif #else - #ifndef Z3_MIN_ENDSTOP_INVERTING - #if Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MIN_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MIN_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MIN_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MIN_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MIN_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MIN_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z3_MIN_ENDSTOP_HIT_STATE + #if Z3_STOP_PIN == X_MIN_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == X_MAX_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Y_MIN_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Y_MAX_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Z_MIN_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z3_STOP_PIN == Z_MAX_PIN + #define Z3_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z3_MIN) @@ -1126,29 +962,29 @@ #endif #endif #endif - #ifndef Z3_MAX_ENDSTOP_INVERTING - #define Z3_MAX_ENDSTOP_INVERTING false + #ifndef Z3_MAX_ENDSTOP_HIT_STATE + #define Z3_MAX_ENDSTOP_HIT_STATE HIGH #endif - #ifndef Z3_MIN_ENDSTOP_INVERTING - #define Z3_MIN_ENDSTOP_INVERTING false + #ifndef Z3_MIN_ENDSTOP_HIT_STATE + #define Z3_MIN_ENDSTOP_HIT_STATE HIGH #endif #endif #if NUM_Z_STEPPERS >= 4 #if Z_HOME_TO_MAX - #ifndef Z4_MAX_ENDSTOP_INVERTING - #if Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MAX_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MAX_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MAX_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MAX_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MAX_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MAX_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z4_MAX_ENDSTOP_HIT_STATE + #if Z4_STOP_PIN == X_MIN_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == X_MAX_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Y_MIN_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Y_MAX_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Z_MIN_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Z_MAX_PIN + #define Z4_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z4_MAX) @@ -1158,19 +994,19 @@ #endif #endif #else - #ifndef Z4_MIN_ENDSTOP_INVERTING - #if Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MIN_ENDSTOP_INVERTING X_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MIN_ENDSTOP_INVERTING X_MAX_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MIN_ENDSTOP_INVERTING Y_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MIN_ENDSTOP_INVERTING Y_MAX_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MIN_ENDSTOP_INVERTING Z_MIN_ENDSTOP_INVERTING - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MIN_ENDSTOP_INVERTING Z_MAX_ENDSTOP_INVERTING + #ifndef Z4_MIN_ENDSTOP_HIT_STATE + #if Z4_STOP_PIN == X_MIN_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == X_MAX_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Y_MIN_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Y_MAX_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Z_MIN_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE + #elif Z4_STOP_PIN == Z_MAX_PIN + #define Z4_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif #if !PIN_EXISTS(Z4_MIN) @@ -1180,137 +1016,52 @@ #endif #endif #endif - #ifndef Z4_MAX_ENDSTOP_INVERTING - #define Z4_MAX_ENDSTOP_INVERTING false + #ifndef Z4_MAX_ENDSTOP_HIT_STATE + #define Z4_MAX_ENDSTOP_HIT_STATE HIGH #endif - #ifndef Z4_MIN_ENDSTOP_INVERTING - #define Z4_MIN_ENDSTOP_INVERTING false + #ifndef Z4_MIN_ENDSTOP_HIT_STATE + #define Z4_MIN_ENDSTOP_HIT_STATE HIGH #endif #endif #endif // Z_MULTI_ENDSTOPS -/** - * Set ENDSTOPPULLUPS for active endstop switches - */ -#if ENABLED(ENDSTOPPULLUPS) - #if ENABLED(USE_XMAX_PLUG) - #define ENDSTOPPULLUP_XMAX - #endif - #if ENABLED(USE_YMAX_PLUG) - #define ENDSTOPPULLUP_YMAX - #endif - #if ENABLED(USE_ZMAX_PLUG) - #define ENDSTOPPULLUP_ZMAX - #endif - #if ENABLED(USE_IMAX_PLUG) - #define ENDSTOPPULLUP_IMAX - #endif - #if ENABLED(USE_JMAX_PLUG) - #define ENDSTOPPULLUP_JMAX - #endif - #if ENABLED(USE_KMAX_PLUG) - #define ENDSTOPPULLUP_KMAX - #endif - #if ENABLED(USE_UMAX_PLUG) - #define ENDSTOPPULLUP_UMAX - #endif - #if ENABLED(USE_VMAX_PLUG) - #define ENDSTOPPULLUP_VMAX - #endif - #if ENABLED(USE_WMAX_PLUG) - #define ENDSTOPPULLUP_WMAX - #endif - #if ENABLED(USE_XMIN_PLUG) - #define ENDSTOPPULLUP_XMIN - #endif - #if ENABLED(USE_YMIN_PLUG) - #define ENDSTOPPULLUP_YMIN - #endif - #if ENABLED(USE_ZMIN_PLUG) - #define ENDSTOPPULLUP_ZMIN - #endif - #if ENABLED(USE_IMIN_PLUG) - #define ENDSTOPPULLUP_IMIN - #endif - #if ENABLED(USE_JMIN_PLUG) - #define ENDSTOPPULLUP_JMIN - #endif - #if ENABLED(USE_KMIN_PLUG) - #define ENDSTOPPULLUP_KMIN - #endif - #if ENABLED(USE_UMIN_PLUG) - #define ENDSTOPPULLUP_UMIN - #endif - #if ENABLED(USE_VMIN_PLUG) - #define ENDSTOPPULLUP_VMIN - #endif - #if ENABLED(USE_WMIN_PLUG) - #define ENDSTOPPULLUP_WMIN - #endif -#endif - -/** - * Set ENDSTOPPULLDOWNS for active endstop switches - */ -#if ENABLED(ENDSTOPPULLDOWNS) - #if ENABLED(USE_XMAX_PLUG) - #define ENDSTOPPULLDOWN_XMAX - #endif - #if ENABLED(USE_YMAX_PLUG) - #define ENDSTOPPULLDOWN_YMAX - #endif - #if ENABLED(USE_ZMAX_PLUG) - #define ENDSTOPPULLDOWN_ZMAX - #endif - #if ENABLED(USE_XMIN_PLUG) - #define ENDSTOPPULLDOWN_XMIN - #endif - #if ENABLED(USE_YMIN_PLUG) - #define ENDSTOPPULLDOWN_YMIN - #endif - #if ENABLED(USE_ZMIN_PLUG) - #define ENDSTOPPULLDOWN_ZMIN - #endif -#endif - /** * Shorthand for pin tests, used wherever needed */ // 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 /** * Set defaults for missing (newer) options */ -#if !defined(DISABLE_INACTIVE_X) && ENABLED(DISABLE_X) - #define DISABLE_INACTIVE_X 1 -#endif #if HAS_Y_AXIS #if PIN_EXISTS(Y_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(Y)) @@ -1326,23 +1077,20 @@ #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 + #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 - #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 - #if !defined(DISABLE_INACTIVE_Y) && ENABLED(DISABLE_Y) - #define DISABLE_INACTIVE_Y 1 - #endif -#else - #undef DISABLE_INACTIVE_Y #endif #if HAS_Z_AXIS @@ -1358,11 +1106,6 @@ #if PIN_EXISTS(Z_MS1) #define HAS_Z_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_Z) && ENABLED(DISABLE_Z) - #define DISABLE_INACTIVE_Z 1 - #endif -#else - #undef DISABLE_INACTIVE_Z #endif #if NUM_Z_STEPPERS >= 2 @@ -1423,11 +1166,6 @@ #if PIN_EXISTS(I_MS1) #define HAS_I_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_I) && ENABLED(DISABLE_I) - #define DISABLE_INACTIVE_I 1 - #endif -#else - #undef DISABLE_INACTIVE_I #endif #if HAS_J_AXIS @@ -1443,11 +1181,6 @@ #if PIN_EXISTS(J_MS1) #define HAS_J_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_J) && ENABLED(DISABLE_J) - #define DISABLE_INACTIVE_J 1 - #endif -#else - #undef DISABLE_INACTIVE_J #endif #if HAS_K_AXIS @@ -1463,11 +1196,6 @@ #if PIN_EXISTS(K_MS1) #define HAS_K_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_K) && ENABLED(DISABLE_K) - #define DISABLE_INACTIVE_K 1 - #endif -#else - #undef DISABLE_INACTIVE_K #endif #if HAS_U_AXIS @@ -1483,11 +1211,6 @@ #if PIN_EXISTS(U_MS1) #define HAS_U_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_U) && ENABLED(DISABLE_U) - #define DISABLE_INACTIVE_U 1 - #endif -#else - #undef DISABLE_INACTIVE_U #endif #if HAS_V_AXIS @@ -1503,11 +1226,6 @@ #if PIN_EXISTS(V_MS1) #define HAS_V_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_V) && ENABLED(DISABLE_V) - #define DISABLE_INACTIVE_V 1 - #endif -#else - #undef DISABLE_INACTIVE_V #endif #if HAS_W_AXIS @@ -1523,11 +1241,6 @@ #if PIN_EXISTS(W_MS1) #define HAS_W_MS_PINS 1 #endif - #if !defined(DISABLE_INACTIVE_W) && ENABLED(DISABLE_W) - #define DISABLE_INACTIVE_W 1 - #endif -#else - #undef DISABLE_INACTIVE_W #endif // Extruder steppers and solenoids @@ -1651,11 +1364,6 @@ #endif #endif - #if !defined(DISABLE_INACTIVE_E) && ENABLED(DISABLE_E) - #define DISABLE_INACTIVE_E 1 - #endif -#else - #undef DISABLE_INACTIVE_E #endif // HAS_EXTRUDERS /** @@ -1667,7 +1375,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)) @@ -1701,9 +1409,10 @@ #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 + // Disable Z axis sensorless homing if a probe is used to home the Z axis #if HOMING_Z_WITH_PROBE #undef Z_STALL_SENSITIVITY @@ -1715,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 @@ -1732,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 @@ -1754,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 @@ -1770,44 +1478,35 @@ #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 HAS_U_AXIS - #define U_SPI_SENSORLESS U_SENSORLESS + #if AXIS_HAS_STEALTHCHOP(Y2) + #define Y2_HAS_STEALTHCHOP 1 #endif - #if HAS_V_AXIS - #define V_SPI_SENSORLESS V_SENSORLESS + #ifndef Y2_INTERPOLATE + #define Y2_INTERPOLATE Y_INTERPOLATE #endif - #if HAS_W_AXIS - #define W_SPI_SENSORLESS W_SENSORLESS + #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(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 @@ -1817,69 +1516,69 @@ #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 #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 @@ -1894,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 @@ -1915,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 @@ -1936,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 @@ -1957,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 @@ -1978,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 @@ -2116,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 @@ -2223,6 +1925,14 @@ #undef TMC_UART_IS #undef ANY_SERIAL_IS +#if defined(__AVR_ARCH__) && defined(TMC_SPI_MISO) && defined(TMC_SPI_MOSI) && defined(TMC_SPI_SCK) + // Check that the pins are the solitary supported SPI hardware pins of the (AVR) platform. + // Otherwise we are forced to enable software SPI. + #if TMC_SPI_MISO != MISO || TMC_SPI_MOSI != MOSI || TMC_SPI_SCK != SCK + #define TMC_USE_SW_SPI + #endif +#endif + // Clean up unused ESP_WIFI pins #ifdef ESP_WIFI_MODULE_COM #if !SERIAL_IN_USE(ESP_WIFI_MODULE_COM) @@ -2238,137 +1948,379 @@ #endif #endif -// -// Endstops and bed probe -// +/** + * 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)) -// 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,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) - #define HAS_X_MIN 1 +#if _USE_STOP(X,,MIN,) + #define USE_X_MIN 1 #endif -#if _HAS_STOP(X,MAX) - #define HAS_X_MAX 1 -#else - #if !PIN_EXISTS(X_MAX) - //#error "X_MAX Pin Doesnt Exist." - #endif - #if IS_PROBE_PIN(X,MAX) - #error "X_MAX Pin Used for Probe." - #endif - #if IS_X2_ENDSTOP(X,MAX) - #error "X_MAX Pin Used for X2 ES." - #endif - #if IS_Y2_ENDSTOP(X,MAX) - #error "X_MAX Pin Used for Y2 ES." - #endif - #if IS_Z2_ENDSTOP(X,MAX) - #error "X_MAX Pin Used for Z2 ES." - #endif - #if IS_Z3_ENDSTOP(X,MAX) - #error "X_MAX Pin Used for Z3 ES." - #endif - #if IS_Z4_ENDSTOP(X,MAX) - #error "X_MAX Pin Used for Z4 ES." - #endif +#if _USE_STOP(X,,MAX,ENABLED(DUAL_X_CARRIAGE)) + #define USE_X_MAX 1 #endif -#if _HAS_STOP(Y,MIN) - #define HAS_Y_MIN 1 +#if _HAS_STATE(X,,MIN) + #define HAS_X_MIN_STATE 1 #endif -#if _HAS_STOP(Y,MAX) - #define HAS_Y_MAX 1 +#if _HAS_STATE(X,,MAX) + #define HAS_X_MAX_STATE 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 +#if HAS_X_MIN_STATE || HAS_X_MAX_STATE + #define HAS_X_STATE 1 #endif -#if HAS_BED_PROBE && PIN_EXISTS(Z_MIN_PROBE) - #define HAS_Z_MIN_PROBE_PIN 1 +#if _USE_STOP(Y,,MIN,) + #define USE_Y_MIN 1 +#endif +#if _USE_STOP(Y,,MAX,) + #define USE_Y_MAX 1 +#endif +#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 -#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 +#if _USE_STOP(Z,,MIN,ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)) + #define USE_Z_MIN 1 +#endif +#if _USE_STOP(Z,,MAX,) + #define USE_Z_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(I,,MAX,) + #define USE_I_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(J,,MAX,) + #define USE_J_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(K,,MAX,) + #define USE_K_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(U,,MAX,) + #define USE_U_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(V,,MAX,) + #define USE_V_MAX 1 +#endif +#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 +#endif +#if _USE_STOP(W,,MAX,) + #define USE_W_MAX 1 +#endif +#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 ENABLED(X_DUAL_ENDSTOPS) + #if _USE_STOP(X,2,MIN,) + #define USE_X2_MIN 1 + #endif + #if _USE_STOP(X,2,MAX,) + #define USE_X2_MAX 1 + #endif + #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 + #endif + #if _USE_STOP(Y,2,MAX,) + #define USE_Y2_MAX 1 + #endif + #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 + #endif + #if _USE_STOP(Z,2,MAX,) + #define USE_Z2_MAX 1 + #endif + #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 + #endif + #if _USE_STOP(Z,3,MAX,) + #define USE_Z3_MAX 1 + #endif + #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 + #endif + #if _USE_STOP(Z,4,MAX,) + #define USE_Z4_MAX 1 + #endif + #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 + +/** + * Set ENDSTOPPULLUPS for active endstop switches + */ +#if ENABLED(ENDSTOPPULLUPS) + #if USE_X_MIN + #define ENDSTOPPULLUP_XMIN + #endif + #if USE_X_MAX + #define ENDSTOPPULLUP_XMAX + #endif + #if USE_Y_MIN + #define ENDSTOPPULLUP_YMIN + #endif + #if USE_Y_MAX + #define ENDSTOPPULLUP_YMAX + #endif + #if USE_Z_MIN + #define ENDSTOPPULLUP_ZMIN + #endif + #if USE_Z_MAX + #define ENDSTOPPULLUP_ZMAX + #endif + #if USE_I_MIN + #define ENDSTOPPULLUP_IMIN + #endif + #if USE_I_MAX + #define ENDSTOPPULLUP_IMAX + #endif + #if USE_J_MIN + #define ENDSTOPPULLUP_JMIN + #endif + #if USE_J_MAX + #define ENDSTOPPULLUP_JMAX + #endif + #if USE_K_MIN + #define ENDSTOPPULLUP_KMIN + #endif + #if USE_K_MAX + #define ENDSTOPPULLUP_KMAX + #endif + #if USE_U_MIN + #define ENDSTOPPULLUP_UMIN + #endif + #if USE_U_MAX + #define ENDSTOPPULLUP_UMAX + #endif + #if USE_V_MIN + #define ENDSTOPPULLUP_VMIN + #endif + #if USE_V_MAX + #define ENDSTOPPULLUP_VMAX + #endif + #if USE_W_MIN + #define ENDSTOPPULLUP_WMIN + #endif + #if USE_W_MAX + #define ENDSTOPPULLUP_WMAX + #endif +#endif + +/** + * Set ENDSTOPPULLDOWNS for active endstop switches + */ +#if ENABLED(ENDSTOPPULLDOWNS) + #if USE_X_MIN + #define ENDSTOPPULLDOWN_XMIN + #endif + #if USE_X_MAX + #define ENDSTOPPULLDOWN_XMAX + #endif + #if USE_Y_MIN + #define ENDSTOPPULLDOWN_YMIN + #endif + #if USE_Y_MAX + #define ENDSTOPPULLDOWN_YMAX + #endif + #if USE_Z_MIN + #define ENDSTOPPULLDOWN_ZMIN + #endif + #if USE_Z_MAX + #define ENDSTOPPULLDOWN_ZMAX + #endif + #if USE_I_MIN + #define ENDSTOPPULLDOWN_IMIN + #endif + #if USE_I_MAX + #define ENDSTOPPULLDOWN_IMAX + #endif + #if USE_J_MIN + #define ENDSTOPPULLDOWN_JMIN + #endif + #if USE_J_MAX + #define ENDSTOPPULLDOWN_JMAX + #endif + #if USE_K_MIN + #define ENDSTOPPULLDOWN_KMIN + #endif + #if USE_K_MAX + #define ENDSTOPPULLDOWN_KMAX + #endif + #if USE_U_MIN + #define ENDSTOPPULLDOWN_UMIN + #endif + #if USE_U_MAX + #define ENDSTOPPULLDOWN_UMAX + #endif + #if USE_V_MIN + #define ENDSTOPPULLDOWN_VMIN + #endif + #if USE_V_MAX + #define ENDSTOPPULLDOWN_VMAX + #endif + #if USE_W_MIN + #define ENDSTOPPULLDOWN_WMIN + #endif + #if USE_W_MAX + #define ENDSTOPPULLDOWN_WMAX + #endif +#endif // // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface) @@ -2398,8 +2350,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 @@ -2413,11 +2368,14 @@ #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 -#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 @@ -2436,6 +2394,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 @@ -2483,10 +2444,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 @@ -2509,11 +2472,11 @@ #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 -#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 @@ -2529,17 +2492,18 @@ #endif #if ENABLED(DWIN_LCD_PROUI) - #if EITHER(PIDTEMP, PIDTEMPBED) - #define DWIN_PID_TUNE 1 + #if ANY(PIDTEMP, PIDTEMPBED) + #define PROUI_PID_TUNE 1 #endif - #if EITHER(DWIN_PID_TUNE, MPCTEMP) && 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 // 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 @@ -2547,10 +2511,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) @@ -2597,10 +2561,21 @@ #if ANY(HAS_AUTO_FAN_0, HAS_AUTO_FAN_1, HAS_AUTO_FAN_2, HAS_AUTO_FAN_3, HAS_AUTO_FAN_4, HAS_AUTO_FAN_5, HAS_AUTO_FAN_6, HAS_AUTO_FAN_7, HAS_AUTO_CHAMBER_FAN, HAS_AUTO_COOLER_FAN) #define HAS_AUTO_FAN 1 -#endif -#define _FANOVERLAP(A,B) (A##_AUTO_FAN_PIN == E##B##_AUTO_FAN_PIN) -#if HAS_AUTO_FAN && (_FANOVERLAP(CHAMBER,0) || _FANOVERLAP(CHAMBER,1) || _FANOVERLAP(CHAMBER,2) || _FANOVERLAP(CHAMBER,3) || _FANOVERLAP(CHAMBER,4) || _FANOVERLAP(CHAMBER,5) || _FANOVERLAP(CHAMBER,6) || _FANOVERLAP(CHAMBER,7)) - #define AUTO_CHAMBER_IS_E 1 + #define _FANOVERLAP(I,T) (T##_AUTO_FAN_PIN == E##I##_AUTO_FAN_PIN) + #if HAS_AUTO_CHAMBER_FAN + #define _CHFANOVERLAP(I) || _FANOVERLAP(I,CHAMBER) + #if (0 REPEAT(8, _CHFANOVERLAP)) + #define AUTO_CHAMBER_IS_E 1 + #endif + #undef _CHFANOVERLAP + #endif + #if HAS_AUTO_COOLER_FAN + #define _COFANOVERLAP(I) || _FANOVERLAP(I,COOLER) + #if (0 REPEAT(8, _COFANOVERLAP)) + #define AUTO_COOLER_IS_E 1 + #endif + #undef _COFANOVERLAP + #endif #endif // Fans check @@ -2645,6 +2620,27 @@ #if !HAS_AUTO_CHAMBER_FAN || AUTO_CHAMBER_IS_E #undef AUTO_POWER_CHAMBER_FAN #endif +#if !HAS_AUTO_COOLER_FAN || AUTO_COOLER_IS_E + #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 @@ -2653,19 +2649,15 @@ #define MAX_FANS 8 // Max supported fans #endif -#define _NOT_E_AUTO(N,F) (E##N##_AUTO_FAN_PIN != FAN##F##_PIN) -#define _HAS_FAN(F) (PIN_EXISTS(FAN##F) \ - && CONTROLLER_FAN_PIN != FAN##F##_PIN \ - && _NOT_E_AUTO(0,F) \ - && _NOT_E_AUTO(1,F) \ - && _NOT_E_AUTO(2,F) \ - && _NOT_E_AUTO(3,F) \ - && _NOT_E_AUTO(4,F) \ - && _NOT_E_AUTO(5,F) \ - && _NOT_E_AUTO(6,F) \ - && _NOT_E_AUTO(7,F) \ - && F < MAX_FANS) -#if PIN_EXISTS(FAN) +#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) \ + && !(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 #if _HAS_FAN(1) @@ -2697,7 +2689,7 @@ #endif /** - * Up to 3 PWM fans + * Up to 8 PWM fans */ #ifndef FAN_INVERTING #define FAN_INVERTING false @@ -2727,58 +2719,37 @@ #define HAS_FAN 1 #endif -/** - * Part Cooling fan multipliexer - */ #if PIN_EXISTS(FANMUX0) - #define HAS_FANMUX 1 + #define HAS_FANMUX 1 // Part Cooling fan multipliexer #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 +#if ANY(HAS_FAN, USE_CONTROLLER_FAN) + #ifndef FAN_OFF_PWM + #define FAN_OFF_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." -#endif - -/** - * Controller Fan Settings - */ -#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 - #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 + #ifndef FAN_MIN_PWM + #if FAN_OFF_PWM > 0 + #define FAN_MIN_PWM (FAN_OFF_PWM + 1) + #else + #define FAN_MIN_PWM 0 #endif - #else - #undef CONTROLLER_FAN_TRIGGER_TEMP #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 @@ -2851,54 +2822,24 @@ #define HAS_MICROSTEPS 1 #endif -/** - * Heater signal inversion defaults - */ - -#if HAS_HEATER_0 && !defined(HEATER_0_INVERTING) - #define HEATER_0_INVERTING false -#endif -#if HAS_HEATER_1 && !defined(HEATER_1_INVERTING) - #define HEATER_1_INVERTING false -#endif -#if HAS_HEATER_2 && !defined(HEATER_2_INVERTING) - #define HEATER_2_INVERTING false -#endif -#if HAS_HEATER_3 && !defined(HEATER_3_INVERTING) - #define HEATER_3_INVERTING false -#endif -#if HAS_HEATER_4 && !defined(HEATER_4_INVERTING) - #define HEATER_4_INVERTING false -#endif -#if HAS_HEATER_5 && !defined(HEATER_5_INVERTING) - #define HEATER_5_INVERTING false -#endif -#if HAS_HEATER_6 && !defined(HEATER_6_INVERTING) - #define HEATER_6_INVERTING false -#endif -#if HAS_HEATER_7 && !defined(HEATER_7_INVERTING) - #define HEATER_7_INVERTING false -#endif - /** * Helper Macros for heaters and extruder fan */ - -#define WRITE_HEATER_0P(v) WRITE(HEATER_0_PIN, (v) ^ HEATER_0_INVERTING) -#if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) - #define WRITE_HEATER_1(v) WRITE(HEATER_1_PIN, (v) ^ HEATER_1_INVERTING) +#define WRITE_HEATER_0P(v) WRITE(HEATER_0_PIN, (v) ^ ENABLED(HEATER_0_INVERTING)) +#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) ^ HEATER_2_INVERTING) + #define WRITE_HEATER_2(v) WRITE(HEATER_2_PIN, (v) ^ ENABLED(HEATER_2_INVERTING)) #if HOTENDS > 3 - #define WRITE_HEATER_3(v) WRITE(HEATER_3_PIN, (v) ^ HEATER_3_INVERTING) + #define WRITE_HEATER_3(v) WRITE(HEATER_3_PIN, (v) ^ ENABLED(HEATER_3_INVERTING)) #if HOTENDS > 4 - #define WRITE_HEATER_4(v) WRITE(HEATER_4_PIN, (v) ^ HEATER_4_INVERTING) + #define WRITE_HEATER_4(v) WRITE(HEATER_4_PIN, (v) ^ ENABLED(HEATER_4_INVERTING)) #if HOTENDS > 5 - #define WRITE_HEATER_5(v) WRITE(HEATER_5_PIN, (v) ^ HEATER_5_INVERTING) + #define WRITE_HEATER_5(v) WRITE(HEATER_5_PIN, (v) ^ ENABLED(HEATER_5_INVERTING)) #if HOTENDS > 6 - #define WRITE_HEATER_6(v) WRITE(HEATER_6_PIN, (v) ^ HEATER_6_INVERTING) + #define WRITE_HEATER_6(v) WRITE(HEATER_6_PIN, (v) ^ ENABLED(HEATER_6_INVERTING)) #if HOTENDS > 7 - #define WRITE_HEATER_7(v) WRITE(HEATER_7_PIN, (v) ^ HEATER_7_INVERTING) + #define WRITE_HEATER_7(v) WRITE(HEATER_7_PIN, (v) ^ ENABLED(HEATER_7_INVERTING)) #endif // HOTENDS > 7 #endif // HOTENDS > 6 #endif // HOTENDS > 5 @@ -2912,10 +2853,6 @@ #define WRITE_HEATER_0(v) WRITE_HEATER_0P(v) #endif -#ifndef MIN_POWER - #define MIN_POWER 0 -#endif - /** * Heated bed requires settings */ @@ -2926,10 +2863,7 @@ #ifndef MAX_BED_POWER #define MAX_BED_POWER 255 #endif - #ifndef HEATER_BED_INVERTING - #define HEATER_BED_INVERTING false - #endif - #define WRITE_HEATER_BED(v) WRITE(HEATER_BED_PIN, (v) ^ HEATER_BED_INVERTING) + #define WRITE_HEATER_BED(v) WRITE(HEATER_BED_PIN, (v) ^ ENABLED(HEATER_BED_INVERTING)) #endif /** @@ -2942,10 +2876,7 @@ #ifndef MAX_CHAMBER_POWER #define MAX_CHAMBER_POWER 255 #endif - #ifndef HEATER_CHAMBER_INVERTING - #define HEATER_CHAMBER_INVERTING false - #endif - #define WRITE_HEATER_CHAMBER(v) WRITE(HEATER_CHAMBER_PIN, (v) ^ HEATER_CHAMBER_INVERTING) + #define WRITE_HEATER_CHAMBER(v) WRITE(HEATER_CHAMBER_PIN, (v) ^ ENABLED(HEATER_CHAMBER_INVERTING)) #endif /** @@ -2955,10 +2886,7 @@ #ifndef MAX_COOLER_POWER #define MAX_COOLER_POWER 255 #endif - #ifndef COOLER_INVERTING - #define COOLER_INVERTING true - #endif - #define WRITE_HEATER_COOLER(v) WRITE(COOLER_PIN, (v) ^ COOLER_INVERTING) + #define WRITE_HEATER_COOLER(v) WRITE(COOLER_PIN, (v) ^ ENABLED(COOLER_INVERTING)) #endif #if HAS_HOTEND || HAS_HEATED_BED || HAS_HEATED_CHAMBER || HAS_COOLER @@ -3011,7 +2939,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 @@ -3020,7 +2948,7 @@ #endif #endif #if HAS_BED_PROBE - #if BOTH(ENDSTOPPULLUPS, HAS_Z_MIN_PROBE_PIN) + #if ALL(ENDSTOPPULLUPS, USE_Z_MIN_PROBE) #define ENDSTOPPULLUP_ZMIN_PROBE #endif #ifndef XY_PROBE_FEEDRATE @@ -3078,16 +3006,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) @@ -3098,7 +3026,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 @@ -3184,19 +3112,19 @@ /** * 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!") // so that may be added to SanityCheck.h in the future. - #define _MESH_MIN_X (X_MIN_BED + MESH_INSET) - #define _MESH_MIN_Y (Y_MIN_BED + MESH_INSET) + #define _MESH_MIN_X (X_MIN_BED + (MESH_INSET)) + #define _MESH_MIN_Y (Y_MIN_BED + (MESH_INSET)) #define _MESH_MAX_X (X_MAX_BED - (MESH_INSET)) #define _MESH_MAX_Y (Y_MAX_BED - (MESH_INSET)) #else // Boundaries for Cartesian probing based on set limits - #define _MESH_MIN_X (_MAX(X_MIN_BED + MESH_INSET, X_MIN_POS)) // UBL is careful not to probe off the bed. It does not - #define _MESH_MIN_Y (_MAX(Y_MIN_BED + MESH_INSET, Y_MIN_POS)) // need NOZZLE_TO_PROBE_OFFSET in the mesh dimensions + #define _MESH_MIN_X (_MAX(X_MIN_BED + (MESH_INSET), X_MIN_POS)) // UBL is careful not to probe off the bed. It doesn't + #define _MESH_MIN_Y (_MAX(Y_MIN_BED + (MESH_INSET), Y_MIN_POS)) // need NOZZLE_TO_PROBE_OFFSET in the mesh dimensions. #define _MESH_MAX_X (_MIN(X_MAX_BED - (MESH_INSET), X_MAX_POS)) #define _MESH_MAX_Y (_MIN(Y_MAX_BED - (MESH_INSET), Y_MAX_POS)) #endif @@ -3221,13 +3149,9 @@ #undef MESH_MAX_Y #endif -#define _POINT_COUNT (defined(PROBE_PT_1_X) + defined(PROBE_PT_2_X) + defined(PROBE_PT_3_X) + defined(PROBE_PT_1_Y) + defined(PROBE_PT_2_Y) + defined(PROBE_PT_3_Y)) -#if _POINT_COUNT == 6 - #define HAS_FIXED_3POINT 1 -#elif _POINT_COUNT > 0 - #error "For 3-Point Leveling all XY points must be defined (or none for the defaults)." +#if NEEDS_THREE_PROBE_POINTS && defined(PROBE_PT_1) + #define HAS_FIXED_3POINT 1 // Points are defined for ABL/UBL. Else calculated in probe.get_three_points. #endif -#undef _POINT_COUNT /** * Buzzer/Speaker @@ -3238,7 +3162,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 @@ -3280,24 +3204,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 @@ -3309,7 +3233,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) @@ -3323,19 +3247,19 @@ #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 -#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 @@ -3360,15 +3284,35 @@ #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 MAX_VFAT_ENTRIES (5) -#else - #define MAX_VFAT_ENTRIES (2) +// 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 +#else + #define VFAT_ENTRIES_LIMIT 2 +#endif +#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 @@ -3379,14 +3323,17 @@ #if defined(TARGET_LPC1768) && IS_RRD_FG_SC && (SD_SCK_PIN == LCD_PINS_D4) #define SDCARD_SORT_ALPHA // Keep one directory level in RAM. Changing directory levels // may still glitch the screen, but LCD updates clean it up. - #undef SDSORT_LIMIT - #undef SDSORT_USES_RAM - #undef SDSORT_USES_STACK - #undef SDSORT_CACHE_NAMES - #define SDSORT_LIMIT 64 - #define SDSORT_USES_RAM true - #define SDSORT_USES_STACK false - #define SDSORT_CACHE_NAMES true + #if SDSORT_LIMIT > 64 || !SDSORT_USES_RAM || SDSORT_USES_STACK || !SDSORT_CACHE_NAMES + #undef SDSORT_LIMIT + #undef SDSORT_USES_RAM + #undef SDSORT_USES_STACK + #undef SDSORT_CACHE_NAMES + #define SDSORT_LIMIT 64 + #define SDSORT_USES_RAM true + #define SDSORT_USES_STACK false + #define SDSORT_CACHE_NAMES true + #define SDSORT_CACHE_LPC1768_WARNING 1 + #endif #ifndef FOLDER_SORTING #define FOLDER_SORTING -1 #endif @@ -3402,7 +3349,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/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index 8fdb4b9bae..8f6519dbaf 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -27,32 +27,37 @@ #include "MarlinConfigPre.h" -#ifndef __MARLIN_DEPS__ +#ifdef __MARLIN_DEPS__ + #include "../HAL/shared/fauxpins.h" +#else #include "../HAL/HAL.h" #endif #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" #include "../core/utility.h" + #include "../core/mstring.h" #include "../core/serial.h" + #include "../core/endianness.h" #endif diff --git a/Marlin/src/inc/MarlinConfigPre.h b/Marlin/src/inc/MarlinConfigPre.h index c090b7e37b..c2191ab1b7 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/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 1c44489209..aad4e86d1d 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!" @@ -89,607 +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_HOMING_HEIGHT." -#elif defined(MIN_Z_HEIGHT_FOR_HOMING) - #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_HOMING_HEIGHT." -#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_MODE {HIGH}." - #else - #error "FIL_RUNOUT_INVERTING false is now FIL_RUNOUT_MODE {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(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 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." #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." +/** + * 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 -#undef _L6470 -#undef _L6474 -#undef _L6480 -#undef _POWERSTEP01 // Check AXIS_RELATIVE_MODES constexpr float arm[] = AXIS_RELATIVE_MODES; @@ -706,6 +127,35 @@ 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 + */ +#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 + */ +#if ENABLED(HEPHESTOS2_HEATED_BED_KIT) + #if TEMP_SENSOR_BED != 70 + #error "HEPHESTOS2_HEATED_BED_KIT requires TEMP_SENSOR_BED 70." + #elif DISABLED(HEATER_BED_INVERTING) + #error "HEPHESTOS2_HEATED_BED_KIT requires HEATER_BED_INVERTING." + #endif +#endif + /** * Probe temp compensation requirements */ @@ -776,27 +226,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 */ @@ -828,15 +257,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_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 #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." @@ -848,11 +275,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 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."); + #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 /** @@ -874,45 +307,45 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -931,7 +364,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)." @@ -949,7 +382,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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) @@ -981,7 +414,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 @@ -990,7 +423,9 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * SD File Sorting */ #if ENABLED(SDCARD_SORT_ALPHA) - #if SDSORT_LIMIT > 256 + #if NONE(EXTENSIBLE_UI, HAS_MARLINUI_MENU, DWIN_CREALITY_LCD, DWIN_CREALITY_LCD_JYERSUI, DWIN_LCD_PROUI) + #error "SDCARD_SORT_ALPHA requires an LCD that supports it. (It doesn't apply to M20, etc.)" + #elif SDSORT_LIMIT > 256 #error "SDSORT_LIMIT must be 256 or smaller." #elif SDSORT_LIMIT < 10 #error "SDSORT_LIMIT should be greater than 9 to be useful." @@ -1005,23 +440,29 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if ENABLED(SDSORT_CACHE_NAMES) && DISABLED(SDSORT_DYNAMIC_RAM) #if SDSORT_CACHE_VFATS < 2 #error "SDSORT_CACHE_VFATS must be 2 or greater!" - #elif SDSORT_CACHE_VFATS > MAX_VFAT_ENTRIES + #elif SDSORT_CACHE_VFATS > VFAT_ENTRIES_LIMIT #undef SDSORT_CACHE_VFATS - #define SDSORT_CACHE_VFATS MAX_VFAT_ENTRIES - #warning "SDSORT_CACHE_VFATS was reduced to MAX_VFAT_ENTRIES!" + #define SDSORT_CACHE_VFATS VFAT_ENTRIES_LIMIT + #define SDSORT_CACHE_VFATS_WARNING 1 #endif #endif #endif +/** + * Custom Event G-code + */ #if defined(EVENT_GCODE_SD_ABORT) && DISABLED(NOZZLE_PARK_FEATURE) static_assert(nullptr == strstr(EVENT_GCODE_SD_ABORT, "G27"), "NOZZLE_PARK_FEATURE is required to use G27 in EVENT_GCODE_SD_ABORT."); #endif +#if ANY(TC_GCODE_USE_GLOBAL_X, TC_GCODE_USE_GLOBAL_Y, TC_GCODE_USE_GLOBAL_Z) && ENABLED(NO_WORKSPACE_OFFSETS) + #error "TC_GCODE_USE_GLOBAL_* options are incompatible with NO_WORKSPACE_OFFSETS." +#endif /** * 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." @@ -1034,21 +475,21 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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." - #elif ENABLED(BABYSTEP_ZPROBE_GFX_OVERLAY) && NONE(HAS_MARLINUI_U8GLIB, IS_DWIN_MARLINUI) - #error "BABYSTEP_ZPROBE_GFX_OVERLAY requires a Graphical LCD." - #elif ENABLED(BABYSTEP_ZPROBE_GFX_OVERLAY) && DISABLED(BABYSTEP_ZPROBE_OFFSET) - #error "BABYSTEP_ZPROBE_GFX_OVERLAY requires a BABYSTEP_ZPROBE_OFFSET." + #elif ENABLED(BABYSTEP_GFX_OVERLAY) && NONE(HAS_MARLINUI_U8GLIB, IS_DWIN_MARLINUI) + #error "BABYSTEP_GFX_OVERLAY requires a Graphical LCD." + #elif ENABLED(BABYSTEP_GFX_OVERLAY) && DISABLED(BABYSTEP_ZPROBE_OFFSET) + #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." @@ -1086,21 +527,21 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 DISABLED(ADVANCED_PAUSE_FEATURE) static_assert(nullptr == strstr(FILAMENT_RUNOUT_SCRIPT, "M600"), "ADVANCED_PAUSE_FEATURE is required to use M600 with FILAMENT_RUNOUT_SENSOR."); @@ -1182,8 +623,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 @@ -1197,11 +638,11 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if ENABLED(NOZZLE_PARK_FEATURE) constexpr float npp[] = NOZZLE_PARK_POINT; - static_assert(COUNT(npp) == XYZ, "NOZZLE_PARK_POINT requires X, Y, and Z values."); + static_assert(COUNT(npp) == _MIN(NUM_AXES, XYZ), "NOZZLE_PARK_POINT requires coordinates for enabled axes, but only up to X,Y,Z."); constexpr xyz_pos_t npp_xyz = NOZZLE_PARK_POINT; static_assert(WITHIN(npp_xyz.x, X_MIN_POS, X_MAX_POS), "NOZZLE_PARK_POINT.X is out of bounds (X_MIN_POS, X_MAX_POS)."); - static_assert(WITHIN(npp_xyz.y, Y_MIN_POS, Y_MAX_POS), "NOZZLE_PARK_POINT.Y is out of bounds (Y_MIN_POS, Y_MAX_POS)."); - static_assert(WITHIN(npp_xyz.z, Z_MIN_POS, Z_MAX_POS), "NOZZLE_PARK_POINT.Z is out of bounds (Z_MIN_POS, Z_MAX_POS)."); + static_assert(TERN1(HAS_Y_AXIS, WITHIN(npp_xyz.y, Y_MIN_POS, Y_MAX_POS)), "NOZZLE_PARK_POINT.Y is out of bounds (Y_MIN_POS, Y_MAX_POS)."); + static_assert(TERN1(HAS_Z_AXIS, WITHIN(npp_xyz.z, Z_MIN_POS, Z_MAX_POS)), "NOZZLE_PARK_POINT.Z is out of bounds (Z_MIN_POS, Z_MAX_POS)."); #endif /** @@ -1214,7 +655,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -1318,20 +759,34 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * A Dual Nozzle carriage with switching servo */ -#if ENABLED(SWITCHING_NOZZLE) - #if ENABLED(DUAL_X_CARRIAGE) +#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 + #error "MECHANICAL_SWITCHING_NOZZLE requires exactly 2 EXTRUDERS." + #elif ENABLED(DUAL_X_CARRIAGE) + #error "MECHANICAL_SWITCHING_NOZZLE and DUAL_X_CARRIAGE are incompatible." + #elif ENABLED(SINGLENOZZLE) + #error "MECHANICAL_SWITCHING_NOZZLE and SINGLENOZZLE are incompatible." + #elif HAS_PRUSA_MMU2 + #error "MECHANICAL_SWITCHING_NOZZLE and PRUSA_MMU2(S) are incompatible." + #elif !defined(EVENT_GCODE_TOOLCHANGE_T0) + #error "MECHANICAL_SWITCHING_NOZZLE requires EVENT_GCODE_TOOLCHANGE_T0." + #elif !defined(EVENT_GCODE_TOOLCHANGE_T1) + #error "MECHANICAL_SWITCHING_NOZZLE requires EVENT_GCODE_TOOLCHANGE_T1." + #endif +#elif ENABLED(SWITCHING_NOZZLE) + #if EXTRUDERS != 2 + #error "SWITCHING_NOZZLE requires exactly 2 EXTRUDERS." + #elif ENABLED(DUAL_X_CARRIAGE) #error "SWITCHING_NOZZLE and DUAL_X_CARRIAGE are incompatible." #elif ENABLED(SINGLENOZZLE) #error "SWITCHING_NOZZLE and SINGLENOZZLE are incompatible." #elif HAS_PRUSA_MMU2 #error "SWITCHING_NOZZLE and PRUSA_MMU2(S) are incompatible." - #elif EXTRUDERS != 2 - #error "SWITCHING_NOZZLE requires exactly 2 EXTRUDERS." #elif NUM_SERVOS < 1 #error "SWITCHING_NOZZLE requires NUM_SERVOS >= 1." - #endif - - #ifndef SWITCHING_NOZZLE_SERVO_NR + #elif !defined(SWITCHING_NOZZLE_SERVO_NR) #error "SWITCHING_NOZZLE requires SWITCHING_NOZZLE_SERVO_NR." #elif SWITCHING_NOZZLE_SERVO_NR == 0 && !PIN_EXISTS(SERVO0) #error "SERVO0_PIN must be defined for your SWITCHING_NOZZLE." @@ -1342,7 +797,6 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif SWITCHING_NOZZLE_SERVO_NR == 3 && !PIN_EXISTS(SERVO3) #error "SERVO3_PIN must be defined for your SWITCHING_NOZZLE." #endif - #ifdef SWITCHING_NOZZLE_E1_SERVO_NR #if SWITCHING_NOZZLE_E1_SERVO_NR == SWITCHING_NOZZLE_SERVO_NR #error "SWITCHING_NOZZLE_E1_SERVO_NR must be different from SWITCHING_NOZZLE_SERVO_NR." @@ -1356,14 +810,26 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "SERVO3_PIN must be defined for your SWITCHING_NOZZLE." #endif #endif -#endif +#endif // SWITCHING_NOZZLE /** * Single Stepper Dual Extruder with switching servo */ -#if ENABLED(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 + #error "MECHANICAL_SWITCHING_EXTRUDER requires EXTRUDERS >= 2." + #elif !defined(EVENT_GCODE_TOOLCHANGE_T0) + #error "MECHANICAL_SWITCHING_EXTRUDER requires EVENT_GCODE_TOOLCHANGE_T0." + #elif !defined(EVENT_GCODE_TOOLCHANGE_T1) + #error "MECHANICAL_SWITCHING_EXTRUDER requires EVENT_GCODE_TOOLCHANGE_T1." + #endif +#elif ENABLED(SWITCHING_EXTRUDER) #if NUM_SERVOS < 1 #error "SWITCHING_EXTRUDER requires NUM_SERVOS >= 1." + #elif !defined(SWITCHING_EXTRUDER_SERVO_NR) + #error "SWITCHING_EXTRUDER requires SWITCHING_EXTRUDER_SERVO_NR." #elif SWITCHING_EXTRUDER_SERVO_NR == 0 && !PIN_EXISTS(SERVO0) #error "SERVO0_PIN must be defined for your SWITCHING_EXTRUDER." #elif SWITCHING_EXTRUDER_SERVO_NR == 1 && !PIN_EXISTS(SERVO1) @@ -1387,8 +853,10 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif SWITCHING_EXTRUDER_E23_SERVO_NR == SWITCHING_EXTRUDER_SERVO_NR #error "SWITCHING_EXTRUDER_E23_SERVO_NR should be a different extruder from SWITCHING_EXTRUDER_SERVO_NR." #endif + #elif EXTRUDERS < 2 + #error "SWITCHING_EXTRUDER requires EXTRUDERS >= 2." #endif -#endif +#endif // SWITCHING_EXTRUDER /** * Mixing Extruder requirements @@ -1400,12 +868,14 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "You must set MIXING_STEPPERS >= 2 for a mixing extruder." #elif ENABLED(FILAMENT_WIDTH_SENSOR) #error "MIXING_EXTRUDER is incompatible with FILAMENT_WIDTH_SENSOR. Comment out this line to use it anyway." - #elif ENABLED(SWITCHING_EXTRUDER) - #error "Please select either MIXING_EXTRUDER or SWITCHING_EXTRUDER, not both." + #elif HAS_SWITCHING_EXTRUDER + #error "MIXING_EXTRUDER is incompatible with (MECHANICAL_)SWITCHING_EXTRUDER." #elif ENABLED(SINGLENOZZLE) #error "MIXING_EXTRUDER is incompatible with SINGLENOZZLE." - #elif ENABLED(DISABLE_INACTIVE_EXTRUDER) - #error "MIXING_EXTRUDER is incompatible with DISABLE_INACTIVE_EXTRUDER." + #elif ENABLED(DISABLE_OTHER_EXTRUDERS) + #error "MIXING_EXTRUDER is incompatible with DISABLE_OTHER_EXTRUDERS." + #elif HAS_FILAMENT_RUNOUT_DISTANCE + #error "MIXING_EXTRUDER is incompatible with FILAMENT_RUNOUT_DISTANCE_MM." #endif #endif @@ -1417,8 +887,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "E_DUAL_STEPPER_DRIVERS can only be used with EXTRUDERS set to 1." #elif ENABLED(MIXING_EXTRUDER) #error "E_DUAL_STEPPER_DRIVERS is incompatible with MIXING_EXTRUDER." - #elif ENABLED(SWITCHING_EXTRUDER) - #error "E_DUAL_STEPPER_DRIVERS is incompatible with SWITCHING_EXTRUDER." + #elif HAS_SWITCHING_EXTRUDER + #error "E_DUAL_STEPPER_DRIVERS is incompatible with (MECHANICAL_)SWITCHING_EXTRUDER." #endif #endif @@ -1453,7 +923,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * (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 @@ -1511,7 +981,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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) @@ -1537,14 +1007,19 @@ 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 +// 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 */ @@ -1576,12 +1051,16 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 + #undef MPC_EDIT_MENU + #undef MPC_AUTOTUNE_MENU #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 @@ -1596,12 +1075,12 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 -// 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 @@ -1619,7 +1098,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -1639,18 +1118,18 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif /** - * Features that require a min/max/specific NUM_AXES + * Features that require a min/max/specific steppers / axes to be enabled. */ #if HAS_LEVELING && !HAS_Z_AXIS #error "Leveling in Marlin requires three or more axes, with Z as the vertical axis." #elif ENABLED(CNC_WORKSPACE_PLANES) && !HAS_Z_AXIS - #error "CNC_WORKSPACE_PLANES currently requires NUM_AXES >= 3" + #error "CNC_WORKSPACE_PLANES currently requires a Z axis" #elif ENABLED(DIRECT_STEPPING) && NUM_AXES > XYZ - #error "DIRECT_STEPPING currently requires NUM_AXES 3" -#elif ENABLED(FOAMCUTTER_XYUV) && NUM_AXES < 5 - #error "FOAMCUTTER_XYUV requires NUM_AXES >= 5." + #error "DIRECT_STEPPING does not currently support more than 3 axes (i.e., XYZ)." +#elif ENABLED(FOAMCUTTER_XYUV) && !(HAS_I_AXIS && HAS_J_AXIS) + #error "FOAMCUTTER_XYUV requires I and J steppers to be enabled." #elif ENABLED(LINEAR_ADVANCE) && HAS_I_AXIS - #error "LINEAR_ADVANCE currently requires NUM_AXES <= 3." + #error "LINEAR_ADVANCE does not currently support the inclusion of an I axis." #endif /** @@ -1658,11 +1137,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS */ #if HAS_I_AXIS #if !defined(I_MIN_POS) || !defined(I_MAX_POS) - #error "I_MIN_POS and I_MAX_POS are required with NUM_AXES >= 4." + #error "I_MIN_POS and I_MAX_POS are required for the I axis." #elif !defined(I_HOME_DIR) - #error "I_HOME_DIR is required with NUM_AXES >= 4." + #error "I_HOME_DIR is required for the I axis." #elif HAS_I_ENABLE && !defined(I_ENABLE_ON) - #error "I_ENABLE_ON is required for your I driver with NUM_AXES >= 4." + #error "I_ENABLE_ON is required for the I stepper." + #elif !defined(INVERT_I_DIR) + #error "INVERT_I_DIR is required for the I stepper." #endif #endif #if HAS_J_AXIS @@ -1671,11 +1152,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif ENABLED(AXIS5_ROTATES) && DISABLED(AXIS4_ROTATES) #error "AXIS5_ROTATES requires AXIS4_ROTATES." #elif !defined(J_MIN_POS) || !defined(J_MAX_POS) - #error "J_MIN_POS and J_MAX_POS are required with NUM_AXES >= 5." + #error "J_MIN_POS and J_MAX_POS are required for the J axis." #elif !defined(J_HOME_DIR) - #error "J_HOME_DIR is required with NUM_AXES >= 5." + #error "J_HOME_DIR is required for the J axis." #elif HAS_J_ENABLE && !defined(J_ENABLE_ON) - #error "J_ENABLE_ON is required for your J driver with NUM_AXES >= 5." + #error "J_ENABLE_ON is required for the J stepper." + #elif !defined(INVERT_J_DIR) + #error "INVERT_J_DIR is required for the J stepper." #endif #endif #if HAS_K_AXIS @@ -1684,11 +1167,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif ENABLED(AXIS6_ROTATES) && DISABLED(AXIS5_ROTATES) #error "AXIS6_ROTATES requires AXIS5_ROTATES." #elif !defined(K_MIN_POS) || !defined(K_MAX_POS) - #error "K_MIN_POS and K_MAX_POS are required with NUM_AXES >= 6." + #error "K_MIN_POS and K_MAX_POS are required for the K axis." #elif !defined(K_HOME_DIR) - #error "K_HOME_DIR is required with NUM_AXES >= 6." + #error "K_HOME_DIR is required for the K axis." #elif HAS_K_ENABLE && !defined(K_ENABLE_ON) - #error "K_ENABLE_ON is required for your K driver with NUM_AXES >= 6." + #error "K_ENABLE_ON is required for the K stepper." + #elif !defined(INVERT_K_DIR) + #error "INVERT_K_DIR is required for the K stepper." #endif #endif #if HAS_U_AXIS @@ -1697,11 +1182,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif ENABLED(AXIS7_ROTATES) && DISABLED(AXIS6_ROTATES) #error "AXIS7_ROTATES requires AXIS6_ROTATES." #elif !defined(U_MIN_POS) || !defined(U_MAX_POS) - #error "U_MIN_POS and U_MAX_POS are required with NUM_AXES >= 7." + #error "U_MIN_POS and U_MAX_POS are required for the U axis." #elif !defined(U_HOME_DIR) - #error "U_HOME_DIR is required with NUM_AXES >= 7." + #error "U_HOME_DIR is required for the U axis." #elif HAS_U_ENABLE && !defined(U_ENABLE_ON) - #error "U_ENABLE_ON is required for your U driver with NUM_AXES >= 7." + #error "U_ENABLE_ON is required for the U stepper." + #elif !defined(INVERT_U_DIR) + #error "INVERT_U_DIR is required for the U stepper." #endif #endif #if HAS_V_AXIS @@ -1710,11 +1197,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif ENABLED(AXIS8_ROTATES) && DISABLED(AXIS7_ROTATES) #error "AXIS8_ROTATES requires AXIS7_ROTATES." #elif !defined(V_MIN_POS) || !defined(V_MAX_POS) - #error "V_MIN_POS and V_MAX_POS are required with NUM_AXES >= 8." + #error "V_MIN_POS and V_MAX_POS are required for the V axis." #elif !defined(V_HOME_DIR) - #error "V_HOME_DIR is required with NUM_AXES >= 8." + #error "V_HOME_DIR is required for the V axis." #elif HAS_V_ENABLE && !defined(V_ENABLE_ON) - #error "V_ENABLE_ON is required for your V driver with NUM_AXES >= 8." + #error "V_ENABLE_ON is required for the V stepper." + #elif !defined(INVERT_V_DIR) + #error "INVERT_V_DIR is required for the V stepper." #endif #endif #if HAS_W_AXIS @@ -1723,11 +1212,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #elif ENABLED(AXIS9_ROTATES) && DISABLED(AXIS8_ROTATES) #error "AXIS9_ROTATES requires AXIS8_ROTATES." #elif !defined(W_MIN_POS) || !defined(W_MAX_POS) - #error "W_MIN_POS and W_MAX_POS are required with NUM_AXES >= 9." + #error "W_MIN_POS and W_MAX_POS are required for the W axis." #elif !defined(W_HOME_DIR) - #error "W_HOME_DIR is required with NUM_AXES >= 9." + #error "W_HOME_DIR is required for the W axis." #elif HAS_W_ENABLE && !defined(W_ENABLE_ON) - #error "W_ENABLE_ON is required for your W driver with NUM_AXES >= 9." + #error "W_ENABLE_ON is required for the W stepper." + #elif !defined(INVERT_W_DIR) + #error "INVERT_W_DIR is required for the W stepper." #endif #endif @@ -1773,7 +1264,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -1795,7 +1286,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -1841,7 +1332,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -1853,16 +1344,22 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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." #endif #endif - #if ENABLED(BLTOUCH_HS_MODE) && BLTOUCH_HS_MODE == 0 - #error "BLTOUCH_HS_MODE must now be defined as true or false, indicating the default state." + #if HAS_BLTOUCH_HS_MODE + constexpr char hs[] = STRINGIFY(BLTOUCH_HS_MODE); + 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 #endif + #if BLTOUCH_DELAY < 200 #error "BLTOUCH_DELAY less than 200 is unsafe and is not supported." #endif @@ -1872,19 +1369,19 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif #if ENABLED(INVERTED_PROBE_STATE) - #if !Z_MIN_PROBE_ENDSTOP_INVERTING - #error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_INVERTING set to true." + #if Z_MIN_PROBE_ENDSTOP_HIT_STATE != LOW + #error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_HIT_STATE LOW." #endif - #elif Z_MIN_PROBE_ENDSTOP_INVERTING - #error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_INVERTING set to false." + #elif Z_MIN_PROBE_ENDSTOP_HIT_STATE != HIGH + #error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_HIT_STATE HIGH." #endif #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) #if ENABLED(INVERTED_PROBE_STATE) - #if !Z_MIN_ENDSTOP_INVERTING - #error "BLTOUCH requires Z_MIN_ENDSTOP_INVERTING set to true." + #if Z_MIN_ENDSTOP_HIT_STATE != LOW + #error "BLTOUCH requires Z_MIN_ENDSTOP_HIT_STATE LOW." #endif - #elif Z_MIN_ENDSTOP_INVERTING - #error "BLTOUCH requires Z_MIN_ENDSTOP_INVERTING set to false." + #elif Z_MIN_ENDSTOP_HIT_STATE != HIGH + #error "BLTOUCH requires Z_MIN_ENDSTOP_HIT_STATE HIGH." #endif #endif @@ -1904,27 +1401,27 @@ 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 #error "TOUCH_MI_PROBE currently requires an LCD controller or EMERGENCY_PARSER." #endif #if ENABLED(INVERTED_PROBE_STATE) - #if !Z_MIN_PROBE_ENDSTOP_INVERTING - #error "TOUCH_MI_PROBE requires Z_MIN_PROBE_ENDSTOP_INVERTING set to true." + #if Z_MIN_PROBE_ENDSTOP_HIT_STATE != LOW + #error "TOUCH_MI_PROBE requires Z_MIN_PROBE_ENDSTOP_HIT_STATE LOW." #endif - #elif Z_MIN_PROBE_ENDSTOP_INVERTING - #error "TOUCH_MI_PROBE requires Z_MIN_PROBE_ENDSTOP_INVERTING set to false." + #elif Z_MIN_PROBE_ENDSTOP_HIT_STATE != HIGH + #error "TOUCH_MI_PROBE requires Z_MIN_PROBE_ENDSTOP_HIT_STATE HIGH." #endif #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) #if ENABLED(INVERTED_PROBE_STATE) - #if !Z_MIN_ENDSTOP_INVERTING - #error "TOUCH_MI_PROBE requires Z_MIN_ENDSTOP_INVERTING set to true." + #if Z_MIN_ENDSTOP_HIT_STATE != LOW + #error "TOUCH_MI_PROBE requires Z_MIN_ENDSTOP_HIT_STATE LOW." #endif - #elif Z_MIN_ENDSTOP_INVERTING - #error "TOUCH_MI_PROBE requires Z_MIN_ENDSTOP_INVERTING set to false." + #elif Z_MIN_ENDSTOP_HIT_STATE != HIGH + #error "TOUCH_MI_PROBE requires Z_MIN_ENDSTOP_HIT_STATE HIGH." #endif #endif #endif // TOUCH_MI_PROBE @@ -1932,7 +1429,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -1952,21 +1449,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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." - #elif !Z_SENSORLESS - #error "SENSORLESS_PROBING requires a TMC2130/2160/2209/5130/5160 driver on Z." - #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 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_INVERTING != Z_MIN_ENDSTOP_INVERTING - #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires Z_MIN_ENDSTOP_INVERTING to match Z_MIN_PROBE_ENDSTOP_INVERTING." + #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 !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 @@ -2082,8 +1571,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2097,6 +1586,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS */ #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) @@ -2110,6 +1601,12 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif +#define _POINT_COUNT (defined(PROBE_PT_1) + defined(PROBE_PT_2) + defined(PROBE_PT_3)) +#if _POINT_COUNT != 0 && _POINT_COUNT != 3 + #error "For 3-Point Procedures all XY points must be defined (or none for the defaults)." +#endif +#undef _POINT_COUNT + #if ALL(HAS_LEVELING, RESTORE_LEVELING_AFTER_G28, ENABLE_LEVELING_AFTER_G28) #error "Only enable RESTORE_LEVELING_AFTER_G28 or ENABLE_LEVELING_AFTER_G28, but not both." #endif @@ -2117,6 +1614,9 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2151,7 +1651,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2244,13 +1744,32 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS static_assert(WITHIN(Z_SAFE_HOMING_Y_POINT, Y_MIN_POS, Y_MAX_POS), "Z_SAFE_HOMING_Y_POINT can't be reached by the nozzle."); #endif +// Check Safe Bed Leveling settings +#if HAS_SAFE_BED_LEVELING + #if defined(SAFE_BED_LEVELING_START_Y) && !defined(SAFE_BED_LEVELING_START_X) + #error "If SAFE_BED_LEVELING_START_Y is defined, SAFE_BED_LEVELING_START_X must also be defined." + #elif defined(SAFE_BED_LEVELING_START_Z) && !defined(SAFE_BED_LEVELING_START_Y) + #error "If SAFE_BED_LEVELING_START_Z is defined, SAFE_BED_LEVELING_START_Y must also be defined." + #elif defined(SAFE_BED_LEVELING_START_I) && !defined(SAFE_BED_LEVELING_START_Z) + #error "If SAFE_BED_LEVELING_START_I is defined, SAFE_BED_LEVELING_START_Z must also be defined." + #elif defined(SAFE_BED_LEVELING_START_J) && !defined(SAFE_BED_LEVELING_START_I) + #error "If SAFE_BED_LEVELING_START_J is defined, SAFE_BED_LEVELING_START_I must also be defined." + #elif defined(SAFE_BED_LEVELING_START_K) && !defined(SAFE_BED_LEVELING_START_J) + #error "If SAFE_BED_LEVELING_START_K is defined, SAFE_BED_LEVELING_START_J must also be defined." + #elif defined(SAFE_BED_LEVELING_START_U) && !defined(SAFE_BED_LEVELING_START_K) + #error "If SAFE_BED_LEVELING_START_U is defined, SAFE_BED_LEVELING_START_K must also be defined." + #elif defined(SAFE_BED_LEVELING_START_V) && !defined(SAFE_BED_LEVELING_START_U) + #error "If SAFE_BED_LEVELING_START_V is defined, SAFE_BED_LEVELING_START_U must also be defined." + #elif defined(SAFE_BED_LEVELING_START_W) && !defined(SAFE_BED_LEVELING_START_V) + #error "If SAFE_BED_LEVELING_START_W is defined, SAFE_BED_LEVELING_START_V must also be defined." + #endif +#endif + /** * Make sure DISABLE_[XYZ] compatible with selected homing options */ -#if ANY(DISABLE_X, DISABLE_Y, DISABLE_Z, DISABLE_I, DISABLE_J, DISABLE_K, DISABLE_U, DISABLE_V, DISABLE_W) - #if EITHER(HOME_AFTER_DEACTIVATE, Z_SAFE_HOMING) - #error "DISABLE_[XYZIJKUVW] is not compatible with HOME_AFTER_DEACTIVATE or Z_SAFE_HOMING." - #endif +#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 /** @@ -2271,7 +1790,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2303,7 +1822,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2326,12 +1845,12 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 - #error "DUAL_X_CARRIAGE requires USE_XMAX_PLUG and an X Max Endstop." + #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 @@ -2342,21 +1861,21 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS */ #if HAS_AUTO_FAN #if HAS_FAN0 - #if PIN_EXISTS(E0_AUTO_FAN) && E0_AUTO_FAN_PIN == FAN_PIN - #error "You cannot set E0_AUTO_FAN_PIN equal to FAN_PIN." - #elif PIN_EXISTS(E1_AUTO_FAN) && E1_AUTO_FAN_PIN == FAN_PIN - #error "You cannot set E1_AUTO_FAN_PIN equal to FAN_PIN." - #elif PIN_EXISTS(E2_AUTO_FAN) && E2_AUTO_FAN_PIN == FAN_PIN - #error "You cannot set E2_AUTO_FAN_PIN equal to FAN_PIN." - #elif PIN_EXISTS(E3_AUTO_FAN) && E3_AUTO_FAN_PIN == FAN_PIN - #error "You cannot set E3_AUTO_FAN_PIN equal to FAN_PIN." + #if PIN_EXISTS(E0_AUTO_FAN) && E0_AUTO_FAN_PIN == FAN0_PIN + #error "You cannot set E0_AUTO_FAN_PIN equal to FAN0_PIN." + #elif PIN_EXISTS(E1_AUTO_FAN) && E1_AUTO_FAN_PIN == FAN0_PIN + #error "You cannot set E1_AUTO_FAN_PIN equal to FAN0_PIN." + #elif PIN_EXISTS(E2_AUTO_FAN) && E2_AUTO_FAN_PIN == FAN0_PIN + #error "You cannot set E2_AUTO_FAN_PIN equal to FAN0_PIN." + #elif PIN_EXISTS(E3_AUTO_FAN) && E3_AUTO_FAN_PIN == FAN0_PIN + #error "You cannot set E3_AUTO_FAN_PIN equal to FAN0_PIN." #endif #endif #endif #if HAS_FAN0 - #if CONTROLLER_FAN_PIN == FAN_PIN - #error "You cannot set CONTROLLER_FAN_PIN equal to FAN_PIN." + #if CONTROLLER_FAN_PIN == FAN0_PIN + #error "You cannot set CONTROLLER_FAN_PIN equal to FAN0_PIN." #elif ENABLED(FAN_SOFT_PWM_REQUIRED) && DISABLED(FAN_SOFT_PWM) #error "FAN_SOFT_PWM is required for your board. Enable it to continue." #endif @@ -2384,11 +1903,28 @@ 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 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) + #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." - #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 @@ -2398,8 +1934,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if NEED_CASE_LIGHT_PIN #if !PIN_EXISTS(CASE_LIGHT) #error "CASE_LIGHT_ENABLE requires CASE_LIGHT_PIN, CASE_LIGHT_USE_NEOPIXEL, or CASE_LIGHT_USE_RGB_LED." - #elif CASE_LIGHT_PIN == FAN_PIN - #error "CASE_LIGHT_PIN conflicts with FAN_PIN. Resolve before continuing." + #elif CASE_LIGHT_PIN == FAN0_PIN + #error "CASE_LIGHT_PIN conflicts with FAN0_PIN. Resolve before continuing." #endif #endif @@ -2516,6 +2052,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2544,6 +2082,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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) @@ -2558,94 +2098,125 @@ 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." +#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 == 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 + #error "TEMP_0_PIN or TEMP_0_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 !PIN_EXISTS(TEMP_2) && !TEMP_SENSOR_2_IS_DUMMY - #error "TEMP_2_PIN not defined for this board." + #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 + #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 > 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 == 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." + #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 == 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." + #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 == 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." + #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 == 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." + #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 == 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." + #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 == 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." + #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." +#endif /** * 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." @@ -2653,7 +2224,9 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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." @@ -2661,7 +2234,9 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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." @@ -2670,8 +2245,16 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 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." + #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)) @@ -2712,7 +2295,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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 @@ -2726,7 +2309,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -2747,8 +2330,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "MULTI_NOZZLE_DUPLICATION is incompatible with DUAL_X_CARRIAGE." #elif ENABLED(MIXING_EXTRUDER) #error "MULTI_NOZZLE_DUPLICATION is incompatible with MIXING_EXTRUDER." - #elif ENABLED(SWITCHING_EXTRUDER) - #error "MULTI_NOZZLE_DUPLICATION is incompatible with SWITCHING_EXTRUDER." + #elif HAS_SWITCHING_EXTRUDER + #error "MULTI_NOZZLE_DUPLICATION is incompatible with (MECHANICAL_)SWITCHING_EXTRUDER." #elif HOTENDS < 2 #error "MULTI_NOZZLE_DUPLICATION requires 2 or more hotends." #endif @@ -2762,8 +2345,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 @@ -2795,121 +2378,90 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * 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) - #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." +#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 -#if BOTH(HOME_Z_FIRST, USE_PROBE_FOR_Z_HOMING) +// 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 +#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) #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_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 !Y2_USE_ENDSTOP - #error "Y2_USE_ENDSTOP must be set with 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 !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_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 @@ -3008,45 +2560,30 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * Auto Fan check for PWM pins */ #if HAS_AUTO_FAN && EXTRUDER_AUTO_FAN_SPEED != 255 - #define AF_ERR_SUFF "_AUTO_FAN_PIN is not a PWM pin. Set EXTRUDER_AUTO_FAN_SPEED to 255." - #if HAS_AUTO_FAN_0 - static_assert(_TEST_PWM(E0_AUTO_FAN_PIN), "E0" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_1 - static_assert(_TEST_PWM(E1_AUTO_FAN_PIN), "E1" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_2 - static_assert(_TEST_PWM(E2_AUTO_FAN_PIN), "E2" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_3 - static_assert(_TEST_PWM(E3_AUTO_FAN_PIN), "E3" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_4 - static_assert(_TEST_PWM(E4_AUTO_FAN_PIN), "E4" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_5 - static_assert(_TEST_PWM(E5_AUTO_FAN_PIN), "E5" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_6 - static_assert(_TEST_PWM(E6_AUTO_FAN_PIN), "E6" AF_ERR_SUFF); - #elif HAS_AUTO_FAN_7 - static_assert(_TEST_PWM(E7_AUTO_FAN_PIN), "E7" AF_ERR_SUFF); - #endif + #define AF_ASSERT(N) OPTCODE(HAS_AUTO_FAN_##N, static_assert(_TEST_PWM(E##N##_AUTO_FAN_PIN), "E" STRINGIFY(N) "_AUTO_FAN_PIN is not a PWM pin. Set EXTRUDER_AUTO_FAN_SPEED to 255.")) + REPEAT(8, AF_ASSERT) + #undef AF_ASSERT #endif /** * 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) @@ -3072,14 +2609,13 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * Make sure features that need to write to the SD card can */ -#if ENABLED(SDCARD_READONLY) && ANY(POWER_LOSS_RECOVERY, BINARY_FILE_TRANSFER, SDCARD_EEPROM_EMULATION) - #undef SDCARD_READONLY +#if ENABLED(SDCARD_READONLY) #if ENABLED(POWER_LOSS_RECOVERY) - #warning "Either disable SDCARD_READONLY or disable POWER_LOSS_RECOVERY." + #error "Either disable SDCARD_READONLY or disable POWER_LOSS_RECOVERY." #elif ENABLED(BINARY_FILE_TRANSFER) - #warning "Either disable SDCARD_READONLY or disable BINARY_FILE_TRANSFER." + #error "Either disable SDCARD_READONLY or disable BINARY_FILE_TRANSFER." #elif ENABLED(SDCARD_EEPROM_EMULATION) - #warning "Either disable SDCARD_READONLY or disable SDCARD_EEPROM_EMULATION." + #error "Either disable SDCARD_READONLY or disable SDCARD_EEPROM_EMULATION." #endif #endif @@ -3105,14 +2641,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS + (ENABLED(EXTENSIBLE_UI) && DISABLED(IS_EXTUI)) \ + (DISABLED(IS_LEGACY_TFT) && ENABLED(TFT_GENERIC)) \ + (ENABLED(IS_LEGACY_TFT) && COUNT_ENABLED(TFT_320x240, TFT_320x240_SPI, TFT_480x320, TFT_480x320_SPI)) \ - + COUNT_ENABLED(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, ANYCUBIC_TFT35) \ + + COUNT_ENABLED(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, ANYCUBIC_TFT35, ANYCUBIC_LCD_VYPER) \ + DGUS_UI_IS(ORIGIN) + DGUS_UI_IS(FYSETC) + DGUS_UI_IS(HIPRECY) + DGUS_UI_IS(MKS) + DGUS_UI_IS(RELOADED) + DGUS_UI_IS(IA_CREALITY) \ + COUNT_ENABLED(ENDER2_STOCKDISPLAY, CR10_STOCKDISPLAY) \ + COUNT_ENABLED(DWIN_CREALITY_LCD, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI, DWIN_MARLINUI_PORTRAIT, DWIN_MARLINUI_LANDSCAPE, DGUS_LCD_UI_CREALITY_TOUCH) \ + 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) \ @@ -3163,7 +2700,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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) @@ -3175,10 +2713,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 ALL(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 @@ -3192,7 +2728,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 @@ -3201,14 +2737,14 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 #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)" @@ -3219,44 +2755,68 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif #endif -#if EITHER(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) && SD_CONNECTION_IS(LCD) +#if ENABLED(ANYCUBIC_LCD_VYPER) + 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 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 /** - * Ender 3 V2 controller has some limitations + * 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) + #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 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." - #elif EITHER(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." + #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 #if LCD_BACKLIGHT_TIMEOUT_MINS #if !HAS_ENCODER_ACTION #error "LCD_BACKLIGHT_TIMEOUT_MINS requires an LCD with encoder or keypad." + #elif ENABLED(NEOPIXEL_BKGD_INDEX_FIRST) + #if PIN_EXISTS(LCD_BACKLIGHT) + #error "LCD_BACKLIGHT_PIN and NEOPIXEL_BKGD_INDEX_FIRST are not supported at the same time." + #elif ENABLED(NEOPIXEL_BKGD_ALWAYS_ON) + #error "LCD_BACKLIGHT_TIMEOUT is not compatible with NEOPIXEL_BKGD_ALWAYS_ON." + #endif #elif !PIN_EXISTS(LCD_BACKLIGHT) - #error "LCD_BACKLIGHT_TIMEOUT_MINS requires LCD_BACKLIGHT_PIN." + #error "LCD_BACKLIGHT_TIMEOUT_MINS requires either LCD_BACKLIGHT_PIN or NEOPIXEL_BKGD_INDEX_FIRST." + #endif +#endif + +// Startup Tune requirements +#ifdef STARTUP_TUNE + #if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) + #error "STARTUP_TUNE should be disabled with ANYCUBIC_LCD_CHIRON or ANYCUBIC_LCD_VYPER." + #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 #endif @@ -3312,8 +2872,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #else #if HAS_DGUS_LCD #error "The DGUS LCD requires LCD_SERIAL_PORT to be defined." - #elif EITHER(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON) - #error "The ANYCUBIC LCD requires LCD_SERIAL_PORT to be defined." + #elif ANY(ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) + #error "ANYCUBIC_LCD_* requires LCD_SERIAL_PORT to be defined." #elif ENABLED(MALYAN_LCD) #error "MALYAN_LCD requires LCD_SERIAL_PORT to be defined." #elif ENABLED(NEXTION_LCD) @@ -3408,17 +2968,17 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "TMC2208 or TMC2209 on E6 requires E6_HARDWARE_SERIAL or E6_SERIAL_(RX|TX)_PIN." #elif INVALID_TMC_UART(E7) #error "TMC2208 or TMC2209 on E7 requires E7_HARDWARE_SERIAL or E7_SERIAL_(RX|TX)_PIN." -#elif HAS_I_AXIS && INVALID_TMC_UART(I) +#elif INVALID_TMC_UART(I) #error "TMC2208 or TMC2209 on I requires I_HARDWARE_SERIAL or I_SERIAL_(RX|TX)_PIN." -#elif HAS_J_AXIS && INVALID_TMC_UART(J) +#elif INVALID_TMC_UART(J) #error "TMC2208 or TMC2209 on J requires J_HARDWARE_SERIAL or J_SERIAL_(RX|TX)_PIN." -#elif HAS_K_AXIS && INVALID_TMC_UART(K) +#elif INVALID_TMC_UART(K) #error "TMC2208 or TMC2209 on K requires K_HARDWARE_SERIAL or K_SERIAL_(RX|TX)_PIN." -#elif HAS_U_AXIS && INVALID_TMC_UART(U) +#elif INVALID_TMC_UART(U) #error "TMC2208 or TMC2209 on U requires U_HARDWARE_SERIAL or U_SERIAL_(RX|TX)_PIN." -#elif HAS_V_AXIS && INVALID_TMC_UART(V) +#elif INVALID_TMC_UART(V) #error "TMC2208 or TMC2209 on V requires V_HARDWARE_SERIAL or V_SERIAL_(RX|TX)_PIN." -#elif HAS_W_AXIS && INVALID_TMC_UART(W) +#elif INVALID_TMC_UART(W) #error "TMC2208 or TMC2209 on W requires W_HARDWARE_SERIAL or W_SERIAL_(RX|TX)_PIN." #endif @@ -3511,17 +3071,17 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS INVALID_TMC_MS(E6) #elif !TMC_MICROSTEP_IS_VALID(E7) INVALID_TMC_MS(E7) -#elif HAS_I_AXIS && !TMC_MICROSTEP_IS_VALID(I) +#elif !TMC_MICROSTEP_IS_VALID(I) INVALID_TMC_MS(I) -#elif HAS_J_AXIS && !TMC_MICROSTEP_IS_VALID(J) +#elif !TMC_MICROSTEP_IS_VALID(J) INVALID_TMC_MS(J) -#elif HAS_K_AXIS && !TMC_MICROSTEP_IS_VALID(K) +#elif !TMC_MICROSTEP_IS_VALID(K) INVALID_TMC_MS(K) -#elif HAS_U_AXIS && !TMC_MICROSTEP_IS_VALID(U) +#elif !TMC_MICROSTEP_IS_VALID(U) INVALID_TMC_MS(U) -#elif HAS_V_AXIS && !TMC_MICROSTEP_IS_VALID(V) +#elif !TMC_MICROSTEP_IS_VALID(V) INVALID_TMC_MS(V) -#elif HAS_W_AXIS && !TMC_MICROSTEP_IS_VALID(W) +#elif !TMC_MICROSTEP_IS_VALID(W) INVALID_TMC_MS(W) #endif #undef INVALID_TMC_MS @@ -3538,188 +3098,218 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS // towers to +Z and the individual homing of each tower. This restriction can be removed once a means of // clearing the stallGuard activated status is found. - // Stall detection DIAG = HIGH : TMC2209 - // Stall detection DIAG = LOW : TMC2130/TMC2160/TMC2660/TMC5130/TMC5160 - #define X_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(X,TMC2209) - #define Y_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(Y,TMC2209) - #define Z_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(Z,TMC2209) - #if HAS_I_AXIS - #define I_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(I,TMC2209) - #endif - #if HAS_J_AXIS - #define J_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(J,TMC2209) - #endif - #if HAS_K_AXIS - #define K_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(K,TMC2209) - #endif - #if HAS_U_AXIS - #define U_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(U,TMC2209) - #endif - #if HAS_V_AXIS - #define V_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(V,TMC2209) - #endif - #if HAS_W_AXIS - #define W_ENDSTOP_INVERTING !AXIS_DRIVER_TYPE(W,TMC2209) - #endif - #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) when homing to X_MIN." + #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) when homing to X_MAX." + #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) when homing to Y_MIN." + #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) when homing to Y_MAX." + #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) when homing to Z_MIN." + #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) when homing to Z_MAX." - #elif ALL(HAS_I_AXIS, I_SENSORLESS, I_HOME_TO_MIN) && DISABLED(ENDSTOPPULLUP_IMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMIN (or ENDSTOPPULLUPS) when homing to I_MIN." - #elif ALL(HAS_I_AXIS, I_SENSORLESS, I_HOME_TO_MAX) && DISABLED(ENDSTOPPULLUP_IMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMAX (or ENDSTOPPULLUPS) when homing to I_MAX." - #elif ALL(HAS_J_AXIS, J_SENSORLESS, J_HOME_TO_MIN) && DISABLED(ENDSTOPPULLUP_JMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMIN (or ENDSTOPPULLUPS) when homing to J_MIN." - #elif ALL(HAS_J_AXIS, J_SENSORLESS, J_HOME_TO_MAX) && DISABLED(ENDSTOPPULLUP_JMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMAX (or ENDSTOPPULLUPS) when homing to J_MAX." - #elif ALL(HAS_K_AXIS, K_SENSORLESS, K_HOME_TO_MIN) && DISABLED(ENDSTOPPULLUP_KMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMIN (or ENDSTOPPULLUPS) when homing to K_MIN." - #elif ALL(HAS_K_AXIS, K_SENSORLESS, K_HOME_TO_MAX) && DISABLED(ENDSTOPPULLUP_KMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMAX (or ENDSTOPPULLUPS) when homing to K_MAX." - #elif HAS_U_AXIS && U_SENSORLESS && U_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_UMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMIN (or ENDSTOPPULLUPS) when homing to U_MIN." - #elif HAS_U_AXIS && U_SENSORLESS && U_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_UMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMAX (or ENDSTOPPULLUPS) when homing to U_MAX." - #elif HAS_V_AXIS && V_SENSORLESS && V_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_VMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMIN (or ENDSTOPPULLUPS) when homing to V_MIN." - #elif HAS_V_AXIS && V_SENSORLESS && V_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_VMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMAX (or ENDSTOPPULLUPS) when homing to V_MAX." - #elif HAS_W_AXIS && W_SENSORLESS && W_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_WMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMIN (or ENDSTOPPULLUPS) when homing to W_MIN." - #elif HAS_W_AXIS && W_SENSORLESS && W_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_WMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMAX (or ENDSTOPPULLUPS) when homing to W_MAX." - + #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." + #elif I_SENSORLESS && I_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_IMAX) + #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." + #elif J_SENSORLESS && J_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_JMAX) + #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." + #elif K_SENSORLESS && K_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_KMAX) + #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." + #elif U_SENSORLESS && U_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_UMAX) + #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." + #elif V_SENSORLESS && V_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_VMAX) + #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." + #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 - #if X_SENSORLESS && X_HOME_TO_MIN && X_MIN_ENDSTOP_INVERTING != X_ENDSTOP_INVERTING - #if X_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_INVERTING = true when homing to X_MIN." - #else - #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to X_MIN." - #endif - #elif X_SENSORLESS && X_HOME_TO_MAX && X_MAX_ENDSTOP_INVERTING != X_ENDSTOP_INVERTING - #if X_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_INVERTING = true when homing to X_MAX." - #else - #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to X_MAX." - #endif - #elif Y_SENSORLESS && Y_HOME_TO_MIN && Y_MIN_ENDSTOP_INVERTING != Y_ENDSTOP_INVERTING - #if Y_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_INVERTING = true when homing to Y_MIN." - #else - #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to Y_MIN." - #endif - #elif Y_SENSORLESS && Y_HOME_TO_MAX && Y_MAX_ENDSTOP_INVERTING != Y_ENDSTOP_INVERTING - #if Y_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_INVERTING = true when homing to Y_MAX." - #else - #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to Y_MAX." - #endif - #elif Z_SENSORLESS && Z_HOME_TO_MIN && Z_MIN_ENDSTOP_INVERTING != Z_ENDSTOP_INVERTING - #if Z_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_INVERTING = true when homing to Z_MIN." - #else - #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to Z_MIN." - #endif - #elif Z_SENSORLESS && Z_HOME_TO_MAX && Z_MAX_ENDSTOP_INVERTING != Z_ENDSTOP_INVERTING - #if Z_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_INVERTING = true when homing to Z_MAX." - #else - #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to Z_MAX." - #endif - #elif ALL(HAS_I_AXIS, I_SENSORLESS, I_HOME_TO_MIN) && I_MIN_ENDSTOP_INVERTING != I_ENDSTOP_INVERTING - #if I_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_INVERTING = true when homing to I_MIN." - #else - #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to I_MIN." - #endif - #elif ALL(HAS_I_AXIS, I_SENSORLESS, I_HOME_TO_MAX) && I_MAX_ENDSTOP_INVERTING != I_ENDSTOP_INVERTING - #if I_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires I_MAX_ENDSTOP_INVERTING = true when homing to I_MAX." - #else - #error "SENSORLESS_HOMING requires I_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to I_MAX." - #endif - #elif ALL(HAS_J_AXIS, J_SENSORLESS, J_HOME_TO_MIN) && J_MIN_ENDSTOP_INVERTING != J_ENDSTOP_INVERTING - #if J_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_INVERTING = true when homing to J_MIN." - #else - #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to J_MIN." - #endif - #elif ALL(HAS_J_AXIS, J_SENSORLESS, J_HOME_TO_MAX) && J_MAX_ENDSTOP_INVERTING != J_ENDSTOP_INVERTING - #if J_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires J_MAX_ENDSTOP_INVERTING = true when homing to J_MAX." - #else - #error "SENSORLESS_HOMING requires J_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to J_MAX." - #endif - #elif ALL(HAS_K_AXIS, K_SENSORLESS, K_HOME_TO_MIN) && K_MIN_ENDSTOP_INVERTING != K_ENDSTOP_INVERTING - #if K_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_INVERTING = true when homing to K_MIN." - #else - #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to K_MIN." - #endif - #elif ALL(HAS_K_AXIS, K_SENSORLESS, K_HOME_TO_MAX) && K_MAX_ENDSTOP_INVERTING != K_ENDSTOP_INVERTING - #if K_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires K_MAX_ENDSTOP_INVERTING = true when homing to K_MAX." - #else - #error "SENSORLESS_HOMING requires K_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to K_MAX." - #endif - #elif ALL(HAS_U_AXIS, U_SENSORLESS, U_HOME_TO_MIN) && U_MIN_ENDSTOP_INVERTING != U_ENDSTOP_INVERTING - #if U_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_INVERTING = true when homing to U_MIN." - #else - #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to U_MIN." - #endif - #elif ALL(HAS_U_AXIS, U_SENSORLESS, U_HOME_TO_MAX) && U_MAX_ENDSTOP_INVERTING != U_ENDSTOP_INVERTING - #if U_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires U_MAX_ENDSTOP_INVERTING = true when homing to U_MAX." - #else - #error "SENSORLESS_HOMING requires U_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to U_MAX." - #endif - #elif ALL(HAS_V_AXIS, V_SENSORLESS, V_HOME_TO_MIN) && V_MIN_ENDSTOP_INVERTING != V_ENDSTOP_INVERTING - #if V_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_INVERTING = true when homing to V_MIN." - #else - #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to V_MIN." - #endif - #elif ALL(HAS_V_AXIS, V_SENSORLESS, V_HOME_TO_MAX) && V_MAX_ENDSTOP_INVERTING != V_ENDSTOP_INVERTING - #if V_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires V_MAX_ENDSTOP_INVERTING = true when homing to V_MAX." - #else - #error "SENSORLESS_HOMING requires V_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to V_MAX." - #endif - #elif ALL(HAS_W_AXIS, W_SENSORLESS, W_HOME_TO_MIN) && W_MIN_ENDSTOP_INVERTING != W_ENDSTOP_INVERTING - #if W_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_INVERTING = true when homing to W_MIN." - #else - #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_INVERTING = false when homing TMC2209 to W_MIN." - #endif - #elif ALL(HAS_W_AXIS, W_SENSORLESS, W_HOME_TO_MAX0) && W_MAX_ENDSTOP_INVERTING != W_ENDSTOP_INVERTING - #if W_ENDSTOP_INVERTING - #error "SENSORLESS_HOMING requires W_MAX_ENDSTOP_INVERTING = true when homing to W_MAX." - #else - #error "SENSORLESS_HOMING requires W_MAX_ENDSTOP_INVERTING = false when homing TMC2209 to W_MAX." + #else // !SPI_ENDSTOPS + // Stall detection DIAG = HIGH : TMC2209 + // Stall detection DIAG = LOW : TMC2130/TMC2160/TMC2660/TMC5130/TMC5160 + #if X_SENSORLESS + #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." + #else + #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." + #else + #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_HIT_STATE LOW for X MAX homing." + #endif #endif + #undef _HIT_STATE #endif - #endif - #if ENABLED(DELTA) && !BOTH(STEALTHCHOP_XY, STEALTHCHOP_Z) + #if Y_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for Y MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_HIT_STATE LOW for Y MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if Z_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for Z MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_HIT_STATE LOW for Z MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if I_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for I MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires I_MAX_ENDSTOP_HIT_STATE LOW for I MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if J_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for J MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires J_MAX_ENDSTOP_HIT_STATE LOW for J MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if K_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for K MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires K_MAX_ENDSTOP_HIT_STATE LOW for K MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if U_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for U MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires U_MAX_ENDSTOP_HIT_STATE LOW for U MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if V_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for V MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires V_MAX_ENDSTOP_HIT_STATE LOW for V MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #if W_SENSORLESS + #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." + #else + #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_MAX_ENDSTOP_HIT_STATE HIGH for W MAX homing with TMC2209." + #else + #error "SENSORLESS_HOMING requires W_MAX_ENDSTOP_HIT_STATE LOW for W MAX homing." + #endif + #endif + #undef _HIT_STATE + #endif + + #endif // !SPI_ENDSTOPS + + #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." @@ -3727,16 +3317,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "SENSORLESS_HOMING requires a TMC stepper driver with StallGuard on X, Y, Z, I, J, K, U, V, or W axes." #endif - #undef X_ENDSTOP_INVERTING - #undef Y_ENDSTOP_INVERTING - #undef Z_ENDSTOP_INVERTING - #undef I_ENDSTOP_INVERTING - #undef J_ENDSTOP_INVERTING - #undef K_ENDSTOP_INVERTING - #undef U_ENDSTOP_INVERTING - #undef V_ENDSTOP_INVERTING - #undef W_ENDSTOP_INVERTING -#endif +#endif // SENSORLESS_HOMING // Sensorless probing requirements #if ENABLED(SENSORLESS_PROBING) @@ -3758,7 +3339,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -3777,10 +3358,12 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * 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 @@ -3828,9 +3411,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #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 @@ -3845,7 +3427,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * 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)) @@ -3880,9 +3462,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; @@ -3916,7 +3500,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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 @@ -3952,18 +3536,18 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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 @@ -4025,7 +3609,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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."); @@ -4075,11 +3659,11 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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 - #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 @@ -4136,7 +3720,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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." @@ -4152,11 +3736,11 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #elif !(defined(SPEED_POWER_MIN) && defined(SPEED_POWER_MAX) && defined(SPEED_POWER_STARTUP)) #error "SPINDLE_LASER_USE_PWM equation constant(s) missing." #elif _PIN_CONFLICT(X_MIN) - #error "SPINDLE_LASER_USE_PWM pin conflicts with X_MIN_PIN." + #error "SPINDLE_LASER_PWM_PIN conflicts with X_MIN_PIN." #elif _PIN_CONFLICT(X_MAX) - #error "SPINDLE_LASER_USE_PWM pin conflicts with X_MAX_PIN." + #error "SPINDLE_LASER_PWM_PIN conflicts with X_MAX_PIN." #elif _PIN_CONFLICT(Z_STEP) - #error "SPINDLE_LASER_USE_PWM pin conflicts with Z_STEP_PIN." + #error "SPINDLE_LASER_PWM_PIN conflicts with Z_STEP_PIN." #elif _PIN_CONFLICT(CASE_LIGHT) #error "SPINDLE_LASER_PWM_PIN conflicts with CASE_LIGHT_PIN." #elif _PIN_CONFLICT(E0_AUTO_FAN) @@ -4176,7 +3760,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #elif _PIN_CONFLICT(E7_AUTO_FAN) #error "SPINDLE_LASER_PWM_PIN conflicts with E7_AUTO_FAN_PIN." #elif _PIN_CONFLICT(FAN) - #error "SPINDLE_LASER_PWM_PIN conflicts with FAN_PIN." + #error "SPINDLE_LASER_PWM_PIN conflicts with FAN0_PIN." #elif _PIN_CONFLICT(FAN1) #error "SPINDLE_LASER_PWM_PIN conflicts with FAN1_PIN." #elif _PIN_CONFLICT(FAN2) @@ -4204,15 +3788,19 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #undef _PIN_CONFLICT #ifdef LASER_SAFETY_TIMEOUT_MS - static_assert(LASER_SAFETY_TIMEOUT_MS < (DEFAULT_STEPPER_DEACTIVE_TIME) * 1000UL, "LASER_SAFETY_TIMEOUT_MS must be less than DEFAULT_STEPPER_DEACTIVE_TIME (" STRINGIFY(DEFAULT_STEPPER_DEACTIVE_TIME) " seconds)"); + static_assert(LASER_SAFETY_TIMEOUT_MS < (DEFAULT_STEPPER_TIMEOUT_SEC) * 1000UL, "LASER_SAFETY_TIMEOUT_MS must be less than DEFAULT_STEPPER_TIMEOUT_SEC (" STRINGIFY(DEFAULT_STEPPER_TIMEOUT_SEC) " seconds)"); #endif #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 @@ -4223,10 +3811,44 @@ 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 +// 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." @@ -4235,16 +3857,20 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); /** * Touch Screen Calibration */ -#if !MB(LINUX_RAMPS) && ENABLED(TFT_TOUCH_DEVICE_XPT2046) && DISABLED(TOUCH_SCREEN_CALIBRATION) \ +#if !MB(SIMULATED) && ENABLED(TFT_TOUCH_DEVICE_XPT2046) && DISABLED(TOUCH_SCREEN_CALIBRATION) \ && !(defined(TOUCH_CALIBRATION_X) && defined(TOUCH_CALIBRATION_Y) && defined(TOUCH_OFFSET_X) && defined(TOUCH_OFFSET_Y)) #error "TOUCH_CALIBRATION_[XY] and TOUCH_OFFSET_[XY] are required for resistive touch screens with TOUCH_SCREEN_CALIBRATION disabled." #endif /** - * Sanity check for WIFI + * Sanity check WiFi options */ -#if EITHER(ESP3D_WIFISUPPORT, WIFISUPPORT) && DISABLED(ARDUINO_ARCH_ESP32) - #error "ESP3D_WIFISUPPORT or WIFISUPPORT requires an ESP32 MOTHERBOARD." +#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." #endif /** @@ -4261,14 +3887,14 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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 @@ -4287,10 +3913,25 @@ 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 */ -#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 @@ -4390,6 +4031,8 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #error "DGUS_LCD_UI RELOADED requires BABYSTEP_ALWAYS_AVAILABLE." #elif DISABLED(BABYSTEP_ZPROBE_OFFSET) #error "DGUS_LCD_UI RELOADED requires BABYSTEP_ZPROBE_OFFSET." + #elif ENABLED(HOME_AFTER_DEACTIVATE) + #error "DGUS_LCD_UI RELOADED requires HOME_AFTER_DEACTIVATE to be disabled." #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 @@ -4414,6 +4057,41 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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." @@ -4422,14 +4100,14 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #endif // Check requirements for upload.py -#if ENABLED(XFER_BUILD) && !BOTH(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 /** * Input Shaping requirements */ -#if HAS_SHAPING +#if HAS_ZV_SHAPING #if ENABLED(DELTA) #error "Input Shaping is not compatible with DELTA kinematics." #elif ENABLED(SCARA) @@ -4442,12 +4120,12 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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_*."); @@ -4455,13 +4133,13 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M 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."); @@ -4479,6 +4157,29 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #endif #endif +/** + * Fixed-Time Motion limitations + */ +#if ALL(FT_MOTION, MIXING_EXTRUDER) + #error "FT_MOTION does not currently support MIXING_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."); + +// 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/inc/Version.h b/Marlin/src/inc/Version.h index 83b0517534..a1df5fe90a 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-02-03" + #define STRING_DISTRIBUTION_DATE "2023-08-04" #endif /** diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index 1d1426936f..a8820af179 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 @@ -715,7 +649,7 @@ #warning "Creality 4.2.2 boards come with a variety of stepper drivers. Check the board label (typically on SD Card module) and set the correct *_DRIVER_TYPE! (C=HR4988, E=A4988, A=TMC2208, B=TMC2209, H=TMC2225, H8=HR4988). (Define NO_CREALITY_422_DRIVER_WARNING to suppress this warning.)" #endif -#if PRINTCOUNTER_SYNC +#if ENABLED(PRINTCOUNTER_SYNC) #warning "To prevent step loss, motion will pause for PRINTCOUNTER auto-save." #endif @@ -734,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 @@ -749,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 @@ -777,6 +715,13 @@ #warning "Define MK3_FAN_PINS to swap hotend and part cooling fan pins. (Define NO_MK3_FAN_PINS_WARNING to suppress this warning.)" #endif +/** + * GD32 is not exactly like STM32 + */ +#if MB(SOVOL_V131, TRIGORILLA_V006) + #warning "GD32 based controllers may not be fully compatible with STM32 platforms. Please report any issues." +#endif + /** * BD Sensor should always include BABYSTEPPING */ @@ -784,16 +729,61 @@ #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 */ -#if BOTH(POLAR, S_CURVE_ACCELERATION) +#if ALL(POLAR, S_CURVE_ACCELERATION) #warning "POLAR kinematics may not work well with S_CURVE_ACCELERATION." #endif /** * Input Shaping */ -#if HAS_SHAPING && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) +#if HAS_ZV_SHAPING && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) #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 +#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 + +/** + * 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/lcd/HD44780/lcdprint_hd44780.cpp b/Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp index 48f5f97133..b05a8e81d9 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 9445198a22..897070c4dd 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, SDSUPPORT) +#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)); @@ -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) @@ -103,18 +103,34 @@ #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 // Standard direct-connected LCD implementations - LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5, LCD_PINS_D6, LCD_PINS_D7); + LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_EN, LCD_PINS_D4, LCD_PINS_D5, LCD_PINS_D6, LCD_PINS_D7); #endif 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); } @@ -125,7 +141,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); } @@ -289,7 +305,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS #endif // LCD_PROGRESS_BAR - #if BOTH(SDSUPPORT, HAS_MARLINUI_MENU) + #if ALL(HAS_MEDIA, HAS_MARLINUI_MENU) // CHARSET_MENU const static PROGMEM byte refresh[8] = { @@ -313,7 +329,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 +355,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 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); @@ -424,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); @@ -521,7 +537,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const else if (axis_should_home(axis)) while (const char c = *value++) lcd_put_lchar(c <= '.' ? c : '?'); else if (NONE(HOME_AFTER_DEACTIVATE, DISABLE_REDUCED_ACCURACY_WARNING) && !axis_is_trusted(axis)) - lcd_put_u8str(axis == Z_AXIS ? F(" ") : F(" ")); + lcd_put_u8str(TERN0(HAS_Z_AXIS, axis == Z_AXIS) ? F(" ") : F(" ")); else lcd_put_u8str(value); } @@ -537,7 +553,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const */ FORCE_INLINE void _draw_heater_status(const heater_id_t heater_id, const char prefix, const bool blink) { #if HAS_HEATED_BED - const bool isBed = TERN(HAS_HEATED_CHAMBER, heater_id == H_BED, heater_id < 0); + const bool isBed = heater_id == H_BED; const celsius_t t1 = (isBed ? thermalManager.wholeDegBed() : thermalManager.wholeDegHotend(heater_id)), t2 = (isBed ? thermalManager.degTargetBed() : thermalManager.degTargetHotend(heater_id)); #else @@ -546,7 +562,17 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater_id, const char pr if (prefix >= 0) lcd_put_lchar(prefix); - lcd_put_u8str(t1 < 0 ? "err" : i16tostr3rj(t1)); + if (t1 >= 0) + lcd_put_u8str(ui16tostr3rj(t1)); + else { + #if ENABLED(SHOW_TEMPERATURE_BELOW_ZERO) + char * const str = i16tostr3rj(t1); + lcd_put_u8str(&str[1]); + #else + lcd_put_u8str(F("err")); + #endif + } + lcd_put_u8str(F("/")); #if !HEATER_IDLE_HANDLER @@ -687,7 +713,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (progress > 2) return draw_progress_bar(progress); } - #elif BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #elif ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { @@ -699,13 +725,13 @@ 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; // 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) { @@ -747,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); @@ -758,12 +784,14 @@ 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]; - 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) { @@ -774,6 +802,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #if ENABLED(SHOW_REMAINING_TIME) void MarlinUI::drawRemain() { if (printJobOngoing()) { @@ -785,6 +814,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; @@ -796,6 +826,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #if ENABLED(SHOW_ELAPSED_TIME) void MarlinUI::drawElapsed() { if (printJobOngoing()) { @@ -807,6 +838,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #endif // HAS_PRINT_PROGRESS /** @@ -921,7 +953,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 @@ -947,25 +979,25 @@ 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 - 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) @@ -976,10 +1008,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 @@ -988,11 +1024,12 @@ void MarlinUI::draw_status_screen() { #endif // LCD_WIDTH >= 20 - lcd_moveto(LCD_WIDTH - 8, 1); - _draw_axis_value(Z_AXIS, ftostr52sp(LOGICAL_Z_POSITION(current_position.z)), blink); - - #if HAS_LEVELING && !HAS_HEATED_BED - lcd_put_lchar(planner.leveling_active || blink ? '_' : ' '); + #if HAS_Z_AXIS + lcd_moveto(LCD_WIDTH - 8, 1); + _draw_axis_value(Z_AXIS, ftostr52sp(LOGICAL_Z_POSITION(current_position.z)), blink); + #if HAS_LEVELING && !HAS_HEATED_BED + lcd_put_lchar(planner.leveling_active || blink ? '_' : ' '); + #endif #endif #endif // LCD_HEIGHT > 2 @@ -1008,14 +1045,14 @@ 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; 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 ) { @@ -1054,8 +1091,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 ? '_' : ' '); @@ -1089,7 +1128,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 @@ -1097,7 +1136,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 @@ -1126,17 +1165,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(" ")); } @@ -1152,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(" ")); @@ -1186,7 +1247,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/HD44780/marlinui_HD44780.h b/Marlin/src/lcd/HD44780/marlinui_HD44780.h index 62c0c76202..6f6f5a6855 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 @@ -103,5 +103,4 @@ #endif -#include "../fontutils.h" #include "../lcdprint.h" diff --git a/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp index e681ff0a91..666ad2bbc1 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/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index e4f9e4eafc..4cec4dfa43 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, SDSUPPORT) +#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(); @@ -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) @@ -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); @@ -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) @@ -672,7 +673,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 ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { @@ -689,10 +690,10 @@ 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); + uint8_t slen = status_message.glyphs(); #if ENABLED(STATUS_MESSAGE_SCROLLING) @@ -820,11 +821,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 ? '_' : ' '); @@ -860,23 +867,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 @@ -962,17 +969,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(); } @@ -1037,7 +1068,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; @@ -1050,7 +1081,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/TFTGLCD/marlinui_TFTGLCD.h b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h index c399b907e4..3e447fa196 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/buttons.h b/Marlin/src/lcd/buttons.h index 58471239bb..601e8a70ae 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 8d0ab4efbe..9eec9d1987 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/fontdata/fontdata_ISO10646_1.h b/Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h index 6f55d3bc3d..1ebe9884c0 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/dogm/fontdata/langdata_fr_na.h b/Marlin/src/lcd/dogm/fontdata/langdata_fr_na.h new file mode 100644 index 0000000000..218f042a20 --- /dev/null +++ b/Marlin/src/lcd/dogm/fontdata/langdata_fr_na.h @@ -0,0 +1,10 @@ +/** + * Generated automatically by buildroot/share/fonts/uxggenpages.sh + * Contents will be REPLACED by future processing! + * Use genallfont.sh to generate font data for updated languages. + */ +#pragma once + +#include "langdata.h" + +static const uxg_fontinfo_t g_fontinfo_fr_na[] PROGMEM = {}; diff --git a/Marlin/src/lcd/dogm/fontdata/langdata_hu.h b/Marlin/src/lcd/dogm/fontdata/langdata_hu.h index 450662a8c9..c0175be874 100644 --- a/Marlin/src/lcd/dogm/fontdata/langdata_hu.h +++ b/Marlin/src/lcd/dogm/fontdata/langdata_hu.h @@ -7,10 +7,4 @@ #include "langdata.h" -const u8g_fntpgm_uint8_t fontpage_2_241_241[31] U8G_FONT_SECTION("fontpage_2_241_241") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xF1,0xF1,0x00,0x08,0x00,0x00, - 0x00,0x05,0x08,0x08,0x06,0x00,0x00,0x48,0x90,0x00,0x88,0x88,0x88,0x88,0x70}; - -static const uxg_fontinfo_t g_fontinfo_hu[] PROGMEM = { - FONTDATA_ITEM(2, 241, 241, fontpage_2_241_241), // 'ű' -- 'ű' -}; +static const uxg_fontinfo_t g_fontinfo_hu[] PROGMEM = {}; diff --git a/Marlin/src/lcd/dogm/fontdata/langdata_pl.h b/Marlin/src/lcd/dogm/fontdata/langdata_pl.h index e89a6c159a..e9365a69c2 100644 --- a/Marlin/src/lcd/dogm/fontdata/langdata_pl.h +++ b/Marlin/src/lcd/dogm/fontdata/langdata_pl.h @@ -27,6 +27,9 @@ const u8g_fntpgm_uint8_t fontpage_2_218_219[47] U8G_FONT_SECTION("fontpage_2_218 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xDA,0xDB,0x00,0x0A,0x00,0x00, 0x00,0x05,0x0A,0x0A,0x06,0x00,0x00,0x10,0x20,0x00,0x70,0x88,0x80,0x70,0x08,0x88, 0x70,0x05,0x08,0x08,0x06,0x00,0x00,0x10,0x20,0x00,0x78,0x80,0x70,0x08,0xF0}; +const u8g_fntpgm_uint8_t fontpage_2_250_250[31] U8G_FONT_SECTION("fontpage_2_250_250") = { + 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xFA,0xFA,0x00,0x08,0x00,0x00, + 0x00,0x05,0x08,0x08,0x06,0x00,0x00,0x10,0x20,0x00,0xF8,0x10,0x20,0x40,0xF8}; const u8g_fntpgm_uint8_t fontpage_2_252_252[30] U8G_FONT_SECTION("fontpage_2_252_252") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x00,0x07,0x00,0x00, 0x00,0x05,0x07,0x07,0x06,0x00,0x00,0x20,0x00,0xF8,0x10,0x20,0x40,0xF8}; @@ -37,5 +40,6 @@ static const uxg_fontinfo_t g_fontinfo_pl[] PROGMEM = { FONTDATA_ITEM(2, 153, 153, fontpage_2_153_153), // 'ę' -- 'ę' FONTDATA_ITEM(2, 193, 196, fontpage_2_193_196), // 'Ł' -- 'ń' FONTDATA_ITEM(2, 218, 219, fontpage_2_218_219), // 'Ś' -- 'ś' + FONTDATA_ITEM(2, 250, 250, fontpage_2_250_250), // 'ź' -- 'ź' FONTDATA_ITEM(2, 252, 252, fontpage_2_252_252), // 'ż' -- 'ż' }; diff --git a/Marlin/src/lcd/dogm/fontdata/langdata_sv.h b/Marlin/src/lcd/dogm/fontdata/langdata_sv.h new file mode 100644 index 0000000000..cf6328766e --- /dev/null +++ b/Marlin/src/lcd/dogm/fontdata/langdata_sv.h @@ -0,0 +1,10 @@ +/** + * Generated automatically by buildroot/share/fonts/uxggenpages.sh + * Contents will be REPLACED by future processing! + * Use genallfont.sh to generate font data for updated languages. + */ +#pragma once + +#include "langdata.h" + +static const uxg_fontinfo_t g_fontinfo_sv[] PROGMEM = {}; diff --git a/Marlin/src/lcd/dogm/fontdata/langdata_zh_CN.h b/Marlin/src/lcd/dogm/fontdata/langdata_zh_CN.h index 664fa5f4bf..60316a1479 100644 --- a/Marlin/src/lcd/dogm/fontdata/langdata_zh_CN.h +++ b/Marlin/src/lcd/dogm/fontdata/langdata_zh_CN.h @@ -7,9 +7,6 @@ #include "langdata.h" -const u8g_fntpgm_uint8_t fontpage_64_157_157[26] U8G_FONT_SECTION("fontpage_64_157_157") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x9D,0x9D,0x00,0x07,0x00,0x00, - 0x00,0x05,0x03,0x03,0x06,0x00,0x04,0xD8,0x48,0x90}; const u8g_fntpgm_uint8_t fontpage_69_191_191[28] U8G_FONT_SECTION("fontpage_69_191_191") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xBF,0xBF,0x00,0x05,0x00,0x00, 0x00,0x05,0x05,0x05,0x06,0x00,0x00,0x08,0x18,0x28,0x48,0xF8}; @@ -382,10 +379,6 @@ const u8g_fntpgm_uint8_t fontpage_172_232_232[45] U8G_FONT_SECTION("fontpage_172 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xE8,0xE8,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x7B,0xC0,0x4A,0x40,0x4A,0x40,0x7B,0xC0,0x04, 0x80,0xFF,0xE0,0x11,0x00,0xFB,0xE0,0x4A,0x40,0x4A,0x40,0x7B,0xC0}; -const u8g_fntpgm_uint8_t fontpage_172_244_244[45] U8G_FONT_SECTION("fontpage_172_244_244") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xF4,0xF4,0x00,0x0A,0xFF,0x00, - 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x01,0x00,0xEF,0xE0,0xA5,0x40,0xAF,0xE0,0xA4, - 0x40,0xA7,0xC0,0xE4,0x40,0x07,0xC0,0x04,0x40,0x07,0xC0,0x0C,0x60}; const u8g_fntpgm_uint8_t fontpage_173_222_222[45] U8G_FONT_SECTION("fontpage_173_222_222") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xDE,0xDE,0x00,0x0A,0xFF,0x00, 0x00,0x0A,0x0B,0x16,0x0C,0x01,0xFF,0xFF,0xC0,0x80,0x40,0x80,0x40,0x9E,0x40,0x92, @@ -744,10 +737,6 @@ const u8g_fntpgm_uint8_t fontpage_202_244_244[45] U8G_FONT_SECTION("fontpage_202 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xF4,0xF4,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x11,0x00,0xFF,0xE0,0x55,0x40,0x7C,0x80,0x39, 0x40,0x56,0x20,0x7F,0xC0,0x04,0x00,0x27,0x80,0x24,0x00,0xFF,0xE0}; -const u8g_fntpgm_uint8_t fontpage_203_135_135[45] U8G_FONT_SECTION("fontpage_203_135_135") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x87,0x87,0x00,0x0A,0xFF,0x00, - 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x08,0x00,0x04,0x00,0xFF,0xE0,0x11,0x00,0x11, - 0x00,0x11,0x00,0x0A,0x00,0x0A,0x00,0x04,0x00,0x1B,0x00,0xE0,0xE0}; const u8g_fntpgm_uint8_t fontpage_203_153_153[45] U8G_FONT_SECTION("fontpage_203_153_153") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x99,0x99,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x20,0x80,0xAC,0x80,0x72,0x80,0x20,0x80,0xFC, @@ -1050,10 +1039,6 @@ const u8g_fntpgm_uint8_t fontpage_246_201_201[45] U8G_FONT_SECTION("fontpage_246 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xC9,0xC9,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x42,0x00,0x7B,0xE0,0x94,0x80,0x7F,0xC0,0x04, 0x00,0xFF,0xE0,0x01,0x00,0x7F,0xC0,0x11,0x00,0x09,0x00,0x03,0x00}; -const u8g_fntpgm_uint8_t fontpage_247_128_128[45] U8G_FONT_SECTION("fontpage_247_128_128") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x00,0x0A,0xFF,0x00, - 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x42,0x00,0x7B,0xE0,0x94,0x80,0x27,0xC0,0x50, - 0x40,0x4F,0x40,0x49,0x40,0x4F,0x40,0x49,0x40,0x4F,0x40,0x40,0xC0}; const u8g_fntpgm_uint8_t fontpage_247_177_177[45] U8G_FONT_SECTION("fontpage_247_177_177") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xB1,0xB1,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x21,0x00,0x3D,0xE0,0x4A,0x80,0x94,0x40,0x7F, @@ -1465,7 +1450,6 @@ const u8g_fntpgm_uint8_t fontpage_510_154_154[30] U8G_FONT_SECTION("fontpage_510 0x00,0x02,0x07,0x07,0x0C,0x06,0x01,0xC0,0xC0,0x00,0x00,0x00,0xC0,0xC0}; static const uxg_fontinfo_t g_fontinfo_zh_CN[] PROGMEM = { - FONTDATA_ITEM(64, 157, 157, fontpage_64_157_157), // '”' -- '”' FONTDATA_ITEM(69, 191, 191, fontpage_69_191_191), // '⊿' -- '⊿' FONTDATA_ITEM(156, 128, 128, fontpage_156_128_128), // '一' -- '一' FONTDATA_ITEM(156, 137, 139, fontpage_156_137_139), // '三' -- '下' @@ -1553,7 +1537,6 @@ static const uxg_fontinfo_t g_fontinfo_zh_CN[] PROGMEM = { FONTDATA_ITEM(171, 183, 183, fontpage_171_183_183), // '喷' -- '喷' FONTDATA_ITEM(172, 180, 180, fontpage_172_180_180), // '嘴' -- '嘴' FONTDATA_ITEM(172, 232, 232, fontpage_172_232_232), // '器' -- '器' - FONTDATA_ITEM(172, 244, 244, fontpage_172_244_244), // '噴' -- '噴' FONTDATA_ITEM(173, 222, 222, fontpage_173_222_222), // '回' -- '回' FONTDATA_ITEM(173, 224, 224, fontpage_173_224_224), // '因' -- '因' FONTDATA_ITEM(173, 250, 250, fontpage_173_250_250), // '固' -- '固' @@ -1642,7 +1625,6 @@ static const uxg_fontinfo_t g_fontinfo_zh_CN[] PROGMEM = { FONTDATA_ITEM(202, 240, 240, fontpage_202_240_240), // '数' -- '数' FONTDATA_ITEM(202, 242, 242, fontpage_202_242_242), // '敲' -- '敲' FONTDATA_ITEM(202, 244, 244, fontpage_202_244_244), // '整' -- '整' - FONTDATA_ITEM(203, 135, 135, fontpage_203_135_135), // '文' -- '文' FONTDATA_ITEM(203, 153, 153, fontpage_203_153_153), // '料' -- '料' FONTDATA_ITEM(203, 156, 156, fontpage_203_156_156), // '斜' -- '斜' FONTDATA_ITEM(203, 173, 173, fontpage_203_173_173), // '断' -- '断' @@ -1718,7 +1700,6 @@ static const uxg_fontinfo_t g_fontinfo_zh_CN[] PROGMEM = { FONTDATA_ITEM(245, 239, 239, fontpage_245_239_239), // '端' -- '端' FONTDATA_ITEM(246, 172, 172, fontpage_246_172_172), // '第' -- '第' FONTDATA_ITEM(246, 201, 201, fontpage_246_201_201), // '等' -- '等' - FONTDATA_ITEM(247, 128, 128, fontpage_247_128_128), // '简' -- '简' FONTDATA_ITEM(247, 177, 177, fontpage_247_177_177), // '箱' -- '箱' FONTDATA_ITEM(248, 251, 251, fontpage_248_251_251), // '类' -- '类' FONTDATA_ITEM(250, 162, 162, fontpage_250_162_162), // '索' -- '索' diff --git a/Marlin/src/lcd/dogm/fontdata/langdata_zh_TW.h b/Marlin/src/lcd/dogm/fontdata/langdata_zh_TW.h index 093629cd16..c132a0de70 100644 --- a/Marlin/src/lcd/dogm/fontdata/langdata_zh_TW.h +++ b/Marlin/src/lcd/dogm/fontdata/langdata_zh_TW.h @@ -343,12 +343,10 @@ const u8g_fntpgm_uint8_t fontpage_178_167_167[45] U8G_FONT_SECTION("fontpage_178 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xA7,0xA7,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x04,0x00,0x04,0x00,0x04,0x00,0xFF,0xE0,0x04, 0x00,0x04,0x00,0x0A,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0xC0,0x60}; -const u8g_fntpgm_uint8_t fontpage_178_169_170[73] U8G_FONT_SECTION("fontpage_178_169_170") = { - 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xA9,0xAA,0x00,0x0A,0xFF,0x00, +const u8g_fntpgm_uint8_t fontpage_178_169_169[45] U8G_FONT_SECTION("fontpage_178_169_169") = { + 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xA9,0xA9,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x7F,0xC0,0x04,0x00,0x04,0x00,0x04,0x00,0xFF, - 0xE0,0x04,0x00,0x0A,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0xC0,0x60,0x0B,0x0B,0x16, - 0x0C,0x00,0xFF,0x04,0x00,0x04,0x00,0x04,0x00,0xFF,0xE0,0x04,0x00,0x0A,0x00,0x0A, - 0x00,0x11,0x00,0x19,0x00,0x24,0x80,0xC4,0x60}; + 0xE0,0x04,0x00,0x0A,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0xC0,0x60}; const u8g_fntpgm_uint8_t fontpage_178_177_177[45] U8G_FONT_SECTION("fontpage_178_177_177") = { 0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xB1,0xB1,0x00,0x0A,0xFF,0x00, 0x00,0x0B,0x0B,0x16,0x0C,0x00,0xFF,0x24,0x00,0x24,0x00,0x3F,0xC0,0x44,0x00,0x04, @@ -1302,7 +1300,7 @@ static const uxg_fontinfo_t g_fontinfo_zh_TW[] PROGMEM = { FONTDATA_ITEM(178, 154, 154, fontpage_178_154_154), // '多' -- '多' FONTDATA_ITEM(178, 160, 160, fontpage_178_160_160), // '夠' -- '夠' FONTDATA_ITEM(178, 167, 167, fontpage_178_167_167), // '大' -- '大' - FONTDATA_ITEM(178, 169, 170, fontpage_178_169_170), // '天' -- '太' + FONTDATA_ITEM(178, 169, 169, fontpage_178_169_169), // '天' -- '天' FONTDATA_ITEM(178, 177, 177, fontpage_178_177_177), // '失' -- '失' FONTDATA_ITEM(179, 203, 203, fontpage_179_203_203), // '始' -- '始' FONTDATA_ITEM(181, 146, 146, fontpage_181_146_146), // '媒' -- '媒' diff --git a/Marlin/src/lcd/dogm/lcdprint_u8g.cpp b/Marlin/src/lcd/dogm/lcdprint_u8g.cpp index 74a49b0950..a615c21766 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" @@ -27,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/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index 1a86058b94..5b2db31fbb 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" @@ -56,7 +55,7 @@ #include "../../module/printcounter.h" #include "../../MarlinCore.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../libs/duration_t.h" #endif @@ -156,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) @@ -229,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); } @@ -411,20 +410,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(" ")); } } @@ -527,7 +544,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)) { @@ -539,7 +556,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop } } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(AUTO_BED_LEVELING_UBL) @@ -628,7 +645,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop #endif // AUTO_BED_LEVELING_UBL - #if EITHER(BABYSTEP_ZPROBE_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) + #if ANY(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) // // Draw knob rotation => Z motion key for: @@ -746,7 +763,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop } } - #endif // BABYSTEP_ZPROBE_GFX_OVERLAY || MESH_EDIT_GFX_OVERLAY + #endif // BABYSTEP_GFX_OVERLAY || MESH_EDIT_GFX_OVERLAY #endif // HAS_MARLINUI_MENU diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.h b/Marlin/src/lcd/dogm/marlinui_DOGM.h index f70621574c..414508b129 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.h +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.h @@ -36,17 +36,15 @@ // RepRapWorld Graphical LCD - - #if DISABLED(SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_ENABLE == 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 #define U8G_CLASS U8GLIB_ST7920_128X64_4X - #define U8G_PARAM LCD_PINS_D4, LCD_PINS_ENABLE, LCD_PINS_RS + #define U8G_PARAM LCD_PINS_D4, LCD_PINS_EN, LCD_PINS_RS #endif #elif IS_U8GLIB_ST7920 @@ -54,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_ENABLE == 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 @@ -63,7 +61,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_ENABLE, 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 @@ -129,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 @@ -153,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 8bdba42342..2067a8428d 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 @@ -67,7 +67,7 @@ #include "../../feature/power_monitor.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #endif @@ -96,9 +96,10 @@ DRAWBIT_HOTEND, DRAWBIT_BED = HOTENDS, DRAWBIT_CHAMBER, - DRAWBIT_CUTTER + DRAWBIT_CUTTER, + DRAWBIT_COUNT }; - IF<(DRAWBIT_CUTTER > 7), uint16_t, uint8_t>::type draw_bits; + bits_t(DRAWBIT_COUNT) draw_bits; #endif #if ANIM_HOTEND @@ -126,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 @@ -192,14 +193,26 @@ #define PROGRESS_BAR_WIDTH (LCD_PIXEL_WIDTH - PROGRESS_BAR_X) FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, const uint8_t ty) { - if (temp < 0) - lcd_put_u8str(tx - 3 * (INFO_FONT_WIDTH) / 2 + 1, ty, F("err")); - else { - const char *str = i16tostr3rj(temp); - const uint8_t len = str[0] != ' ' ? 3 : str[1] != ' ' ? 2 : 1; - lcd_put_u8str(tx - len * (INFO_FONT_WIDTH) / 2 + 1, ty, &str[3-len]); - lcd_put_lchar(LCD_STR_DEGREE[0]); + const char *str; + uint8_t len; + if (temp >= 0) { + str = i16tostr3left(temp); + len = strlen(str); + lcd_moveto(tx + 1 - len * (INFO_FONT_WIDTH) / 2, ty); } + else { + #if ENABLED(SHOW_TEMPERATURE_BELOW_ZERO) + str = i16tostr3left((-temp) % 100); + len = strlen(str) + 1; + lcd_moveto(tx + 1 - len * (INFO_FONT_WIDTH) / 2, ty); + lcd_put_lchar('-'); + #else + lcd_put_u8str(tx + 1 - 3 * (INFO_FONT_WIDTH) / 2, ty, F("err")); + return; + #endif + } + lcd_put_u8str(str); + lcd_put_lchar(LCD_STR_DEGREE[0]); } #if DO_DRAW_FLOWMETER @@ -444,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 @@ -497,22 +510,28 @@ 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 ANY(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())); - static u8g_uint_t progress_bar_solid_width = 0; + #if HAS_PRINT_PROGRESS + static u8g_uint_t progress_bar_solid_width = 0; + #endif // At the first page, generate new display values if (first_page) { @@ -529,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) { @@ -542,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))); @@ -592,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)) @@ -652,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 @@ -727,7 +747,7 @@ void MarlinUI::draw_status_screen() { #endif } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // // SD Card Symbol // @@ -741,7 +761,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 @@ -753,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); } @@ -763,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 @@ -824,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 @@ -856,7 +874,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("%")); @@ -872,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, SDSUPPORT) + #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)); @@ -897,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 3d1594aca2..a6e942b706 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" @@ -81,7 +80,7 @@ #include "../../module/temperature.h" #include "../../libs/numtostr.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #endif @@ -238,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); @@ -436,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(); @@ -569,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:: @@ -596,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 } } } @@ -605,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 @@ -629,14 +626,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); } @@ -755,10 +752,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 @@ -854,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; } @@ -893,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/dogm/u8g_dev_st7920_128x64_HAL.cpp b/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp index fde6e41792..ae1531e9f8 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 f1bf9d032e..c6aff38dc9 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 @@ -136,8 +134,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 @@ -298,14 +296,14 @@ 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]; - 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 +349,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 +379,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; @@ -412,24 +410,24 @@ 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]; - 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--;) { - 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]); } } @@ -469,19 +467,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,47 +492,47 @@ 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() { uint16_t x, y; - calibrationState calibration_stage = touch_calibration.get_calibration_state(); + calibrationState stage = touch_calibration.get_calibration_state(); - if (calibration_stage == CALIBRATION_NONE) { + if (stage == CALIBRATION_NONE) { // start and clear screen defer_status_screen(true); - calibration_stage = touch_calibration.calibration_start(); + 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 - x = touch_calibration.calibration_points[_MIN(calibration_stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(calibration_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); } FSTR_P str = nullptr; - if (calibration_stage < CALIBRATION_SUCCESS) { + if (stage < CALIBRATION_SUCCESS) { // handle current state - switch (calibration_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; + switch (stage) { + 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; } - x = touch_calibration.calibration_points[calibration_stage].x; - y = touch_calibration.calibration_points[calibration_stage].y; + x = touch_calibration.calibration_points[stage].x; + y = touch_calibration.calibration_points[stage].y; drawCross(x, y, TFT_MARLINUI_COLOR); } else { // end calibration - str = calibration_stage == CALIBRATION_SUCCESS ? GET_TEXT_F(MSG_CALIBRATION_COMPLETED) : GET_TEXT_F(MSG_CALIBRATION_FAILED); + str = stage == CALIBRATION_SUCCESS ? GET_TEXT_F(MSG_CALIBRATION_COMPLETED) : GET_TEXT_F(MSG_CALIBRATION_FAILED); defer_status_screen(false); touch_calibration.calibration_end(); TERN_(HAS_TOUCH_BUTTONS, redrawTouchButtons = true); @@ -548,7 +546,7 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, } while (u8g.nextPage()); drawing_screen = false; safe_delay(250); - if (calibration_stage == CALIBRATION_SUCCESS) { + if (stage == CALIBRATION_SUCCESS) { safe_delay(500); ui.goto_previous_screen(); } @@ -556,4 +554,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/dogm/u8g_fontutf8.cpp b/Marlin/src/lcd/dogm/u8g_fontutf8.cpp index e9d1535096..79fabfd805 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 660eb28ffe..281894509d 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/dogm/ultralcd_st7920_u8glib_rrd_AVR.h b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h index 446bfcfd42..9a565fc2ef 100644 --- a/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h +++ b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h @@ -28,7 +28,7 @@ #include "../../HAL/shared/Delay.h" #define ST7920_CLK_PIN LCD_PINS_D4 -#define ST7920_DAT_PIN LCD_PINS_ENABLE +#define ST7920_DAT_PIN LCD_PINS_EN #define ST7920_CS_PIN LCD_PINS_RS //#define PAGE_HEIGHT 8 // 128 byte framebuffer diff --git a/Marlin/src/lcd/e3v2/README.md b/Marlin/src/lcd/e3v2/README.md index 91f25e2433..09055d03a4 100644 --- a/Marlin/src/lcd/e3v2/README.md +++ b/Marlin/src/lcd/e3v2/README.md @@ -1,6 +1,6 @@ -# DWIN for Creality Ender 3 v2 +# DWIN for Creality Ender-3 v2 -Marlin's Ender 3 v2 support requires the `DWIN_SET` included with the Ender 3 V2 [example configuration](https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.1.x/config/examples/Creality/Ender-3%20V2). +Marlin's Ender-3 v2 support requires the `DWIN_SET` included with the Ender-3 V2 [example configuration](https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.1.x/config/examples/Creality/Ender-3%20V2). ## Easy Install diff --git a/Marlin/src/lcd/e3v2/common/dwin_api.cpp b/Marlin/src/lcd/e3v2/common/dwin_api.cpp index f3abaf25c9..af28cfe62b 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; - 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(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 dc97ef2723..f2392af55c 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/dwin_color.h b/Marlin/src/lcd/e3v2/common/dwin_color.h index d327f21a93..8df4f95151 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/common/dwin_font.h b/Marlin/src/lcd/e3v2/common/dwin_font.h index 10bb104d27..b92bfcf99c 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/encoder.cpp b/Marlin/src/lcd/e3v2/common/encoder.cpp index c66b0a06ab..2ff67059e9 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,22 +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; - #if defined(ENCODER_100X_STEPS_PER_SEC) - if (encoderStepRate >= ENCODER_100X_STEPS_PER_SEC) encoderMultiplier = 100; - #endif - if (encoderStepRate >= ENCODER_10X_STEPS_PER_SEC) encoderMultiplier = 10; + 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 @@ -150,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 3ab8c3bf42..72d37108dc 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/lcd/e3v2/common/limits.h b/Marlin/src/lcd/e3v2/common/limits.h new file mode 100644 index 0000000000..da75d9c982 --- /dev/null +++ b/Marlin/src/lcd/e3v2/common/limits.h @@ -0,0 +1,100 @@ +/** + * 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 = + #ifdef MAX_STEPS_EDIT_VALUES + MAX_STEPS_EDIT_VALUES + #else + default_steps * float(DEFAULT_MAX_MULTIPLIER) + #endif + ; diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 4d22b04fee..968bca2285 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" @@ -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 @@ -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) @@ -134,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; @@ -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; @@ -207,268 +194,268 @@ 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() { - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); +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() { - HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; - HMI_SetLanguageCache(); - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); +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 } 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, COLOR_RECTANGLE, 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(COLOR_LINE, 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; } } inline uint16_t nr_sd_menu_items() { - return card.get_num_Files() + !card.flag.workDirIsRoot; + 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(COLOR_LINE, 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(COLOR_LINE, 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); } // @@ -488,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 @@ -533,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 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 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 ? COLOR_SELECT : 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 ? COLOR_SELECT : 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 ? COLOR_SELECT : 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) { + dwinDrawSignedFloat(font8x16, active ? COLOR_SELECT : 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) { + dwinDrawSignedFloat(font8x16, active ? COLOR_SELECT : 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 @@ -860,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) @@ -931,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(); +void drawMotionMenu() { + clearMainWindow(); - 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 + 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" @@ -1052,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); } // @@ -1071,339 +1058,351 @@ 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, 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 { - 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, 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")); } } } #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, COLOR_POPUP_TEXT, 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, 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); } } -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, 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.")); } } #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, 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.")); } } #endif -void Draw_Select_Highlight(const bool sel) { - HMI_flag.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 drawSelectHighlight(const bool sel) { + hmiFlag.select_flag = sel; + 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); + dwinDrawRectangle(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); +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, 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); } - 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, 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 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); + 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); } -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() { - checkkey = PrintProcess; +void gotoPrintProcess() { + checkkey = ID_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() { - checkkey = MainMenu; +void gotoMainMenu() { + checkkey = ID_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)); + 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(); + checkkey = ID_AxisMove; + dwinUpdateLCD(); } -void HMI_Move_X() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); - 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); - } - 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)); -} +#if HAS_X_AXIS -void HMI_Move_Y() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); - 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); + 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(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)); -} -void HMI_Move_Z() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); - 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); +#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(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)); -} + +#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)); + } + +#endif #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.moveScaled.e)) { + last_E_scaled = hmiValues.moveScaled.e; + 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.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)); } #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 ? ID_Prepare : ID_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; - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + 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; @@ -1413,48 +1412,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.tempE)) { + encoderRate.enabled = false; #if HAS_PREHEAT - if (HMI_ValueStruct.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); + if (hmiValues.show_mode == -2) { + 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 (HMI_ValueStruct.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); + if (hmiValues.show_mode == -3) { + checkkey = ID_ABSPreheat; + ui.material_preset[1].hotend_temp = hmiValues.tempE; + drawEditInteger3(temp_line, ui.material_preset[1].hotend_temp); return; } #endif #endif - if (HMI_ValueStruct.show_mode == -1) // Temperature - checkkey = TemperatureID; + if (hmiValues.show_mode == -1) // Temperature + checkkey = ID_TemperatureID; else - checkkey = Tune; - Draw_Edit_Integer3(temp_line, HMI_ValueStruct.E_Temp); - thermalManager.setTargetHotend(HMI_ValueStruct.E_Temp, 0); + checkkey = ID_Tune; + drawEditInteger3(temp_line, hmiValues.tempE); + thermalManager.setTargetHotend(hmiValues.tempE, 0); return; } - // E_Temp limit - LIMIT(HMI_ValueStruct.E_Temp, HEATER_0_MINTEMP, thermalManager.hotend_max_target(0)); - // E_Temp value - Draw_Edit_Integer3(temp_line, HMI_ValueStruct.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 #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; @@ -1464,175 +1463,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.tempBed)) { + encoderRate.enabled = false; #if HAS_PREHEAT - if (HMI_ValueStruct.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); + if (hmiValues.show_mode == -2) { + 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 (HMI_ValueStruct.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); + if (hmiValues.show_mode == -3) { + checkkey = ID_ABSPreheat; + ui.material_preset[1].bed_temp = hmiValues.tempBed; + 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 ? ID_TemperatureID : ID_Tune; + drawEditInteger3(bed_line, hmiValues.tempBed); + thermalManager.setTargetBed(hmiValues.tempBed); return; } - // Bed_Temp limit - LIMIT(HMI_ValueStruct.Bed_Temp, BED_MINTEMP, BED_MAX_TARGET); - // Bed_Temp value - Draw_Edit_Integer3(bed_line, HMI_ValueStruct.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 #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) { - checkkey = PLAPreheat; - ui.material_preset[0].fan_speed = HMI_ValueStruct.Fan_speed; - Draw_Edit_Integer3(fan_line, ui.material_preset[0].fan_speed); + if (applyEncoder(encoder_diffState, hmiValues.fanSpeed)) { + encoderRate.enabled = false; + if (hmiValues.show_mode == -2) { + 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 (HMI_ValueStruct.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); + if (hmiValues.show_mode == -3) { + checkkey = ID_ABSPreheat; + ui.material_preset[1].fan_speed = hmiValues.fanSpeed; + 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 ? ID_TemperatureID : ID_Tune; + drawEditInteger3(fan_line, hmiValues.fanSpeed); + thermalManager.set_fan_speed(0, hmiValues.fanSpeed); return; } - // Fan_speed limit - LIMIT(HMI_ValueStruct.Fan_speed, 0, 255); - // Fan_speed value - Draw_Edit_Integer3(fan_line, HMI_ValueStruct.Fan_speed, true); + // fanSpeed limit + LIMIT(hmiValues.fanSpeed, 0, 255); + // fanSpeed value + drawEditInteger3(fan_line, hmiValues.fanSpeed, 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)) { - checkkey = Tune; - EncoderRate.enabled = false; - feedrate_percentage = HMI_ValueStruct.print_speed; - Draw_Edit_Integer3(select_tune.now + MROWS - index_tune, HMI_ValueStruct.print_speed); + if (applyEncoder(encoder_diffState, hmiValues.printSpeed)) { + checkkey = ID_Tune; + encoderRate.enabled = false; + feedrate_percentage = hmiValues.printSpeed; + drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.printSpeed); return; } - // print_speed limit - LIMIT(HMI_ValueStruct.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); + // 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) -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)) { - 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); + 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.maxFeedSpeed); + drawEditInteger4(select_speed.now, hmiValues.maxFeedSpeed); return; } // 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; + if (WITHIN(hmiFlag.feedspeed_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.maxFeedSpeed, 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.maxFeedSpeed, 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)) { - 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); + 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.maxAcceleration); + drawEditInteger4(select_acc.now, hmiValues.maxAcceleration); return; } // 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; + if (WITHIN(hmiFlag.acc_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.maxAcceleration, 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.maxAcceleration, 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)) { - 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); - Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled); + 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.maxJerkScaled / MINUNITMULT); + drawEditFloat3(select_jerk.now, hmiValues.maxJerkScaled); 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); + if (WITHIN(hmiFlag.jerk_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.maxJerkScaled, 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.maxJerkScaled, 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)) { - 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; - Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled); + 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.maxStepScaled / MINUNITMULT; + drawEditFloat3(select_step.now, hmiValues.maxStepScaled); 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); + if (WITHIN(hmiFlag.step_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.maxStepScaled, 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.maxStepScaled, true); } // Draw X, Y, Z and blink if in an un-homed or un-trusted state @@ -1648,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) - 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); } } @@ -1670,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), @@ -1695,31 +1690,31 @@ 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) - 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) { + else if (checkkey == ID_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 } @@ -1727,34 +1722,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 @@ -1762,12 +1757,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(" ")); } } @@ -1782,10 +1777,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 @@ -1809,15 +1800,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) @@ -1827,18 +1818,18 @@ 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 uint16_t fileCnt = card.get_num_Files(); + const int16_t fileCnt = card.get_num_items(); if (WITHIN(filenum, 0, fileCnt - 1)) { - card.getfilename_sorted(SD_ORDER(filenum, fileCnt)); + card.selectFileByIndexSorted(filenum); char * const name = card.longest_filename(); make_name_without_ext(shift_name, name, 100); } } - 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; @@ -1849,15 +1840,15 @@ 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; } - card.getfilename_sorted(SD_ORDER(item - is_subdir, card.get_num_Files())); + card.selectFileByIndexSorted(item - is_subdir); char * const name = card.longest_filename(); #if ENABLED(SCROLL_LONG_FILENAMES) @@ -1865,19 +1856,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)); @@ -1889,8 +1880,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; } @@ -1898,59 +1889,59 @@ 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 - LOOP_L_N(i, _MIN(nr_sd_menu_items(), MROWS)) - Draw_SDItem(i, i + 1); + for (uint8_t i = 0; i < _MIN(nr_sd_menu_items(), MROWS); ++i) + 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(); + if (checkkey == ID_SelectFile) + redrawSDList(); } else { // clean file icon - if (checkkey == SelectFile) { - Redraw_SD_List(); + 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(); @@ -1958,7 +1949,7 @@ void HMI_SDCardUpdate() { dwin_abort_flag = true; // Reset feedrate, return to Home } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } @@ -1966,179 +1957,179 @@ 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)); + 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)); - 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_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, COLOR_LINE, 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(); - LOOP_L_N(i, 3) { - 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); + drawBackFirst(); + for (uint8_t i = 0; i < 3; ++i) { + dwinIconShow(ICON, ICON_PrintSize + i, 26, 99 + i * 73); + dwinDrawLine(COLOR_LINE, 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; } } } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_page.now) { case PAGE_PRINT: - checkkey = SelectFile; - Draw_Print_File_Menu(); + checkkey = ID_SelectFile; + drawPrintFileMenu(); break; case PAGE_PREPARE: - checkkey = Prepare; + checkkey = ID_Prepare; select_prepare.reset(); index_prepare = MROWS; - Draw_Prepare_Menu(); + drawPrepareMenu(); break; case PAGE_CONTROL: - checkkey = Control; + checkkey = ID_Control; select_control.reset(); index_control = MROWS; - Draw_Control_Menu(); + drawControlMenu(); break; case PAGE_INFO_LEVELING: #if HAS_ONESTEP_LEVELING - checkkey = Leveling; - HMI_Leveling(); + checkkey = ID_Leveling; + hmiLeveling(); #else - checkkey = Info; - Draw_Info_Menu(); + checkkey = ID_Info; + 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; @@ -2151,8 +2142,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 @@ -2173,61 +2164,61 @@ 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 { const uint16_t filenum = select_file.now - 1 - hasUpDir; - card.getfilename_sorted(SD_ORDER(filenum, card.get_num_Files())); + card.selectFileByIndexSorted(filenum); // Enter that folder! if (card.flag.filenameIsDir) { - SDCard_Folder(card.filename); + sdCardFolder(card.filename); goto HMI_SelectFileExit; } @@ -2236,14 +2227,14 @@ 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); #if HAS_FAN - // All fans on for Ender 3 v2 ? + // All fans on for Ender-3 v2 ? // The slicer should manage this for us. //for (uint8_t i = 0; i < FAN_COUNT; i++) // thermalManager.fan_speed[i] = 255; @@ -2251,22 +2242,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; @@ -2276,42 +2267,42 @@ 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; } } } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_print.now) { case PRINT_SETUP: - checkkey = Tune; - HMI_ValueStruct.show_mode = 0; + checkkey = ID_Tune; + 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'; - #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 @@ -2319,181 +2310,181 @@ void HMI_Printing() { queue.inject(cmd); } else { - HMI_flag.select_flag = true; - checkkey = Print_window; - Popup_window_PauseOrStop(); + hmiFlag.select_flag = true; + checkkey = ID_PrintWindow; + popupwindowPauseOrStop(); } break; case PRINT_STOP: - HMI_flag.select_flag = true; - checkkey = Print_window; - Popup_window_PauseOrStop(); + hmiFlag.select_flag = true; + checkkey = ID_PrintWindow; + 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) { - 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 + if (hmiFlag.select_flag) { + 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 #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 - 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) 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 @@ -2503,128 +2494,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.homeOffsScaled.x); } -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.homeOffsScaled.y); } -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.homeOffsScaled.z); } -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.probeOffsScaled.x); + drawEditSignedFloat3(2, hmiValues.probeOffsScaled.y); - 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); @@ -2635,7 +2626,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; @@ -2646,22 +2637,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); } } } @@ -2669,21 +2660,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); } } } @@ -2691,43 +2682,43 @@ void HMI_Prepare() { switch (select_prepare.now) { case CASE_BACK: select_page.set(1); - Goto_MainMenu(); + gotoMainMenu(); break; case PREPARE_CASE_MOVE: - checkkey = AxisMove; + checkkey = ID_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.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 - Popup_Window_Home(); + popupWindowHome(); break; #if HAS_ZOFFSET_ITEM case PREPARE_CASE_ZOFF: - #if EITHER(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; + #if ANY(HAS_BED_PROBE, BABYSTEPPING) + 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); + encoderRate.enabled = true; #else // Apply workspace offset, making the current position 0,0,0 queue.inject(F("G92X0Y0Z0")); - HMI_AudioFeedback(); + hmiAudioFeedback(); #endif break; #endif @@ -2747,113 +2738,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; @@ -2864,86 +2855,86 @@ 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; + checkkey = ID_TemperatureID; + hmiValues.show_mode = -1; select_temp.reset(); - Draw_Temperature_Menu(); + drawTemperatureMenu(); break; case CONTROL_CASE_MOVE: - checkkey = Motion; + checkkey = ID_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; + checkkey = ID_AdvSet; select_advset.reset(); - Draw_AdvancedSettings_Menu(); + drawAdvancedSettingsMenu(); break; case CONTROL_CASE_INFO: - checkkey = Info; - Draw_Info_Menu(); + checkkey = ID_Info; + drawInfoMenu(); break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if HAS_ONESTEP_LEVELING // Leveling - void HMI_Leveling() { - Popup_Window_Leveling(); - DWIN_UpdateLCD(); + void hmiLeveling() { + popupWindowLeveling(); + dwinUpdateLCD(); #if defined(MAIN_MENU_ITEM_1_GCODE) queue.inject(F(MAIN_MENU_ITEM_1_GCODE)); #else @@ -2953,22 +2944,22 @@ void HMI_Control() { #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.moveScaled.e = current_position.e * MINUNITMULT; + drawMoveMenu(); + 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(); } return; } @@ -2976,260 +2967,267 @@ 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) { case CASE_BACK: - checkkey = Prepare; + checkkey = ID_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; - 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; - 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; - 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(); - 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; - 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 } } - 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) { case CASE_BACK: - checkkey = Control; + checkkey = ID_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; + 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; - HMI_ValueStruct.Bed_Temp = thermalManager.degTargetBed(); - Draw_Edit_Integer3(2, HMI_ValueStruct.Bed_Temp, true); - EncoderRate.enabled = 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; - HMI_ValueStruct.Fan_speed = thermalManager.fan_speed[0]; - Draw_Edit_Integer3(3, HMI_ValueStruct.Fan_speed, true); - EncoderRate.enabled = 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(); - 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 #if PREHEAT_COUNT > 1 case TEMP_CASE_ABS: { // ABS preheat setting - checkkey = ABSPreheat; + checkkey = ID_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; @@ -3237,42 +3235,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" @@ -3284,49 +3282,49 @@ void Draw_Max_Speed_Menu() { #endif } - Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) 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" @@ -3338,54 +3336,54 @@ void Draw_Max_Accel_Menu() { #endif } - Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) 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(); + void drawMaxJerkMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Jerk" + if (hmiIsChinese()) { + dwinFrameTitleCopy(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 + 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 @@ -3397,46 +3395,46 @@ void Draw_Max_Accel_Menu() { #endif } - Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) 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" @@ -3448,66 +3446,66 @@ void Draw_Steps_Menu() { #endif } - Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) 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) { case CASE_BACK: - checkkey = Control; + checkkey = ID_Control; select_control.set(CONTROL_CASE_MOVE); index_control = MROWS; - Draw_Control_Menu(); + drawControlMenu(); break; case MOTION_CASE_RATE: - checkkey = MaxSpeed; + checkkey = ID_MaxSpeed; select_speed.reset(); - Draw_Max_Speed_Menu(); + drawMaxSpeedMenu(); break; case MOTION_CASE_ACCEL: - checkkey = MaxAcceleration; + checkkey = ID_MaxAcceleration; select_acc.reset(); - Draw_Max_Accel_Menu(); + drawMaxAccelMenu(); break; #if HAS_CLASSIC_JERK case MOTION_CASE_JERK: - checkkey = MaxJerk; + checkkey = ID_MaxJerk; select_jerk.reset(); - Draw_Max_Jerk_Menu(); + drawMaxJerkMenu(); break; #endif case MOTION_CASE_STEPS: - checkkey = Step; + checkkey = ID_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; @@ -3518,7 +3516,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; @@ -3526,7 +3524,7 @@ void HMI_AdvSet() { } else { - Move_Highlight(1, select_advset.now + MROWS - index_advset); + moveHighlight(1, select_advset.now + MROWS - index_advset); } } } @@ -3534,44 +3532,44 @@ 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); } } } 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; - Draw_Control_Menu(); + drawControlMenu(); break; #if HAS_HOME_OFFSET case ADVSET_CASE_HOMEOFF: - checkkey = HomeOff; + checkkey = ID_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.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(); - HMI_ValueStruct.Probe_OffX_scaled = probe.offset.x * 10; - HMI_ValueStruct.Probe_OffY_scaled = probe.offset.y * 10; - Draw_ProbeOff_Menu(); + hmiValues.probeOffsScaled.x = probe.offset.x * 10; + hmiValues.probeOffsScaled.y = probe.offset.y * 10; + drawProbeOffMenu(); break; #endif @@ -3590,153 +3588,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; + checkkey = ID_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; + checkkey = ID_HomeOffX; + drawEditSignedFloat3(1, hmiValues.homeOffsScaled.x, 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; + checkkey = ID_HomeOffY; + drawEditSignedFloat3(2, hmiValues.homeOffsScaled.y, 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; + checkkey = ID_HomeOffZ; + drawEditSignedFloat3(3, hmiValues.homeOffsScaled.z, 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)) { - checkkey = HomeOff; - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, posScaled)) { + checkkey = ID_HomeOff; + 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.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 #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; + checkkey = ID_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; + checkkey = ID_ProbeOffX; + drawEditSignedFloat3(1, hmiValues.probeOffsScaled.x, 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; + checkkey = ID_ProbeOffY; + drawEditSignedFloat3(2, hmiValues.probeOffsScaled.y, 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)) { - checkkey = ProbeOff; - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, posScaled)) { + checkkey = ID_ProbeOff; + 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.probeOffsScaled.x, probe.offset.x); } + void hmiProbeOffY() { hmiProbeOffN(hmiValues.probeOffsScaled.y, 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; + checkkey = ID_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; @@ -3745,359 +3743,359 @@ 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; + 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; - HMI_ValueStruct.E_Temp = thermalManager.degTargetHotend(0); - Draw_Edit_Integer3(TUNE_CASE_TEMP + MROWS - index_tune, HMI_ValueStruct.E_Temp, true); - EncoderRate.enabled = 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; - HMI_ValueStruct.Bed_Temp = thermalManager.degTargetBed(); - Draw_Edit_Integer3(TUNE_CASE_BED + MROWS - index_tune, HMI_ValueStruct.Bed_Temp, true); - EncoderRate.enabled = 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; - 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; + 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 EITHER(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; + #if ANY(HAS_BED_PROBE, BABYSTEPPING) + checkkey = ID_HomeOffset; + 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; + checkkey = ID_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; + 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; - 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; + 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; - 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; + 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; #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; + checkkey = ID_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; + 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; - 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; + 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; - 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; + 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; #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; + checkkey = ID_MaxSpeedValue; + hmiFlag.feedspeed_axis = AxisEnum(select_speed.now - 1); + 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; - 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; + checkkey = ID_MaxAccelerationValue; + hmiFlag.acc_axis = AxisEnum(select_acc.now - 1); + 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; - 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; + checkkey = ID_MaxJerkValue; + hmiFlag.jerk_axis = AxisEnum(select_jerk.now - 1); + 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; - 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; + checkkey = ID_StepValue; + hmiFlag.step_axis = AxisEnum(select_step.now - 1); + 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; - 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, 450); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 450, 257, 470); - DWIN_UpdateLCD(); + dwinIconShow(ICON, ICON_Bar, 15, 450); + dwinDrawRectangle(1, COLOR_BG_BLACK, 15 + t * 242 / 100, 450, 257, 470); + 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(); 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 (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()); @@ -4105,22 +4103,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()); @@ -4129,192 +4127,192 @@ 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 last_cardpercentValue = card_pct; if (card_pct) { _card_percent = card_pct; - Draw_Print_ProgressBar(); + drawPrintProgressBar(); } } - 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; 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.printSpeed = 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; - 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); - 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); + hmiFlag.select_flag = sel; + 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 ? COLOR_SELECT : COLOR_BG_WINDOW; + 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, COLOR_POPUP_TEXT, 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 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 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: HMI_HomeOff(); break; - case HomeOffX: HMI_HomeOffX(); break; - case HomeOffY: HMI_HomeOffY(); break; - case HomeOffZ: HMI_HomeOffZ(); 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: HMI_ProbeOff(); break; - case ProbeOffX: HMI_ProbeOffX(); break; - case ProbeOffY: HMI_ProbeOffY(); break; + case ID_ProbeOff: hmiProbeOff(); break; + case ID_ProbeOffX: hmiProbeOffX(); break; + case ID_ProbeOffY: hmiProbeOffY(); break; #endif - case Info: HMI_Info(); break; - case Tune: HMI_Tune(); break; + case ID_Info: hmiInfo(); break; + case ID_Tune: hmiTune(); break; #if HAS_PREHEAT - case PLAPreheat: HMI_PLAPreheatSetting(); break; + case ID_PLAPreheat: hmiPLAPreheatSetting(); break; #if PREHEAT_COUNT > 1 - case ABSPreheat: HMI_ABSPreheatSetting(); break; + case ID_ABSPreheat: hmiABSPreheatSetting(); break; #endif #endif - case MaxSpeed: HMI_MaxSpeed(); break; - case MaxAcceleration: HMI_MaxAcceleration(); break; + case ID_MaxSpeed: hmiMaxSpeed(); break; + case ID_MaxAcceleration: hmiMaxAcceleration(); break; #if HAS_CLASSIC_JERK - case MaxJerk: HMI_MaxJerk(); break; + case ID_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 ID_Step: hmiStep(); break; + case ID_MoveX: hmiMoveX(); break; + case ID_MoveY: hmiMoveY(); break; + case ID_MoveZ: hmiMoveZ(); break; #if HAS_HOTEND - case Extruder: HMI_Move_E(); break; - case ETemp: HMI_ETemp(); break; + case ID_Extruder: hmiMoveE(); break; + case ID_ETemp: hmiETemp(); break; #endif - #if EITHER(HAS_BED_PROBE, BABYSTEPPING) - case Homeoffset: HMI_Zoffset(); break; + #if ANY(HAS_BED_PROBE, BABYSTEPPING) + case ID_HomeOffset: hmiZoffset(); break; #endif #if HAS_HEATED_BED - case BedTemp: HMI_BedTemp(); break; + case ID_BedTemp: hmiBedTemp(); break; #endif #if HAS_PREHEAT && HAS_FAN - case FanSpeed: HMI_FanSpeed(); break; + case ID_FanSpeed: hmiFanSpeed(); break; #endif - case PrintSpeed: HMI_PrintSpeed(); break; - case MaxSpeed_value: HMI_MaxFeedspeedXYZE(); break; - case MaxAcceleration_value: HMI_MaxAccelerationXYZE(); break; + case ID_PrintSpeed: hmiPrintSpeed(); break; + case ID_MaxSpeedValue: hmiMaxFeedspeedXYZE(); break; + case ID_MaxAccelerationValue: hmiMaxAccelerationXYZE(); break; #if HAS_CLASSIC_JERK - case MaxJerk_value: HMI_MaxJerkXYZE(); break; + case ID_MaxJerkValue: hmiMaxJerkXYZE(); break; #endif - case Step_value: HMI_StepXYZE(); break; + case ID_StepValue: 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; + if (checkkey == ID_LastPrepare) { + checkkey = ID_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; + else if (checkkey == ID_BackMain) { + hmiValues.printSpeed = feedrate_percentage = 100; planner.finish_and_disable(); - Goto_MainMenu(); + gotoMainMenu(); } } -void DWIN_LevelingDone() { - if (checkkey == Leveling) Goto_MainMenu(); +void dwinLevelingDone() { + if (checkkey == ID_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 487f309ed9..17a7a965ee 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.h +++ b/Marlin/src/lcd/e3v2/creality/dwin.h @@ -27,75 +27,63 @@ #include "dwin_lcd.h" #include "../common/encoder.h" +#include "../common/limits.h" #include "../../../libs/BL24CXX.h" #include "../../../inc/MarlinConfigPre.h" 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; @@ -106,33 +94,55 @@ 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; -} HMI_value_t; + 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 #define DWIN_ENGLISH 0 @@ -150,100 +160,94 @@ 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 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 HMI_SDCardInit(); -void HMI_SDCardUpdate(); - -// Main Process -void Icon_print(bool value); -void Icon_control(bool value); -void Icon_temperature(bool value); -void Icon_leveling(bool value); +void hmiSDCardInit(); +void hmiSDCardUpdate(); // 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 3d60e32a79..649e1b4771 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 b37a65977c..b60fe2970d 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/README.md b/Marlin/src/lcd/e3v2/jyersui/README.md index 91f25e2433..09055d03a4 100644 --- a/Marlin/src/lcd/e3v2/jyersui/README.md +++ b/Marlin/src/lcd/e3v2/jyersui/README.md @@ -1,6 +1,6 @@ -# DWIN for Creality Ender 3 v2 +# DWIN for Creality Ender-3 v2 -Marlin's Ender 3 v2 support requires the `DWIN_SET` included with the Ender 3 V2 [example configuration](https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.1.x/config/examples/Creality/Ender-3%20V2). +Marlin's Ender-3 v2 support requires the `DWIN_SET` included with the Ender-3 V2 [example configuration](https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.1.x/config/examples/Creality/Ender-3%20V2). ## Easy Install diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 0f78e58ef5..5156848a43 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -38,7 +38,6 @@ #include "../../../module/planner.h" #include "../../../module/settings.h" #include "../../../libs/buzzer.h" -#include "../../../inc/Conditionals_post.h" //#define DEBUG_OUT 1 #include "../../../core/debug_out.h" @@ -59,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 @@ -128,9 +123,14 @@ #define MIN_BED_TEMP 0 #endif -/** - * Custom menu items with jyersLCD - */ +#define FEEDRATE_UNIT 1 +#define ACCELERATION_UNIT 1 +#define JERK_UNIT 10 +#define STEPS_UNIT 10 + +// +// Custom menu items with JyersLCD +// #if ENABLED(CUSTOM_MENU_CONFIG) #ifdef CONFIG_MENU_ITEM_5_DESC #define CUSTOM_MENU_COUNT 5 @@ -156,13 +156,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, @@ -176,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; @@ -190,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; @@ -203,13 +195,13 @@ 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; bool probe_deployed = false; -CrealityDWINClass CrealityDWIN; +JyersDWIN jyersDWIN; template class TextScroller { @@ -262,7 +254,7 @@ private: #if HAS_MESH - struct Mesh_Settings { + struct { bool viewer_asymmetric_range = false; bool viewer_print_value = false; bool goto_mesh_value = false; @@ -273,13 +265,14 @@ private: #if ENABLED(AUTO_BED_LEVELING_UBL) 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); + 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) { @@ -298,29 +291,17 @@ private: 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); } @@ -331,9 +312,10 @@ private: #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); + void manualValueUpdate() { + gcode.process_subcommands_now( + TS(F("G29I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)) + ); planner.synchronize(); } @@ -347,20 +329,18 @@ private: planner.synchronize(); } else { - CrealityDWIN.Popup_Handler(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); + 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(); 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(); + jyersDWIN.redrawMenu(); } } - 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) @@ -369,7 +349,7 @@ private: 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) @@ -378,32 +358,31 @@ private: 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 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), 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 - 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 - 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; 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/ - isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined + 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 (uint16_t)round(0x3F * bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_max)) << 5) | // green if mesh point value is positive @@ -418,17 +397,18 @@ private: 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 + 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)) - 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*/, msg); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -436,379 +416,359 @@ private: } } - void 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]; + void setMeshViewerStatus() { // TODO: draw gradient with values as a legend instead + float v1, v2, + v_min = abs(getMinValue()), + v_max = abs(getMaxValue()); 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.Update_Status(msg); + jyersDWIN.updateStatus(TS(F("Red "), p_float_t(v1, 3) , F("..0.."), p_float_t(v2, 3), F(" Green"))); drawing_mesh = false; } - }; - Mesh_Settings mesh_conf; + } mesh_conf; #endif // HAS_MESH -/* General Display Functions */ +// +// 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 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 CrealityDWINClass::Clear_Screen(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 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 CrealityDWINClass::Draw_Float(float value, uint8_t row, bool selected/*=false*/, 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 bColor = selected ? COLOR_SELECT : 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(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; - 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]); +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 ? 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 CrealityDWINClass::GetColor(uint8_t color, uint16_t original, 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; + return COLOR_WHITE; } -void CrealityDWINClass::Draw_Title(const char * 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 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 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 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 _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(jyersDWIN.getColor(jyersDWIN.eeprom_settings.menu_split_line, COLOR_LINE, 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*/) { - 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) 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(uint8_t row, uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, bool more/*=false*/, 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) 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(uint8_t row, 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); +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 - 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(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 } -void CrealityDWINClass::Draw_Menu(uint8_t menu, uint8_t select/*=0*/, 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; + if (process == Proc_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; + if (selection - scrollpos > MROWS) scrollpos = selection - MROWS; // i.e., NOLESS(scrollpos, selection - MROWS); + process = Proc_Menu; active_menu = menu; - Clear_Screen(); - Draw_Title(Get_Menu_Title(menu)); - LOOP_L_N(i, TROWS) 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, COLOR_RECTANGLE), 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) { - case Menu: - Draw_Menu((lastmenu) ? last_menu : active_menu, (lastselection) ? last_selection : selection, (lastmenu) ? 0 : scrollpos); +void JyersDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { + switch (lastproc ? last_process : process) { + case Proc_Menu: + drawMenu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); break; - case Main: Draw_Main_Menu((lastselection) ? last_selection : selection); break; - case Print: Draw_Print_Screen(); break; - case File: Draw_SD_List(); break; + case Proc_Main: drawMainMenu(lastsel ? last_selection : selection); break; + case Proc_Print: drawPrintScreen(); break; + case Proc_File: drawSDList(); break; default: break; } } -void CrealityDWINClass::Redraw_Screen() { - Redraw_Menu(false); - Draw_Status_Area(true); - Update_Status_Bar(true); +void JyersDWIN::redrawScreen() { + redrawMenu(false); + drawStatusArea(true); + updateStatusBar(true); } -/* Primary Menus and Screen Elements */ - -void CrealityDWINClass::Main_Menu_Icons() { +// +// Primary Menus and Screen Elements +// +void JyersDWIN::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(uint8_t select/*=0*/) { - process = Main; - active_menu = MainMenu; +void JyersDWIN::drawMainMenu(const uint8_t select/*=0*/) { + process = Proc_Main; + active_menu = ID_MainMenu; selection = select; - Clear_Screen(); - Draw_Title(Get_Menu_Title(MainMenu)); + clearScreen(); + drawTitle(getMenuTitle(ID_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 JyersDWIN::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() { - process = Print; +void JyersDWIN::drawPrintScreen() { + process = Proc_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 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); - 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 JyersDWIN::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, 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 CrealityDWINClass::Draw_Print_ProgressRemain() { + void JyersDWIN::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 JyersDWIN::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(); - 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); +void JyersDWIN::drawPrintConfirm() { + drawPrintScreen(); + 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); } -void CrealityDWINClass::Draw_SD_Item(uint8_t item, uint8_t row) { +void JyersDWIN::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.getfilename_sorted(SD_ORDER(item - 1, card.get_num_Files())); + card.selectFileByIndexSorted(item - 1); char * const filename = card.longest_filename(); size_t max = MENU_CHAR_LIMIT; size_t pos = strlen(filename), len = pos; @@ -817,35 +777,35 @@ void CrealityDWINClass::Draw_SD_Item(uint8_t item, 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); + drawMenuItem(row, card.flag.filenameIsDir ? ICON_More : ICON_File, name); } } -void CrealityDWINClass::Draw_SD_List(bool removed/*=false*/) { - Clear_Screen(); - Draw_Title("Select File"); +void JyersDWIN::drawSDList(const bool removed/*=false*/) { + clearScreen(); + drawTitle("Select File"); selection = 0; scrollpos = 0; - process = File; + process = Proc_File; if (card.isMounted() && !removed) { - LOOP_L_N(i, _MIN(card.get_num_Files() + 1, TROWS)) - Draw_SD_Item(i, i); + for (uint8_t i = 0; i < _MIN(card.get_num_items() + 1, TROWS); ++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, COLOR_RECTANGLE), 0, MBASE(0) - 18, 14, MBASE(0) + 33); } -void CrealityDWINClass::Draw_Status_Area(bool icons/*=false*/) { +void JyersDWIN::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; @@ -853,27 +813,27 @@ void CrealityDWINClass::Draw_Status_Area(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); + 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; - 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); + 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) { 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 @@ -883,18 +843,18 @@ void CrealityDWINClass::Draw_Status_Area(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); + 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; - 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); + 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 @@ -902,11 +862,11 @@ void CrealityDWINClass::Draw_Status_Area(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 @@ -915,24 +875,24 @@ void CrealityDWINClass::Draw_Status_Area(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; @@ -942,75 +902,75 @@ void CrealityDWINClass::Draw_Status_Area(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, 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); } 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*/) { - if (process != Confirm && process != Popup && process != Wait) last_process = process; - if ((process == Menu || process == Wait) && mode == Popup) last_selection = selection; +void JyersDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { + 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; - Clear_Screen(); - DWIN_Draw_Rectangle(0, Color_White, 13, 59, 259, 351); - DWIN_Draw_Rectangle(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 (mode == Popup) { + clearScreen(); + 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, 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; - 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, 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) { - 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")); + 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) { - CrealityDWIN.Draw_Popup(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 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); - 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 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); + 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(bool refresh/*=false*/) { +void JyersDWIN::updateStatusBar(const bool refresh/*=false*/) { typedef TextScroller<30> Scroller; static bool new_msg; static Scroller scroller; @@ -1025,22 +985,24 @@ void CrealityDWINClass::Update_Status_Bar(bool refresh/*=false*/) { const char* dispmsg = scroller.scroll(len, buf, statusmsg, &new_msg); if (new_msg) { new_msg = false; - if (process == Print) { - DWIN_Draw_Rectangle(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; - 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 */ +// +// Menu Item Config +// -void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, 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; @@ -1058,38 +1020,38 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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 } @@ -1098,7 +1060,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #endif switch (menu) { - case Prepare: + case ID_Prepare: #define PREPARE_BACK 0 #define PREPARE_MOVE (PREPARE_BACK + 1) @@ -1107,7 +1069,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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 @@ -1115,54 +1077,54 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(ID_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(Popup_Home); gcode.home_all_axes(true); } #if HAS_LEVELING level_state = planner.leveling_active; set_bed_leveling_enabled(false); #endif - Draw_Menu(ManualLevel); + drawMenu(ID_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(ID_ZOffset); } break; #endif @@ -1170,16 +1132,16 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(ID_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; @@ -1191,16 +1153,16 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(ID_MenuCustom); break; #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) case PREPARE_CHANGEFIL: if (draw) { - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Change Filament") + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE) #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) , nullptr, true #endif @@ -1208,18 +1170,17 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ } else { #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - Draw_Menu(ChangeFilament); + drawMenu(ID_ChangeFilament); #else - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + if (thermalManager.targetTooColdToExtrude(0)) + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_FilChange); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); } #endif } @@ -1228,7 +1189,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ } break; - case HomeMenu: + case ID_HomeMenu: #define HOME_BACK 0 #define HOME_ALL (HOME_BACK + 1) @@ -1241,61 +1202,61 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(Popup_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(Popup_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(Popup_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(Popup_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; } break; - case Move: + case ID_Move: #define MOVE_BACK 0 #define MOVE_X (MOVE_BACK + 1) @@ -1309,61 +1270,61 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); + if (thermalManager.targetTooColdToExtrude(0)) { + popupHandler(Popup_ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_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; @@ -1372,30 +1333,30 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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_deployed ^= true; 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); + livemove ^= true; + drawCheckbox(row, livemove); } break; } break; - case ManualLevel: + case ID_ManualLevel: { #define MLEVEL_BACK 0 #define MLEVEL_PROBE (MLEVEL_BACK + ENABLED(HAS_BED_PROBE)) @@ -1410,158 +1371,182 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ static float mlev_z_pos = 0; static bool use_probe = false; + #if HAS_BED_PROBE + 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) { 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(ID_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 = !use_probe; - Draw_Checkbox(row, use_probe); + use_probe ^= true; + drawCheckbox(row, use_probe); if (use_probe) { - Popup_Handler(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 }, + { { 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(); + redrawMenu(); } } break; #endif + case MLEVEL_BL: if (draw) - Draw_Menu_Item(row, ICON_AxisBL, F("Bottom Left")); + drawMenuItem(row, ICON_AxisBL, GET_TEXT_F(MSG_BOTTOM_LEFT)); else { - Popup_Handler(MoveWait); + popupHandler(Popup_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(); - Popup_Handler(ManualProbing); + popupHandler(Popup_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(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_TL: if (draw) - Draw_Menu_Item(row, ICON_AxisTL, F("Top Left")); + drawMenuItem(row, ICON_AxisTL, GET_TEXT_F(MSG_TOP_LEFT)); else { - Popup_Handler(MoveWait); + popupHandler(Popup_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(); - Popup_Handler(ManualProbing); + popupHandler(Popup_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(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_TR: if (draw) - Draw_Menu_Item(row, ICON_AxisTR, F("Top Right")); + drawMenuItem(row, ICON_AxisTR, GET_TEXT_F(MSG_TOP_RIGHT)); else { - Popup_Handler(MoveWait); + popupHandler(Popup_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(); - Popup_Handler(ManualProbing); + popupHandler(Popup_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(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_BR: if (draw) - Draw_Menu_Item(row, ICON_AxisBR, F("Bottom Right")); + drawMenuItem(row, ICON_AxisBR, GET_TEXT_F(MSG_BOTTOM_RIGHT)); else { - Popup_Handler(MoveWait); + popupHandler(Popup_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(); - Popup_Handler(ManualProbing); + popupHandler(Popup_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(); - 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(Popup_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(); - Popup_Handler(ManualProbing); + popupHandler(Popup_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(); - 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; } - break; + + } break; + #if HAS_ZOFFSET_ITEM - case ZOffset: + case ID_ZOffset: #define ZOFFSET_BACK 0 #define ZOFFSET_HOME (ZOFFSET_BACK + 1) @@ -1575,70 +1560,72 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); - gcode.process_subcommands_now(F("G28 Z")); - Popup_Handler(MoveWait); + popupHandler(Popup_Home); + gcode.process_subcommands_now(F("G28Z")); + popupHandler(Popup_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(); - 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(Popup_Home); gcode.home_all_axes(true); } - Popup_Handler(MoveWait); + popupHandler(Popup_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(); - Redraw_Menu(); + redrawMenu(); } - liveadjust = !liveadjust; - Draw_Checkbox(row, liveadjust); + liveadjust ^= true; + 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) { @@ -1646,13 +1633,13 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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) { @@ -1660,16 +1647,16 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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 } @@ -1677,7 +1664,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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)) @@ -1695,23 +1682,23 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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; @@ -1721,7 +1708,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #endif // HAS_PREHEAT #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: + case ID_ChangeFilament: #define CHANGEFIL_BACK 0 #define CHANGEFIL_LOAD (CHANGEFIL_BACK + 1) @@ -1732,61 +1719,60 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_Prepare, PREPARE_CHANGEFIL); break; case CHANGEFIL_LOAD: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Load Filament")); + drawMenuItem(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + if (thermalManager.targetTooColdToExtrude(0)) + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilLoad); + popupHandler(Popup_FilLoad); gcode.process_subcommands_now(F("M701")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case CHANGEFIL_UNLOAD: if (draw) - Draw_Menu_Item(row, ICON_ReadEEPROM, F("Unload Filament")); + drawMenuItem(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { - Popup_Handler(ETemp); + if (thermalManager.targetTooColdToExtrude(0)) { + popupHandler(Popup_ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilLoad, true); + popupHandler(Popup_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, F("Change Filament")); + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + if (thermalManager.targetTooColdToExtrude(0)) + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_FilChange); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.degTargetHotend(0))); } } break; @@ -1796,7 +1782,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #if HAS_CUSTOM_MENU - case MenuCustom: + case ID_MenuCustom: #define CUSTOM_MENU_BACK 0 #define CUSTOM_MENU_1 1 @@ -1809,23 +1795,23 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(Popup_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)); @@ -1837,14 +1823,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(Popup_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)); @@ -1856,14 +1842,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(Popup_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)); @@ -1875,14 +1861,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(Popup_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)); @@ -1894,14 +1880,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(Popup_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)); @@ -1914,7 +1900,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #endif // HAS_CUSTOM_MENU - case Control: + case ID_Control: #define CONTROL_BACK 0 #define CONTROL_TEMP (CONTROL_BACK + 1) @@ -1930,73 +1916,74 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(ID_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(ID_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(ID_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(ID_Info); break; } break; - case TempMenu: + case ID_TempMenu: #define TEMP_BACK 0 #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)) @@ -2006,65 +1993,73 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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.degTargetHotend(0), 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.degTargetBed(), 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 + #if ANY(PIDTEMP, PIDTEMPBED) 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(ID_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(ID_MPC); 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(ID_Preheat##N); \ } break; REPEAT_1(PREHEAT_COUNT, _TEMP_PREHEAT_CASE) } break; - #if HAS_HOTEND || HAS_HEATED_BED - case PID: + #if ANY(PIDTEMP, PIDTEMPBED) + case ID_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 @@ -2073,40 +2068,40 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_TempMenu, TEMP_PID); break; - #if HAS_HOTEND + #if ENABLED(PIDTEMP) 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(ID_HotendPID); break; #endif - #if HAS_HEATED_BED + #if ENABLED(PIDTEMPBED) 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(ID_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; - #endif // HAS_HOTEND || HAS_HEATED_BED + #endif // PIDTEMP || PIDTEMPBED - #if HAS_HOTEND - case HotendPID: + #if ENABLED(PIDTEMP) + case ID_HotendPID: #define HOTENDPID_BACK 0 #define HOTENDPID_TUNE (HOTENDPID_BACK + 1) @@ -2121,59 +2116,58 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); - sprintf_P(cmd, PSTR("M303 E0 C%i S%i U1"), PID_cycles, PID_e_temp); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_PIDWait); + gcode.process_subcommands_now(TS(F("M303E0C"), PID_cycles, 'S', PID_e_temp, 'U')); 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; - #endif // HAS_HOTEND + #endif // PIDTEMP - #if HAS_HEATED_BED - case BedPID: + #if ENABLED(PIDTEMPBED) + case ID_BedPID: #define BEDPID_BACK 0 #define BEDPID_TUNE (BEDPID_BACK + 1) @@ -2188,64 +2182,150 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); - sprintf_P(cmd, PSTR("M303 E-1 C%i S%i U1"), PID_cycles, PID_bed_temp); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_PIDWait); + gcode.process_subcommands_now(TS(F("M303E-1C"), PID_cycles, 'S', PID_bed_temp, 'U')); 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); - } - else { - Modify_Value(thermalManager.temp_bed.pid.Kp, 0, 5000, 100, thermalManager.updatePID); + 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.temp_bed.pid.reset(); }); 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.temp_bed.pid.reset(); }); 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.temp_bed.pid.reset(); }); break; } break; - #endif // HAS_HEATED_BED + #endif // PIDTEMPBED + + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + case ID_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(ID_TempMenu, TEMP_MPC); + break; + + #if ENABLED(MPC_AUTOTUNE_MENU) + case MPCMENU_AUTOTUNE: + if (draw) + drawMenuItem(row, ICON_HotendTemp, F("Autotune")); + else { + popupHandler(Popup_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; + #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) @@ -2259,56 +2339,56 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(ID_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(ID_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(ID_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(ID_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(ID_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 } break; - case HomeOffsets: + case ID_HomeOffsets: #define HOMEOFFSETS_BACK 0 #define HOMEOFFSETS_XOFFSET (HOMEOFFSETS_BACK + 1) @@ -2318,29 +2398,29 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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; - case MaxSpeed: + case ID_MaxSpeed: #define SPEED_BACK 0 #define SPEED_X (SPEED_BACK + 1) @@ -2352,55 +2432,57 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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); - 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); + drawMenu(ID_Motion, MOTION_SPEED); break; + #if HAS_X_AXIS + case SPEED_X: + if (draw) { + drawMenuItem(row, ICON_MaxSpeedX, F("X Axis")); + drawFloat(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, FEEDRATE_UNIT); + } + else + 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, 1); + 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], 0, default_max_feedrate[Y_AXIS] * 2, 1); + 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, 1); + 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], 0, default_max_feedrate[Z_AXIS] * 2, 1); + 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, 1); + 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], 0, default_max_feedrate[E_AXIS] * 2, 1); + modifyValue(planner.settings.max_feedrate_mm_s[E_AXIS], min_feedrate_edit_values.e, max_feedrate_edit_values.e, FEEDRATE_UNIT); break; #endif } break; - case MaxAcceleration: + case ID_MaxAcceleration: #define ACCEL_BACK 0 #define ACCEL_X (ACCEL_BACK + 1) @@ -2412,48 +2494,48 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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, 1); + 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], 0, default_max_acceleration[X_AXIS] * 2, 1); + 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, 1); + 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], 0, default_max_acceleration[Y_AXIS] * 2, 1); + 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, 1); + 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], 0, default_max_acceleration[Z_AXIS] * 2, 1); + 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, 1); + 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], 0, default_max_acceleration[E_AXIS] * 2, 1); + modifyValue(planner.settings.max_acceleration_mm_per_s2[E_AXIS], min_acceleration_edit_values.e, max_acceleration_edit_values.e, ACCELERATION_UNIT); break; #endif } break; #if HAS_CLASSIC_JERK - case MaxJerk: + case ID_MaxJerk: #define JERK_BACK 0 #define JERK_X (JERK_BACK + 1) @@ -2465,48 +2547,54 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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); - 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); + drawMenu(ID_Motion, MOTION_JERK); break; + #if HAS_X_AXIS + case JERK_X: + if (draw) { + drawMenuItem(row, ICON_MaxSpeedJerkX, F("X Axis")); + drawFloat(planner.max_jerk.x, row, false, JERK_UNIT); + } + else + 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) { + drawMenuItem(row, ICON_MaxSpeedJerkY, F("Y Axis")); + drawFloat(planner.max_jerk.y, row, false, JERK_UNIT); + } + else + 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) { + drawMenuItem(row, ICON_MaxSpeedJerkZ, F("Z Axis")); + drawFloat(planner.max_jerk.z, row, false, JERK_UNIT); + } + else + 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, 10); + drawMenuItem(row, ICON_MaxSpeedJerkE, F("Extruder")); + drawFloat(planner.max_jerk.e, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.e, 0, default_max_jerk[E_AXIS] * 2, 10); + modifyValue(planner.max_jerk.e, min_jerk_edit_values.e, max_jerk_edit_values.e, JERK_UNIT); break; #endif } break; #endif - case Steps: + case ID_Steps: #define STEPS_BACK 0 #define STEPS_X (STEPS_BACK + 1) @@ -2518,48 +2606,54 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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); - 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); + drawMenu(ID_Motion, MOTION_STEPS); break; + #if HAS_X_AXIS + case STEPS_X: + if (draw) { + drawMenuItem(row, ICON_StepX, F("X Axis")); + drawFloat(planner.settings.axis_steps_per_mm[X_AXIS], row, false, STEPS_UNIT); + } + else + 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) { + drawMenuItem(row, ICON_StepY, F("Y Axis")); + drawFloat(planner.settings.axis_steps_per_mm[Y_AXIS], row, false, STEPS_UNIT); + } + else + 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) { + drawMenuItem(row, ICON_StepZ, F("Z Axis")); + drawFloat(planner.settings.axis_steps_per_mm[Z_AXIS], row, false, STEPS_UNIT); + } + else + 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, 10); + 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], 0, 1000, 10); + modifyValue(planner.settings.axis_steps_per_mm[E_AXIS], min_steps_edit_values.e, max_steps_edit_values.e, STEPS_UNIT); break; #endif } break; - case Visual: + case ID_Visual: #define VISUAL_BACK 0 #define VISUAL_BACKLIGHT (VISUAL_BACK + 1) @@ -2571,44 +2665,44 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); + eeprom_settings.time_format_textual ^= true; + 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(ID_ColorSettings); break; } break; - case ColorSettings: + case ID_ColorSettings: #define COLORSETTINGS_BACK 0 #define COLORSETTINGS_CURSOR (COLORSETTINGS_BACK + 1) @@ -2627,102 +2721,102 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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; - case Advanced: + case ID_Advanced: #define ADVANCED_BACK 0 #define ADVANCED_BEEPER (ADVANCED_BACK + ENABLED(SOUND_MENU_ITEM)) @@ -2741,20 +2835,20 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); + ui.sound_on ^= true; + drawCheckbox(row, ui.sound_on); } break; #endif @@ -2762,68 +2856,68 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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(ID_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(ID_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; @@ -2832,23 +2926,23 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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); + runout.enabled ^= true; + 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 @@ -2856,12 +2950,12 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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 @@ -2869,7 +2963,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ break; #if HAS_BED_PROBE - case ProbeMenu: + case ID_ProbeMenu: #define PROBE_BACK 0 #define PROBE_XOFFSET (PROBE_BACK + 1) @@ -2883,49 +2977,50 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); + 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: 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; #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)) @@ -2938,9 +3033,9 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_Advanced, ADVANCED_TMC); break; #if AXIS_IS_TMC(X) @@ -2949,69 +3044,62 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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 #if AXIS_IS_TMC(Y) case TMC_STEPPER_CURRENT_Y: - 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 #if AXIS_IS_TMC(Z) case TMC_STEPPER_CURRENT_Z: - 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 #if AXIS_IS_TMC(E0) case TMC_STEPPER_CURRENT_E: - 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); - } - else { - Modify_Value(stepper_current_e, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperE0.rms_current(stepper_current_e); }); + drawFloat(stepper_current_e, row, false, 1); } + else + modifyValue(stepper_current_e, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperE0.rms_current(stepper_current_e); }); break; #endif }; 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)) @@ -3024,43 +3112,46 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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]; + 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)); - Draw_Menu_Item(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); - Draw_Menu_Item(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); + if (menu == ID_Info) + drawMenu(ID_Control, CONTROL_INFO); else - Draw_Main_Menu(3); + drawMainMenu(3); } break; } break; #if HAS_MESH - case Leveling: + case ID_Leveling: #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) @@ -3073,119 +3164,118 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(Popup_LevelError); break; } } else set_bed_leveling_enabled(!planner.leveling_active); - Draw_Checkbox(row, planner.leveling_active); + drawCheckbox(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")); + drawMenuItem(row, ICON_Tilt, F("Autotilt Current Mesh")); else { if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } - Popup_Handler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); - Popup_Handler(Level); + popupHandler(Popup_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(); - 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(Popup_Home); gcode.home_all_axes(true); #if ENABLED(AUTO_BED_LEVELING_UBL) #if ENABLED(PREHEAT_BEFORE_LEVELING) - Popup_Handler(Heating); + popupHandler(Popup_Heating); probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, LEVELING_BED_TEMP); #endif #if HAS_BED_PROBE - Popup_Handler(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")); + 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(); - Update_Status("Probed all reachable points"); - Popup_Handler(SaveLevel); + updateStatus("Probed all reachable points"); + 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; - Popup_Handler(MoveWait); + popupHandler(Popup_MoveWait); mesh_conf.manual_mesh_move(); - Draw_Menu(UBLMesh); + drawMenu(ID_UBLMesh); #endif #elif HAS_BED_PROBE - Popup_Handler(Level); + popupHandler(Popup_Level); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - Popup_Handler(SaveLevel); + popupHandler(Popup_SaveLevel); #else level_state = planner.leveling_active; set_bed_leveling_enabled(false); gridpoint = 1; - Popup_Handler(MoveWait); + popupHandler(Popup_MoveWait); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - Draw_Menu(ManualMesh); + drawMenu(ID_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(Popup_InvalidMesh); break; } #endif #if ENABLED(AUTO_BED_LEVELING_UBL) if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } #endif if (axes_should_home()) { - Popup_Handler(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) - Popup_Handler(Heating); + popupHandler(Popup_Heating); #if HAS_HOTEND if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); @@ -3197,70 +3287,70 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ TERN_(HAS_HOTEND, thermalManager.wait_for_hotend(0)); TERN_(HAS_HEATED_BED, thermalManager.wait_for_bed_heating()); #endif - Popup_Handler(MoveWait); + popupHandler(Popup_MoveWait); mesh_conf.manual_mesh_move(); - Draw_Menu(LevelManual); + drawMenu(ID_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(Popup_MeshSlot); break; } #endif - Draw_Menu(LevelView); + drawMenu(ID_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(ID_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(Popup_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(Popup_MeshSlot); break; } gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); } break; #endif } break; - case LevelView: + case ID_LevelView: #define LEVELING_VIEW_BACK 0 #define LEVELING_VIEW_MESH (LEVELING_VIEW_BACK + 1) @@ -3271,40 +3361,40 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(ID_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); + mesh_conf.viewer_print_value ^= true; + 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); + mesh_conf.viewer_asymmetric_range ^= true; + drawCheckbox(row, mesh_conf.viewer_asymmetric_range); } break; } break; - case LevelSettings: + case ID_LevelSettings: #define LEVELING_SETTINGS_BACK 0 #define LEVELING_SETTINGS_FADE (LEVELING_SETTINGS_BACK + 1) @@ -3317,17 +3407,17 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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); } @@ -3336,31 +3426,31 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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; + if (mesh_conf.createPlaneFromMesh()) 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; @@ -3368,24 +3458,24 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ } break; - case MeshViewer: + case ID_MeshViewer: #define MESHVIEW_BACK 0 #define MESHVIEW_TOTAL MESHVIEW_BACK 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(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) @@ -3401,32 +3491,32 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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)) @@ -3441,58 +3531,58 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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; + mesh_conf.goto_mesh_value ^= true; 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); + mesh_conf.manualValueUpdate(true); + redrawMenu(false); } break; #endif @@ -3501,7 +3591,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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) @@ -3514,18 +3604,18 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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)) { @@ -3540,14 +3630,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ else { gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); - AudioFeedback(true); - Draw_Menu(Leveling, LEVELING_GET_MESH); + audioFeedback(true); + drawMenu(ID_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)) @@ -3562,37 +3652,37 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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; } @@ -3600,7 +3690,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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) @@ -3613,64 +3703,64 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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(ID_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(Popup_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(ID_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: @@ -3685,22 +3775,22 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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; } break; #endif // PROBE_MANUALLY - case Tune: + case ID_Tune: #define TUNE_BACK 0 #define TUNE_SPEED (TUNE_BACK + 1) @@ -3720,85 +3810,85 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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.degTargetHotend(0), 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.degTargetBed(), 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 @@ -3806,45 +3896,45 @@ 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")); + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else - Popup_Handler(ConfFilChange); + popupHandler(Popup_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); + runout.enabled ^= true; + 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; #if HAS_PREHEAT && HAS_HOTEND - case PreheatHotend: + case ID_PreheatHotend: #define PREHEATHOTEND_BACK 0 #define PREHEATHOTEND_CONTINUE (PREHEATHOTEND_BACK + 1) @@ -3859,50 +3949,48 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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); - thermalManager.set_fan_speed(0, 0); - Redraw_Menu(false, true, true); + TERN_(HAS_FAN, thermalManager.set_fan_speed(0, 0)); + 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(Popup_Heating); thermalManager.wait_for_hotend(0); switch (last_menu) { - case Prepare: - Popup_Handler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + case ID_Prepare: + popupHandler(Popup_FilChange); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); break; #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: + case ID_ChangeFilament: switch (last_selection) { case CHANGEFIL_LOAD: - Popup_Handler(FilLoad); + popupHandler(Popup_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(Popup_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); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_FilChange); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); break; } break; #endif default: - Redraw_Menu(true, true, true); + redrawMenu(true, true, true); break; } } @@ -3911,7 +3999,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #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; @@ -3919,11 +4007,11 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ 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.degTargetHotend(0), 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; @@ -3932,276 +4020,287 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ } } -FSTR_P CrealityDWINClass::Get_Menu_Title(uint8_t menu) { +FSTR_P JyersDWIN::getMenuTitle(const uint8_t menu) { switch (menu) { - case MainMenu: return F("Main Menu"); - case Prepare: return F("Prepare"); - case HomeMenu: return F("Homing Menu"); - case Move: return F("Move"); - case ManualLevel: return F("Manual Leveling"); + 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 F("Z Offset"); + 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 F("Change Filament"); + 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 F("Custom Commands"); + return GET_TEXT_F(MSG_CUSTOM_COMMANDS); #endif #endif - case Control: return F("Control"); - case TempMenu: return F("Temperature"); - #if HAS_HOTEND || HAS_HEATED_BED - case PID: return F("PID Menu"); + case ID_Control: return GET_TEXT_F(MSG_CONTROL); + case ID_TempMenu: return GET_TEXT_F(MSG_TEMPERATURE); + #if ANY(PIDTEMP, PIDTEMPBED) + case ID_PID: return F("PID Menu"); #endif - #if HAS_HOTEND - case HotendPID: return F("Hotend PID Settings"); + #if ENABLED(PIDTEMP) + case ID_HotendPID: return F("Hotend PID Settings"); #endif - #if HAS_HEATED_BED - case BedPID: return F("Bed PID Settings"); + #if ENABLED(PIDTEMPBED) + case ID_BedPID: return F("Bed PID Settings"); + #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_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 F("Steps/mm"); - case Visual: return F("Visual Settings"); - case Advanced: return F("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 F("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 F("Mesh Bed Leveling"); + case ID_ManualMesh: return GET_TEXT_F(MSG_MANUAL_LEVELING); #endif - case Tune: return F("Tune"); - case PreheatHotend: return F("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 CrealityDWINClass::Get_Menu_Size(uint8_t menu) { +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; - #if HAS_HOTEND || HAS_HEATED_BED - case PID: return PID_TOTAL; + case ID_Control: return CONTROL_TOTAL; + case ID_TempMenu: return TEMP_TOTAL; + #if ANY(PIDTEMP, PIDTEMPBED) + case ID_PID: return PID_TOTAL; #endif - #if HAS_HOTEND - case HotendPID: return HOTENDPID_TOTAL; + #if ENABLED(PIDTEMP) + case ID_HotendPID: return HOTENDPID_TOTAL; #endif - #if HAS_HEATED_BED - case BedPID: return BEDPID_TOTAL; + #if ENABLED(PIDTEMPBED) + case ID_BedPID: return BEDPID_TOTAL; + #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + 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; } -/* Popup Config */ +// +// Popup Config +// -void CrealityDWINClass::Popup_Handler(PopupID popupid, bool option/*=false*/) { +void JyersDWIN::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 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; } } -void CrealityDWINClass::Confirm_Handler(PopupID popupid) { +void JyersDWIN::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 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; } } -/* Navigation and Control */ +// +// Navigation and Control +// -void CrealityDWINClass::Main_Menu_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void JyersDWIN::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(ID_Prepare); break; + case PAGE_CONTROL: drawMenu(ID_Control); break; + case PAGE_INFO_LEVELING: drawMenu(TERN(HAS_MESH, ID_Leveling, ID_InfoMain)); break; } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Menu_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void JyersDWIN::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) { + 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, COLOR_RECTANGLE), 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, COLOR_RECTANGLE), 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 JyersDWIN::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(); - if (active_menu == ZOffset && liveadjust) { + process = Proc_Menu; + encoderRate.enabled = false; + drawFloat(tempvalue / valueunit, selection - scrollpos, false, valueunit); + dwinUpdateLCD(); + 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) { - sprintf_P(cmd, PSTR("M290 Z%s"), dtostrf((tempvalue / valueunit - zoffsetvalue), 1, 3, str_1)); - gcode.process_subcommands_now(cmd); + 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(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; @@ -4212,43 +4311,42 @@ void CrealityDWINClass::Value_Control() { 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(); return; } - NOLESS(tempvalue, (valuemin * valueunit)); - NOMORE(tempvalue, (valuemax * valueunit)); - Draw_Float(tempvalue / valueunit, selection - scrollpos, true, valueunit); - DWIN_UpdateLCD(); - if (active_menu == Move && livemove) { + LIMIT(tempvalue, valuemin * valueunit, valuemax * valueunit); + drawFloat(tempvalue / valueunit, selection - scrollpos, true, valueunit); + dwinUpdateLCD(); + if (active_menu == ID_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 JyersDWIN::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; + process = Proc_Menu; + encoderRate.enabled = false; if (valuepointer == &color_names) { switch (selection) { case COLORSETTINGS_CURSOR: eeprom_settings.cursor_color = tempvalue; break; @@ -4263,31 +4361,29 @@ 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; } - NOLESS(tempvalue, valuemin); - NOMORE(tempvalue, valuemax); - Draw_Option(tempvalue, static_cast(valuepointer), selection - scrollpos, true); - DWIN_UpdateLCD(); + LIMIT(tempvalue, valuemin, valuemax); + drawOption(tempvalue, static_cast(valuepointer), selection - scrollpos, true); + dwinUpdateLCD(); } -void CrealityDWINClass::File_Control() { +void JyersDWIN::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.getfilename_sorted(SD_ORDER(selection - 1, card.get_num_Files())); + 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) { @@ -4296,82 +4392,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_Files()) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + 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); 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, COLOR_RECTANGLE), 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, 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; - Draw_Main_Menu(); + process = Proc_Main; + drawMainMenu(); } else { card.cdup(); - Draw_SD_List(); + drawSDList(); } } else { - card.getfilename_sorted(SD_ORDER(selection - 1, card.get_num_Files())); + 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 JyersDWIN::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(ID_Tune); + updateStatusBar(true); break; case PRINT_PAUSE_RESUME: if (paused) { @@ -4381,56 +4477,53 @@ void CrealityDWINClass::Print_Screen_Control() { 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(); - TERN_(SDSUPPORT, queue.inject(F("M24"))); + TERN_(HAS_MEDIA, queue.inject(F("M24"))); #endif } else { TERN_(HOST_ACTION_COMMANDS, hostui.resume()); } - Draw_Print_Screen(); + drawPrintScreen(); } else - Popup_Handler(Pause); + popupHandler(Popup_Pause); break; - case PRINT_STOP: Popup_Handler(Stop); break; + case PRINT_STOP: popupHandler(Popup_Stop); break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Popup_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void JyersDWIN::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) { - 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) - Popup_Handler(Home, true); - #if ENABLED(SDSUPPORT) + popupHandler(Popup_Home, true); + #if HAS_MEDIA if (IS_SD_PRINTING()) card.pauseSDPrint(); #endif planner.synchronize(); @@ -4438,8 +4531,8 @@ void CrealityDWINClass::Popup_Control() { 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 @@ -4448,9 +4541,9 @@ void CrealityDWINClass::Popup_Control() { TERN_(HOST_ACTION_COMMANDS, hostui.pause()); } } - Draw_Print_Screen(); + drawPrintScreen(); break; - case Stop: + case Popup_Stop: if (selection == 0) { if (sdprint) { ui.abort_print(); @@ -4461,133 +4554,132 @@ void CrealityDWINClass::Popup_Control() { } } else - Draw_Print_Screen(); + drawPrintScreen(); break; - case Resume: + case Popup_Resume: if (selection == 0) queue.inject(F("M1000")); else { queue.inject(F("M1000 C")); - Draw_Main_Menu(); + drawMainMenu(); } break; #if HAS_HOTEND - case ETemp: + case Popup_ETemp: if (selection == 0) { thermalManager.setTargetHotend(EXTRUDE_MINTEMP, 0); - thermalManager.set_fan_speed(0, MAX_FAN_SPEED); - Draw_Menu(PreheatHotend); + TERN_(HAS_FAN, thermalManager.set_fan_speed(0, MAX_FAN_SPEED)); + drawMenu(ID_PreheatHotend); } else - Redraw_Menu(true, true, false); + redrawMenu(true, true, false); break; #endif #if HAS_BED_PROBE - case ManualProbing: + case Popup_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)); - Update_Status(buf); + updateStatus(TS(F("Corner is "), p_float_t(abs(dif), 3), "mm ", dif > 0 ? F("high") : F("low"))); } else { - Redraw_Menu(true, true, false); - Update_Status(""); + redrawMenu(true, true, false); + updateStatus(""); } break; #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - case ConfFilChange: + case Popup_ConfFilChange: if (selection == 0) { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + if (thermalManager.targetTooColdToExtrude(0)) + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + popupHandler(Popup_FilChange); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.degTargetHotend(0))); } } else - Redraw_Menu(true, true, false); + redrawMenu(true, true, false); break; - case PurgeMore: + case Popup_PurgeMore: if (selection == 0) { pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; - Popup_Handler(FilChange); + popupHandler(Popup_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(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")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); #else - AudioFeedback(settings.save()); + audioFeedback(settings.save()); #endif } - Draw_Menu(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; - Redraw_Menu(true, true); + redrawMenu(true, true); break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Confirm_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void JyersDWIN::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(); + case Popup_Complete: + drawMainMenu(); break; - case FilInsert: - Popup_Handler(FilChange); + case Popup_FilInsert: + popupHandler(Popup_FilChange); wait_for_user = false; break; - case HeaterTime: - Popup_Handler(Heating); + case Popup_HeaterTime: + popupHandler(Popup_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 */ +// +// In-Menu Value Modification +// -void CrealityDWINClass::Setup_Value(float value, float min, float max, float unit, 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; @@ -4595,67 +4687,69 @@ void CrealityDWINClass::Setup_Value(float value, float min, float max, float uni valuemax = max; valueunit = unit; valuetype = type; - process = Value; - EncoderRate.enabled = true; - Draw_Float(tempvalue / unit, selection - scrollpos, true, valueunit); + process = Proc_Value; + encoderRate.enabled = true; + drawFloat(tempvalue / unit, selection - scrollpos, true, valueunit); } -void CrealityDWINClass::Modify_Value(float &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 0); + setupValue((float)value, min, max, unit, 0); } -void CrealityDWINClass::Modify_Value(uint8_t &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 1); + setupValue((float)value, min, max, unit, 1); } -void CrealityDWINClass::Modify_Value(uint16_t &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 2); + setupValue((float)value, min, max, unit, 2); } -void CrealityDWINClass::Modify_Value(int16_t &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 3); + setupValue((float)value, min, max, unit, 3); } -void CrealityDWINClass::Modify_Value(uint32_t &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 4); + setupValue((float)value, min, max, unit, 4); } -void CrealityDWINClass::Modify_Value(int8_t &value, float min, float max, float 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; - Setup_Value((float)value, min, max, unit, 5); + setupValue((float)value, min, max, unit, 5); } -void CrealityDWINClass::Modify_Option(uint8_t value, const char * const * options, 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; valuemax = max; - process = Option; - EncoderRate.enabled = true; - Draw_Option(value, options, selection - scrollpos, true); + process = Proc_Option; + encoderRate.enabled = true; + drawOption(value, options, selection - scrollpos, true); } -/* Main Functions */ +// +// Main Functions +// -void CrealityDWINClass::Update_Status(const char * const text) { +void JyersDWIN::updateStatus(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); + drawPrintFilename(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'; } } -void CrealityDWINClass::Start_Print(bool sd) { +void JyersDWIN::startPrint(const bool sd) { sdprint = sd; if (!printing) { printing = true; @@ -4663,7 +4757,7 @@ void CrealityDWINClass::Start_Print(bool sd) { if (sd) { #if ENABLED(POWER_LOSS_RECOVERY) if (recovery.valid()) { - SdFile *diveDir = nullptr; + MediaFile *diveDir = nullptr; const char * const fname = card.diveToFile(true, diveDir, recovery.info.sd_filename); card.selectFileByName(fname); } @@ -4674,59 +4768,59 @@ void CrealityDWINClass::Start_Print(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 JyersDWIN::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 JyersDWIN::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 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; } } -void MarlinUI::update() { CrealityDWIN.Update(); } +void MarlinUI::update() { jyersDWIN.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 JyersDWIN::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 == Proc_Print) printScreenIcons(); + if (process == Proc_Wait && !paused) redrawMenu(true, true); } - if (wait_for_user && !(process == Confirm) && !print_job_timer.isPaused()) - Confirm_Handler(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) - Popup_Handler(FilChange); + popupHandler(Popup_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(Popup_Resuming); + else redrawMenu(true, true, active_menu == ID_PreheatHotend); } } #endif @@ -4734,41 +4828,41 @@ 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(Popup_Runout); } #endif } -void CrealityDWINClass::Screen_Update() { +void JyersDWIN::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 == Proc_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()); + if (process == Proc_Print) { + drawPrintProgressBar(); + drawPrintProgressElapsed(); + TERN_(SET_REMAINING_TIME, drawPrintProgressRemain()); } } static bool mounted = card.isMounted(); if (mounted != card.isMounted()) { mounted = card.isMounted(); - if (process == File) - Draw_SD_List(); + if (process == Proc_File) + drawSDList(); } #if HAS_HOTEND @@ -4801,24 +4895,24 @@ void CrealityDWINClass::Screen_Update() { #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 (thermalManager.degTargetHotend(0) != hotendtarget) { + hotendtarget = thermalManager.degTargetHotend(0); 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); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + 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 != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_bed.target, TEMP_BED - scrollpos, false, 1); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + drawFloat(bedtarget, TEMP_BED - scrollpos, false, 1); } } #endif @@ -4826,28 +4920,28 @@ void CrealityDWINClass::Screen_Update() { 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) - Draw_Float(thermalManager.fan_speed[0], TEMP_FAN - scrollpos, false, 1); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + drawFloat(fanspeed, 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 (thermalManager.degTargetHotend(0) != hotendtarget) { + hotendtarget = thermalManager.degTargetHotend(0); 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); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + 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 != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_bed.target, TUNE_BED - scrollpos, false, 1); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + drawFloat(bedtarget, TUNE_BED - scrollpos, false, 1); } } #endif @@ -4855,8 +4949,8 @@ void CrealityDWINClass::Screen_Update() { 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) - Draw_Float(thermalManager.fan_speed[0], TUNE_FAN - scrollpos, false, 1); + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) + drawFloat(fanspeed, TUNE_FAN - scrollpos, false, 1); } } #endif @@ -4865,25 +4959,25 @@ void CrealityDWINClass::Screen_Update() { } } -void CrealityDWINClass::AudioFeedback(const bool success/*=true*/) { +void JyersDWIN::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 *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 CrealityDWINClass::Load_Settings(const char *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; corner_pos = eeprom_settings.corner_pos / 10.0f; - Redraw_Screen(); + redrawScreen(); #if ENABLED(POWER_LOSS_RECOVERY) static bool init = true; if (init) { @@ -4893,7 +4987,7 @@ void CrealityDWINClass::Load_Settings(const char *buff) { #endif } -void CrealityDWINClass::Reset_Settings() { +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; @@ -4911,36 +5005,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); + 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.Confirm_Handler(FilInsert); break; + case PAUSE_MESSAGE_INSERT: jyersDWIN.confirmHandler(Popup_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: 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 f360819df5..4f0669f8d8 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" @@ -37,58 +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, 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 - Motion, - HomeOffsets, - MaxSpeed, - MaxAcceleration, - MaxJerk, - Steps, - Visual, - ColorSettings, - Advanced, - ProbeMenu, - #if HAS_TRINAMIC_CONFIG - TMCMenu, - #endif - Info, - Leveling, - LevelManual, - LevelView, - MeshViewer, - LevelSettings, - ManualMesh, - UBLMesh, - InfoMain, - Tune, - PreheatHotend + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + ID_MPC, + #endif + ID_Motion, + ID_HomeOffsets, + ID_MaxSpeed, + ID_MaxAcceleration, + ID_MaxJerk, + ID_Steps, + ID_Visual, + ID_ColorSettings, + ID_Advanced, + ID_ProbeMenu, + #if HAS_TRINAMIC_CONFIG + ID_TMCMenu, + #endif + ID_Info, + ID_Leveling, + ID_LevelManual, + ID_LevelView, + ID_MeshViewer, + ID_LevelSettings, + ID_ManualMesh, + ID_UBLMesh, + ID_InfoMain, + ID_Tune, + ID_PreheatHotend }; // Custom icons @@ -125,29 +155,29 @@ 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 CrealityDWINClass { +class JyersDWIN { public: static constexpr size_t eeprom_data_size = 48; static struct EEPROM_Settings { // use bit fields to save space, max 48 bytes @@ -172,77 +202,72 @@ public: 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 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 Redraw_Screen(); + 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 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 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(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_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 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 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); - static void Set_Mesh_Viewer_Status(); - #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); - 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 void popupHandler(const PopupID popupid, bool option=false); + static void confirmHandler(const PopupID popupid); - static void Popup_Handler(PopupID popupid, bool option = false); - static void Confirm_Handler(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 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 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 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 Update_Status(const char * const text); - static void Start_Print(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 Reset_Settings(); + 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 JyersDWIN jyersDWIN; diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp index 04889e92b0..96518b8c21 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 f76cfb5d3e..a9335a4f23 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 8b9dac66aa..1574e8d26d 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp @@ -39,16 +39,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 - 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(); - DWIN_JPG_ShowAndCache(3); + dwinFrameSetDir(TERN(DWIN_MARLINUI_LANDSCAPE, 0, 1)); + dwinFrameClear(COLOR_BG_BLACK); // MarlinUI handles the bootscreen so just clear here + dwinJPGShowAndCache(3); + dwinUpdateLCD(); + dwinJPGShowAndCache(3); } /*---------------------------------------- Picture related functions ----------------------------------------*/ @@ -57,8 +57,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 38a8eafe23..7830d5a37c 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; @@ -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); @@ -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 686b1aa2b1..5d38131014 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 @@ -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 e603882e0c..f689a6ff69 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 273f96bb99..78a88e857a 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" @@ -39,7 +38,7 @@ #include "../../../module/temperature.h" #include "../../../module/printcounter.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../libs/duration_t.h" #endif @@ -49,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; @@ -79,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,26 +108,26 @@ void MarlinUI::clear_lcd() { #define INFO_CENTER ((LCD_PIXEL_WIDTH) - 200 / 2) #define VERSION_Y 84 #endif - DWIN_JPG_ShowAndCache(0); // Ensure DACAI stays on boot screen - DWIN_Draw_String(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, 230, S(dwin_string.string())); + dwinJPGShowAndCache(0); // Ensure DACAI stays on boot screen + dwinDrawString(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, 230, 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) { @@ -141,26 +140,26 @@ 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); - dwin_font.fg = Color_Error_Red; + 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); + uint8_t slen = status_message.glyphs(); lcd_moveto(cx - (slen / 2), cy - 1); lcd_put_u8str(status_message); @@ -179,30 +178,25 @@ 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); 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 || !ui.did_first_redraw; + return hash_changed || !did_first_redraw; }; #if ENABLED(STATUS_MESSAGE_SCROLLING) 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) { @@ -248,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); @@ -261,7 +255,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 @@ -273,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(' '); @@ -296,13 +290,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, COLOR_SELECT, 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 ? COLOR_SELECT : COLOR_BG_BLACK, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); #endif } @@ -311,29 +305,47 @@ 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)) { ui.set_font(DWIN_FONT_MENU); dwin_font.solid = false; - dwin_font.fg = Color_White; + 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(); } @@ -344,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); @@ -365,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))); @@ -376,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(); @@ -398,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(); @@ -408,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; - 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()) { @@ -418,11 +430,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, COLOR_BARFILL, 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); } } } @@ -433,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); - 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 ? 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); } @@ -443,13 +455,13 @@ 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); } - #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)) { @@ -469,7 +481,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(AUTO_BED_LEVELING_UBL) @@ -495,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 - 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 @@ -505,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; - DWIN_Draw_Rectangle(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 ); @@ -515,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) - DWIN_Draw_Point(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(); @@ -565,7 +577,7 @@ void MarlinUI::draw_status_message(const bool blink) { #endif // AUTO_BED_LEVELING_UBL - #if EITHER(BABYSTEP_ZPROBE_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), @@ -574,20 +586,20 @@ 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_ZPROBE_GFX_OVERLAY || MESH_EDIT_GFX_OVERLAY + #endif // BABYSTEP_GFX_OVERLAY || MESH_EDIT_GFX_OVERLAY #endif // HAS_MARLINUI_MENU diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index 205913ca69..c0b7ba90ec 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" @@ -39,7 +39,7 @@ #include "../../../module/printcounter.h" #include "../../../module/planner.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../libs/duration_t.h" #endif @@ -61,125 +61,109 @@ #define STATUS_CHR_WIDTH 14 #define STATUS_CHR_HEIGHT 28 +bool old_is_printing; + // // Before homing, blink '123' <-> '???'. // Homed but unknown... '123' <-> ' '. // Homed and known, display constantly. // -FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, const uint16_t x, const uint16_t y) { +void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, const uint16_t x, const uint16_t y) { + 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, + #if ENABLED(DWIN_MARLINUI_PORTRAIT) + x + (utf8_strlen(value) * 14 - 14) / 2, y + 2 + #else + x, y + #endif + , S(dwin_string.string()) + ); + } - #if ENABLED(DWIN_MARLINUI_PORTRAIT) + dwin_string.set(); + if (blink) + dwin_string.add(value); + else if (!TEST(axes_homed, axis)) + while (const char c = *value++) dwin_string.add(c <= '.' ? c : '?'); + else if (NONE(HOME_AFTER_DEACTIVATE, DISABLE_REDUCED_ACCURACY_WARNING) && !TEST(axes_trusted, axis)) + dwin_string.add(TERN1(DWIN_MARLINUI_PORTRAIT, axis == Z_AXIS) ? PSTR(" ") : PSTR(" ")); + else + dwin_string.add(value); - uint8_t vallen = utf8_strlen(value); - if (!ui.did_first_redraw) { - dwin_string.set('X' + axis); - DWIN_Draw_String(true, font16x32, Color_IconBlue, Color_Bg_Black, x + (vallen * 14 - 14) / 2, y + 2, S(dwin_string.string())); - } + // For E_TOTAL there may be some characters to cover up + if (TERN0(LCD_SHOW_E_TOTAL, x_redraw && axis == X_AXIS)) + dwin_string.add(F(" ")); - dwin_string.set(); - if (blink) - dwin_string.add(value); - else if (!TEST(axes_homed, axis)) - while (const char c = *value++) dwin_string.add(c <= '.' ? c : '?'); - else if (NONE(HOME_AFTER_DEACTIVATE, DISABLE_REDUCED_ACCURACY_WARNING) && !TEST(axes_trusted, axis)) - dwin_string.add(TERN1(DWIN_MARLINUI_PORTRAIT, axis == Z_AXIS) ? PSTR(" ") : PSTR(" ")); - else - dwin_string.add(value); - - // For E_TOTAL there may be some characters to cover up - if (BOTH(DWIN_MARLINUI_PORTRAIT, LCD_SHOW_E_TOTAL) && axis == X_AXIS) - dwin_string.add(F(" ")); - - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + 32, S(dwin_string.string())); - - #else // !DWIN_MARLINUI_PORTRAIT - - if (!ui.did_first_redraw || ui.old_is_printing != print_job_timer.isRunning()) { - dwin_string.set('X' + axis); - DWIN_Draw_String(true, font16x32, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); - } - - dwin_string.set(); - if (blink) - dwin_string.add(value); - else { - if (!TEST(axes_homed, axis)) - while (const char c = *value++) dwin_string.add(c <= '.' ? c : '?'); - else { - #if NONE(HOME_AFTER_DEACTIVATE, DISABLE_REDUCED_ACCURACY_WARNING) - if (!TEST(axes_trusted, axis)) - dwin_string.add(TERN1(DWIN_MARLINUI_PORTRAIT, axis == Z_AXIS) ? PSTR(" ") : PSTR(" ")); - else - #endif - dwin_string.add(value); - } - } - - // For E_TOTAL there may be some characters to cover up - if (ENABLED(LCD_SHOW_E_TOTAL) && (!ui.did_first_redraw || ui.old_is_printing != print_job_timer.isRunning()) && axis == X_AXIS) - dwin_string.add(F(" ")); - - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x + 32, y + 4, S(dwin_string.string())); - - #endif // !DWIN_MARLINUI_PORTRAIT + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, + #if ENABLED(DWIN_MARLINUI_PORTRAIT) + x, y + 32 + #else + x + 32, y + 4 + #endif + , S(dwin_string.string()) + ); } #if ENABLED(LCD_SHOW_E_TOTAL) - FORCE_INLINE void _draw_e_value(const_float_t value, const uint16_t x, const uint16_t y) { + void _draw_e_value(const_float_t value, const uint16_t x, const uint16_t y) { const uint8_t scale = value >= 100000.0f ? 10 : 1; // show cm after 99,999mm + const bool e_redraw = !ui.did_first_redraw || old_is_printing != print_job_timer.isRunning(); #if ENABLED(DWIN_MARLINUI_PORTRAIT) - if (!ui.did_first_redraw) { + 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 (!ui.did_first_redraw || ui.old_is_printing != print_job_timer.isRunning()) { + 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 } #endif // LCD_SHOW_E_TOTAL -// -// Fan Icon and Percentage -// -FORCE_INLINE void _draw_fan_status(const uint16_t x, const uint16_t y) { - const uint16_t fanx = (4 * STATUS_CHR_WIDTH - STATUS_FAN_WIDTH) / 2; - const uint8_t fan_pct = thermalManager.scaledFanSpeedPercent(0); - const bool fan_on = !!fan_pct; - if (fan_on) { - DWIN_ICON_Animation(0, fan_on, ICON, ICON_Fan0, ICON_Fan3, x + fanx, y, 25); - dwin_string.set(i8tostr3rj(fan_pct)); - dwin_string.add('%'); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); +#if HAS_FAN + // + // Fan Icon and Percentage + // + FORCE_INLINE void _draw_fan_status(const uint16_t x, const uint16_t y) { + const uint16_t fanx = (4 * STATUS_CHR_WIDTH - STATUS_FAN_WIDTH) / 2; + const bool fan_on = !!thermalManager.scaledFanSpeed(0); + if (fan_on) { + 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())); + } + 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())); + } } - else { - DWIN_ICON_AnimationControl(0x0000); // disable all icon animations (this is the only one) - DWIN_ICON_Show(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())); - } -} +#endif /** * Draw a single heater icon with current and target temperature, at the given XY @@ -207,75 +191,59 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x #endif #endif - #if HAS_HOTEND && HAS_HEATED_BED - float tc, tt; - bool c_draw, t_draw, i_draw, ta; - const bool isBed = heater < 0; - if (isBed) { + celsius_float_t tc = 0, tt = 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) { + #if HAS_HEATED_BED tc = thermalManager.degBed(); tt = thermalManager.degTargetBed(); ta = thermalManager.isHeatingBed(); - c_draw = tc != old_bed_temp; - t_draw = tt != old_bed_target; - i_draw = ta != old_bed_on; + c_draw |= tc != old_bed_temp; + t_draw |= tt != old_bed_target; + i_draw |= ta != old_bed_on; old_bed_temp = tc; old_bed_target = tt; old_bed_on = ta; - } - else { + #if HAS_LEVELING + i_draw |= planner.leveling_active != old_leveling_on; + old_leveling_on = planner.leveling_active; + #endif + #endif + } + else { + #if HAS_HOTEND tc = thermalManager.degHotend(heater); tt = thermalManager.degTargetHotend(heater); ta = thermalManager.isHeatingHotend(heater); - c_draw = tc != old_temp[heater]; - t_draw = tt != old_target[heater]; - i_draw = ta != old_on[heater]; + c_draw |= tc != old_temp[heater]; + t_draw |= tt != old_target[heater]; + i_draw |= ta != old_on[heater]; old_temp[heater] = tc; old_target[heater] = tt; old_on[heater] = ta; - } - #elif HAS_HOTEND - constexpr bool isBed = false; - const float tc = thermalManager.degHotend(heater), tt = thermalManager.degTargetHotend(heater); - const uint8_t ta = thermalManager.isHeatingHotend(heater); - bool c_draw = tc != old_temp[heater], t_draw = tt != old_target[heater], i_draw = ta != old_on[heater]; - old_temp[heater] = tc; old_target[heater] = tt; old_on[heater] = ta; - #elif HAS_HEATED_BED - constexpr bool isBed = true; - const float tc = thermalManager.degBed(), tt = thermalManager.degTargetBed(); - const uint8_t ta = thermalManager.isHeatingBed(); - bool c_draw = tc != old_bed_temp, t_draw = tt != old_bed_target, i_draw = ta != old_bed_on; - old_bed_temp = tc; old_bed_target = tt; old_bed_on = ta; - #else - bool c_draw = false, t_draw = false, i_draw = false; - constexpr float tc = 0, tt = 0; - constexpr uint8_t ta = 0; - #endif - - #if HAS_HEATED_BED && HAS_LEVELING - if (isBed) { - i_draw |= (planner.leveling_active != old_leveling_on); - old_leveling_on = planner.leveling_active; - } - #endif + #endif + } // Draw target temperature, if needed - if (!ui.did_first_redraw || t_draw) { + 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 (!ui.did_first_redraw || i_draw) { + 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 (!ui.did_first_redraw || c_draw) { + 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())); } } @@ -285,16 +253,16 @@ 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())); } /** - * Draw the MarlinUI Status Screen for Ender 3 V2 + * Draw the MarlinUI Status Screen for Ender-3 V2 */ void MarlinUI::draw_status_screen() { const bool blink = get_blink(); @@ -304,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 @@ -313,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, COLOR_SELECT, #if ENABLED(DWIN_MARLINUI_PORTRAIT) 0, 193, LCD_PIXEL_WIDTH - 1, 260 #else @@ -334,21 +302,20 @@ void MarlinUI::draw_status_screen() { #if HAS_HEATED_BED _draw_heater_status(H_BED, hx, STATUS_HEATERS_Y); #endif - #if HAS_FAN _draw_fan_status(LCD_PIXEL_WIDTH - STATUS_CHR_WIDTH * 5, STATUS_FAN_Y); #endif // 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)); @@ -391,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 @@ -400,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 || ui.old_is_printing != print_job_timer.isRunning()) { + 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 @@ -436,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, 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; @@ -444,16 +411,16 @@ 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, COLOR_SELECT, 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( - false, font16x32, Percent_Color, Color_Bg_Black, + dwinDrawString( + 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()) @@ -470,7 +437,7 @@ void MarlinUI::draw_status_screen() { draw_status_message(blink); ui.did_first_redraw = true; - ui.old_is_printing = print_job_timer.isRunning(); + old_is_printing = print_job_timer.isRunning(); } #endif // IS_DWIN_MARLINUI diff --git a/Marlin/src/lcd/e3v2/proui/base64.hpp b/Marlin/src/lcd/e3v2/proui/base64.hpp index d82d0b27e8..a51cca7c52 100644 --- a/Marlin/src/lcd/e3v2/proui/base64.hpp +++ b/Marlin/src/lcd/e3v2/proui/base64.hpp @@ -5,7 +5,7 @@ * Author: Densaugeo * Maintainer: Densaugeo * Version: 1.2.1.1 - * Changed unsigned int to uint16_t for use in the professional Ender 3V2/S1 firmware + * Changed unsigned int to uint16_t for use in the professional Ender-3V2/S1 firmware * Url: https://www.arduino.cc/reference/en/libraries/base64/ */ diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 760582c76a..bd2f8a88e6 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 @@ -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" @@ -63,29 +63,30 @@ #include "dwin_popup.h" #include "bedlevel_tools.h" -BedLevelToolsClass bedLevelTools; +BedLevelTools bedLevelTools; -#if ENABLED(USE_UBL_VIEWER) - bool BedLevelToolsClass::viewer_asymmetric_range = false; - bool BedLevelToolsClass::viewer_print_value = false; +#if ENABLED(USE_GRID_MESHVIEWER) + 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; -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" : ""); + 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"); gcode.process_subcommands_now(cmd); 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) { @@ -104,29 +105,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); } @@ -137,15 +126,16 @@ 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); + 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)) + ); planner.synchronize(); } #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(); @@ -154,45 +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); - 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); + 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() { - const uint16_t Clear = Z_CLEARANCE_DEPLOY_PROBE; - sprintf_P(cmd, PSTR("G0Z%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) +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(mesh_x), 2), + F("Y"), p_float_t(bedlevel.get_mesh_y(mesh_y), 2) + ) ); - gcode.process_subcommands_now(cmd); +} + +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) @@ -201,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) @@ -211,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; @@ -219,34 +212,35 @@ bool BedLevelToolsClass::meshvalidate() { return true; } -#if ENABLED(USE_UBL_VIEWER) +#if ENABLED(USE_GRID_MESHVIEWER) - 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*/) { + constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); + + 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 - 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 - 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; 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/ - isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined + 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 (uint16_t)round(0x3F * bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_max)) << 5) | // green if mesh point value is positive @@ -258,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 - 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, 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)) - 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); + 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(); @@ -279,25 +275,21 @@ 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); + 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; + 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; } -#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 6e642f030c..7bd236760a 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] * @@ -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,40 +47,38 @@ #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 { +class BedLevelTools { public: - #if ENABLED(USE_UBL_VIEWER) + #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 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); - static void Set_Mesh_Viewer_Status(); + 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 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 07e2854a12..4924575fc5 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -23,32 +23,35 @@ /** * 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" #if ENABLED(DWIN_LCD_PROUI) -#include "../../fontutils.h" +#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" @@ -111,7 +117,7 @@ #include "endstop_diag.h" #endif -#if SHOW_TUNING_GRAPH +#if PROUI_TUNING_GRAPH #include "plot.h" #endif @@ -123,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 @@ -143,12 +146,14 @@ // 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 +// 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 @@ -158,7 +163,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 @@ -168,9 +172,9 @@ #endif // Structs -HMI_value_t HMI_value; -HMI_flag_t HMI_flag{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, @@ -195,140 +199,118 @@ 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)) - #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; +uint8_t checkkey = 255, last_checkkey = ID_MainMenu; // New menu system pointers -MenuClass *FileMenu = nullptr; -MenuClass *PrepareMenu = nullptr; -MenuClass *TrammingMenu = nullptr; -MenuClass *MoveMenu = nullptr; -MenuClass *ControlMenu = nullptr; -MenuClass *AdvancedSettings = nullptr; +Menu *fileMenu = nullptr; +Menu *prepareMenu = nullptr; +#if ENABLED(LCD_BED_TRAMMING) + Menu *trammingMenu = nullptr; +#endif +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; + Menu *ProbeSetMenu = nullptr; #endif -MenuClass *FilSetMenu = nullptr; -MenuClass *SelectColorMenu = nullptr; -MenuClass *GetColorMenu = nullptr; -MenuClass *TuneMenu = nullptr; -MenuClass *MotionMenu = nullptr; -MenuClass *FilamentMenu = nullptr; +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_HOTEND - MenuClass *PreheatMenu = nullptr; +#if HAS_PREHEAT + 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; -#if ENABLED(MPCTEMP) - MenuClass *HotendMPCMenu = nullptr; +Menu *stepsMenu = nullptr; +#if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + Menu *hotendMPCMenu = nullptr; #endif -#if ENABLED(PIDTEMP) - MenuClass *HotendPIDMenu = nullptr; +#if ENABLED(PIDTEMP) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) + Menu *hotendPIDMenu = nullptr; #endif -#if ENABLED(PIDTEMPBED) - MenuClass *BedPIDMenu = nullptr; +#if ENABLED(PIDTEMPBED) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) + 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) + Menu *inputShapingMenu = nullptr; +#endif +#if HAS_TRINAMIC_CONFIG + 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 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() { - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); +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() { - HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; - HMI_SetLanguageCache(); - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); +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 } @@ -339,15 +321,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); } } @@ -424,106 +406,107 @@ 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); - DWIN_UpdateLCD(); +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); - DWIN_UpdateLCD(); + 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 DWIN_Popup_Temperature(const bool toohigh) { - HMI_SaveProcessID(WaitResponse); - if (HMI_IsChinese()) { - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); + void dwinPopupTemperature(const bool toohigh) { + 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) { - DWIN_Draw_Rectangle(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() { - ui.status_message[0] = 0; - DWIN_CheckStatusMessage(); +void dwinResetStatusLine() { + ui.status_message.clear(); + 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 */ return hash; } -void DWIN_CheckStatusMessage() { - static uint32_t old_hash = 0; - uint32_t hash = GetHash(&ui.status_message[0]); +// Check for a change in the status message +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 - 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) { if (hash_changed) { - DWIN_DrawStatusLine(ui.status_message); + dwinDrawStatusLine(ui.status_message); hash_changed = false; } } @@ -534,18 +517,18 @@ 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); - 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(); @@ -554,149 +537,150 @@ void DWIN_DrawStatusMessage() { #else if (hash_changed) { - ui.status_message[LCD_WIDTH] = 0; - DWIN_DrawStatusLine(ui.status_message); + ui.status_message.trunc(LCD_WIDTH); + 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() { - DWINUI::Draw_IconWB(ICON_Bar, 15, 93); - DWIN_Draw_Rectangle(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("%")); +void drawPrintProgressBar() { + const uint8_t _percent_done = ui.get_progress_percent(); + 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() { - char buf[10]; - 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 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::drawString(hmiData.colorText, hmiData.colorBackground, 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) + uint32_t _remain_time = 0; + void drawPrintProgressRemain() { + MString<12> buf; + buf.setf(F("%02i:%02i "), _remain_time / 3600, (_remain_time % 3600) / 60); + DWINUI::drawString(hmiData.colorText, hmiData.colorBackground, 181, 192, buf); + } +#endif void ICON_ResumeOrPause() { - if (checkkey == PrintProcess) printingIsPaused() ? 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)); - 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) { - DWIN_Draw_Rectangle(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(SD_Printing() ? card.longest_filename() : 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(); + 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()); } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void Draw_PrintDone() { - // show percent bar and value - _percent_done = 100; - _remain_time = 0; - - Title.ShowCaption(GET_TEXT_F(MSG_PRINT_DONE)); - DWINUI::ClearMainArea(); - DWIN_Print_Header(nullptr); - +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(); + dwinPrintHeader(nullptr); #if HAS_GCODE_PREVIEW - const bool isvalid = Preview_Valid(); - if (isvalid) { - DWIN_ICON_Show(0, 0, 1, 21, 100, 0x00); - DWINUI::Draw_Button(BTN_Continue, 86, 300); + const bool haspreview = Preview_Valid(); + if (haspreview) { + Preview_Show(); + DWINUI::drawButton(BTN_Continue, 86, 295); } #else - constexpr bool isvalid = false; + constexpr bool haspreview = false; #endif - if (!isvalid) { - 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(); - DWINUI::Draw_Button(BTN_Continue, 86, 273); + if (!haspreview) { + 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(); - DWIN_UpdateLCD(); + 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(); - DWIN_UpdateLCD(); +void gotoMainMenu() { + if (checkkey == ID_MainMenu) return; + checkkey = ID_MainMenu; + drawMainMenu(); + dwinUpdateLCD(); } // Draw X, Y, Z and blink if in an un-homed or un-trusted state @@ -707,56 +691,87 @@ 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; 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_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; - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); - DWINUI::Draw_Icon(_leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); +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, hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(icon1, x, y); } - #else - if (planner.leveling_active) { - DWIN_Draw_Rectangle(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); - DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); - } - } - #endif + } + if (flag) { + dwinDrawBox(1, blink ? hmiData.colorSplitLine : hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(icon2, x, y); + } #else - DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); + if (flag != sensor) { + flag = sensor; + dwinDrawBox(1, hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(flag ? icon2 : icon1, x, y); + } #endif } -void _draw_xyz_position(const bool force) { +void _drawZOffsetIcon() { + #if HAS_LEVELING + static bool _leveling_active = false; + _drawIconBlink(_leveling_active, planner.leveling_active, ICON_Zoffset, ICON_SetZOffset, 186, 416); + #else + DWINUI::drawIcon(ICON_Zoffset, 187, 416); + #endif +} + +void _drawFeedrate() { + #if ENABLED(SHOW_SPEED_IND) + int16_t _value; + if (blink) { + _value = feedrate_percentage; + 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, hmiData.colorBackground, 116 + 5 * STAT_CHR_W + 2, 384, 20, 20); + } + 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::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 384, _feedrate); + } + #endif +} + +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() { +void updateVariable() { + _drawXYZPosition(false); #if HAS_HOTEND static celsius_t _hotendtemp = 0, _hotendtarget = 0; const celsius_t hc = thermalManager.wholeDegHotend(0), @@ -781,56 +796,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 - 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); - } + _drawFeedrate(); #if HAS_FAN - if (_new_fanspeed) { - _fanspeed = thermalManager.fan_speed[0]; - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 195 + 2 * STAT_CHR_W, 384, _fanspeed); - } + if (_new_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(); - _draw_xyz_position(false); + _drawZOffsetIcon(); } /** @@ -839,164 +847,173 @@ void update_variable() { bool DWIN_lcd_sd_status = false; -void SetMediaAutoMount() { - Toggle_Chkb_Line(HMI_data.MediaAutoMount); -} +#if ENABLED(MEDIASORT_MENU_ITEM) + void setMediaSort() { + toggleCheckboxLine(hmiData.mediaSort); + card.setSortOn(hmiData.mediaSort); + } +#endif + +void setMediaAutoMount() { toggleCheckboxLine(hmiData.mediaAutoMount); } inline uint16_t nr_sd_menu_items() { - return _MIN(card.get_num_Files() + !card.flag.workDirIsRoot, MENU_MAX_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 +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 // 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() { +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; - card.getfilename_sorted(SD_ORDER(filenum, card.get_num_Files())); + 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")); - else - return Goto_ConfirmToPrint(); + return dwinPopupConfirm(ICON_Error, F("Please check filenames"), F("Only G-code can be printed")); + else { + 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; 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; + 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.getfilename_sorted(SD_ORDER(filenum, card.get_num_Files())); - make_name_without_ext(shift_name, card.longest_filename(), LONG_FILENAME_LENGTH); + card.selectFileByIndexSorted(filenum); + 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.getfilename_sorted(SD_ORDER(menuitem->pos - is_subdir - 1, card.get_num_Files())); - make_name_without_ext(shift_name, card.longest_filename()); + card.selectFileByIndexSorted(menuitem->pos - is_subdir - 1); + 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); - LOOP_L_N(i, nr_sd_menu_items()) { - MenuItemAdd(onDrawFileName, onClickSDItem); + 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); } } - 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); - DWIN_Draw_Rectangle(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() { - 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(); - if (IsMenu(FileMenu)) Redraw_SD_List(); - if (!DWIN_lcd_sd_status && SD_Printing()) ui.abort_print(); // Media removed while printing - DWIN_UpdateLCD(); + resetMenu(fileMenu); + if (isMenu(fileMenu)) { + currentMenu = nullptr; + drawPrintFileMenu(); + } + if (!DWIN_lcd_sd_status && sdPrinting()) ui.abort_print(); // Media removed while printing } } @@ -1004,83 +1021,80 @@ void HMI_SDCardUpdate() { * Dash board and indicators */ -void DWIN_Draw_Dashboard() { +void dwinDrawDashboard() { - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, hmiData.colorBackground, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, hmiData.colorSplitLine, 0, 449, DWIN_WIDTH, 451); + + 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); - 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::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 - - 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); - - 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() { - 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)); - LOOP_L_N(i, 3) { - DWINUI::Draw_Icon(ICON_PrintSize + i, ICOX, 99 + i * 73); - DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MBASE(2) + i * 73, 240); + for (uint8_t i = 0; i < 3; ++i) { + 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; @@ -1107,32 +1121,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; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Pause or Stop popup -void onClick_PauseOrStop() { +void onClickPauseOrStop() { 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(); + 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 @@ -1156,99 +1170,102 @@ 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 + 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; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #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; + case ID_Locked: lockScreen.draw(); break; #endif - case Menu: - case SetInt: - case SetPInt: - case SetIntNoDraw: - case SetFloat: - case SetPFloat: ReDrawMenu(true); break; + 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_ReturnScreen() { - checkkey = last_checkkey; - wait_for_user = false; - Draw_Main_Area(); -} - -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() { - 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); - } - HMI_SetLanguage(); +void hmiInit() { + #if ENABLED(SHOW_BOOTSCREEN) + #ifndef BOOTSCREEN_TIMEOUT + #define BOOTSCREEN_TIMEOUT 1100 + #endif + 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::drawIcon(ICON_Bar, 15, 260); + dwinDrawRectangle(1, hmiData.colorBackground, t, 260, 257, 280); + dwinUpdateLCD(); + safe_delay((BOOTSCREEN_TIMEOUT) / 22); + } + #endif + 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) plot.Update((HMI_value.pidresult == PIDTEMP_START) ? thermalManager.wholeDegHotend(0) : 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 == ID_MPCProcess) plot.update(thermalManager.wholeDegHotend(0))); #endif } @@ -1260,326 +1277,356 @@ 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() != HMI_flag.printing_flag) && !HMI_flag.home_flag) { - HMI_flag.printing_flag = Printing(); - DEBUG_ECHOLNPGM("printing_flag: ", HMI_flag.printing_flag); - if (HMI_flag.printing_flag) - DWIN_Print_Started(); - else if (HMI_flag.abort_flag) - DWIN_Print_Aborted(); + if ((isPrinting() != hmiFlag.printing_flag) && !hmiFlag.home_flag) { + hmiFlag.printing_flag = isPrinting(); + if (hmiFlag.printing_flag) + dwinPrintStarted(); + else if (hmiFlag.abort_flag) + dwinPrintAborted(); else - DWIN_Print_Finished(); + dwinPrintFinished(); } - if ((printingIsPaused() != HMI_flag.pause_flag) && !HMI_flag.home_flag) { - HMI_flag.pause_flag = printingIsPaused(); - DEBUG_ECHOLNPGM("pause_flag: ", HMI_flag.pause_flag); - if (HMI_flag.pause_flag) - DWIN_Print_Pause(); - else if (HMI_flag.abort_flag) - DWIN_Print_Aborted(); + if ((printingIsPaused() != hmiFlag.pause_flag) && !hmiFlag.home_flag) { + hmiFlag.pause_flag = printingIsPaused(); + if (hmiFlag.pause_flag) + dwinPrintPause(); + else if (hmiFlag.abort_flag) + dwinPrintAborted(); else - DWIN_Print_Resume(); + dwinPrintResume(); } - if (checkkey == PrintProcess) { // print process + if (checkkey == ID_PrintProcess) { // Print process - duration_t elapsed = print_job_timer.duration(); // print timer - - if (card.isPrinting() && !HMI_flag.percent_flag) { - uint8_t percentDone = card.percentDone(); - if (_percent_done != percentDone) { // print percent - _percent_done = percentDone; - 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) && !HMI_flag.heat_flag && !HMI_flag.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(); - } + // Progress percent + static uint8_t _percent_done = 255; + if (_percent_done != ui.get_progress_percent()) { + _percent_done = ui.get_progress_percent(); + drawPrintProgressBar(); } - // 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; - Draw_Print_ProgressElapsed(); - } + // Remaining time + #if ENABLED(SHOW_REMAINING_TIME) + if (_remain_time != ui.get_remaining_time()) { + _remain_time = ui.get_remaining_time(); + drawPrintProgressRemain(); + } + #endif + // 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; + drawPrintProgressElapsed(); + } } #if ENABLED(POWER_LOSS_RECOVERY) - else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // resume print before power off - return Goto_PowerLossRecovery(); + else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // Resume print before power off + return gotoPowerLossRecovery(); } - #endif // POWER_LOSS_RECOVERY + #endif - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } #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); } - SdFile *dir = nullptr; + 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()); - Draw_Select_Highlight(HMI_flag.select_flag); - DWIN_UpdateLCD(); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 207, card.longest_filename()); + dwinPrintHeader(card.longest_filename()); // Save filename + drawSelectHighlight(hmiFlag.select_flag); + dwinUpdateLCD(); } - void onClick_PowerLossRecovery() { - if (HMI_flag.select_flag) { + void onClickPowerLossRecovery() { + if (hmiFlag.select_flag) { queue.inject(F("M1000C")); select_page.reset(); - return Goto_Main_Menu(); + return gotoMainMenu(); } else { + 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; + case ID_Locked: hmiLockScreen(); break; #endif - case PrintDone: - TERN_(HAS_ESDIAG, case ESDiagProcess:) - case WaitResponse: HMI_WaitForUser(); break; - case Homing: - case PidProcess: - case NothingToDo: break; + 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... - return (checkkey == NothingToDo) - || (checkkey == WaitResponse) - || (checkkey == Homing) - || (checkkey == Leveling) - || (checkkey == PidProcess) - || TERN0(HAS_ESDIAG, (checkkey == ESDiagProcess)) - || (checkkey == Popup); +bool idIsPopUp() { // If ID is popup... + switch (checkkey) { + 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) { - 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; +void hmiSaveProcessID(const uint8_t id) { + if (checkkey == id) return; + if (!idIsPopUp()) last_checkkey = checkkey; // If previous is not a popup + checkkey = id; + switch (id) { + 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 DWIN_HomingStart() { - HMI_flag.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 hmiReturnScreen() { + checkkey = last_checkkey; + wait_for_user = false; + drawMainArea(); } -void DWIN_HomingDone() { - HMI_flag.home_flag = false; - HMI_ReturnScreen(); +void dwinHomingStart() { + hmiFlag.home_flag = true; + 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 DWIN_LevelingStart() { +void dwinHomingDone() { + hmiFlag.home_flag = false; + if (last_checkkey == ID_PrintDone) + gotoPrintDone(); + else + hmiReturnScreen(); +} + +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)); - #if BOTH(AUTO_BED_LEVELING_UBL, PREHEAT_BEFORE_LEVELING) - #if HAS_HOTEND - if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) - thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); + 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, hmiData.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() < hmiData.bedLevT) { + thermalManager.setTargetBed(hmiData.bedLevT); + thermalManager.wait_for_bed_heating(); + } + #endif #endif - #if HAS_HEATED_BED - if (thermalManager.degTargetBed() < HMI_data.BedLevT) - thermalManager.setTargetBed(HMI_data.BedLevT); - #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(); + drawManualMeshMenu(); #endif } -void DWIN_LevelingDone() { - TERN_(HAS_MESH, Goto_MeshViewer()); +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) { - 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); + 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)) + ); } #endif // 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(); - #if ENABLED(MPCTEMP) + switch (hmiValue.tempControl) { + default: return; + #if ENABLED(MPC_AUTOTUNE) + case MPCTEMP_START: + 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::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.pidresult) { + switch (hmiValue.tempControl) { + default: break; + #if ANY(PIDTEMP, MPC_AUTOTUNE) + TERN_(PIDTEMP, case PIDTEMP_START:) + TERN_(MPC_AUTOTUNE, case MPCTEMP_START:) + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 120, F("for Nozzle is running.")); + break; + #endif + #if ENABLED(PIDTEMPBED) + case PIDTEMPBED_START: + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 120, F("for BED is running.")); + break; + #endif + } + + switch (hmiValue.tempControl) { + default: break; + #if ENABLED(MPC_AUTOTUNE) case MPCTEMP_START: _maxtemp = thermalManager.hotend_maxtemp[0]; _target = 200; - 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::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for Nozzle is running.")); break; - case PIDTEMPBED_START: - _maxtemp = BED_MAXTEMP; - _target = HMI_data.BedPidT; - 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::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for BED is running.")); - break; - default: return; - } - - #else // PID - - 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")); - - switch (HMI_value.pidresult) { + #endif + #if ENABLED(PIDTEMP) case PIDTEMP_START: _maxtemp = thermalManager.hotend_maxtemp[0]; - _target = HMI_data.HotendPidT; - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for Nozzle is running.")); + _target = hmiData.hotendPidT; break; + #endif + #if ENABLED(PIDTEMPBED) case PIDTEMPBED_START: _maxtemp = BED_MAXTEMP; - _target = HMI_data.BedPidT; - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for BED is running.")); + _target = hmiData.bedPidT; break; - default: return; - } + #endif + } - #endif // PID - - 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.pidresult = 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 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)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); break; default: checkkey = last_checkkey; @@ -1587,34 +1634,34 @@ void DWIN_LevelingDone() { } } -#endif // DWIN_PID_TUNE +#endif // PROUI_PID_TUNE -#if ENABLED(MPCTEMP) +#if ENABLED(MPC_AUTOTUNE) - void DWIN_MPCTuning(tempcontrol_t result) { - HMI_value.pidresult = 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 STR_MPC_AUTOTUNE_INTERRUPTED)); + dwinPopupConfirm(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)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_MPC_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); ui.reset_alert_level(); break; default: @@ -1624,139 +1671,120 @@ void DWIN_LevelingDone() { } } -#endif // MPCTEMP +#endif // MPC_AUTOTUNE // Started a Print Job -void DWIN_Print_Started() { - DEBUG_ECHOLNPGM("DWIN_Print_Started: ", SD_Printing()); +void dwinPrintStarted() { 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; + 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() { - DEBUG_ECHOLNPGM("DWIN_Print_Pause"); +void dwinPrintPause() { ICON_ResumeOrPause(); } // Resume print job -void DWIN_Print_Resume() { - DEBUG_ECHOLNPGM("DWIN_Print_Resume"); +void dwinPrintResume() { ICON_ResumeOrPause(); LCD_MESSAGE(MSG_RESUME_PRINT); } // Ended print job -void DWIN_Print_Finished() { - DEBUG_ECHOLNPGM("DWIN_Print_Finished"); +void dwinPrintFinished() { TERN_(POWER_LOSS_RECOVERY, if (card.isPrinting()) recovery.cancel()); - HMI_flag.pause_flag = false; + 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() { - DEBUG_ECHOLNPGM("DWIN_Print_Aborted"); - DWIN_Print_Finished(); -} - -// Progress and remaining time update -void DWIN_M73() { - if (parser.seenval('P')) { - _percent_done = parser.value_byte(); - HMI_flag.percent_flag = true; - } - if (parser.seenval('R')) { - _remain_time = parser.value_ulong() * 60; - HMI_flag.remain_flag = true; - } - if (checkkey == PrintProcess) { - Draw_Print_ProgressBar(); - Draw_Print_ProgressRemain(); - Draw_Print_ProgressElapsed(); - } +void dwinPrintAborted() { + dwinPrintFinished(); } #if HAS_FILAMENT_SENSOR // Filament Runout process - void DWIN_FilamentRunout(const uint8_t extruder) { LCD_MESSAGE(MSG_RUNOUT_SENSOR); } + void dwinFilamentRunout(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 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 DWIN_SetDataDefaults() { - DEBUG_ECHOLNPGM("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 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()); - HMI_data.FullManualTramming = false; - HMI_data.MediaAutoMount = ENABLED(HAS_SD_EXTENDER); - #if BOTH(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - HMI_data.z_after_homing = DEF_Z_AFTER_HOMING; + TERN_(PREHEAT_BEFORE_LEVELING, hmiData.bedLevT = LEVELING_BED_TEMP); + TERN_(BAUD_RATE_GCODE, setBaud250K()); + #if ALL(LCD_BED_TRAMMING, HAS_BED_PROBE) + hmiData.fullManualTramming = DISABLED(BED_TRAMMING_USE_PROBE); #endif - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) + #if ENABLED(MEDIASORT_MENU_ITEM) + hmiData.mediaSort = true; + card.setSortOn(true); + #endif + hmiData.mediaAutoMount = ENABLED(HAS_SD_EXTENDER); + #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + 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, hmiData.adaptiveStepSmoothing = true); + TERN_(HAS_GCODE_PREVIEW, hmiData.enablePreview = true); } -void DWIN_CopySettingsTo(char * const buff) { - DEBUG_ECHOLNPGM("DWIN_CopySettingsTo"); - DEBUG_ECHOLNPGM("HMI_data: ", sizeof(HMI_data_t)); - 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) { - DEBUG_ECHOLNPGM("DWIN_CopySettingsFrom"); - 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()); - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) + 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 @@ -1764,294 +1792,270 @@ void DWIN_CopySettingsFrom(const char * const buff) { // Initialize or re-initialize the LCD void MarlinUI::init_lcd() { - DEBUG_ECHOLNPGM("MarlinUI::init_lcd"); - delay(750); // wait to wakeup screen - const bool hs = DWIN_Handshake(); UNUSED(hs); - DEBUG_ECHOPGM("DWIN_Handshake "); - DEBUG_ECHOLNF(hs ? F("ok.") : F("error.")); - DWIN_Frame_SetDir(1); - DWIN_JPG_CacheTo1(Language_English); - Encoder_Configuration(); + delay(750); // Wait to wakeup screen + const bool hs = dwinHandshake(); UNUSED(hs); + dwinFrameSetDir(1); + dwinJPGCacheTo1(Language_English); + encoderConfiguration(); } -void DWIN_InitScreen() { - DEBUG_ECHOLNPGM("DWIN_InitScreen"); - DWIN_SetColorDefaults(); - HMI_Init(); // draws boot screen +void dwinInitScreen() { + 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; - last_E = 0; - DWIN_DrawStatusLine(); - DWIN_Draw_Dashboard(); - Goto_Main_Menu(); + dwinDrawStatusLine(); + dwinDrawDashboard(); + gotoMainMenu(); } void MarlinUI::update() { - EachMomentUpdate(); // Status update - HMI_SDCardUpdate(); // SD card update - DWIN_HandleScreen(); // Rotary encoder update + hmiSDCardUpdate(); // SD card update + eachMomentUpdate(); // Status update + dwinHandleScreen(); // Rotary encoder 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(); + 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() { - DWIN_Frame_Clear(Color_Bg_Black); - DWIN_JPG_ShowAndCache(0); - DWINUI::Draw_CenteredString(Color_White, 220, GET_TEXT_F(MSG_PLEASE_WAIT_REBOOT)); - DWIN_UpdateLCD(); +void dwinRebootScreen() { + dwinFrameClear(COLOR_BG_BLACK); + dwinJPGShowAndCache(0); + 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() { - if (HMI_flag.select_flag) + 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 // HAS_MESH +#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 onClick_ConfirmToPrint() { - Preview_Reset(); - DWIN_ResetStatusLine(); - if (HMI_flag.select_flag) { // Confirm - HMI_flag.heat_flag = true; - Goto_Main_Menu(); + void setPreview() { toggleCheckboxLine(hmiData.enablePreview); } + + void onClickConfirmToPrint() { + dwinResetStatusLine(); + if (hmiFlag.select_flag) { // Confirm + gotoMainMenu(); return card.openAndPrintFile(card.filename); } else - HMI_ReturnScreen(); + hmiReturnScreen(); } -#endif +#endif // HAS_GCODE_PREVIEW -void Goto_ConfirmToPrint() { +void gotoConfirmToPrint() { #if HAS_GCODE_PREVIEW - Goto_Popup(Preview_DrawFromSD, onClick_ConfirmToPrint); - #else - // Print SD file - HMI_flag.heat_flag = true; - card.openAndPrintFile(card.filename); + 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 //============================================================================= -// NEW MENU SUBSYSTEM +// MENU SUBSYSTEM //============================================================================= // Tool functions #if ENABLED(EEPROM_SETTINGS) - void WriteEeprom() { - DWIN_DrawStatusLine(GET_TEXT_F(MSG_STORE_EEPROM)); - DWIN_UpdateLCD(); + 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 +#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(); - DWIN_UpdateLCD(); - HMI_SaveProcessID(WaitResponse); +void gotoInfoMenu() { + drawInfoMenu(); + dwinUpdateLCD(); + hmiSaveProcessID(ID_WaitResponse); } -void DisableMotors() { queue.inject(F("M84")); } +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"))); +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")); } - #if BOTH(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 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() { hmiData.zAfterHoming = menuData.value; }; + void setZAfterHoming() { setIntOnClick(0, 20, hmiData.zAfterHoming, applyZAfterHoming); } #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()); } - void LiveZOffset() { - #if EITHER(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; + 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; if (BABYSTEP_ALLOWED()) babystep.add_steps(Z_AXIS, step_zoffset); - //DEBUG_ECHOLNF(F("BB Steps: "), step_zoffset); #endif } - void SetZOffset() { - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + 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) - 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); + 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")); @@ -2061,169 +2065,160 @@ 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 LiveMove() { +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 dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); + } + #endif planner.synchronize(); - 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]); + if (!planner.is_full()) planner.buffer_line(current_position, manual_feedrate_mm_s[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]); +void liveMove() { + if (!enableLiveMove) return; + *menuData.floatPtr = menuData.value / MINUNITMULT; + axisMove(hmiValue.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() { - 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); + void setMoveE() { + const float e_min = current_position.e - (EXTRUDE_MAXLENGTH), + e_max = current_position.e + (EXTRUDE_MAXLENGTH); + hmiValue.axis = E_AXIS; setPFloatOnClick(e_min, e_max, 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); - } - #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) - 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); - DWIN_UpdateLCD(); + 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() { DWIN_LCD_Brightness(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 !BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) - void SetLedStatus() { + #if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) + 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 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); } + 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() { - LCD_MESSAGE(MSG_M48_TEST); - queue.inject(F("G28O\nM48 P10")); - } - void ProbeStow() { probe.stow(); } - void ProbeDeploy() { probe.deploy(); } + void setProbeOffsetX() { setPFloatOnClick(-60, 60, UNITFDIGITS); } + void setProbeOffsetY() { setPFloatOnClick(-60, 60, UNITFDIGITS); } + void setProbeOffsetZ() { setPFloatOnClick(-10, 10, 2); } - #if ENABLED(BLTOUCH_HS_MODE) - void SetHSMode() { - Toggle_Chkb_Line(bltouch.high_speed_mode); + #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(); } + + #if HAS_BLTOUCH_HS_MODE + void setHSMode() { toggleCheckboxLine(bltouch.high_speed_mode); } + #endif + #endif #if HAS_FILAMENT_SENSOR - void SetRunoutEnable() { + void setRunoutEnable() { runout.reset(); runout.enabled[0] = !runout.enabled[0]; Draw_Chkb_Line(CurrentMenu->line(), runout.enabled[0]); @@ -2234,86 +2229,53 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS #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 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]); - DWIN_Draw_Rectangle(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); } +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")); } @@ -2321,203 +2283,199 @@ 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 -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) -#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); + 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 } - 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); + #if HAS_BED_PROBE + + 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); + + 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") + )); + } 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); + // 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 + 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; } - 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); - - 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 - -void TramFL() { Tram(0); } -void TramFR() { Tram(1); } -void TramBR() { Tram(2); } -void TramBL() { Tram(3); } -void TramC () { Tram(4); } - -#if HAS_BED_PROBE && HAS_MESH - - void Trammingwizard() { - if (HMI_data.FullManualTramming) { - LCD_MESSAGE_F("Disable manual tramming"); - return; + void tram(const uint8_t point) { + float xpos = 0, ypos = 0; + 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") + )); } - 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; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) avg += zval[x][y]; - avg /= 4.0f; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) zval[x][y] -= avg; - MeshViewer.DrawMesh(zval, 2, 2); - ui.reset_status(); + #endif - 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; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) { - const float d = ABS(zval[x][y]); - if (max < d) { - s = (zval[x][y] >= 0); - max = d; - p = x + 2 * y; + #if HAS_BED_PROBE && HAS_MESH + + void trammingwizard() { + if (hmiData.fullManualTramming) { + LCD_MESSAGE_F("Disable manual tramming"); + return; + } + bed_mesh_t zval = {0}; + zval[0][0] = tram(0); + checkkey = ID_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::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); + 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::drawCenteredString(140, F("Corners leveled")); + DWINUI::drawCenteredString(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; + } } + 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::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); } - 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; - } - 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::drawButton(BTN_Continue, 86, 305); + checkkey = ID_Menu; + hmiSaveProcessID(ID_WaitResponse); } - DWINUI::Draw_Button(BTN_Continue, 86, 305); - checkkey = Menu; - HMI_SaveProcessID(WaitResponse); - } - void SetManualTramming() { - Toggle_Chkb_Line(HMI_data.FullManualTramming); - } + void setManualTramming() { + toggleCheckboxLine(hmiData.fullManualTramming); + } -#endif // HAS_BED_PROBE && HAS_MESH + #endif // HAS_BED_PROBE && HAS_MESH + +#endif // LCD_BED_TRAMMING #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")); } @@ -2526,211 +2484,207 @@ void TramC () { Tram(4); } #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 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); } +void applyMaxSpeed() { planner.set_max_feedrate(hmiValue.axis, menuData.value / MINUNITMULT); } +#if HAS_X_AXIS + 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() { 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() { 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_MAXFEEDSPEED, max_feedrate_edit_values[E_AXIS], 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 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); } +void applyMaxAccel() { planner.set_max_acceleration(hmiValue.axis, menuData.value); } +#if HAS_X_AXIS + 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() { 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() { 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_MAXACCELERATION, max_acceleration_edit_values[E_AXIS], 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 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); } + void applyMaxJerk() { planner.set_max_jerk(hmiValue.axis, menuData.value / MINUNITMULT); } + #if HAS_X_AXIS + 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() { 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() { 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_MAXJERK, max_jerk_edit_values[E_AXIS], 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); } #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 ENABLED(LIN_ADVANCE) + void setLA_K() { setPFloatOnClick(0, 10, 3); } +#endif + +#if HAS_X_AXIS + 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() { hmiValue.axis = Y_AXIS, setPFloatOnClick( min_steps_edit_values.y, max_steps_edit_values.y, UNITFDIGITS); } +#endif +#if HAS_Z_AXIS + 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_STEP, MAX_STEP, UNITFDIGITS); } - #if ENABLED(PIDTEMP) - void SetHotendPidT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } - #endif + void setStepsE() { hmiValue.axis = E_AXIS; setPFloatOnClick( min_steps_edit_values.e, max_steps_edit_values.e, UNITFDIGITS); } #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); } - 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 EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) - void onDrawZOffset(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 174, 164, 223, 177); + #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + void onDrawZOffset(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) 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 #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; - 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); +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) { @@ -2739,158 +2693,165 @@ 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); - 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); + 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::drawString(LBLX, MBASE(line) - 1, menuitem->caption); + drawMenuIntValue(hmiData.colorBackground, line, 4, hmiValue.Color[i]); + dwinDrawHLine(hmiData.colorSplitLine, 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); +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); } -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); -} - -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); -} - -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); -} - -#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 +#if HAS_X_AXIS + 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 -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 +#if HAS_Y_AXIS + 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(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(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(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); } -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(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); } - 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(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); } - 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(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); } - 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); } @@ -2898,53 +2859,59 @@ void onDrawMaxAccelZ(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); } - 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(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); } - 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(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); } - 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(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); } - onDrawPFloatMenu(menuitem, line); - } + #endif #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); } @@ -2953,36 +2920,42 @@ 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(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); } - 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(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); } - 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(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); } - onDrawPFloatMenu(menuitem, line); -} +#endif #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); } @@ -2990,300 +2963,297 @@ void onDrawStepsZ(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) { - if (HMI_IsChinese()) - return {133, 1, 28, 13}; - else - return{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_Tram, MSG_BED_TRAMMING, onDrawSubMenu, Draw_Tramming_Menu); - MENU_ITEM(ICON_CloseMotor, MSG_DISABLE_STEPPERS, onDrawDisableMotors, DisableMotors); + MENU_ITEM(ICON_Axis, MSG_MOVE_AXIS, onDrawMoveSubMenu, drawMoveMenu); + #if ENABLED(LCD_BED_TRAMMING) + MENU_ITEM(ICON_Tram, MSG_BED_TRAMMING, onDrawSubMenu, drawTrammingMenu); + #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); + 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); - #elif HAS_HOME_OFFSET - MENU_ITEM(ICON_SetHome, MSG_SET_HOME_OFFSETS, onDrawHomeOffset, SetHome); + 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); } -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 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, &hmiData.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, []{ (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, []{ (void)tram(4); }); + #endif + } + updateMenu(trammingMenu); } - UpdateMenu(TrammingMenu); -} -void Draw_Control_Menu() { - checkkey = 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); +#endif // LCD_BED_TRAMMING + +void drawControlMenu() { + checkkey = ID_Menu; + 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); #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; - if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 19)) { - BACK_ITEM(Goto_Main_Menu); +void drawAdvancedSettingsMenu() { + checkkey = ID_Menu; + if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 23)) { + 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); - #if ENABLED(PIDTEMP) - MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, Draw_HotendPID_Menu); + #if HAS_HOME_OFFSET + MENU_ITEM(ICON_ProbeSet, MSG_SET_HOME_OFFSETS, onDrawSubMenu, drawHomeOffsetMenu); #endif - #if ENABLED(MPCTEMP) - MENU_ITEM_F(ICON_MPCNozzle, STR_MPC_AUTOTUNE " Settings", onDrawSubMenu, Draw_HotendMPC_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, drawHotendPIDMenu); #endif - #if ENABLED(PIDTEMPBED) - MENU_ITEM_F(ICON_PIDBed, STR_BED_PID " Settings", onDrawSubMenu, Draw_BedPID_Menu); + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_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, drawBedPIDMenu); + #endif + #if HAS_TRINAMIC_CONFIG + 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 - EDIT_ITEM(ICON_File, MSG_MEDIA_UPDATE, onDrawChkbMenu, SetMediaAutoMount, &HMI_data.MediaAutoMount); + #if HAS_GCODE_PREVIEW + 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, &hmiData.mediaSort); + #endif + 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, drawSelectColorsMenu); #endif - MENU_ITEM(ICON_Scolor, MSG_COLORS_SELECT, onDrawSubMenu, Draw_SelectColors_Menu); } 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); - 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); +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); + #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); + gcode.process_subcommands_now(F("G92E0")); // Reset extruder position + 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); - 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); + void drawHomeOffsetMenu() { + checkkey = ID_Menu; + if (SET_MENU(homeOffsetMenu, MSG_SET_HOME_OFFSETS, 4)) { + BACK_ITEM(drawAdvancedSettingsMenu); + #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); + updateMenu(homeOffsetMenu); } -#endif +#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); - 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); + BACK_ITEM(drawAdvancedSettingsMenu); + #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); + 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 ENABLED(BLTOUCH_HS_MODE) - EDIT_ITEM(ICON_HSMode, MSG_ENABLE_HS_MODE, onDrawChkbMenu, SetHSMode, &bltouch.high_speed_mode); + #if HAS_BLTOUCH_HS_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); + #if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST) + MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, probeTest); + #endif } - UpdateMenu(ProbeSetMenu); + updateMenu(ProbeSetMenu); } -#endif +#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); } -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); -} +#if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) -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); - DWIN_Draw_Rectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); -} - -#if BOTH(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); - #if !BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) - EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, SetLedStatus, &leds.lights_on); + 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); #endif #if HAS_COLOR_LEDS #if ENABLED(LED_COLOR_PRESETS) @@ -3296,314 +3266,598 @@ void Draw_GetColor_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, 14)) { - 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, BABYSTEPPING) - EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawZOffset, SetZOffset, &BABY_Z_VAR); + #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); + 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); #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); + #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); + 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); } -void Draw_Motion_Menu() { - checkkey = Menu; - if (SET_MENU_R(MotionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 6)) { - 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); - #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]); +#if ENABLED(ADAPTIVE_STEP_SMOOTHING) + void setAdaptiveStepSmoothing() { + toggleCheckboxLine(hmiData.adaptiveStepSmoothing); } - UpdateMenu(MotionMenu); +#endif + +#if ENABLED(SHAPING_MENU) + 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(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(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 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); + #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 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); + #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 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, drawMaxJerkMenu); + #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, drawInputShaping_menu); + #endif + #if ENABLED(ADAPTIVE_STEP_SMOOTHING) + EDIT_ITEM(ICON_UBLActive, MSG_STEP_SMOOTHING, onDrawChkbMenu, setAdaptiveStepSmoothing, &hmiData.adaptiveStepSmoothing); + #endif + 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); } #if ENABLED(ADVANCED_PAUSE_FEATURE) - void Draw_FilamentMan_Menu() { - checkkey = Menu; - if (SET_MENU(FilamentMenu, MSG_FILAMENT_MAN, 5)) { - BACK_ITEM(Draw_Prepare_Menu); + #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); + } + + #endif + + 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 - MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, ChangeFilament); + #if HAS_PREHEAT + MENU_ITEM(ICON_SetEndTemp, MSG_PREHEAT_HOTEND, onDrawSubMenu, drawPreheatHotendMenu); + #endif + 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); - 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]); +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]); + #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]); + 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); - 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]); +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]); + #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]); + 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); - 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); + 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); + #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); + 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); - 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]); +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]); + #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]); + EDIT_ITEM(ICON_StepE, MSG_E_STEPS, onDrawStepsE, setStepsE, &planner.settings.axis_steps_per_mm[E_AXIS]); #endif } - UpdateMenu(StepsMenu); + updateMenu(stepsMenu); } -#if ENABLED(PIDTEMP) +//============================================================================= +// UI editable custom colors +//============================================================================= - void Draw_HotendPID_Menu() { - checkkey = Menu; - if (SET_MENU_F(HotendPIDMenu, STR_HOTEND_PID " Settings", 8)) { - 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 - } - UpdateMenu(HotendPIDMenu); +#if HAS_CUSTOM_COLORS + + void restoreDefaultColors() { + dwinSetColorDefaults(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + dwinRedrawScreen(); } -#endif + 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(); + } -#if ENABLED(MPCTEMP) + 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, hmiValue.Color[color], nullptr, liveRGBColor); + } - void HotendMPC() { thermalManager.MPC_autotune(); } - void SetHeaterPower() { SetPFloatOnClick(1, 200, 1); } - void SetBlkHeatCapacity() { SetPFloatOnClick(0, 40, 2); } - void SetSensorRespons() { 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 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); + 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 + +//============================================================================= +// Nozzle and Bed PID/MPC +//============================================================================= + +#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); } + #if ENABLED(MPC_INCLUDE_FAN) + 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, STR_MPC_AUTOTUNE " 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); - MENU_ITEM(ICON_MPCNozzle, MSG_MPC_AUTOTUNE, onDrawMenuItem, HotendMPC); - 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, SetSensorRespons, &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); + 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); + #if ENABLED(MPC_INCLUDE_FAN) + EDIT_ITEM(ICON_MPCFan, MSG_MPC_AMBIENT_XFER_COEFF_FAN, onDrawFanAdj, setFanAdj, &mpc.fan255_adjustment); + #endif #endif } - UpdateMenu(HotendMPCMenu); + updateMenu(hotendMPCMenu); } -#endif // MPCTEMP +#endif // MPC_EDIT_MENU || MPC_AUTOTUNE_MENU -#if ENABLED(PIDTEMPBED) +#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, hmiData.pidCycles, true); + } + void setPidCycles() { setPIntOnClick(3, 50); } +#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 ALL(HAS_PID_HEATING, PID_EDIT_MENU) + + void setKp() { setPFloatOnClick(0, 1000, 2); } + void applyPIDi() { + *menuData.floatPtr = scalePID_i(menuData.value / POW(10, 2)); + TERN_(PIDTEMP, thermalManager.updatePID()); + } + void applyPIDd() { + *menuData.floatPtr = scalePID_d(menuData.value / POW(10, 2)); + TERN_(PIDTEMP, thermalManager.updatePID()); + } + 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.floatPtr = (float*)static_cast(currentMenu->selectedItem())->value; + const float value = unscalePID_d(*menuData.floatPtr); + setFloatOnClick(0, 1000, 2, value, applyPIDd); + } + 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(hmiData.hotendPidT, H_E0); } + void setHotendPidT() { setPIntOnClick(MIN_ETEMP, MAX_ETEMP); } + #endif + + 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, &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); + 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); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); #endif } - UpdateMenu(BedPIDMenu); + updateMenu(hotendPIDMenu); } -#endif // PIDTEMPBED +#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(hmiData.bedPidT, H_BED); } + void setBedPidT() { setPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } + #endif + + 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, &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); + 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 + } + updateMenu(bedPIDMenu); + } + +#endif // PIDTEMPBED && (PID_AUTOTUNE_MENU || PID_EDIT_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"); } @@ -3611,36 +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); - 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); + 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); + #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); + EDIT_ITEM(ICON_ZAfterHome, MSG_Z_AFTER_HOME, onDrawPInt8Menu, setZAfterHoming, &hmiData.zAfterHoming); #endif } - UpdateMenu(HomingMenu); + updateMenu(homingMenu); } -#endif +#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 @@ -3651,70 +3911,68 @@ 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); - DWIN_UpdateLCD(); + 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 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 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); - char buf[15]; - if (bedLevelTools.tilt_grid > 1) { - sprintf_P(buf, PSTR("G28O\nG29 J%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("G28O\nG29J")); + gcode.process_subcommands_now(F("G29J")); LCD_MESSAGE(MSG_UBL_MESH_TILTED); } - void UBLSmartFillMesh() { - LOOP_L_N(x, GRID_MAX_POINTS_Y) bedlevel.smart_fill_mesh(); + 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); } @@ -3723,47 +3981,48 @@ void Draw_Steps_Menu() { #if HAS_MESH - void Draw_MeshSet_Menu() { - checkkey = Menu; - if (SET_MENU(MeshMenu, MSG_MESH_LEVELING, 13)) { - 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_MeshEdit, MSG_EDIT_MESH, onDrawSubMenu, Draw_EditMesh_Menu); + MENU_ITEM(ICON_MeshReset, MSG_MESH_RESET, onDrawMenuItem, ResetMesh); + 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 112df5cae1..ccc90b3de6 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" @@ -33,9 +33,10 @@ #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) +#if ANY(BABYSTEPPING, HAS_BED_PROBE) #define HAS_ZOFFSET_ITEM 1 #if !HAS_BED_PROBE #define JUST_BABYSTEP 1 @@ -46,51 +47,50 @@ 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 } 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 EITHER(DWIN_PID_TUNE, MPCTEMP) +#if ANY(PROUI_PID_TUNE, MPC_AUTOTUNE) enum tempcontrol_t : uint8_t { - #if DWIN_PID_TUNE - PID_DONE, + #if PROUI_PID_TUNE PIDTEMP_START, PIDTEMPBED_START, PID_BAD_HEATER_ID, PID_TEMP_TOO_HIGH, PID_TUNING_TIMEOUT, #endif - #if ENABLED(MPCTEMP) - MPC_DONE, + #if ENABLED(MPC_AUTOTUNE) MPCTEMP_START, MPC_TEMP_ERROR, - MPC_INTERRUPTED + MPC_INTERRUPTED, #endif + AUTOTUNE_DONE }; #endif @@ -100,291 +100,295 @@ 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 MediaAutoMount = ENABLED(HAS_SD_EXTENDER); - #if BOTH(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - uint8_t z_after_homing = DEF_Z_AFTER_HOMING; + bool fullManualTramming = false; + bool mediaSort = true; + bool mediaAutoMount = ENABLED(HAS_SD_EXTENDER); + #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + uint8_t zAfterHoming = DEF_Z_AFTER_HOMING; #endif - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) - LEDColor Led_Color = Def_Leds_Color; + #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) + LEDColor ledColor = defColorLeds; #endif -} 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 DWIN_PID_TUNE - tempcontrol_t pidresult = PID_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; 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; +} hmi_flag_t; -extern HMI_value_t HMI_value; -extern HMI_flag_t HMI_flag; +extern hmi_value_t hmiValue; +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(); + 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(); -#if ENABLED(PIDTEMP) - void HotendPID(); -#endif -#if ENABLED(PIDTEMPBED) - void BedPID(); -#endif +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 +#if ENABLED(PREVENT_COLD_EXTRUSION) + void applyExtMinT(); +#endif +#if ENABLED(NOZZLE_PARK_FEATURE) + void parkHead(); #endif -void ApplyExtMinT(); -void ParkHead(); #if HAS_ONESTEP_LEVELING - void Trammingwizard(); + void trammingwizard(); #endif -#if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) - void ApplyLEDColor(); +#if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) + void applyLEDColor(); #endif #if ENABLED(AUTO_BED_LEVELING_UBL) - void UBLMeshTilt(); - bool UBLValidMesh(); - void UBLMeshSave(); - void UBLMeshLoad(); + void ublMeshTilt(); + void ublMeshSave(); + void ublMeshLoad(); #endif -#if ENABLED(HOST_SHUTDOWN_MENU_ITEM) && defined(SHUTDOWN_ACTION) - void HostShutDown(); -#endif -#if !HAS_BED_PROBE - void HomeZandDisable(); +#if DISABLED(HAS_BED_PROBE) + 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_SelectFile(); // File page -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 DWIN_InitScreen(); -void DWIN_HandleScreen(); -void DWIN_CheckStatusMessage(); -void DWIN_HomingStart(); -void DWIN_HomingDone(); +void gotoPrintProcess(); +void gotoMainMenu(); +void gotoInfoMenu(); +void gotoPowerLossRecovery(); +void gotoConfirmToPrint(); +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 +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 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); + void dwinMeshUpdate(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 dwinLevelingStart(); +void dwinLevelingDone(); +void dwinPrintStarted(); +void dwinPrintPause(); +void dwinPrintResume(); +void dwinPrintFinished(); +void dwinPrintAborted(); #if HAS_FILAMENT_SENSOR - void DWIN_FilamentRunout(const uint8_t extruder); + void dwinFilamentRunout(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(); -void DWIN_RebootScreen(); +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 HMI_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(); -#endif -#if HAS_GCODE_PREVIEW - void HMI_ConfirmToPrint(); + void dwinMeshViewer(); #endif #if HAS_ESDIAG - void Draw_EndStopDiag(); -#endif -#if ENABLED(PRINTCOUNTER) - void Draw_PrintStats(); + void drawEndStopDiag(); #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(); -#if ENABLED(NOZZLE_PARK_FEATURE) - void Draw_ParkPos_Menu(); -#endif -void Draw_PhySet_Menu(); -void Draw_SelectColors_Menu(); -void Draw_GetColor_Menu(); -#if BOTH(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) - void Draw_CaseLight_Menu(); +void drawFilSetMenu(); +#if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) + 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(); -#if EITHER(HAS_BED_PROBE, BABYSTEPPING) - void Draw_ZOffsetWiz_Menu(); +void drawStepsMenu(); +#if ANY(HAS_BED_PROBE, BABYSTEPPING) + 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 drawTrinamicConfigMenu(); +#endif + +// Custom colors editing +#if HAS_CUSTOM_COLORS + 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); - #if ENABLED(PIDTEMP) - void Draw_HotendPID_Menu(); + 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 - #if ENABLED(PIDTEMPBED) - void Draw_BedPID_Menu(); +#endif +#if ENABLED(PIDTEMP) + #if ENABLED(PID_AUTOTUNE_MENU) + void hotendPID(); + #endif + #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) + void drawHotendPIDMenu(); + #endif +#endif +#if ENABLED(PIDTEMPBED) + #if ENABLED(PID_AUTOTUNE_MENU) + void bedPID(); + #endif + #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) + void drawBedPIDMenu(); #endif #endif // MPC #if ENABLED(MPCTEMP) - void DWIN_MPCTuning(tempcontrol_t result); - void Draw_HotendMPC_Menu(); + #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 e87aedf311..8ac7c5eb62 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_defines.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_defines.h @@ -28,9 +28,6 @@ * Date: 2022/08/08 */ -//#define DEBUG_DWIN 1 -//#define NEED_HEX_PRINT 1 - #if defined(__STM32F1__) || defined(STM32F1) #define DASH_REDRAW 1 #endif @@ -47,30 +44,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) -#if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) - #define Def_Leds_Color LEDColorWhite() +#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 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 6cdafc8a93..853da8532e 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" @@ -42,38 +42,38 @@ // 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; - 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 // 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; - 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 @@ -84,17 +84,17 @@ 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; - 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 @@ -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; @@ -122,39 +122,59 @@ 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; - 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(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 - LOOP_L_N(j, 4) { 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; } } +// 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) { +void dwinSRAMToPic(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) { +//void dwinReadSRAM(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_lcd.h b/Marlin/src/lcd/e3v2/proui/dwin_lcd.h index 6e0a254db4..51f4590129 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" @@ -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,15 +62,20 @@ 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 +// 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); +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 552075f9dc..91c3ee98e3 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; - HMI_flag.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); + hmiFlag.select_flag = sel; + 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 - DWIN_UpdateLCD(); +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(HMI_flag.select_flag); - DWIN_UpdateLCD(); +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); - HMI_flag.select_flag = false; + hmiSaveProcessID(ID_Popup); + hmiFlag.select_flag = false; popupDraw(); } -void HMI_Popup() { +void hmiPopup() { if (!wait_for_user) { if (popupClick) popupClick(); return; @@ -86,8 +86,8 @@ 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); - DWIN_UpdateLCD(); + 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 f24aac582e..ee8664e874 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() { - DWIN_Draw_Rectangle(1, HMI_data.PopupBg_Color, 14, 60, 258, 330); - DWIN_Draw_Rectangle(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); - DWIN_UpdateLCD(); +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 - DWIN_UpdateLCD(); +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 f950d7451c..72b66fb5b3 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,44 +32,45 @@ #if ENABLED(DWIN_LCD_PROUI) #include "dwin_defines.h" -#include "dwin_lcd.h" #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) { 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,48 +78,50 @@ 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; } } // 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; } @@ -126,18 +129,18 @@ 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; - DWIN_Draw_String(bShow, fid, color, bColor, x, y, string); + dwinDrawString(bShow, fid, color, bColor, x, y, string); } // Draw a char @@ -145,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}; - 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 -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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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 @@ -178,10 +181,10 @@ 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); - DWIN_Draw_String(bShow, fid, color, bColor, x, y, nstr); + dwinDrawString(bShow, fid, color, bColor, x, y, nstr); } // Draw a numeric float value @@ -194,9 +197,9 @@ 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]; - 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,24 +212,24 @@ 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); - Draw_CenteredString(0, fontid, color, bcolor, x1, x2, (y2 + y1 - fontHeight())/2, 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); + 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; } } @@ -238,19 +241,19 @@ 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)); 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++; } } @@ -260,16 +263,14 @@ 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) { - int a = 0, b = 0; - 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); - a++; +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) { + 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); } } @@ -321,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) { - 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); +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() { - DWIN_Draw_Rectangle(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 85d969043f..9f8ab70e71 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" @@ -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 @@ -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 @@ -162,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 @@ -187,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 @@ -215,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(); @@ -251,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) { - DWIN_Draw_Line(color, cursor.x, cursor.y, x, 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) { - DWIN_Draw_Line(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; @@ -313,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); } @@ -333,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 @@ -387,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 @@ -436,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 @@ -461,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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(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) { - DWIN_Draw_String(true, fid, color, bgcolor, x, y, 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) { - DWIN_Draw_String(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 @@ -493,41 +501,41 @@ 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) { - DWIN_Draw_Box(mode, color, frame.x, frame.y, frame.w, frame.h); + inline void drawBox(uint8_t mode, uint16_t color, frame_rect_t frame) { + dwinDrawBox(mode, color, frame.x, frame.y, frame.w, frame.h); } // Draw a circle @@ -535,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 @@ -545,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 @@ -560,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 -------------------------------// @@ -576,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 @@ -592,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 @@ -600,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 fbaf929dbb..529c80ca72 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -23,22 +23,20 @@ /** * 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" -#if BOTH(DWIN_LCD_PROUI, HAS_ESDIAG) +#if ALL(DWIN_LCD_PROUI, HAS_ESDIAG) #include "endstop_diag.h" #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" @@ -48,61 +46,45 @@ #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; - DWIN_Draw_Rectangle(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(F("End-stops Diagnostic")); - 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)) - #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 - Update(); + 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(); } -void ESDiagClass::Update() { +void ESDiag::update() { DWINUI::cursor.y = 80; - #define ES_REPORT(S) draw_es_state(READ(S##_PIN) != S##_ENDSTOP_INVERTING) - #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) != runout.out_state()); - #endif - DWIN_UpdateLCD(); + #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_(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) != runout.out_state()); + dwinUpdateLCD(); } #endif // DWIN_LCD_PROUI && HAS_ESDIAG diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.h b/Marlin/src/lcd/e3v2/proui/endstop_diag.h index 33f1d10d2d..d4a98d5f1a 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 { +class ESDiag { public: - void Draw(); - 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 bc489dd1fa..8017847538 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -23,25 +23,26 @@ /** * 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" -#if BOTH(DWIN_LCD_PROUI, HAS_GCODE_PREVIEW) +#if ALL(DWIN_LCD_PROUI, HAS_GCODE_PREVIEW) #include "../../../core/types.h" #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; @@ -135,7 +136,7 @@ bool Has_Preview() { Get_Value(buf, ";MAXZ:", fileprop.height); fileprop.height -= tmp; posptr = strstr(buf, tbstart); - if (posptr != NULL) { + if (posptr != nullptr) { fileprop.thumbstart = indx + (posptr - &buf[0]); } else { @@ -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; @@ -195,49 +198,49 @@ bool Has_Preview() { void Preview_DrawFromSD() { if (Has_Preview()) { - char buf[46]; - 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); + MString<45> buf; + char str_1[6] = "", str_2[6] = "", str_3[6] = ""; + dwinDrawRectangle(1, hmiData.colorBackground, 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::drawString(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::drawString(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::drawString(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::drawString(20, 70, &buf); } - DWINUI::Draw_Button(BTN_Print, 26, 290); - DWINUI::Draw_Button(BTN_Cancel, 146, 290); - DWIN_ICON_Show(0, 0, 1, 21, 90, 0x00); - Draw_Select_Highlight(true, 290); - DWIN_UpdateLCD(); + DWINUI::drawButton(BTN_Print, 26, 290); + DWINUI::drawButton(BTN_Cancel, 146, 290); + Preview_Show(); + drawSelectHighlight(true, 290); + dwinUpdateLCD(); } else { - HMI_flag.select_flag = 1; + hmiFlag.select_flag = 1; wait_for_user = false; } } void Preview_Invalidate() { - fileprop.thumbstart = 0; -} - -bool Preview_Valid() { - return !!fileprop.thumbstart; -} - -void Preview_Reset() { fileprop.thumbsize = 0; } +bool Preview_Valid() { + return !!fileprop.thumbsize; +} + +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 2452797d0c..b90180db29 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/lockscreen.cpp b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp index 85f35582b2..ebe3568c98 100644 --- a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp +++ b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp @@ -29,47 +29,47 @@ #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" #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("-> | <-")); - 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(); +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; } - 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, hmiData.colorBarfill, 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/lockscreen.h b/Marlin/src/lcd/e3v2/proui/lockscreen.h index cb75f2c7c0..9feb91c25b 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 @@ public: 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 dfcfaa7bbc..347130743c 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,147 +32,140 @@ #if ENABLED(DWIN_LCD_PROUI) #include "../common/encoder.h" -#include "dwin_lcd.h" -#include "dwinui.h" #include "dwin.h" #include "menus.h" 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) { - DWIN_Draw_Rectangle(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 - 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, hmiData.colorTitleTxt, hmiData.colorTitleBg, 14, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, aTitle->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); -} - -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); - DWIN_Draw_HLine(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); - DWIN_UpdateLCD(); +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); - DWIN_Draw_HLine(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; } } @@ -187,17 +180,17 @@ 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); - EncoderRate.enabled = true; + menuData.minValue = lo; + menuData.maxValue = hi; + menuData.dp = dp; + menuData.apply = apply; + menuData.liveUpdate = liveUpdate; + menuData.value = constrain(val, lo, hi); + encoderRate.enabled = true; } // Generic onclick event for integer values @@ -205,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); } @@ -217,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); } @@ -229,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 @@ -252,31 +245,31 @@ 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*/) { - 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); } } @@ -286,274 +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; - EncoderState encoder_diffState = get_encoder_state(); +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 (Apply_Encoder(encoder_diffState, MenuData.Value)) { - EncoderRate.enabled = false; + 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(); - Draw_Menu(this); +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()); - DWIN_UpdateLCD(); + 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()); - DWIN_UpdateLCD(); + eraseMenuCursor(line()); + 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); + 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); + menuItems[sel]->draw(0); } selected = sel; - Draw_Menu_Cursor(line()); - DWIN_UpdateLCD(); + 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() { - PreviousMenu = nullptr; - InvalidateMenu(); +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 InvalidateMenu() { - if (CurrentMenu) { - CurrentMenu->topline = 0; - CurrentMenu->selected = 0; - CurrentMenu = nullptr; +void resetMenu(Menu* &menu) { + if (menu) { + menu->topline = 0; + menu->selected = 0; } } -void UpdateMenu(MenuClass* &menu) { +void invalidateMenu() { + resetMenu(currentMenu); + currentMenu = nullptr; +} + +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(); +void ReDrawMenu(bool force/*=false*/) { + if (currentMenu && (force || checkkey == ID_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 072bf7584d..58dd92f0f6 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.h +++ b/Marlin/src/lcd/e3v2/proui/menus.h @@ -24,183 +24,191 @@ /** * 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 - 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(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); -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); -// Invalidate CurrentMenu to prepare for full menu drawing -void InvalidateMenu(); +// Reset top line and selected item +void resetMenu(Menu* &menu); + +// 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); +void ReDrawMenu(bool force=false); -// Clear MenuItems array and free MenuItems elements -void MenuItemsClear(); +//Redraw selected menu item +void ReDrawItem(); -// Prepare MenuItems array -void MenuItemsPrepare(int8_t totalitems); +// Clear menuItems array and free menuItems elements +void menuItemsClear(); + +// 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 18cdffd00d..2781ccaa1d 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -23,122 +23,134 @@ /** * 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" -#if BOTH(DWIN_LCD_PROUI, HAS_MESH) +#if ALL(DWIN_LCD_PROUI, HAS_MESH) #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(AUTO_BED_LEVELING_UBL) +#if ENABLED(USE_GRID_MESHVIEWER) #include "bedlevel_tools.h" #endif -MeshViewerClass MeshViewer; +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)) -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) 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) { - const float v = isnan(zval[x][y]) ? 0 : round(zval[x][y] * 100); - zmesh[x][y] = v; - NOLESS(maxz, v); - NOMORE(minz, v); +constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); + +MeshViewer meshViewer; + +float MeshViewer::max, MeshViewer::min; + +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, 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 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::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::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); } - 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)); - 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) { - hal.watchdog_refresh(); - LOOP_L_N(x, sizex) { - 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: - DWIN_Draw_String(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]) - DWIN_Draw_String(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 12, py(y) - 6, str_1); - } + else { + char str_1[9]; + str_1[0] = '\0'; + switch (v) { + case -999 ... -100: + 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"); + break; + case 1 ... 99: + sprintf_P(str_1, PSTR(".%02i"), v); + break; + case 100 ... 999: + 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); } } -void MeshViewerClass::Draw(bool withsave /*= false*/) { - Title.ShowCaption(GET_TEXT_F(MSG_MESH_VIEWER)); - #if USE_UBL_VIEWER - DWINUI::ClearMainArea(); +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]); + } +} + +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(); bedLevelTools.viewer_print_value = true; - bedLevelTools.Draw_Bed_Mesh(-1, 1, 8, 10 + TITLE_HEIGHT); + bedLevelTools.drawBedMesh(-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::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(HMI_flag.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 USE_UBL_VIEWER - bedLevelTools.Set_Mesh_Viewer_Status(); + #if ENABLED(USE_GRID_MESHVIEWER) + 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) - ); + 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 onClick_MeshViewer() { if (HMI_flag.select_flag) SaveMesh(); HMI_ReturnScreen(); } -void Goto_MeshViewer() { if (leveling_is_valid()) Goto_Popup(Draw_MeshViewer, onClick_MeshViewer); else HMI_ReturnScreen(); } +void drawMeshViewer() { meshViewer.draw(true, meshredraw); } + +void onClick_MeshViewer() { if (hmiFlag.select_flag) saveMesh(); hmiReturnScreen(); } + +void gotoMeshViewer(const bool redraw) { + meshredraw = redraw; + 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 3aafe16984..f73f1da86e 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 { +class MeshViewer { 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; +extern MeshViewer meshViewer; -void Goto_MeshViewer(); +void gotoMeshViewer(const bool redraw); diff --git a/Marlin/src/lcd/e3v2/proui/plot.cpp b/Marlin/src/lcd/e3v2/proui/plot.cpp index fddaf3963a..95d8ec291d 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 BOTH(DWIN_LCD_PROUI, SHOW_TUNING_GRAPH) +#if ALL(DWIN_LCD_PROUI, PROUI_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,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 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; 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) DWIN_Draw_VLine(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); + 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) { - 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(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 14e7058b01..bc0e3a774c 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.h +++ b/Marlin/src/lcd/e3v2/proui/plot.h @@ -24,16 +24,16 @@ /** * 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 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 638cd34208..732e80542d 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -23,13 +23,13 @@ /** * Print Stats page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.4.2 + * Version: 1.4.0 * Date: 2022/12/03 */ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, PRINTCOUNTER) +#if ALL(DWIN_LCD_PROUI, PRINTCOUNTER) #include "printstats.h" @@ -37,54 +37,46 @@ #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; +PrintStats printStats; -void PrintStatsClass::Draw() { - char buf[50] = ""; +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(); - 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::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); - sprintf_P(buf, PSTR(S_FMT ": %s"), GET_TEXT(MSG_INFO_PRINT_TIME), str); - DWINUI::Draw_String(MRG, 120, buf); + 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); - 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::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 (HMI_flag.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 4a38306886..133e9eb96e 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.h +++ b/Marlin/src/lcd/e3v2/proui/printstats.h @@ -24,17 +24,17 @@ /** * Print Stats page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.4.2 + * Version: 1.4.0 * 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/extui/anycubic_chiron/Tunes.cpp b/Marlin/src/lcd/extui/anycubic/Tunes.cpp similarity index 63% rename from Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp rename to Marlin/src/lcd/extui/anycubic/Tunes.cpp index adbf98e3bb..6e7aecefa9 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp +++ b/Marlin/src/lcd/extui/anycubic/Tunes.cpp @@ -1,6 +1,6 @@ /** * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] * * Based on Sprinter and grbl. * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm @@ -21,11 +21,7 @@ */ /** - * 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.) + * lcd/extui/anycubic/Tunes.cpp */ /*********************************************************************** @@ -35,27 +31,23 @@ #include "../../../inc/MarlinConfigPre.h" -// TODO: Use Marlin's built-in tone player instead. - -#if ENABLED(ANYCUBIC_LCD_CHIRON) +#if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) #include "Tunes.h" +#include "../../../libs/buzzer.h" #include "../ui_api.h" namespace Anycubic { - void PlayTune(uint8_t beeperPin, const uint16_t *tune, uint8_t speed=1) { - uint8_t pos = 1; + void playTune(const uint16_t *tune, const uint8_t speed/*=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); + for (uint8_t pos = 1; pos < MAX_TUNE_LENGTH; pos += 2) { + const uint16_t freq = tune[pos]; + if (freq == n_END) break; + BUZZ(wholenotelen / tune[pos + 1], freq); + } } } -#endif // ANYCUBIC_LCD_CHIRON +#endif // ANYCUBIC_LCD_CHIRON || ANYCUBIC_LCD_VYPER diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.h b/Marlin/src/lcd/extui/anycubic/Tunes.h new file mode 100644 index 0000000000..73483a9bdd --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic/Tunes.h @@ -0,0 +1,115 @@ +/** + * 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/Tunes.h + */ + +/************************************************************************** + * 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 + +// Note duration divisors +enum { l_T1=1, l_T2 =2, l_T3=3, l_T4 =4, l_T8=8, l_T16=16 }; + +// Note Frequency +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 { + + 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! + // 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_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 HeaterTimeout[] = { + 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/common_defs.h b/Marlin/src/lcd/extui/anycubic/common_defs.h new file mode 100644 index 0000000000..4257f1dabf --- /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 0ef8186668..ffc485a3dc 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp @@ -60,22 +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::currentfolderdepth; -uint16_t FileNavigator::currentfolderindex[MAX_FOLDER_DEPTH]; // track folder pos for iteration -char FileNavigator::currentfoldername[MAX_PATH_LEN + 1]; // Current folder path +uint8_t FileNavigator::folderdepth; +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() { - DEBUG_ECHOLNPGM("reset()"); - currentfoldername[0] = '\0'; - currentfolderdepth = 0; + currentDirPath[0] = '\0'; + folderdepth = 0; currentindex = 0; lastpanelindex = 0; - ZERO(currentfolderindex); + ZERO(currentDirIndex); // Start at root folder while (!filelist.isAtRootDir()) filelist.upDir(); @@ -85,30 +84,28 @@ void FileNavigator::reset() { void FileNavigator::refresh() { filelist.refresh(); } void FileNavigator::changeDIR(const char *folder) { - if (currentfolderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - DEBUG_ECHOLNPGM("FD:" , folderdepth, " FP:",currentindex, " currentfolder:", currentfoldername, " enter:", folder); - currentfolderindex[currentfolderdepth] = currentindex; - strcat(currentfoldername, folder); - strcat(currentfoldername, "/"); + if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth + currentDirIndex[folderdepth] = currentindex; + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); filelist.changeDir(folder); - currentfolderdepth++; + folderdepth++; currentindex = 0; } void FileNavigator::upDIR() { - DEBUG_ECHOLNPGM("upDIR() from D:", currentfolderdepth, " N:", currentfoldername); if (!filelist.isAtRootDir()) { filelist.upDir(); - currentfolderdepth--; - currentindex = currentfolderindex[currentfolderdepth]; // restore last position in the folder + folderdepth--; + currentindex = currentDirIndex[folderdepth]; // restore last position in the folder filelist.seek(currentindex); // restore file information } // Remove the child folder from the stored path - if (currentfolderdepth == 0) - currentfoldername[0] = '\0'; + if (folderdepth == 0) + currentDirPath[0] = '\0'; else { - char * const pos = strchr(currentfoldername, '/'); + char * const pos = strchr(currentDirPath, '/'); *(pos + 1) = '\0'; } } @@ -117,7 +114,6 @@ void FileNavigator::skiptofileindex(uint16_t skip) { if (skip == 0) return; while (skip > 0) { if (filelist.seek(currentindex)) { - DEBUG_ECHOLNPGM("CI:", currentindex, " FD:", currentfolderdepth, " N:", skip, " ", filelist.longFilename()); if (!filelist.isDir()) { skip--; currentindex++; @@ -126,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++; } @@ -151,13 +147,11 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } lastpanelindex = index; - DEBUG_ECHOLNPGM("index=", index, " currentindex=", currentindex); - - 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"); - Chiron.SendtoTFTLN(F(".. .gcode")); + chiron.tftSendLn(F(".. .gcode")); } else { TFTSer.println("<<"); @@ -166,12 +160,8 @@ void FileNavigator::skiptofileindex(uint16_t skip) { filesneeded--; } - for (uint16_t seek = currentindex; seek < currentindex + filesneeded; seek++) { - if (filelist.seek(seek)) { - sendFile(paneltype); - DEBUG_ECHOLNPGM("-", seek, " '", filelist.longFilename(), "' '", currentfoldername, "", filelist.shortFilename(), "'"); - } - } + for (uint16_t seek = currentindex; seek < currentindex + filesneeded; seek++) + if (filelist.seek(seek)) sendFile(paneltype); } void FileNavigator::sendFile(panel_type_t paneltype) { @@ -196,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(currentDirPath); TFTSer.println(filelist.shortFilename()); TFTSer.print(filelist.longFilename()); @@ -212,7 +202,6 @@ void FileNavigator::skiptofileindex(uint16_t skip) { #else // Flat file list void FileNavigator::getFiles(uint16_t index, panel_type_t paneltype, uint8_t filesneeded) { - DEBUG_ECHOLNPGM("getFiles() I:", index," L:", lastpanelindex); // if we're searching backwards, jump back to start and search forward if (index < lastpanelindex) { reset(); @@ -232,7 +221,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } // valid file if (currentindex == filelist.count()) { - if (currentfolderdepth > 0) { + if (folderdepth > 0) { upDIR(); currentindex++; } @@ -244,11 +233,10 @@ 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(currentDirPath); TFTSer.println(filelist.shortFilename()); - if (currentfolderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentDirPath); TFTSer.println(filelist.longFilename()); - DEBUG_ECHOLNPGM("/", currentfoldername, "", filelist.shortFilename(), " ", filelist.longFilename()); } #endif // Flat file list diff --git a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h index ca4283f54b..f4fad96653 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); + class FileNavigator { + public: + static FileList filelist; - 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]; -}; + 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 currentDirIndex[MAX_FOLDER_DEPTH]; + static char currentDirPath[MAX_PATH_LEN + 1]; + }; -extern FileNavigator filenavigator; + extern FileNavigator filenavigator; } 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 bf2e92d03e..0000000000 --- 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_extui.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp index 75061c162a..4ed0461afe 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() {} @@ -94,20 +94,22 @@ namespace ExtUI { // Called after loading or resetting stored settings } - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { // Called after the entire EEPROM has been written, // whether successful or not. } - void onSettingsLoaded(bool success) { + void onSettingsLoaded(const bool success) { // Called after the entire EEPROM has been read, // 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); @@ -120,8 +122,14 @@ namespace ExtUI { #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 + } // 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 285729cc15..6c8c3aa3a5 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" @@ -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; @@ -72,14 +76,6 @@ void ChironTFT::Startup() { live_Zoffset = 0.0; file_menu = AC_menu_file; - // Setup pins for powerloss detection - // Two IO pins are connected on the Trigorilla Board - // On a power interruption the OUTAGECON_PIN goes low. - - #if ENABLED(POWER_LOSS_RECOVERY) - OUT_WRITE(OUTAGECON_PIN, HIGH); - #endif - // Filament runout is handled by Marlin settings in Configuration.h // opt_set FIL_RUNOUT_STATE HIGH // Pin state indicating that filament is NOT present. // opt_enable FIL_RUNOUT_PULLUP @@ -92,81 +88,76 @@ 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); - DetectPanelType(); + 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; } // 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 - PlayTune(BEEPER_PIN, TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn), 1); + // 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) { @@ -174,44 +165,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); - PlayTune(BEEPER_PIN, FilamentOut, 1); + 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; @@ -222,18 +213,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 - PlayTune(BEEPER_PIN,Heater_Timedout,1); + 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: @@ -241,10 +232,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 @@ -255,15 +246,15 @@ 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; } // 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); injectCommands(F("G1 Z50 F500")); - SendtoTFTLN(AC_msg_probing_complete); + tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; msg_matched = true; } @@ -271,14 +262,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; @@ -287,7 +278,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; } @@ -299,11 +290,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) { @@ -312,33 +303,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(BEEPER_PIN, SOS, 1); - SERIAL_ECHOLNF(AC_msg_powerloss_recovery); + playTune(SOS); + SERIAL_ECHOLN(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_ECHO(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 @@ -346,7 +337,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(); @@ -360,29 +351,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 @@ -390,7 +381,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; @@ -405,7 +396,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; @@ -417,7 +408,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; } } @@ -425,23 +416,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'; @@ -451,64 +442,64 @@ 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; - SERIAL_ECHOLNF(AC_msg_old_panel_detected); + SERIAL_ECHOLN(AC_msg_old_panel_detected); } } 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; - SERIAL_ECHOLNF(AC_msg_new_panel_detected); + SERIAL_ECHOLN(AC_msg_new_panel_detected); } } } @@ -516,94 +507,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 @@ -621,7 +612,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; @@ -631,7 +622,7 @@ void ChironTFT::PanelAction(uint8_t req) { break; case 13: // A13 Select file - SelectFile(); + selectFile(); break; case 14: // A14 Start Printing @@ -640,11 +631,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 @@ -679,7 +668,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; @@ -687,7 +676,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; @@ -715,7 +704,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); @@ -728,7 +717,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; } @@ -739,7 +728,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; } @@ -750,7 +739,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; } @@ -769,21 +758,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 @@ -794,7 +783,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); @@ -803,7 +792,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 } } @@ -813,42 +802,42 @@ 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; - SERIAL_ECHOLNF(AC_msg_mesh_changes_abandoned); + SERIAL_ECHOLN(AC_msg_mesh_changes_abandoned); } } - 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")); - SERIAL_ECHOLNF(AC_msg_mesh_changes_saved); + SERIAL_ECHOLN(AC_msg_mesh_changes_saved); selectedmeshpoint.x = selectedmeshpoint.y = 99; } } - 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()) @@ -860,7 +849,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 @@ -868,22 +857,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 { @@ -892,23 +881,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); } @@ -924,7 +913,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 @@ -940,8 +929,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); @@ -952,7 +941,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); } @@ -961,19 +950,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 c9a32e584d..25b8145b13 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h @@ -57,33 +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 InjectCommandandWait(PGM_P); - 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_chiron/chiron_tft_defs.h b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h index e3609b5408..6cad95e68d 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 +// 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 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.") - -#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_i3mega/anycubic_extui.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp index 40a670b5b0..2bd2a458b8 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() {} @@ -81,21 +81,22 @@ namespace ExtUI { // Called after loading or resetting stored settings } - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { // Called after the entire EEPROM has been written, // whether successful or not. } - void onSettingsLoaded(bool success) { + void onSettingsLoaded(const bool success) { // Called after the entire EEPROM has been read, // 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 } @@ -106,6 +107,12 @@ namespace ExtUI { #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 } 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 03997fa95b..8b073652b0 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp @@ -23,6 +23,10 @@ #if ENABLED(ANYCUBIC_LCD_I3MEGA) +//#define ANYCUBIC_LCD_DEBUG +#define DEBUG_OUT ENABLED(ANYCUBIC_LCD_DEBUG) +#include "../../../core/debug_out.h" + #include "anycubic_i3mega_lcd.h" #include "../ui_api.h" @@ -38,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. @@ -52,21 +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::TFTcmdbuffer[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; -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'); } @@ -80,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 @@ -92,9 +89,6 @@ void AnycubicTFTClass::OnSetup() { delay_ms(10); // Init the state of the key pins running on the TFT - #if BOTH(SDSUPPORT, HAS_SD_DETECT) - SET_INPUT_PULLUP(SD_DETECT_PIN); - #endif #if ENABLED(FILAMENT_RUNOUT_SENSOR) SET_INPUT_PULLUP(FIL_RUNOUT1_PIN); #endif @@ -102,30 +96,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 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)) { 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 @@ -135,46 +125,38 @@ 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 AnycubicTFT::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 AnycubicTFT::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 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() { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: FilamentRunout triggered..."); - #endif - DoFilamentRunoutCheck(); +void AnycubicTFT::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 AnycubicTFT::onUserConfirmRequired(const char * const msg) { + DEBUG_ECHOLNPGM("TFT Serial Debug: onUserConfirmRequired triggered... ", msg); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA /** * Need to handle the process of following states * "Nozzle Parked" @@ -223,190 +205,188 @@ void AnycubicTFTClass::OnUserConfirmRequired(const char * const msg) { #endif } -float AnycubicTFTClass::CodeValue() { - return (strtod(&TFTcmdbuffer[TFTbufindr][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindr] + 1], nullptr)); +float AnycubicTFT::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 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. */ - 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 '1': + switch (selectedDirectory[2]) { + default: 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 '0': // "<10FWDeflts>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Load FW Defaults")); + injectCommands(F("M502\nM300 P105 S1661\nM300 P210 S1108")); 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; - - case '1': // "<11SvEEPROM>" - SERIAL_ECHOLNPGM("Special Menu: Save EEPROM"); - injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); - break; - - default: - break; - } + case '1': // "<11SvEEPROM>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Save EEPROM")); + injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); 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; + } + break; - case '2': // "<02ABL>" - SERIAL_ECHOLNPGM("Special Menu: Auto Bed Leveling"); - injectCommands(F("G29N")); - break; + #else // !PROBE_MANUALLY - 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 '0': + switch (selectedDirectory[2]) { + default: 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 '1': // "<01PrehtBed>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Preheat Bed")); + injectCommands(F("M140 S65")); break; - #endif // PROBE_MANUALLY - default: + case '2': // "<02ABL>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Bed Leveling")); + injectCommands(F("G29N")); break; - } - #if ENABLED(ANYCUBIC_LCD_DEBUG) - } - else { - SERIAL_ECHOPGM("TFT Serial Debug: Attempted to HandleSpecialMenu on non-special menu... "); - SERIAL_ECHOLN(SelectedDirectory); - #endif + + 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; + + 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() { - #if ENABLED(SDSUPPORT) +void AnycubicTFT::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 // SDSUPPORT + #endif // HAS_MEDIA } -void AnycubicTFTClass::RenderSpecialMenu(uint16_t selectedNumber) { +void AnycubicTFT::renderSpecialMenu(uint16_t selectedNumber) { + switch (selectedNumber) { + default: break; + #if ENABLED(PROBE_MANUALLY) case 0: // First Page SENDLINE_PGM("<01ZUP~1.GCO"); @@ -440,7 +420,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("")); @@ -463,25 +445,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 AnycubicTFT::renderCurrentFolder(uint16_t selectedNumber) { FileList currentFileList; - uint16_t cnt = selectedNumber; - uint16_t max_files; - uint16_t dir_files = currentFileList.count(); + const uint16_t dir_files = currentFileList.count(), + max_files = (dir_files - selectedNumber) < 4 ? dir_files : selectedNumber + 3; - if ((dir_files - selectedNumber) < 4) - max_files = dir_files; - else - max_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) - ) { + 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; + } - if (!serial3_count) return; // if empty line + if (!serial_count) return; // if empty line - TFTcmdbuffer[TFTbufindw][serial3_count] = 0; // terminate string + tftCommands[tftBufIndW][serial_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 ((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 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; - - 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 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 ENABLED(SDSUPPORT) - 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; - - 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 8: // A8 GET SD LIST - #if ENABLED(SDSUPPORT) - SelectedFile[0] = 0; - RenderCurrentFileList(); - #endif - break; - - case 9: // A9 pause sd print - #if ENABLED(SDSUPPORT) - if (isPrintingFromMedia()) - PausePrint(); - #endif - break; - - case 10: // A10 resume sd print - #if ENABLED(SDSUPPORT) - if (isPrintingFromMediaPaused()) - ResumePrint(); - #endif - break; - - case 11: // A11 STOP SD PRINT - TERN_(SDSUPPORT, StopPrint()); - break; - - case 12: // A12 kill - kill(F(STR_ERR_KILLED)); - break; - - case 13: // A13 SELECTION FILE - #if ENABLED(SDSUPPORT) - 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; - - if (starpos) *(starpos - 1) = '\0'; - - strcpy(SelectedFile, TFTstrchr_pointer + 4); - SENDLINE_DBG_PGM_VAL("J20", "TFT Serial Debug: File Selected... J20 ", SelectedFile); // J20 File Selected - } - } - #endif - break; - - case 14: // A14 START PRINTING - #if ENABLED(SDSUPPORT) - if (!isPrinting() && strlen(SelectedFile) > 0) - StartPrint(); - #endif - break; - - case 15: // A15 RESUMING FROM OUTAGE - // TODO: JBA implement resume form outage - break; - - case 16: { // A16 set hotend temp - unsigned int 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 - unsigned int 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); - } - else - fanPercent = 100; - - setTargetFan_percent(fanPercent, FAN0); - 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(); - } - - SENDLINE_PGM(""); - break; - - 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")); - } - else if (CodeSeen('C')) { - injectCommands_P(G28_STR); - } - } - break; - - case 22: // A22 move X/Y/Z or extrude - if (!isPrinting()) { - float coorvalue; - unsigned int 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); - } - } - SENDLINE_PGM(""); - break; - - 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; - - 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; - - 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; - - case 26: // A26 refresh SD - #if ENABLED(SDSUPPORT) - 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"); - } - - SelectedDirectory[0] = 0; - #endif - break; - - #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 33: // A33 get version info - SEND_PGM("J33 "); - SENDLINE_PGM(DETAILED_BUILD_VERSION); - break; - - default: - break; - } + if (a_command > 7 && a_command != 20) { // No debugging of status polls, please! + DEBUG_ECHOLNPGM("TFT Serial Command: ", tftCommands[tftBufIndW]); } - TFTbufindw = (TFTbufindw + 1) % TFTBUFSIZE; - TFTbuflen += 1; - serial3_count = 0; // clear buffer + 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 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; + + 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 8: // A8 GET SD LIST + #if HAS_MEDIA + selectedFile[0] = 0; + renderCurrentFileList(); + #endif + break; + + case 9: // A9 pause sd print + TERN_(HAS_MEDIA, if (isPrintingFromMedia()) pausePrint()); + break; + + case 10: // A10 resume sd print + #if HAS_MEDIA + if (isPrintingFromMediaPaused()) + resumePrint(); + #endif + break; + + case 11: // A11 STOP SD PRINT + TERN_(HAS_MEDIA, stopPrint()); + break; + + case 12: // A12 kill + kill(F(STR_ERR_KILLED)); + break; + + 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(""); + } + 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; + + if (starpos) *(starpos - 1) = '\0'; + + strcpy(selectedFile, tftStrchrPtr + 4); + SENDLINE_DBG_PGM_VAL("J20", "TFT Serial Debug: File Selected... J20 ", selectedFile); // J20 File Selected + } + } + #endif + break; + + case 14: // A14 START PRINTING + #if HAS_MEDIA + if (!isPrinting() && strlen(selectedFile) > 0) + startPrint(); + #endif + break; + + 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); + } + else + fanPercent = 100; + + setTargetFan_percent(fanPercent, FAN0); + 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(); + } + + SENDLINE_PGM(""); + break; + + 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")); + } + 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)); + } + + 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; + + 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; + + 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; + + 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; + + 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"); + } + + selectedDirectory[0] = 0; + #endif + break; + + #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 33: // A33 get version info + SEND_PGM("J33 "); + SENDLINE_PGM(DETAILED_BUILD_VERSION); + break; + + default: + break; + } } - else { - TFTcmdbuffer[TFTbufindw][serial3_count++] = serial3_char; - } - } + + tftBufIndW = (tftBufIndW + 1) % (TFTBUFSIZE); + tftBufLen++; + serial_count = 0; // clear buffer + + } // while } -void AnycubicTFTClass::DoSDCardStateCheck() { - #if BOTH(SDSUPPORT, HAS_SD_DETECT) +void AnycubicTFT::doSDCardStateCheck() { + #if ALL(HAS_MEDIA, HAS_SD_DETECT) bool isInserted = isMediaInserted(); if (isInserted) SENDLINE_DBG_PGM("J00", "TFT Serial Debug: SD card state changed... isInserted"); @@ -932,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 @@ -951,24 +913,19 @@ void AnycubicTFTClass::DoFilamentRunoutCheck() { #endif // FILAMENT_RUNOUT_SENSOR } -void AnycubicTFTClass::StartPrint() { - #if ENABLED(SDSUPPORT) - 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 +void AnycubicTFT::startPrint() { + #if HAS_MEDIA + 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() { - #if ENABLED(SDSUPPORT) +void AnycubicTFT::pausePrint() { + #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 @@ -981,16 +938,14 @@ void AnycubicTFTClass::PausePrint() { #endif } -void AnycubicTFTClass::ResumePrint() { - #if ENABLED(SDSUPPORT) +void AnycubicTFT::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"); @@ -1017,8 +972,8 @@ void AnycubicTFTClass::ResumePrint() { #endif } -void AnycubicTFTClass::StopPrint() { - #if ENABLED(SDSUPPORT) +void AnycubicTFT::stopPrint() { + #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/anycubic_i3mega/anycubic_i3mega_lcd.h b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h index 8fcadc1553..78eae62326 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h @@ -45,51 +45,48 @@ enum AnycubicMediaPauseState { AMPAUSESTATE_REHEAT_FINISHED }; -class AnycubicTFTClass { +class AnycubicTFT { 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(); + AnycubicTFT(); + 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 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 new file mode 100644 index 0000000000..e3cd68fd9d --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp @@ -0,0 +1,161 @@ +/** + * 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/anycubic_vyper/FileNavigator.cpp + */ + +/*************************************************************************** + * The AC panel wants files in block of 4 and can only display a flat list * + * This library allows full folder traversal. * + ***************************************************************************/ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(ANYCUBIC_LCD_VYPER) + +#include "FileNavigator.h" +#include "dgus_tft.h" + +using namespace ExtUI; + +namespace Anycubic { + + 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 + + FileNavigator filenavigator; + + FileNavigator::FileNavigator() { reset(); } + + void FileNavigator::reset() { + currentDirPath[0] = '\0'; + folderdepth = 0; + currentindex = 0; + lastindex = 0; + // Start at root folder + while (!filelist.isAtRootDir()) filelist.upDir(); + refresh(); + } + + void FileNavigator::refresh() { filelist.refresh(); } + + void FileNavigator::getFiles(uint16_t index) { + uint8_t files = 5; + if (index == 0) currentindex = 0; + + // Each time we change folder we reset the file index to 0 and keep track + // of the current position as the TFT panel isnt aware of folders trees. + if (index > 0) { + //--currentindex; // go back a file to take account off the .. we added to the root. + if (index > lastindex) + currentindex += files; + else + currentindex = currentindex < 5 ? 0 : currentindex - files; + } + lastindex = index; + + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("index=", index, " currentindex=", currentindex, " lastindex=", lastindex); + #endif + + uint8_t file_num = 0; + for (uint16_t _seek = currentindex; _seek < currentindex + files; _seek++) { + + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("_seek: ", _seek, " currentindex: ", currentindex, " files: ", files); + #endif + + if (filelist.seek(_seek)) { + //sendFile(); + + DgusTFT::sendTxtToTFT(filelist.longFilename(), TXT_FILE_0 + file_num*0x30); + + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("seek: ", _seek, " '", filelist.longFilename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); + #endif + } + else { + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("over seek: ", _seek); + #endif + + DgusTFT::sendTxtToTFT("\0", TXT_FILE_0 + file_num*0x30); + } + + file_num++; + } + } + + void FileNavigator::sendFile() { + // Send the file and folder info to the panel. + // This info will be returned when the file is selected. + // Permitted special characters in file name: -_*#~ + // Panel can display 22 characters per line. + if (!filelist.isDir()) + DgusTFT::sendTxtToTFT(filelist.longFilename(), TXT_FILE_0); + } + + void FileNavigator::changeDIR(char *folder) { + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("currentfolder: ", currentDirPath, " New: ", folder); + #endif + if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); + filelist.changeDir(folder); + refresh(); + folderdepth++; + currentindex = 0; + } + + void FileNavigator::upDIR() { + filelist.upDir(); + refresh(); + folderdepth--; + currentindex = 0; + // Remove the last child folder from the stored path + if (folderdepth == 0) { + currentDirPath[0] = '\0'; + reset(); + } + else { + char *pos = nullptr; + for (uint8_t f = 0; f < folderdepth; f++) + pos = strchr(currentDirPath, '/'); + + *(pos + 1) = '\0'; + } + #if ACDEBUG(AC_FILE) + SERIAL_ECHOLNPGM("depth: ", folderdepth, " currentDirPath: ", currentDirPath); + #endif + } + + char* FileNavigator::getCurrentDirPath() { return currentDirPath; } + + uint16_t FileNavigator::getFileNum() { return filelist.count(); } +} + +#endif // ANYCUBIC_LCD_VYPER diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h new file mode 100644 index 0000000000..2505ae7c4c --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h @@ -0,0 +1,56 @@ +/** + * 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_vyper/FileNavigator.h + */ + +#include "dgus_tft_defs.h" +#include "../ui_api.h" + +using namespace ExtUI; + +namespace Anycubic { + + class FileNavigator { + public: + 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* getCurrentDirPath(); + static uint16_t getFileNum(); + private: + static uint16_t lastindex; + static uint16_t currentindex; + static uint8_t folderdepth; + 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 new file mode 100644 index 0000000000..f27e638b32 --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -0,0 +1,3270 @@ +/** + * 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/anycubic_vyper/dgus_tft.cpp + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(ANYCUBIC_LCD_VYPER) + +#include "dgus_tft.h" +#include "../anycubic/Tunes.h" +#include "FileNavigator.h" + +#include "../../../gcode/queue.h" +#include "../../../sd/cardreader.h" +#include "../../../libs/numtostr.h" +#include "../../../MarlinCore.h" +#include "../../../core/serial.h" +#include "../../../module/stepper.h" +#include "../../../module/probe.h" + +#if ENABLED(POWER_LOSS_RECOVERY) + #include "../../../feature/powerloss.h" +#endif + +#define DEBUG_OUT ACDEBUGLEVEL +#include "../../../core/debug_out.h" + +#include + +namespace Anycubic { + + const char MESSAGE_charu[] = {0xB4, 0xE6, 0xB4, 0xA2, 0xBF, 0xA8, 0xD2, 0xD1, 0xB2, 0xE5, 0xC8, 0xEB, 0x00}; // '忙'垄驴篓脪脩虏氓脠毛 + const char MESSAGE_bachu[] = {0xB4, 0xE6, 0xB4, 0xA2, 0xBF, 0xA8, 0xD2, 0xD1, 0xB0, 0xCE, 0xB3, 0xF6, 0x00}; + const char MESSAGE_wuka[] = {0xCE, 0xDE, 0xB4, 0xE6, 0xB4, 0xA2, 0xBF, 0xA8, 0x00}; + const char MESSAGE_lianji[] = {0xC1, 0xAA, 0xBB, 0xFA, 0xD6, 0xD0, 0x00}; + const char MESSAGE_tuoji[] = {0xCD, 0xD1, 0xBB, 0xFA, 0xB4, 0xF2, 0xD3, 0xA1, 0xD6, 0xD0, 0x00}; + const char MESSAGE_zanting[] = {0xB4, 0xF2, 0xD3, 0xA1, 0xD4, 0xDD, 0xCD, 0xA3, 0xD6, 0xD0, 0x00}; + const char MESSAGE_tingzhi[] = {0xCD, 0xA3, 0xD6, 0xB9, 0xB4, 0xF2, 0xD3, 0xA1, 0x00}; + const char MESSAGE_wancheng[] = {0xCD, 0xEA, 0xB3, 0xC9, 0xB4, 0xF2, 0xD3, 0xA1, 0x00}; + const char MESSAGE_hotend_heating[] = {0xB4, 0xF2, 0xD3, 0xA1, 0xCD, 0xB7, 0xD5, 0xFD, 0xD4, 0xDA, 0xBC, 0xD3, 0xC8, 0xC8, 0x00}; + const char MESSAGE_hotend_over[] = {0xB4, 0xF2, 0xD3, 0xA1, 0xCD, 0xB7, 0xBC, 0xD3, 0xC8, 0xC8, 0xCD, 0xEA, 0xB3, 0xC9, 0x00}; + const char MESSAGE_bed_heating[] = {0xC8, 0xC8, 0xB4, 0xB2, 0xD5, 0xFD, 0xD4, 0xDA, 0xBC, 0xD3, 0xC8, 0xC8, 0x00}; + const char MESSAGE_bed_over[] = {0xC8, 0xC8, 0xB4, 0xB2, 0xBC, 0xD3, 0xC8, 0xC8, 0xCD, 0xEA, 0xB3, 0xC9, 0x00}; + const char MESSAGE_ready[] = {0xD7, 0xBC, 0xB1, 0xB8, 0xBE, 0xCD, 0xD0, 0xF7, 0x00}; + const char MESSAGE_cold[] = {0xB4, 0xF2, 0xD3, 0xA1, 0xCD, 0xB7, 0xCE, 0xC2, 0xB6, 0xC8, 0xB9, 0xFD, 0xB5, 0xCD, 0x00}; + + const char *p_mesage[] = { MESSAGE_charu, MESSAGE_bachu, MESSAGE_wuka, MESSAGE_lianji, MESSAGE_tuoji, MESSAGE_zanting, + MESSAGE_tingzhi, MESSAGE_wancheng, MESSAGE_hotend_heating, MESSAGE_hotend_over, MESSAGE_bed_heating, + MESSAGE_bed_over, MESSAGE_ready, MESSAGE_cold }; + + DgusTFT::p_fun fun_array[] = { + DgusTFT::page1, DgusTFT::page2, DgusTFT::page3, DgusTFT::page4, DgusTFT::page5, DgusTFT::page6, + DgusTFT::page7, DgusTFT::page8, DgusTFT::page9, DgusTFT::page10, DgusTFT::page11, DgusTFT::page12, + DgusTFT::page13, DgusTFT::page14, DgusTFT::page15, DgusTFT::page16, DgusTFT::page17, DgusTFT::page18, + DgusTFT::page19, DgusTFT::page20, DgusTFT::page21, DgusTFT::page22, DgusTFT::page23, DgusTFT::page24, + DgusTFT::page25, DgusTFT::page26, DgusTFT::page27, DgusTFT::page28, DgusTFT::page29, DgusTFT::page30, + DgusTFT::page31, DgusTFT::page32 + #if HAS_LEVELING + , DgusTFT::page33 , DgusTFT::page34 + #endif + }; + + printer_state_t DgusTFT::printer_state; + paused_state_t DgusTFT::pause_state; + #if HAS_HOTEND + heater_state_t DgusTFT::hotend_state; + #endif + #if HAS_HEATED_BED + heater_state_t DgusTFT::hotbed_state; + #endif + char DgusTFT::selectedfile[MAX_PATH_LEN]; + char DgusTFT::panel_command[MAX_CMND_LEN]; + uint8_t DgusTFT::command_len; + file_menu_t DgusTFT::file_menu; + + bool DgusTFT::data_received; + uint8_t DgusTFT::data_buf[DATA_BUF_SIZE]; + uint8_t DgusTFT::data_index; + uint16_t DgusTFT::page_index_now, DgusTFT::page_index_last, DgusTFT::page_index_last_2; + uint8_t DgusTFT::message_index; + uint8_t DgusTFT::pop_up_index; + uint32_t DgusTFT::key_value; + uint8_t DgusTFT::lcd_txtbox_index; + uint8_t DgusTFT::lcd_txtbox_page; + int16_t DgusTFT::feedrate_back; + lcd_info_t DgusTFT::lcd_info, DgusTFT::lcd_info_back; + language_t DgusTFT::ui_language; + uint16_t page_index_saved; // flags to keep from bombing the host display + uint8_t pop_up_index_saved; + uint32_t key_value_saved; + + 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; + + DgusTFT::DgusTFT() { + data_buf[0] = '\0'; + message_index = 100; + pop_up_index = 100; + page_index_now = page_index_last = page_index_last_2 = 1; + lcd_txtbox_index = 0; + feedrate_back = -1; + } + + void DgusTFT::startup() { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("DgusTFT::startup()"); + #endif + selectedfile[0] = '\0'; + panel_command[0] = '\0'; + command_len = 0; + printer_state = AC_printer_idle; + pause_state = AC_paused_idle; + TERN_(HAS_HOTEND, hotend_state = AC_heater_off); + TERN_(HAS_HEATED_BED, hotbed_state = AC_heater_off); + file_menu = AC_menu_file; + set_language(ui_language); // use language stored in EEPROM + + // Filament runout is handled by Marlin settings in Configuration.h + // opt_set FIL_RUNOUT_STATE HIGH // Pin state indicating that filament is NOT present. + // opt_enable FIL_RUNOUT_PULLUP + + TFTSer.begin(115200); + + // Signal 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); + #endif + tftSendLn(AC_msg_ready); + } + + void DgusTFT::paramInit() { + + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("DgusTFT::paramInit()"); + #endif + + if (lcd_info.language == CHS) + page_index_now = 1; + else if (lcd_info.language == ENG) + page_index_now = 121; + + lcdAudioSet(lcd_info.audio_on); + + #if ACDEBUG(AC_MARLIN) + if (lcd_info.language == CHS) + DEBUG_ECHOLNPGM("paramInit lcd language: CHS"); + else if (lcd_info.language == ENG) + DEBUG_ECHOLNPGM("paramInit lcd language: ENG"); + + if (lcd_info.audio_on) + DEBUG_ECHOLNPGM("paramInit lcd audio: ON"); + else + DEBUG_ECHOLNPGM("paramInit lcd audio: OFF"); + #endif + + requestValueFromTFT(0x14); // get page ID + } + + 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("key: ", key_value); + } + #endif + + switch (page_index_now) { + case 115: page115(); break; + case 117: page117(); break; + //case 124: page124(); break; + //case 125: page125(); break; + case 170: page170(); break; + + #if ENABLED(POWER_LOSS_RECOVERY) + case 171: page171(); break; + case 173: page173(); break; + #endif + + #if HAS_LEVELING + case 175: page175(); break; + case 176: page176(); break; + #endif + + case 177 ... 198: { + #if 0 // ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("line: ", __LINE__); + DEBUG_ECHOLNPGM("func: ", page_index_now); + #endif + //page177_to_198(); + } break; + + case 199 ... 200: { + #if 0 // ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("line: ", __LINE__); + DEBUG_ECHOLNPGM("func: ", page_index_now); + #endif + page199_to_200(); + } break; + + case 201: case 204: page201(); break; + case 202: case 205: page202(); break; + case 203: case 206: page203(); break; + + default: + if (lcd_info.language == CHS) { + if (WITHIN(page_index_now, 1, 1 + COUNT(fun_array))) { + fun_array[page_index_now - 1](); + } + else { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("line: ", __LINE__); + DEBUG_ECHOLNPGM("fun doesn't exist: ", page_index_now); + #endif + } + } + else if (lcd_info.language == ENG) { + if (WITHIN(page_index_now, 121, 121 + COUNT(fun_array))) { + fun_array[page_index_now - 121](); // ENG page_index is 120 more than CHS + } + else { + SERIAL_ECHOLNPGM("lcd function doesn't exist"); + SERIAL_ECHOLNPGM("page_index_last: ", page_index_last); + SERIAL_ECHOLNPGM("page_index_last_2: ", page_index_last_2); + } + } + break; + } + + pop_up_manager(); + key_value = 0; + + checkHeaters(); + } + + uint8_t FSHlength(FSTR_P FSHinput) { + PGM_P FSHinputPointer = reinterpret_cast(FSHinput); + uint8_t stringLength = 0; + while (pgm_read_byte(FSHinputPointer++)) stringLength++; + return stringLength; + } + + void DgusTFT::printerKilled(FSTR_P error_p, FSTR_P component_p) { + + // copy string in FLASH to RAM for strcmp_P + + uint8_t textLength = FSHlength(error_p); + char error[FSHlength(error_p) + 1]; + memcpy_P(error, error_p, textLength + 1); // +1 for the null terminator + + textLength = FSHlength(component_p); + char component[FSHlength(component_p) + 1]; + memcpy_P(component, component_p, textLength + 1); // +1 for the null terminator + + tftSendLn(AC_msg_kill_lcd); + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("printerKilled()\nerror: ", error, "\ncomponent: ", component); + #endif + + if (strcmp_P(error, PSTR("Heating Failed")) == 0) { + + if (strcmp_P(component, PSTR("Bed")) == 0) { + 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); + SERIAL_ECHOLNPGM("Check E1 heater"); + } + + } + else if (strcmp_P(error, PSTR("Err: MINTEMP")) == 0) { + + if (strcmp_P(component, PSTR("Bed")) == 0) { + 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); + SERIAL_ECHOLNPGM("Check E1 thermistor"); + } + + } + else if (strcmp_P(error, PSTR("Err: MAXTEMP")) == 0) { + + if (strcmp_P(component, PSTR("Bed")) == 0) { + 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); + SERIAL_ECHOLNPGM("Check E1 thermistor"); + } + + } + else if (strcmp_P(error, PSTR("THERMAL RUNAWAY")) == 0) { + + if (strcmp_P(component, PSTR("Bed")) == 0) { + 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); + SERIAL_ECHOLNPGM("Check E1 thermal runaway"); + } + + } + else if (strcmp_P(error, PSTR("Homing Failed")) == 0) { + + if (strcmp_P(component, PSTR("X")) == 0) { + 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); + SERIAL_ECHOLNPGM("Check Y endstop"); + } + else if (strcmp_P(component, PSTR("Z")) == 0) { + changePageOfTFT(PAGE_CHS_ABNORMAL_Z_ENDSTOP); + SERIAL_ECHOLNPGM("Check Z endstop"); + } + + } + + } + + void DgusTFT::set_descript_color(const uint16_t color, const uint8_t index/*=lcd_txtbox_index*/) { + sendColorToTFT(color, TXT_DESCRIPT_0 + 0x30 * (index - 1)); + } + + void DgusTFT::mediaEvent(media_event_t event) { + #if ACDEBUG(AC_MARLIN) + DEBUG_PRINT_MEDIA_EVENT(event); + #endif + switch (event) { + case AC_media_inserted: + + filenavigator.reset(); + + lcd_txtbox_page = 0; + if (lcd_txtbox_index) { + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + } + + sendFileList(lcd_txtbox_index); + + break; + + case AC_media_removed: + tftSendLn(AC_msg_sd_card_removed); + + filenavigator.reset(); + + lcd_txtbox_page = 0; + if (lcd_txtbox_index) { + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + } + + sendFileList(lcd_txtbox_index); + break; + + case AC_media_error: + tftSendLn(AC_msg_no_sd_card); + break; + } + } + + void DgusTFT::timerEvent(timer_event_t event) { + + #if ACDEBUG(AC_MARLIN) + 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; + tftSendLn(AC_msg_print_from_sd_card); + break; + + case AC_timer_paused: + //printer_state = AC_printer_paused; + //pause_state = AC_paused_idle; + tftSendLn(AC_msg_paused); + break; + + case AC_timer_stopped: + if (printer_state != AC_printer_idle) { + if (printer_state == AC_printer_stopping_from_media_remove) { + changePageOfTFT(PAGE_NO_SD); + } + else { + printer_state = AC_printer_stopping; + + // Get Printing Time + uint32_t time = getProgress_seconds_elapsed() / 60; + 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); + tftSendLn(AC_msg_print_complete); + pop_up_index = 100; + } + } + setSoftEndstopState(true); // enable endstops + break; + } + } + + #if ENABLED(FILAMENT_RUNOUT_SENSOR) + + void DgusTFT::filamentRunout() { + #if ACDEBUG(AC_MARLIN) + DEBUG_PRINT_PRINTER_STATE(printer_state, F("filamentRunout() ")); + + // 1 Signal filament out + tftSendLn(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); + //printer_state = AC_printer_filament_out; + + DEBUG_ECHOLNPGM("getFilamentRunoutState: ", getFilamentRunoutState()); + #endif + + pop_up_index = 15; // show filament lack. + + if (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_STATE) { + playTune(FilamentOut); + + feedrate_back = getFeedrate_percent(); + + if (isPrintingFromMedia()) { + pausePrint(); + printer_state = AC_printer_pausing; + pause_state = AC_paused_filament_lack; + } + } + } + + #endif // FILAMENT_RUNOUT_SENSOR + + 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(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_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) { + if (pause_state != AC_paused_filament_lack) + changePageOfTFT(PAGE_STATUS1); // enable continue button + printer_state = AC_printer_paused; + } + } + break; + + #if ENABLED(POWER_LOSS_RECOVERY) + case AC_printer_resuming_from_power_outage: + #endif + case AC_printer_printing: + case AC_printer_paused: + // Heater timout, send acknowledgement + 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); + } + // Reheat finished, send acknowledgement + else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("send M108 ", __LINE__); + #endif + injectCommands(F("M108")); + + if (pause_state != AC_paused_filament_lack) + pause_state = AC_paused_idle; + + 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; + tftSendLn(AC_msg_paused); // enable continue button + } + else if (strcmp_P(msg, MARLIN_msg_nozzle_parked) == 0) { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("send M108 ", __LINE__); + #endif + injectCommands(F("M108")); + + if (pause_state != AC_paused_filament_lack) + pause_state = AC_paused_idle; + } + + break; + + default: break; + } + } + + void DgusTFT::statusChange(const char * const msg) { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("statusChange() ", msg); + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); + #endif + bool msg_matched = false; + + #if HAS_LEVELING + static grid_count_t probe_cnt = 0; + #endif + + // The only way to get printer status is to parse messages + // Use the state to minimise the work we do here. + switch (printer_state) { + #if HAS_LEVELING + case AC_printer_probing: + + if (strncmp_P(msg, MARLIN_msg_probing_point, strlen_P(MARLIN_msg_probing_point)) == 0) + probe_cnt++; + + // 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) { + probe_cnt = 0; + injectCommands(F("M500")); // G27 park nozzle + //changePageOfTFT(PAGE_PreLEVEL); + fakeChangePageOfTFT(PAGE_PreLEVEL); // Prevent UI refreshing too quickly when probing is done + printer_state = AC_printer_idle; + msg_matched = true; + } + } + + // 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); + injectCommands(F("G1 Z50 F500")); + 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); + + if (strcmp_P(msg, MARLIN_msg_probe_preheat_stop) == 0) + changePageOfTFT(PAGE_LEVELING); + + break; + #endif + + case AC_printer_printing: + if (strcmp_P(msg, MARLIN_msg_reheating) == 0) { + tftSendLn(AC_msg_paused); // enable continue button + changePageOfTFT(PAGE_STATUS2); + msg_matched = true; + } + else if (strcmp_P(msg, MARLIN_msg_media_removed) == 0) { + msg_matched = true; + printer_state = AC_printer_stopping_from_media_remove; + } + else { + #if ENABLED(FILAMENT_RUNOUT_SENSOR) + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("setFilamentRunoutState: ", __LINE__); + #endif + setFilamentRunoutState(false); + #endif + } + break; + + 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 + pause_state = AC_paused_idle; + } + + printer_state = AC_printer_paused; + msg_matched = true; + } + break; + + 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 + pause_state = AC_paused_idle; + } + + printer_state = AC_printer_paused; + msg_matched = true; + } + break; + + case AC_printer_stopping: + if (strcmp_P(msg, MARLIN_msg_print_aborted) == 0) { + changePageOfTFT(PAGE_MAIN); + printer_state = AC_printer_idle; + msg_matched = true; + } + break; + + default: break; + } + + // If not matched earlier see if this was a heater message + if (!msg_matched) { + #if HAS_HOTEND + if (strcmp_P(msg, MARLIN_msg_extruder_heating) == 0) { + 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) { + tftSendLn(AC_msg_bed_heating); + hotbed_state = AC_heater_temp_set; + } + #endif + } + } + + #if ENABLED(POWER_LOSS_RECOVERY) + + 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) }; + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); + } + + void DgusTFT::powerLossRecovery() { + printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. + } + + #endif // POWER_LOSS_RECOVERY + + void DgusTFT::homingStart() { + if (!isPrintingFromMedia()) + changePageOfTFT(PAGE_CHS_HOMING); + } + + void DgusTFT::homingComplete() { + if (lcd_info.language == ENG && page_index_last > 120) + page_index_last -= 120; + + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("HomingComplete, line: ", __LINE__); + DEBUG_ECHOLNPGM("page_index_last: ", page_index_last); + #endif + + if (!isPrintingFromMedia()) + changePageOfTFT(page_index_last); + } + + void DgusTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel + #if ACDEBUG(AC_SOME) + DEBUG_ECHO(fstr); + #endif + PGM_P str = FTOP(fstr); + while (const char c = pgm_read_byte(str++)) TFTSer.write(c); + } + + void DgusTFT::tftSendLn(FSTR_P const fstr/*=nullptr*/) { + if (fstr) { + #if ACDEBUG(AC_SOME) + DEBUG_ECHOPGM("> "); + #endif + tftSend(fstr); + #if ACDEBUG(AC_SOME) + SERIAL_EOL(); + #endif + } + TFTSer.println(); + } + + 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) }; + 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 }; + 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) }; + 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) }; + 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 }; + 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*/) { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("changePageOfTFT: ", page_index); + #endif + + uint32_t data_temp = 0; + + if (lcd_info.language == CHS) { + data_temp = page_index; + } + else if (lcd_info.language == ENG) { + switch (page_index) { + case PAGE_OUTAGE_RECOVERY: + data_temp = PAGE_ENG_OUTAGE_RECOVERY; break; + case PAGE_CHS_PROBE_PREHEATING: + data_temp = PAGE_ENG_PROBE_PREHEATING; break; + case PAGE_CHS_HOMING ... PAGE_ENG_HOMING: + data_temp = page_index + 12; break; + case PAGE_CHS_PROBE_PRECHECK ... PAGE_CHS_PROBE_PRECHECK_FAILED: + data_temp = page_index + 3; break; + default: + data_temp = page_index + 120; break; + } + } + + if (!no_send) { + uint8_t data[] = { 0x5A, 0xA5, 0x07, 0x82, 0x00, 0x84, 0x5A, 0x01, uint8_t(data_temp >> 8), uint8_t(data_temp & 0xFF) }; + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); + } + + page_index_last_2 = page_index_last; + page_index_last = page_index_now; + page_index_now = data_temp; + + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("page_index_last_2: ", page_index_last_2); + DEBUG_ECHOLNPGM("page_index_last: ", page_index_last); + DEBUG_ECHOLNPGM("page_index_now: ", page_index_now); + #endif + } + + void DgusTFT::fakeChangePageOfTFT(const uint16_t page_index) { + #if ACDEBUG(AC_MARLIN) + if (page_index_saved != page_index_now) + DEBUG_ECHOLNPGM("fakeChangePageOfTFT: ", page_index); + #endif + changePageOfTFT(page_index, true); + } + + 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) }; + for (uint8_t i = 0; i < 10; ++i) TFTSer.write(data[i]); + } + + bool DgusTFT::readTFTCommand() { + static uint8_t length = 0, cnt = 0, tft_receive_steps = 0; + uint8_t data; + + if (0 == TFTSer.available() || data_received) return false; + + data = TFTSer.read(); + + if (tft_receive_steps == 0) { + if (data != 0x5A) { + cnt = 0; + length = 0; + data_index = 0; + data_received = false; + return false; + } + + while (!TFTSer.available()) TERN_(USE_WATCHDOG, hal.watchdog_refresh()); + + data = TFTSer.read(); + // MYSERIAL.write(data ); + if (data == 0xA5) tft_receive_steps = 2; + } + else if (tft_receive_steps == 2) { + length = data; + tft_receive_steps = 3; + data_index = 0; + cnt = 0; + } + else if (tft_receive_steps == 3) { + if (data_index >= (DATA_BUF_SIZE -1)) { + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("lcd uart buff overflow: ", data_index); + #endif + data_index = 0; + data_received = false; + return false; + } + data_buf[data_index++] = data; + cnt++; + if (cnt >= length) { // Receive complete + tft_receive_steps = 0; + cnt = 0; + data_index = 0; + data_received = true; + return true; + } + } + + return false; + } + + #if 0 + { + //SERIAL_ECHOLNPGM("readTFTCommand: ", millis()); + //return -1; + + bool command_ready = false; + uint8_t data = 0; + + while (TFTSer.available() > 0 && command_len < MAX_CMND_LEN) { + data = TFTSer.read(); + if (0 == command_len) { + // if + } + + panel_command[command_len] = + if (panel_command[command_len] == '\n') { + command_ready = true; + break; + } + command_len++; + } + + if (command_ready) { + panel_command[command_len] = 0x00; + #if ACDEBUG(AC_ALL) + DEBUG_ECHOLNPGM("< panel_command ", panel_command); + #endif + #if ACDEBUG(AC_SOME) + // Ignore status request commands + uint8_t req = atoi(&panel_command[1]); + if (req > 7 && req != 20) { + DEBUG_ECHOLNPGM("> ", panel_command); + DEBUG_PRINT_PRINTER_STATE(printer_state); + } + #endif + } + return command_ready; + } + #endif + + 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; + } + + void DgusTFT::checkHeaters() { + static uint32_t time_last = 0; + if (PENDING(millis(), time_last)) return; + time_last = millis() + 500; + + float temp = 0; + + #if HAS_HOTEND + // If the hotend temp is abnormal, confirm state before signalling panel + static uint8_t faultE0Duration = 0; + temp = getActualTemp_celsius(E0); + if (!WITHIN(temp, HEATER_0_MINTEMP, HEATER_0_MAXTEMP)) { + faultE0Duration++; + if (faultE0Duration >= AC_HEATER_FAULT_VALIDATION_TIME) { + tftSendLn(AC_msg_nozzle_temp_abnormal); + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("Extruder temp abnormal! : ", temp); + #endif + faultE0Duration = 0; + } + } + #endif + + #if HAS_HEATED_BED + static uint8_t faultBedDuration = 0; + temp = getActualTemp_celsius(BED); + if (!WITHIN(temp, BED_MINTEMP, BED_MAXTEMP)) { + faultBedDuration++; + if (faultBedDuration >= AC_HEATER_FAULT_VALIDATION_TIME) { + tftSendLn(AC_msg_bed_temp_abnormal); + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("Bed temp abnormal! : ", temp); + #endif + faultBedDuration = 0; + } + } + #endif + + #if 0 + // Update panel with hotend heater status + if (hotend_state != AC_heater_temp_reached) { + if (WITHIN(getActualTemp_celsius(E0) - getTargetTemp_celsius(E0), -1, 1)) { + tftSendLn(AC_msg_nozzle_heating_done); + hotend_state = AC_heater_temp_reached; + } + } + + // 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)) { + tftSendLn(AC_msg_bed_heating_done); + hotbed_state = AC_heater_temp_reached; + } + } + #endif + } + + void DgusTFT::sendFileList(int8_t startindex) { + // Respond to panel request for 4 files starting at index + #if ACDEBUG(AC_INFO) + DEBUG_ECHOLNPGM("## sendFileList ## ", startindex); + #endif + filenavigator.getFiles(startindex); + } + + void DgusTFT::selectFile() { + strncpy(selectedfile, panel_command + 4, command_len - 4); + selectedfile[command_len - 5] = '\0'; + #if ACDEBUG(AC_FILE) + DEBUG_ECHOLNPGM(" Selected File: ", selectedfile); + #endif + switch (selectedfile[0]) { + case '/': // Valid file selected + tftSendLn(AC_msg_sd_file_open_success); + break; + case '<': // .. (go up folder level) + filenavigator.upDIR(); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList(0); + break; + default: // enter sub folder + filenavigator.changeDIR(selectedfile); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList(0); + break; + } + } + + void DgusTFT::processPanelRequest() { + uint16_t control_index = 0; + uint32_t control_value; + uint16_t temp; + char str_buf[20]; + + if (data_received) { + data_received = false; + + if (0x83 == data_buf[0]) { + control_index = uint16_t(data_buf[1] << 8) | uint16_t(data_buf[2]); + if ((control_index & 0xF000) == KEY_ADDRESS) { // is KEY + //key_index = control_index; + key_value = (uint16_t(data_buf[4]) << 8) | uint16_t(data_buf[5]); + } + + #if HAS_HOTEND + else if (control_index == TXT_HOTEND_TARGET || control_index == TXT_ADJUST_HOTEND) { // hotend target temp + control_value = (uint16_t(data_buf[4]) << 8) | uint16_t(data_buf[5]); + 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); + } + #endif + + #if HAS_HEATED_BED + else if (control_index == TXT_BED_TARGET || control_index == TXT_ADJUST_BED) {// bed target temp + control_value = (uint16_t(data_buf[4]) << 8) | uint16_t(data_buf[5]); + 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); + } + #endif + + #if HAS_FAN + 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); + setTargetFan_percent(temp, FAN0); + } + #endif + + else if (control_index == TXT_PRINT_SPEED_TARGET || control_index == TXT_ADJUST_SPEED) { // print speed + control_value = (uint16_t(data_buf[4]) << 8) | uint16_t(data_buf[5]); + 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); + 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); + + sendValueToTFT(2, ADDRESS_MOVE_DISTANCE); + + #if ENABLED(CASE_LIGHT_ENABLE) + 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); + #if ENABLED(LONG_FILENAME_HOST_SUPPORT) + char filename[64] = { '\0' }; + card.getLongPath(filename, recovery.info.sd_filename); + sendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); + #else + sendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); + #endif + playTune(SOS); + } + #else + constexpr bool is_outage = false; + #endif + + 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 + } + } + + /* + else if ((control_index & 0xF000) == 0x2000) { // is TXT ADDRESS + tft_txt_index = control_index; + j = 0; + for (i = 4; ;i++) { + tft_txt_buf[j] = data_buf[i]; + if (tft_txt_buf[j] == 0xFF) { + tft_txt_buf[j] = 0; + break; + } + j++; + } + } + */ + } + else if (0x82 == data_buf[0]) { + // send_cmd_to_pc(cmd ,start ); + } + } + } + + #if 0 + { + // Break these up into logical blocks // as its easier to navigate than one huge switch case! + int8_t req = atoi(&panel_command[1]); + + // Information requests A0 - A8 and A33 + if (req <= 8 || req == 33) panelInfo(req); + + // Simple Actions A9 - A28 + else if (req <= 28) panelAction(req); + + // Process Initiation + else if (req <= 34) panelProcess(req); + + else tftSendLn(); + } + #endif + + void DgusTFT::set_language(language_t language) { + lcd_info.language = ui_language = lcd_info_back.language = language; + } + + void DgusTFT::toggle_language() { + lcd_info.language = ui_language = (lcd_info.language == CHS ? ENG : CHS); + } + + void DgusTFT::goto_system_page() { + 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 + ); + } + + void DgusTFT::toggle_audio() { + lcd_info.audio_on = !lcd_info.audio_on; + goto_system_page(); + lcdAudioSet(lcd_info.audio_on); + } + + void DgusTFT::store_changes() { + if (lcd_info_back.language != lcd_info.language || lcd_info_back.audio_on != lcd_info.audio_on) { + lcd_info_back = lcd_info; + injectCommands(F("M500")); + } + } + + #if HAS_HOTEND + 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); + } + #endif + + #if HAS_HEATED_BED + 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); + } + #endif + + void DgusTFT::page1() { + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now || key_value_saved != key_value) { + DEBUG_ECHOLNPGM("page1 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: { // main page, print + lcd_txtbox_page = 0; + if (lcd_txtbox_index) { + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + } + changePageOfTFT(PAGE_FILE); + sendFileList(0); + } break; + + case 2: { // tool + changePageOfTFT(PAGE_TOOL); + #if ENABLED(CASE_LIGHT_ENABLE) + sendValueToTFT(getCaseLightState(), ADDRESS_SYSTEM_LED_STATUS); + #endif + } break; + + case 3: // prepare + changePageOfTFT(PAGE_PREPARE); + break; + + case 4: // system + goto_system_page(); + break; + } + + #if 0 + if (message_index < 30) { + sendTxtToTFT(p_mesage[message_index], TXT_MAIN_MESSAGE); + message_index = 30; + } + #endif + + #if HAS_HOTEND || HAS_HEATED_BED + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PREHEAT_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PREHEAT_BED)); + #endif + } + + void DgusTFT::page2() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page2 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + char file_index = 0; + + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_MAIN); + set_descript_color(COLOR_BLUE); + break; + + case 2: // page up + if (lcd_txtbox_page > 0) { + lcd_txtbox_page--; + + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + + sendFileList(lcd_txtbox_page * 5); + } + break; + + case 3: // page down + if ((lcd_txtbox_page + 1) * 5 < filenavigator.getFileNum()) { + lcd_txtbox_page++; + + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + + sendFileList(lcd_txtbox_page * 5); + } + break; + + case 4: // page refresh + if (!isMediaInserted()) safe_delay(500); + + filenavigator.reset(); + + lcd_txtbox_page = 0; + if (lcd_txtbox_index) { + set_descript_color(COLOR_BLUE); + lcd_txtbox_index = 0; + } + sendFileList(lcd_txtbox_index); + break; + + case 5: // resume of outage(last power off) + #if ACDEBUG(AC_MARLIN) + DEBUG_PRINT_PRINTER_STATE(printer_state); + #endif + if (lcd_txtbox_index > 0 && lcd_txtbox_index < 6) { // 1~5 + + if (filenavigator.filelist.seek(lcd_txtbox_page * 5 + (lcd_txtbox_index - 1))) { + + set_descript_color(COLOR_BLUE); + + TERN_(CASE_LIGHT_ENABLE, setCaseLightState(true)); + + char str_buf[20]; + strncpy_P(str_buf, filenavigator.filelist.longFilename(), 17); + str_buf[17] = '\0'; + 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 + injectCommands(F("M1000")); // home and start recovery + } + #endif + } + } + break; + + case 6: // start print + if (lcd_txtbox_index > 0 && lcd_txtbox_index < 6) { // 1~5 + + if (filenavigator.filelist.seek(lcd_txtbox_page * 5 + lcd_txtbox_index - 1)) { + #if 0 + SERIAL_ECHOLNPGM("start print: ", lcd_txtbox_page * 5 + (lcd_txtbox_index - 1)); + SERIAL_ECHOLNPGM("start print: ", filenavigator.filelist.shortFilename()); + SERIAL_ECHOLNPGM("start print: ", filenavigator.filelist.longFilename()); + #endif + + set_descript_color(COLOR_BLUE); + + // Allows printer to restart the job if we don't want to recover + if (printer_state == AC_printer_resuming_from_power_outage) { + injectCommands(F("M1000 C")); // Cancel recovery + printer_state = AC_printer_idle; + } + + TERN_(CASE_LIGHT_ENABLE, setCaseLightState(true)); + printFile(filenavigator.filelist.shortFilename()); + + char str_buf[20]; + strncpy_P(str_buf, filenavigator.filelist.longFilename(), 17); + str_buf[17] = '\0'; + sendTxtToTFT(str_buf, TXT_PRINT_NAME); + + sprintf(str_buf, "%5.2f", getFeedrate_percent()); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); + + sprintf(str_buf, "%u", uint16_t(getProgress_percent())); + 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); + + changePageOfTFT(PAGE_STATUS2); + } + } + break; + + case 7: // txtbox 1 click + case 8: // txtbox 2 click + case 9: // txtbox 3 click + case 10: // txtbox 4 click + + case 11: { // txtbox 5 click + static uint8_t lcd_txtbox_index_last = 0; + + lcd_txtbox_index = key_value - 6; + + // lcd_txtbox_page 0~... + // lcd_txtbox_index 1~5 + file_index = lcd_txtbox_page * 5 + (lcd_txtbox_index - 1); + if (file_index < filenavigator.getFileNum()) { + + set_descript_color(COLOR_RED); + + if (lcd_txtbox_index_last && lcd_txtbox_index_last != lcd_txtbox_index) // 1~5 + set_descript_color(COLOR_BLUE, lcd_txtbox_index_last); + lcd_txtbox_index_last = lcd_txtbox_index; + } + } break; + } + } + + void DgusTFT::page3() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page3 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + static millis_t flash_time = 0; + const millis_t ms = millis(); + char str_buf[20]; + static uint8_t progress_last = 0; + + switch (key_value) { + case 0: break; + + case 1: // return + if (!isPrintingFromMedia()) // only idle status can return + changePageOfTFT(PAGE_FILE); + break; + + case 2: // resume print + #if ACDEBUG(AC_MARLIN) + 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 + || printer_state == AC_printer_resuming_from_power_outage + ) { + printer_state = AC_printer_idle; + pause_state = AC_paused_idle; + resumePrint(); + changePageOfTFT(PAGE_STATUS2); // show pause print + flash_time = ms + 1500; + } + else + setUserConfirmed(); + break; + + case 3: // print stop + if (isPrintingFromMedia()) + 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)); + feedrate_back = getFeedrate_percent(); + sendValueToTFT(uint16_t(feedrate_back), TXT_ADJUST_SPEED); + flash_time = ms + 1500; + break; + } + + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + if (feedrate_back != getFeedrate_percent()) { + if (getFeedrate_percent() != 0) + sprintf(str_buf, "%5.2f", getFeedrate_percent()); + else + sprintf(str_buf, "%d", feedrate_back); + + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("print speed: ", str_buf); + DEBUG_ECHOLNPGM("feedrate_back: ", feedrate_back); + #endif + 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); + progress_last = getProgress_percent(); + } + + // Get Printing Time + 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); + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PRINT_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PRINT_BED)); + } + + void DgusTFT::page4() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page4 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + char str_buf[20]; + static uint8_t progress_last = 0; + + switch (key_value) { + case 0: break; + + case 1: // return + if (!isPrintingFromMedia()) // only is idle status can return + changePageOfTFT(PAGE_FILE); + break; + + case 2: // print pause + if (isPrintingFromMedia()) { + pausePrint(); + printer_state = AC_printer_pausing; + pause_state = AC_paused_idle; + changePageOfTFT(PAGE_WAIT_PAUSE); + //injectCommands(F("M108")); // stop waiting temperature M109 + } + break; + + case 3: // print stop + if (isPrintingFromMedia()) + 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)); + 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)); + 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 + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + if (feedrate_back != getFeedrate_percent()) { + if (getFeedrate_percent() != 0) + sprintf(str_buf, "%5.2f", getFeedrate_percent()); + else + sprintf(str_buf, "%d", feedrate_back); + + 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); + 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); + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PRINT_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PRINT_BED)); + } + + void DgusTFT::page5() { // print settings + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page5 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + static bool z_change = false; + + switch (key_value) { + case 0: break; + + case 1: // return + if (AC_printer_printing == printer_state) + changePageOfTFT(PAGE_STATUS2); // show pause + else if (AC_printer_paused == printer_state) + changePageOfTFT(PAGE_STATUS1); // show print + break; + + #if ENABLED(MESH_EDIT_MENU) + + case 2: { // - + float z_off = getZOffset_mm(); + //SERIAL_ECHOLNPGM("z_off: ", z_off); + //setSoftEndstopState(false); + if (z_off <= -5) return; + z_off -= 0.05f; + setZOffset_mm(z_off); + + 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); + + //if (isAxisPositionKnown(Z)) { // Move Z axis + // SERIAL_ECHOLNPGM("Z now:", getAxisPosition_mm(Z)); + // const float currZpos = getAxisPosition_mm(Z); + // setAxisPosition_mm(currZpos-0.05, Z); + // SERIAL_ECHOLNPGM("Z now:", getAxisPosition_mm(Z)); + //} + + #if ENABLED(BABYSTEPPING) + int16_t steps = mmToWholeSteps(-0.05, Z); + babystepAxis_steps(steps, Z); + #endif + + GRID_LOOP(x, y) { + const xy_uint8_t pos { x, y }; + const float currval = getMeshPoint(pos); + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("x: ", x, " y: ", y, " z: ", currval); + #endif + setMeshPoint(pos, constrain(currval - 0.05f, AC_LOWEST_MESHPOINT_VAL, 5)); + } + + z_change = true; + + //setSoftEndstopState(true); + } break; + + case 3: { // + + float z_off = getZOffset_mm(); + //SERIAL_ECHOLNPGM("z_off: ", z_off); + //setSoftEndstopState(false); + + if (z_off >= 5) return; + z_off += 0.05f; + setZOffset_mm(z_off); + + 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); + + //int16_t steps = mmToWholeSteps(constrain(Zshift,-0.05,0.05), Z); + + /* + if (isAxisPositionKnown(Z)) { // Move Z axis + SERIAL_ECHOLNPGM("Z now:", getAxisPosition_mm(Z)); + const float currZpos = getAxisPosition_mm(Z); + setAxisPosition_mm(currZpos-0.05, Z); + SERIAL_ECHOLNPGM("Z now:", getAxisPosition_mm(Z)); + } + */ + + #if ENABLED(BABYSTEPPING) + int16_t steps = mmToWholeSteps(0.05, Z); + babystepAxis_steps(steps, Z); + #endif + + GRID_LOOP(x, y) { + const xy_uint8_t pos { x, y }; + const float currval = getMeshPoint(pos); + //SERIAL_ECHOLNPGM("x: ", x, " y: ", y, " z: ", currval); + setMeshPoint(pos, constrain(currval + 0.05f, AC_LOWEST_MESHPOINT_VAL, 5)); + } + + z_change = true; + + //setSoftEndstopState(true); + } break; + + #endif // MESH_EDIT_MENU + + #if ENABLED(CASE_LIGHT_ENABLE) + case 4: { // light control + const bool cls = !getCaseLightState(); + sendValueToTFT(cls, ADDRESS_PRINT_SETTING_LED_STATUS); + setCaseLightState(cls); + } break; + #endif + + case 5: + 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)); + + if (z_change == true) { + injectCommands(F("M500")); + z_change = false; + } + + if (AC_printer_printing == printer_state) + changePageOfTFT(PAGE_STATUS2); // show pause + else if (AC_printer_paused == printer_state) + changePageOfTFT(PAGE_STATUS1); // show print + + break; + } + } + + void DgusTFT::page6() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page6 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + case 1: break; + } + } + + void DgusTFT::page7() { // tools + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page7 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_MAIN); + break; + + case 2: + changePageOfTFT(PAGE_MOVE); + break; + + case 3: // set temperature + changePageOfTFT(PAGE_TEMP); + #if HAS_HOTEND + 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); + #endif + break; + + case 4: + 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); + #endif + 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 + if (!isMoving()) + stepper.disable_all_steppers(); + break; + + #if ENABLED(CASE_LIGHT_ENABLE) + case 6: { // light control + const bool cls = !getCaseLightState(); + sendValueToTFT(cls, ADDRESS_SYSTEM_LED_STATUS); + setCaseLightState(cls); + } break; + #endif + } + } + + void DgusTFT::page8() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page8 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + //static uint16_t movespeed = 50; + static float move_dis = 1.0f; + + if (key_value == 2 || key_value == 4 + || key_value == 6 || key_value == 8 + || key_value == 10 || (key_value == 12 && !isMoving()) + ) { + if (getAxisPosition_mm(Z) < 0) setAxisPosition_mm(0, Z, 8); + } + + // if (!planner.movesplanned())return; + switch (key_value) { + case 0: + break; + + case 1: // return + changePageOfTFT(PAGE_TOOL); + break; + + case 5: + if (!isMoving()) + injectCommands(F("G28 X")); + break; + + case 9: + if (!isMoving()) + injectCommands(F("G28 Y")); + break; + + case 13: + if (!isMoving()) + injectCommands(F("G28 Z")); + break; + + case 17: + if (!isMoving()) + injectCommands(F("G28")); + break; + + case 2: // X- + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(X) - move_dis, X, 50); + break; + + case 4: // X+ + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(X) + move_dis, X, 50); + break; + + case 6: // Y+ + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(Y) - move_dis, Y, 50); + break; + + case 8: // Y- + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(Y) + move_dis, Y, 50); + break; + + case 10: // Z- + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(Z) - move_dis, Z, 8); + break; + + case 12: // Z+ + if (!isMoving()) + setAxisPosition_mm(getAxisPosition_mm(Z) + move_dis, Z, 8); + break; + + case 3: + move_dis = 0.1f; + sendValueToTFT(1, ADDRESS_MOVE_DISTANCE); + break; + + case 7: + move_dis = 1.0f; + sendValueToTFT(2, ADDRESS_MOVE_DISTANCE); + break; + + case 11: + move_dis = 10.0f; + sendValueToTFT(3, ADDRESS_MOVE_DISTANCE); + break; + + //case 14: + // movespeed = 3000; //SERIAL_ECHOLN(movespeed); + // break; + // + //case 15: + // movespeed = 2000; //SERIAL_ECHOLN(movespeed); + // break; + // + //case 16: + // movespeed = 1000; //SERIAL_ECHOLN(movespeed); + // break; + } + } + + void DgusTFT::page9() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page9 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_TOOL); + break; + + case 2: break; + case 3: break; + case 4: break; + case 5: break; + + case 6: // cooling + setTargetTemp_celsius(0, E0); + setTargetTemp_celsius(0, BED); + changePageOfTFT(PAGE_TOOL); + break; + + case 7: // send target temp + requestValueFromTFT(TXT_HOTEND_TARGET); + requestValueFromTFT(TXT_BED_TARGET); + changePageOfTFT(PAGE_TOOL); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + 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); + } + + void DgusTFT::page10() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page10 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: // return + changePageOfTFT(PAGE_TOOL); + break; + + case 2: break; + case 3: break; + case 4: break; + case 5: break; + + case 6: // ok + requestValueFromTFT(TXT_FAN_SPEED_TARGET); + requestValueFromTFT(TXT_PRINT_SPEED_TARGET); + changePageOfTFT(PAGE_TOOL); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + 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); + } + + void DgusTFT::page11() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page11 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_MAIN); + store_changes(); + break; + + case 2: // language + toggle_language(); + goto_system_page(); + break; + + case 3: break; + + case 4: // audio + toggle_audio(); + break; + + case 5: { // about + 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); + } break; + + case 6: + changePageOfTFT(PAGE_RECORD); + break; + } + } + + void DgusTFT::page12() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page12 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + case 1: // return + changePageOfTFT(PAGE_SYSTEM_CHS_AUDIO_ON); + break; + } + } + + void DgusTFT::page13() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page13 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + + case 1: // return + goto_system_page(); + break; + + case 2: break; + } + } + + void DgusTFT::page14() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page14 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + case 1: break; // return + case 2: break; + case 3: break; + case 4: break; + } + } + + void DgusTFT::page15() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page15 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_MAIN); + break; + + case 2: + changePageOfTFT(PAGE_PreLEVEL); + break; + + #if HAS_HOTEND || HAS_HEATED_BED + case 3: { + changePageOfTFT(PAGE_PREHEAT); + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PREHEAT_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PREHEAT_BED)); + } break; + #endif + + #if HAS_EXTRUDERS + case 4: { + send_temperature_hotend(TXT_FILAMENT_TEMP); + changePageOfTFT(PAGE_FILAMENT); + } break; + #endif + } + } + + void DgusTFT::page16() { // AUTO LEVELING + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page16 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + case 1: // return + changePageOfTFT(PAGE_PREPARE); + break; + + case 2: + if (!isPrinting()) { + //changePageOfTFT(PAGE_LEVEL_ENSURE); + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK); + } + break; + + case 3: { + 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); + } break; + + case 4: + changePageOfTFT(PAGE_AUTO_OFFSET); + break; + } + } + + void DgusTFT::page17() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page17 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + float z_off; + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(PAGE_PreLEVEL); + break; + + case 2: { + setSoftEndstopState(false); + if (getZOffset_mm() <= -5) return; + z_off = getZOffset_mm() - 0.01f; + setZOffset_mm(z_off); + + char str_buf[10]; + strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + + if (isAxisPositionKnown(Z)) { + const float currZpos = getAxisPosition_mm(Z); + setAxisPosition_mm(currZpos - 0.01f, Z); + } + + setSoftEndstopState(true); + } break; + + case 3: { + setSoftEndstopState(false); + if (getZOffset_mm() >= 5) return; + z_off = getZOffset_mm() + 0.01f; + setZOffset_mm(z_off); + + char str_buf[10]; + strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); + 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); + setAxisPosition_mm(currZpos + 0.01f, Z); + } + + setSoftEndstopState(true); + } break; + + case 4: + #if ACDEBUG(AC_MARLIN) + DEBUG_ECHOLNPGM("z off: ", ftostr52sprj(getZOffset_mm())); + #endif + #if HAS_LEVELING + GRID_LOOP(x, y) { + const xy_uint8_t pos { x, y }; + const float currval = getMeshPoint(pos); + setMeshPoint(pos, constrain(currval + getZOffset_mm(), AC_LOWEST_MESHPOINT_VAL, 5)); + } + injectCommands(F("M500")); + #endif + changePageOfTFT(PAGE_PREPARE); + break; + } + } + + #if HAS_HOTEND || HAS_HEATED_BED + + void DgusTFT::page18() { // preheat + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page18 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + 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); + break; + + case 3: // ABS + TERN_(HAS_HOTEND, setTargetTemp_celsius(240, E0)); + TERN_(HAS_HEATED_BED, setTargetTemp_celsius(100, BED)); + changePageOfTFT(PAGE_PREHEAT); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PREHEAT_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PREHEAT_BED)); + } + + #endif // HAS_HOTEND || HAS_HEATED_BED + + #if HAS_EXTRUDERS + + void DgusTFT::page19() { // Filament + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page19 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + static char filament_status = 0; + static millis_t flash_time = 0; + switch (key_value) { + case 0: break; + + case 1: // return + filament_status = 0; + injectCommands(F("G90")); + changePageOfTFT(PAGE_PREPARE); + break; + + case 2: // Filament in + if (getActualTemp_celsius(E0) < 220) { + filament_status = 0; + changePageOfTFT(PAGE_FILAMENT_HEAT); + } + else { + filament_status = 1; + injectCommands(F("G91")); + } + break; + + case 3: // filament out + if (getActualTemp_celsius(E0) < 220) { + filament_status = 0; + changePageOfTFT(PAGE_FILAMENT_HEAT); + } + else { + filament_status = 2; + injectCommands(F("G91")); + } + break; + + case 4: // stop + filament_status = 0; + break; + + } + + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + send_temperature_hotend(TXT_FILAMENT_TEMP); + + if (!isPrinting()) { + if (filament_status == 1) { + if (canMove(E0) && !commandsInQueue()) + injectCommands(AC_cmnd_manual_load_filament); + } + else if (filament_status == 2) { + if (canMove(E0) && !commandsInQueue()) + injectCommands(AC_cmnd_manual_unload_filament); + } + } + } + + #endif // HAS_EXTRUDERS + + void DgusTFT::page20() { // confirm + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page20 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: // return + changePageOfTFT(page_index_last); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page21() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page21 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + changePageOfTFT(page_index_last); + break; + + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page22() { // print finish + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page22 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // OK to finish + TERN_(CASE_LIGHT_ENABLE, setCaseLightState(false)); + changePageOfTFT(PAGE_MAIN); + break; + + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page23() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page23 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: changePageOfTFT(page_index_last); break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page24() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page24 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: changePageOfTFT(page_index_last); break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page25() { // lack filament + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page25 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + #if ACDEBUG(AC_MARLIN) + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); + #endif + if (AC_printer_printing == printer_state) + changePageOfTFT(PAGE_STATUS2); // show pause + else if (AC_printer_paused == printer_state) { + //injectCommands(F("M108")); + changePageOfTFT(PAGE_STATUS1); // show resume + } + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page26() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page26 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page27() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page27 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // print stop confirmed + if (isPrintingFromMedia()) { + printer_state = AC_printer_stopping; + stopPrint(); + message_index = 6; + changePageOfTFT(PAGE_MAIN); + } + else { + if (printer_state == AC_printer_resuming_from_power_outage) + injectCommands(F("M1000 C")); // Cancel recovery + printer_state = AC_printer_idle; + } + break; + + case 2: // return + if (AC_printer_printing == printer_state) + changePageOfTFT(PAGE_STATUS2); // show pause + else if (AC_printer_paused == printer_state) + changePageOfTFT(PAGE_STATUS1); // show print + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page28() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page28 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page29() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page29 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + TERN_(CASE_LIGHT_ENABLE, setCaseLightState(false)); + changePageOfTFT(PAGE_MAIN); + break; + + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page30() { // Auto heat filament + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page30 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // return + setTargetTemp_celsius(230, E0); + changePageOfTFT(PAGE_FILAMENT); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page31() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page31 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + case 0: break; + case 1: break; // return + case 2: break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page32() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page32 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + #if HAS_LEVELING + + void DgusTFT::page33() { + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now) { + DEBUG_ECHOLNPGM("page33 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + } + #endif + + switch (key_value) { + case 0: break; + + case 1: // auto leveling start + injectCommands(F("G28\nG29")); + printer_state = AC_printer_probing; + + // this will cause leveling->preheating->leveling + #if 0 + #if ENABLED(PREHEAT_BEFORE_LEVELING) + if (getTargetTemp_celsius(E0) < LEVELING_NOZZLE_TEMP + || getTargetTemp_celsius(BED) < LEVELING_BED_TEMP + ) { + setTargetTemp_celsius(LEVELING_NOZZLE_TEMP, E0); + setTargetTemp_celsius(LEVELING_BED_TEMP, BED); + changePageOfTFT(PAGE_CHS_PROBE_PREHEATING); + } + else + changePageOfTFT(PAGE_LEVELING); + + #else + changePageOfTFT(PAGE_LEVELING); + #endif + #endif + + changePageOfTFT(PAGE_LEVELING); + break; + + case 2: + changePageOfTFT(PAGE_PreLEVEL); + break; + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + } + + void DgusTFT::page34() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page34 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + #if HAS_HOTEND || HAS_HEATED_BED + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_MAIN_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_MAIN_BED)); + #endif + + if (pop_up_index == 25) { + pop_up_index = 100; + changePageOfTFT(PAGE_PreLEVEL); + } + } + + #endif // HAS_LEVELING + + void DgusTFT::page115() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page115 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + switch (key_value) { + + case 0: break; + case 1: changePageOfTFT(PAGE_PreLEVEL); break; + + case 2: { + injectCommands(F("M1024 S3")); // -1 + //char value[20] + //sprintf_P(value, PSTR("G1 Z%iF%i")); enqueue_and_echo_command_now(value); } + } break; + + case 3: injectCommands(F("M1024 S4")); break; // 1 + case 4: injectCommands(F("M1024 S1")); break; // -0.1 + case 5: injectCommands(F("M1024 S2")); break; // 0.1 + case 6: injectCommands(F("M1024 S0")); break; // prepare, move x y to center + case 7: injectCommands(F("M1024 S5")); break; // 0.1 + } + + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1000; + } + + void DgusTFT::page117() { // Page CHS Mute handler + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page117 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + + case 1: + changePageOfTFT(PAGE_MAIN); + store_changes(); + break; + + case 2: // language + toggle_language(); + goto_system_page(); + break; + + case 3: break; + + case 4: // audio + toggle_audio(); + break; + + case 5: // about + 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); + break; + + case 6: + changePageOfTFT(PAGE_RECORD); + break; + } + } + + void DgusTFT::page124() { // first time into page 124 the feedrate percent is not set + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page124 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + //DEBUG_ECHOLNPGM("update feedrate percent"); + } + #endif + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + } + + void DgusTFT::page125() { // first time into page 125 the feedrate percent is not set + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page125 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + //DEBUG_ECHOLNPGM("update feedrate percent"); + } + #endif + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + } + + void DgusTFT::page170() { // ENG Mute handler + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page170 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 0: break; + + case 1: + changePageOfTFT(PAGE_MAIN); + store_changes(); + break; + + case 2: // language + toggle_language(); + goto_system_page(); + break; + + case 3: break; + + case 4: // audio + toggle_audio(); + break; + + case 5: // about + 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); + break; + + case 6: + changePageOfTFT(PAGE_RECORD); + break; + } + } + + #if ENABLED(POWER_LOSS_RECOVERY) + + void DgusTFT::page171() { // CHS power outage resume handler + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now) { + DEBUG_ECHOLNPGM("page171 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + } + #endif + #if ENABLED(LONG_FILENAME_HOST_SUPPORT) + char filename[64] = { '\0' }; + #endif + + switch (key_value) { + case 0: break; + + case 1: { // resume + 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); + #else + 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); + + sprintf(str_buf, "%u", uint16_t(getProgress_percent())); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + + 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); + injectCommands(F("M355 S0\nM1000 C")); // cancel recovery + break; + } + } + + void DgusTFT::page173() { // ENG power outage resume handler + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now) { + DEBUG_ECHOLNPGM("page173 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + } + #endif + #if ENABLED(LONG_FILENAME_HOST_SUPPORT) + char filename[64] = { '\0' }; + #endif + + switch (key_value) { + case 0: break; + + case 1: { // resume + 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); + #else + 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); + + sprintf(str_buf, "%u", uint16_t(getProgress_percent())); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + + 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); + injectCommands(F("M355 S0\nM1000 C")); // cancel recovery + break; + } + } + + #endif // POWER_LOSS_RECOVERY + + #if HAS_LEVELING + + void DgusTFT::page175() { // CHS probe preheating handler + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now) { + DEBUG_ECHOLNPGM("page175 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + } + #endif + + #if HAS_HOTEND || HAS_HEATED_BED + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_MAIN_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_MAIN_BED)); + #endif + } + + void DgusTFT::page176() { // ENG probe preheating handler + #if ACDEBUG(AC_ALL) + if (page_index_saved != page_index_now) { + DEBUG_ECHOLNPGM("page176 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + } + #endif + + #if HAS_HOTEND || HAS_HEATED_BED + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_MAIN_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_MAIN_BED)); + #endif + } + + #endif // HAS_LEVELING + + void DgusTFT::page177_to_198() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page177_to_198 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 1: // return + #if ACDEBUG(AC_MARLIN) + //DEBUG_ECHOLNPGM("page_index_now: ", page_index_now); + //DEBUG_ECHOLNPGM("page_index_last: ", page_index_last); + //DEBUG_ECHOLNPGM("page_index_last_2: ", page_index_last_2); + #endif + + if ((WITHIN(page_index_now, PAGE_CHS_ABNORMAL_X_ENDSTOP, PAGE_CHS_ABNORMAL_Z_ENDSTOP)) + || (WITHIN(page_index_now, PAGE_ENG_ABNORMAL_X_ENDSTOP, PAGE_ENG_ABNORMAL_Z_ENDSTOP)) + ) { + if (lcd_info.language == ENG) { + if (page_index_last_2 > 120) page_index_last_2 -= 120; + if (page_index_last > 120) page_index_last -= 120; + } + + if (PAGE_STATUS1 == page_index_last_2 || PAGE_STATUS2 == page_index_last_2 || PAGE_PRINT_FINISH == page_index_last) + changePageOfTFT(PAGE_MAIN); + else + changePageOfTFT(page_index_last_2); + } + else { + if (lcd_info.language == ENG && page_index_last > 120) + page_index_last -= 120; + changePageOfTFT(page_index_last); + } + + onSurviveInKilled(); + stepper.disable_all_steppers(); + break; + + default: break; + } + } + + #if 0 + void DgusTFT::page178_to_181_190_to_193() { // temperature abnormal + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page178_to_181_190_to_193 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 1: // return + SERIAL_ECHOLNPGM("page_index_now: ", page_index_now); + SERIAL_ECHOLNPGM("page_index_last: ", page_index_last); + SERIAL_ECHOLNPGM("page_index_last_2: ", page_index_last_2); + + if (isPrinting() || isPrintingPaused() || isPrintingFromMedia()) { + printer_state = AC_printer_stopping; + stopPrint(); + changePageOfTFT(PAGE_MAIN); + } + else + changePageOfTFT(page_index_last); + + onSurviveInKilled(); + break; + + default: break; + } + } + #endif + + void DgusTFT::page199_to_200() { + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page199_to_200 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now, " key: ", key_value); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + switch (key_value) { + case 1: // return + #if ACDEBUG(AC_MARLIN) + //DEBUG_ECHOLNPGM("page_index_now: ", page_index_now); + //DEBUG_ECHOLNPGM("page_index_last: ", page_index_last); + //DEBUG_ECHOLNPGM("page_index_last_2: ", page_index_last_2); + #endif + onSurviveInKilled(); + changePageOfTFT(PAGE_PreLEVEL); + break; + + default: break; + } + } + + inline void ProbeTare() { + #if PIN_EXISTS(AUTO_LEVEL_TX) + OUT_WRITE(AUTO_LEVEL_TX_PIN, LOW); + delay(300); + OUT_WRITE(AUTO_LEVEL_TX_PIN, HIGH); + delay(100); + #endif + } + + inline bool getProbeState() { return PROBE_TRIGGERED(); } + + void DgusTFT::page201() { // probe precheck + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page201 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + static millis_t probe_check_time = 0; + static millis_t temperature_time = 0; + static uint8_t probe_check_counter = 0; + static uint8_t probe_state_last = 0; + static bool probe_tare_flag = 0; + + if (!probe_tare_flag) { + ProbeTare(); + + delay(100); + + if (getProbeState()) { // triggered too early + probe_check_counter = 0; + probe_tare_flag = 0; + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); + } + probe_tare_flag = 1; + } + + switch (key_value) { + case 1: // cancel + probe_check_counter = 0; + probe_tare_flag = 0; + changePageOfTFT(PAGE_PreLEVEL); + break; + + default: break; + } + + if (ELAPSED(millis(), probe_check_time)) { + probe_check_time = millis() + 300; + + if (!probe_state_last && getProbeState()) { + probe_check_counter = 0; + probe_tare_flag = 0; + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_OK); + } + + probe_state_last = getProbeState(); + + if (probe_check_counter++ >= 200) { // waiting for 1 min + probe_check_counter = 0; + probe_tare_flag = 0; + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); + } + } + + if (ELAPSED(millis(), temperature_time)) { + temperature_time = millis() + 1500; + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_MAIN_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_MAIN_BED)); + } + } + + void DgusTFT::page202() { // probe precheck ok + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page202 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + + //static millis_t flash_time = 0; + //static millis_t probe_check_counter = 0; + //static uint8_t probe_state_last = 0; + + delay(3000); + + injectCommands(F("G28\nG29")); + printer_state = AC_printer_probing; + changePageOfTFT(PAGE_LEVELING); + } + + void DgusTFT::page203() { // probe precheck failed + #if ACDEBUG(AC_ALL) + if ((page_index_saved != page_index_now) || (key_value_saved != key_value)) { + DEBUG_ECHOLNPGM("page203 page_index_last_2: ", page_index_last_2, " page_index_last: ", page_index_last, " page_index_now: ", page_index_now); + page_index_saved = page_index_now; + key_value_saved = key_value; + } + #endif + //static millis_t probe_check_counter = 0; + //static uint8_t probe_state_last = 0; + + #if HAS_HOTEND || HAS_HEATED_BED + static millis_t flash_time = 0; + const millis_t ms = millis(); + if (PENDING(ms, flash_time)) return; + flash_time = ms + 1500; + + TERN_(HAS_HOTEND, send_temperature_hotend(TXT_MAIN_HOTEND)); + TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_MAIN_BED)); + #endif + } + + void DgusTFT::pop_up_manager() { + #if ACDEBUG(AC_ALL) + if (pop_up_index_saved != pop_up_index) { + DEBUG_ECHOLNPGM("pop_up_manager pop_up_index: ", pop_up_index); + pop_up_index_saved = pop_up_index; + } + #endif + + switch (pop_up_index) { + case 10: // T0 error + if (page_index_now != 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); + pop_up_index = 100; + break; + + case 16: // stop wait + changePageOfTFT(PAGE_WAIT_STOP); + pop_up_index = 100; + break; + + case 18: + changePageOfTFT(PAGE_STATUS1); + pop_up_index = 100; + break; + + case 24: { // + uint32_t time = getProgress_seconds_elapsed() / 60; + 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); + //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); + pop_up_index = 100; + break; + } + } + + void DEBUG_PRINT_PAUSED_STATE(const paused_state_t state, FSTR_P const msg/*=nullptr*/) { + 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; + 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(); + } + + // Human-readable debugging + + void DEBUG_PRINT_PRINTER_STATE(const printer_state_t state, FSTR_P const msg/*=nullptr*/) { + if (msg) DEBUG_ECHO(msg); + DEBUG_ECHOPGM("Printer State: ", state, " "); + switch (state) { + 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(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_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(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_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 + +#endif // ANYCUBIC_LCD_VYPER diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h new file mode 100644 index 0000000000..371066a569 --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h @@ -0,0 +1,479 @@ +/** + * 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_vyper/dgus_tft.h + */ + +#include "dgus_tft_defs.h" +#include "../../../inc/MarlinConfigPre.h" +#include "../ui_api.h" + +#define MAIN_BOARD_FIRMWARE_VER "V2.4.5" + +#define DATA_BUF_SIZE 64 + +/****************** PAGE INDEX***********************/ +#define PAGE_OFFSET 0 +#define PAGE_MAIN (1+PAGE_OFFSET) +#define PAGE_FILE (2+PAGE_OFFSET) +#define PAGE_STATUS1 (3+PAGE_OFFSET) // show resume +#define PAGE_STATUS2 (4+PAGE_OFFSET) // show pause +#define PAGE_ADJUST (5+PAGE_OFFSET) +#define PAGE_KEYBPARD (6+PAGE_OFFSET) +#define PAGE_TOOL (7+PAGE_OFFSET) +#define PAGE_MOVE (8+PAGE_OFFSET) +#define PAGE_TEMP (9+PAGE_OFFSET) +#define PAGE_SPEED (10+PAGE_OFFSET) +#define PAGE_SYSTEM_CHS_AUDIO_ON (11+PAGE_OFFSET) +#define PAGE_WIFI (12+PAGE_OFFSET) +#define PAGE_ABOUT (13+PAGE_OFFSET) +#define PAGE_RECORD (14+PAGE_OFFSET) +#define PAGE_PREPARE (15+PAGE_OFFSET) +#define PAGE_PreLEVEL (16+PAGE_OFFSET) +#define PAGE_LEVEL_ADVANCE (17+PAGE_OFFSET) +#define PAGE_PREHEAT (18+PAGE_OFFSET) +#define PAGE_FILAMENT (19+PAGE_OFFSET) + +#define PAGE_DONE (20+PAGE_OFFSET) +#define PAGE_ABNORMAL (21+PAGE_OFFSET) +#define PAGE_PRINT_FINISH (22+PAGE_OFFSET) +#define PAGE_WAIT_STOP (23+PAGE_OFFSET) +#define PAGE_FILAMENT_LACK (25+PAGE_OFFSET) +#define PAGE_FORBIT (26+PAGE_OFFSET) +#define PAGE_STOP_CONF (27+PAGE_OFFSET) +#define PAGE_NO_SD (29+PAGE_OFFSET) +#define PAGE_FILAMENT_HEAT (30+PAGE_OFFSET) +#define PAGE_WAIT_PAUSE (32+PAGE_OFFSET) + +#define PAGE_LEVEL_ENSURE (33+PAGE_OFFSET) +#define PAGE_LEVELING (34+PAGE_OFFSET) + +#define PAGE_AUTO_OFFSET (115+PAGE_OFFSET) + +#define PAGE_SYSTEM_CHS_AUDIO_OFF (117+PAGE_OFFSET) + +#define PAGE_SYSTEM_ENG_AUDIO_ON (131+PAGE_OFFSET) +#define PAGE_SYSTEM_ENG_AUDIO_OFF (170+PAGE_OFFSET) + +#define PAGE_OUTAGE_RECOVERY (171+PAGE_OFFSET) +#define PAGE_ENG_OUTAGE_RECOVERY (173+PAGE_OFFSET) + +#define PAGE_CHS_PROBE_PREHEATING (176+PAGE_OFFSET) +#define PAGE_ENG_PROBE_PREHEATING (175+PAGE_OFFSET) + +#define PAGE_CHS_HOMING (177+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_BED_HEATER (178+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_BED_NTC (179+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_HOTEND_HEATER (180+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_HOTEND_NTC (181+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_ENDSTOP (182+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_X_ENDSTOP (182+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_Y_ENDSTOP (183+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_Z_ENDSTOP (184+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_ZL_ENDSTOP (185+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_ZR_ENDSTOP (186+PAGE_OFFSET) +#define PAGE_CHS_ABNORMAL_LEVELING_SENSOR (187+PAGE_OFFSET) +#define PAGE_CHS_LEVELING_FAILED (188+PAGE_OFFSET) + +#define PAGE_ENG_HOMING (189+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_BED_HEATER (190+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_BED_NTC (191+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_HOTEND_HEATER (192+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_HOTEND_NTC (193+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_ENDSTOP (194+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_X_ENDSTOP (194+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_Y_ENDSTOP (195+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_Z_ENDSTOP (196+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_ZL_ENDSTOP (197+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_ZR_ENDSTOP (198+PAGE_OFFSET) +#define PAGE_ENG_ABNORMAL_LEVELING_SENSOR (199+PAGE_OFFSET) +#define PAGE_ENG_LEVELING_FAILED (200+PAGE_OFFSET) + +#define PAGE_CHS_PROBE_PRECHECK (201+PAGE_OFFSET) +#define PAGE_CHS_PROBE_PRECHECK_OK (202+PAGE_OFFSET) +#define PAGE_CHS_PROBE_PRECHECK_FAILED (203+PAGE_OFFSET) + +#define PAGE_ENG_PROBE_PRECHECK (204+PAGE_OFFSET) +#define PAGE_ENG_PROBE_PRECHECK_OK (205+PAGE_OFFSET) +#define PAGE_ENG_PROBE_PRECHECK_FAILED (206+PAGE_OFFSET) + +/****************** Lcd control **************************/ +#define REG_LCD_READY 0x0014 + +/****************** TXT **************************/ + +// MAIN PAGE TXT +#define TXT_MAIN_BED 0x2000 +#define TXT_MAIN_HOTEND 0x2030 +#define TXT_MAIN_MESSAGE 0x2060 + +// FILE TXT +#define TXT_FILE_0 (0x2000+3*0x30) +#define TXT_DESCRIPT_0 0x5000 // DESCRIBE ADDRESS +#define TXT_FILE_1 (0x2000+4*0x30) +#define TXT_DESCRIPT_1 0x5030 +#define TXT_FILE_2 (0x2000+5*0x30) +#define TXT_DESCRIPT_2 0x5060 +#define TXT_FILE_3 (0x2000+6*0x30) +#define TXT_DESCRIPT_3 0x5090 +#define TXT_FILE_4 (0x2000+7*0x30) +#define TXT_DESCRIPT_4 0x50C0 + +// PRINT TXT +#define TXT_PRINT_NAME 0x2000+8*0x30 +#define TXT_PRINT_SPEED 0x2000+9*0x30 +#define TXT_PRINT_TIME 0x2000+10*0x30 +#define TXT_PRINT_PROGRESS 0x2000+11*0x30 +#define TXT_PRINT_HOTEND 0x2000+12*0x30 +#define TXT_PRINT_BED 0x2000+13*0x30 + +// PRINT ADJUST TXT + +#define TXT_ADJUST_HOTEND (0x2000+14*0x30) +#define TXT_ADJUST_BED (0x2000+15*0x30) +#define TXT_ADJUST_SPEED (0x2000+16*0x30) + +// TEMP SET TXT + +#define TXT_BED_NOW (0x2000+17*0x30) +#define TXT_BED_TARGET (0x2000+18*0x30) +#define TXT_HOTEND_NOW (0x2000+19*0x30) +#define TXT_HOTEND_TARGET (0x2000+20*0x30) + +// SPEED SET TXT +#define TXT_FAN_SPEED_NOW (0x2000+21*0x30) +#define TXT_FAN_SPEED_TARGET (0x2000+22*0x30) +#define TXT_PRINT_SPEED_NOW (0x2000+23*0x30) +#define TXT_PRINT_SPEED_TARGET (0x2000+24*0x30) + +// ABOUT TXT +#define TXT_ABOUT (0x2000+25*0x30) + +// RECORT TXT +#define TXT_RECORT_0 (0x2000+26*0x30) +#define TXT_RECORT_1 (0x2000+27*0x30) +#define TXT_RECORT_2 (0x2000+28*0x30) +#define TXT_RECORT_3 (0x2000+29*0x30) +#define TXT_RECORT_4 (0x2000+30*0x30) +#define TXT_RECORT_5 (0x2000+31*0x30) + +// ADVANCE LEVEL TXT +#define TXT_LEVEL_OFFSET (0x2000+32*0x30) + +// FILAMENT TXT +#define TXT_FILAMENT_TEMP (0x2000+33*0x30) + +#define TXT_FINISH_TIME (0x2000+34*0x30) +#define TXT_VERSION (0x2000+35*0x30) +#define TXT_PREHEAT_HOTEND (0x2000+36*0x30) +#define TXT_PREHEAT_BED (0x2000+37*0x30) + +#define TXT_OUTAGE_RECOVERY_FILE 0x2180 + +#define ADDRESS_SYSTEM_AUDIO 0x0080 + +#define ADDRESS_MOVE_DISTANCE 0x4300 +#define ADDRESS_SYSTEM_LED_STATUS 0x4500 +#define ADDRESS_PRINT_SETTING_LED_STATUS 0x4550 + +/*********************** KEY VALUE **************************/ +#define KEY_ADDRESS 0x1000 + +// MAIN PAGE KEY + +#define KEY_MAIN_TO_FILE 1 +#define KEY_MAIN_TO_TOOL 2 +#define KEY_MAIN_TO_PREPARE 3 +#define KEY_MAIN_TO_SYSTEM 4 + +// FILE PAGE KEY + +#define KEY_FILE_TO_MAIN 1 +#define KEY_PRINT 6 +#define KEY_RESUME 5 +#define KEY_PgUp 2 +#define KEY_pgDn 3 +#define KEY_FLASH 4 +#define KEY_FILE0 7 +#define KEY_FILE1 8 +#define KEY_FILE2 9 +#define KEY_FILE3 10 +#define KEY_FILE4 11 + +#define KEY_CONTINUE 2 +#define KEY_PAUSE 2 +#define KEY_STOP 3 +#define KEY_TO_ADJUST 4 +#define KEY_ADJUST_TO_PRINT 1 +#define KEY_ADJUST_ENSURE 7 +#define KEY_CHECK_DOOR 2 +#define KEY_DONE_OFF 3 + +// TOOL PAGE KEY + +#define KEY_TOOL_TO_MAIN 1 +#define KEY_TOOL_TO_MOVE 2 +#define KEY_TOOL_TO_TEMP 3 +#define KEY_TOOL_TO_SPEED 4 +#define KEY_TOOL_LIGHT 5 + +#define KEY_MOVE_TO_TOLL 1// move page +#define KEY_MOVE_X 2 +#define KEY_01 3 +#define KEY_MOVE_NX 4 +#define KEY_HOME_X 5 +#define KEY_MOVE_Y 6 +#define KEY_1 7 +#define KEY_MOVE_NY 8 +#define KEY_HOME_Y 9 +#define KEY_MOVE_Z 10 +#define KEY_10 11 +#define KEY_MOVE_NZ 12 +#define KEY_HOME_Z 13 +#define KEY_SPEED_LOW 14 +#define KEY_SPEED_MIDDLE 15 +#define KEY_SPEED_HIGHT 16 +#define KEY_HOME_ALL 17 + +#define KEY_TEMP_TO_TOOL 1 //Temperature setting page +#define KEY_BED_ADD 2 +#define KEY_BED_DEC 3 +#define KEY_HOTEND_ADD 4 +#define KEY_HOTEND_DEC 5 +#define KEY_COOL 6 +#define KEY_TEMP_ENSURE 7 + +#define KEY_SPEED_TO_TOOL 1 //speed setting page +#define KEY_FAN_SPEED_ADD 2 +#define KEY_FAN_SPEED_DEC 3 +#define KEY_PRINT_SPEED_ADD 4 +#define KEY_PRINT_SPEED_DEC 5 +#define KEY_SPEED_ENSURE 6 + +#define KEY_PREPARE_TO_MAIN 1 //PREPARE PAGE TO MAIN +#define KEY_PREPARE_TO_PreLEVE 2 +#define KEY_PreLEVE_TO_PREPARE 1 +#define KEY_PreLEVE_TO_LEVELING 2 +#define KEY_PreLEVE_TO_ADVANCE 3 +#define KEY_ADVANCE_TO_PreLEVE 1 +#define KEY_LEVEL_ADD 3 +#define KEY_LEVEL_DEC 2 +#define KEY_LEVEL_ENSURE 4 + + +#define KEY_PREPARE_TO_PREHEAT 3 +#define KEY_PREHEAT_TO_PREPARE 1 +#define KEY_PREHEAT_PLA 2 +#define KEY_PREHEAT_ABS 3 + +#define KEY_PREPARE_TO_FILAMENT 4 +#define KEY_FILAMENT_TO_PREPARE 1 +#define KEY_RETREAT 3 +#define KEY_FORWARD 2 +#define KEY_FILAMENT_STOP 4 + +// SYSTEM PAGE KEY + +#define KEY_SYS_TO_MAIN 1 +#define KEY_LANGUAGE 2 +#define KEY_SYS_TO_WIFI 3 +#define KEY_WIFI_TO_SYS 1 + +#define KEY_BEEP 4 +#define KEY_SYS_TO_ABOUT 5 +#define KEY_ABOUT_TO_SYS 1 + +#define KEY_SYS_TO_RECORD 6 +#define KEY_RECORD_TO_SYS 1 +#define KEY_RECORD_PaUp 2 +#define KEY_RECORD_PaDn 3 +#define KEY_RECORD_FLASH 4 + +#define COLOR_RED 0xF800 +#define COLOR_BLUE 0x0210 + +namespace Anycubic { + + enum language_t : uint8_t { ENG, CHS }; + + class DgusTFT; + extern DgusTFT ui; + + typedef struct _lcd_info_t { + language_t language; + bool audio_on; + } lcd_info_t; + + class DgusTFT { + static printer_state_t printer_state; + static paused_state_t pause_state; + #if HAS_HOTEND + static heater_state_t hotend_state; + #endif + #if HAS_HEATED_BED + static heater_state_t hotbed_state; + #endif + static char panel_command[MAX_CMND_LEN]; + static uint8_t command_len; + static char selectedfile[MAX_PATH_LEN]; + static file_menu_t file_menu; + static bool data_received; + static uint8_t data_buf[DATA_BUF_SIZE]; + static uint8_t data_index; + static uint16_t page_index_last, page_index_last_2; + static uint8_t message_index; + static uint8_t pop_up_index; + static uint32_t key_value; + static uint8_t lcd_txtbox_index; + static uint8_t lcd_txtbox_page; + static int16_t feedrate_back; + static language_t ui_language; + + public: + DgusTFT(); + + static lcd_info_t lcd_info, lcd_info_back; + static uint16_t page_index_now; + + 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 powerLoss(); + static void powerLossRecovery(); + 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); + static void toggle_language(); + static void goto_system_page(); + static void toggle_audio(); + static void store_changes(); + + #if HAS_HOTEND + static void send_temperature_hotend(uint32_t addr); + #endif + #if HAS_HEATED_BED + static void send_temperature_bed(uint32_t addr); + #endif + + typedef void (*p_fun)(); + static void page1(); + static void page2(); + static void page3(); + static void page4(); + static void page5(); + static void page6(); + static void page7(); // tool + static void page8(); + static void page9(); + static void page10(); // fan and print speed + static void page11(); // system + static void page12(); + static void page13(); + static void page14(); + static void page15(); + static void page16(); + static void page17(); + static void page18(); + static void page19(); + static void page20(); + static void page21(); + static void page22(); + static void page23(); + static void page24(); + static void page25(); + static void page26(); + static void page27(); + static void page28(); + static void page29(); + static void page30(); + static void page31(); + static void page32(); + + #if HAS_LEVELING + static void page33(); + #endif + static void page34(); + static void page115(); + static void page117(); // CHS Mute handler + static void page124(); + static void page125(); + static void page170(); // ENG Mute handler + + #if ENABLED(POWER_LOSS_RECOVERY) + static void page171(); // CHS power outage resume handler + static void page173(); // ENG power outage resume handler + #endif + #if HAS_LEVELING + static void page175(); // ENG probe preheating handler + static void page176(); // CHS probe preheating handler + #endif + + static void page177_to_198(); + //static void page178_to_181_190_to_193(); + static void page199_to_200(); + + static void page201(); + static void page202(); + static void page203(); + static void page204(); + static void page205(); + static void page206(); + + static void pop_up_manager(); + + static void tftSend(FSTR_P const=nullptr); + static void tftSendLn(FSTR_P const=nullptr); + static bool readTFTCommand(); + static int8_t findCmdPos(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 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: + + }; + + extern DgusTFT dgus; +} diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h new file mode 100644 index 0000000000..1133d670cd --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h @@ -0,0 +1,59 @@ +/** + * 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_vyper/dgus_defs.h + */ + +#include "../anycubic/common_defs.h" + +// TFT panel commands +#define AC_msg_bed_temp_abnormal F("J28") + +// 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 paused_state_t : uint8_t { + AC_paused_heater_timed_out, + AC_paused_filament_lack, + AC_paused_purging_filament, + AC_paused_idle + }; + + enum printer_state_t : uint8_t { + AC_printer_idle, + AC_printer_probing, + AC_printer_printing, + AC_printer_pausing, + AC_printer_paused, + AC_printer_stopping, + AC_printer_stopping_from_media_remove, + AC_printer_resuming_from_power_outage + }; + +} // Anycubic diff --git a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp new file mode 100644 index 0000000000..470fe10c43 --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp @@ -0,0 +1,154 @@ +/** + * 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/anycubic_vyper/vyper_extui.cpp + * + * Anycubic Dgus TFT support for Marlin + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(ANYCUBIC_LCD_VYPER) + +#include "../ui_api.h" +#include "dgus_tft.h" + +using namespace Anycubic; + +namespace ExtUI { + + void onStartup() { dgus.startup(); } + + void onIdle() { dgus.idleLoop(); } + + void onPrinterKilled(FSTR_P const error, FSTR_P const 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 onPlayTone(const uint16_t frequency, const uint16_t duration) { + #if ENABLED(SPEAKER) + ::tone(BEEPER_PIN, frequency, duration); + #endif + } + + 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 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 onFactoryReset() { + dgus.page_index_now = 121; + dgus.lcd_info.audio_on = DISABLED(SPEAKER); + } + + void onStoreSettings(char *buff) { + // Called when saving to EEPROM (i.e. M500). If the ExtUI needs + // 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)); + } + + void onLoadSettings(const char *buff) { + // Called while loading settings from EEPROM. If the 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)); + } + + void onPostprocessSettings() { + // Called after loading or resetting stored settings + dgus.paramInit(); + dgus.powerLoss(); + } + + void onSettingsStored(const bool success) { + // Called after the entire EEPROM has been written, + // whether successful or not. + } + + void onSettingsLoaded(const bool success) { + // Called after the entire EEPROM has been read, + // whether successful or not. + } + + #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); + } + + void onMeshUpdate(const int8_t xpos, const int8_t ypos, const probe_state_t state) { + // Called to indicate a special condition + //SERIAL_ECHOLNPGM("onMeshUpdate() x:", xpos, " y:", ypos, " state:", state); + } + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + // Called when power-loss is enabled/disabled + 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(); } + #endif + + #if HAS_PID_HEATING + void onPidTuning(const result_t rst) { + // Called for temperature PID tuning result + switch (rst) { + case PID_STARTED: break; + case PID_BAD_HEATER_ID: break; + case PID_TEMP_TOO_HIGH: break; + case PID_TUNING_TIMEOUT: break; + case PID_DONE: break; + } + } + #endif + + void onSteppersDisabled() {} + void onSteppersEnabled() {} +} + +#endif // ANYCUBIC_LCD_VYPER diff --git a/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp index 0eb95bb041..8e54b20d99 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,13 +135,12 @@ 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()) { // Overrun, but reset the flag only when the buffer is empty // We want to extract as many as valid datagrams possible... - DEBUG_ECHOPGM("OVFL"); rx_datagram_state = DGUS_IDLE; //LCD_SERIAL.reset_rx_overun(); LCD_SERIAL.flush(); @@ -175,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); @@ -205,17 +204,11 @@ void DGUSDisplay::ProcessRx() { | Command DataLen (in Words) */ if (command == DGUS_CMD_READVAR) { const uint16_t vp = tmp[0] << 8 | tmp[1]; - //const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) - //DEBUG_ECHOPGM(" vp=", vp, " dlen=", dlen); DGUS_VP_Variable ramcopy; if (populate_VPVar(vp, &ramcopy)) { if (ramcopy.set_by_display_handler) ramcopy.set_by_display_handler(ramcopy, &tmp[3]); - else - DEBUG_ECHOLNPGM(" VPVar found, no handler."); } - else - DEBUG_ECHOLNPGM(" VPVar not found:", vp); rx_datagram_state = DGUS_IDLE; break; @@ -227,9 +220,9 @@ 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) { +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); @@ -238,31 +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) { - //DEBUG_ECHOPGM("populate_VPVar ", VP); - const DGUS_VP_Variable *pvp = DGUSLCD_FindVPVar(VP); - //DEBUG_ECHOLNPGM(" pvp ", (uint16_t )pvp); + 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 c307ff4478..d65c30fc16 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 @@ public: 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 @@ public: // 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 82dbeee411..d440ea5375 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp @@ -40,19 +40,19 @@ #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; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA int16_t DGUSScreenHandler::top_file = 0, DGUSScreenHandler::file_to_print = 0; ExtUI::FileList filelist; @@ -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,78 +105,70 @@ 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) { - //DEBUG_ECHOPGM(" DGUS_LCD_SendWordValueToDisplay ", var.VP); - //DEBUG_ECHOLNPGM(" data ", *(uint16_t *)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) { - //DEBUG_ECHOPGM(" DGUS_LCD_SendWordValueToDisplay ", var.VP); - //DEBUG_ECHOLNPGM(" data ", *(uint16_t *)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) { - //DEBUG_ECHOPGM(" DGUSLCD_SendPrintProgressToDisplay ", var.VP); +void DGUSScreenHandler::sendPrintProgressToDisplay(DGUS_VP_Variable &var) { uint16_t tmp = ExtUI::getProgress_percent(); - //DEBUG_ECHOLNPGM(" data ", tmp); - 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); - DEBUG_ECHOLNPGM("Got percent:", value); *(uint8_t*)var.memadr = map(constrain(value, 0, 100), 0, 100, 0, 255); - DEBUG_ECHOLNPGM("Set uint8:", *(uint8_t*)var.memadr); } } // 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; @@ -206,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 @@ -214,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 @@ -234,40 +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) { - DEBUG_ECHOPGM(" DGUSLCD_SendFanStatusToDisplay ", var.VP); - DEBUG_ECHOLNPGM(" data ", *(uint8_t *)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) { - DEBUG_ECHOPGM(" DGUSLCD_SendHeaterStatusToDisplay ", var.VP); - DEBUG_ECHOLNPGM(" data ", *(int16_t *)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; - //DEBUG_ECHOPGM(" DGUSLCD_SendWaitingStatusToDisplay ", var.VP); - //DEBUG_ECHOLNPGM(" data ", BE16_P(&index)); if (period++ > DGUS_UI_WAITING_STATUS_PERIOD) { - dgusdisplay.WriteVariable(var.VP, index); - //DEBUG_ECHOLNPGM(" data ", BE16_P(&index)); + dgus.writeVariable(var.VP, index); if (++index >= DGUS_UI_WAITING_STATUS) index = 0; period = 0; } @@ -275,13 +260,13 @@ 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) { + 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; } @@ -289,73 +274,70 @@ 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) { top_file += scroll; - DEBUG_ECHOPGM("new topfile calculated:", top_file); if (top_file < 0) { top_file = 0; - DEBUG_ECHOLNPGM("Top of filelist reached"); } else { int16_t max_top = filelist.count() - DGUS_SD_FILESPERSCREEN; NOLESS(max_top, 0); NOMORE(top_file, max_top); } - DEBUG_ECHOPGM("new topfile adjusted:", top_file); } 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 // SDSUPPORT +#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)))) { @@ -365,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)); @@ -374,23 +356,22 @@ const DGUS_VP_Variable* DGUSLCD_FindVPVar(const uint16_t vp) { ++ret; } while (1); - DEBUG_ECHOLNPGM("FindVPVar NOT FOUND ", 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; @@ -424,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; @@ -443,9 +424,7 @@ void DGUSScreenHandler::HandleFlowRateChanged(DGUS_VP_Variable &var, void *val_p #endif } -void DGUSScreenHandler::HandleManualExtrude(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("HandleManualExtrude"); - +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; @@ -466,20 +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) { - DEBUG_ECHOLNPGM("HandleManualMoveOption"); + 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) { - DEBUG_ECHOLNPGM("HandleMotorLockUnlock"); +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) { - DEBUG_ECHOLNPGM("HandleSettings"); +void DGUSScreenHandler::handleSettings(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); switch (value) { default: break; @@ -493,9 +469,8 @@ 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); - DEBUG_ECHOLNPGM("HandleStepPerMMChanged:", value_raw); const float value = (float)value_raw / 10; ExtUI::axis_t axis; switch (var.VP) { @@ -504,15 +479,12 @@ void DGUSScreenHandler::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ case VP_Z_STEP_PER_MM: axis = ExtUI::axis_t::Z; break; default: return; } - DEBUG_ECHOLNPGM("value:", value); ExtUI::setAxisSteps_per_mm(value, axis); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisSteps_per_mm(axis)); 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); - DEBUG_ECHOLNPGM("HandleStepPerMMExtruderChanged:", value_raw); const float value = (float)value_raw / 10; ExtUI::extruder_t extruder; switch (var.VP) { @@ -524,16 +496,12 @@ void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, vo #endif #endif } - DEBUG_ECHOLNPGM("value:", value); ExtUI::setAxisSteps_per_mm(value, extruder); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisSteps_per_mm(extruder)); skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } #if HAS_PID_HEATING - void DGUSScreenHandler::HandlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("HandlePIDAutotune"); - + void DGUSScreenHandler::handlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr) { char buf[32] = {0}; switch (var.VP) { @@ -560,16 +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) { - DEBUG_ECHOLNPGM("HandleProbeOffsetZChanged"); - + 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 @@ -578,15 +544,12 @@ void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, vo #endif #if HAS_FAN - void DGUSScreenHandler::HandleFanControl(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("HandleFanControl"); + 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) { - DEBUG_ECHOLNPGM("HandleHeaterControl"); - +void DGUSScreenHandler::handleHeaterControl(DGUS_VP_Variable &var, void *val_ptr) { uint8_t preheat_temp = 0; switch (var.VP) { #if HAS_HOTEND @@ -613,9 +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) { - DEBUG_ECHOLNPGM("HandlePreheat"); - + void DGUSScreenHandler::handlePreheat(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t preheat_option = BE16_P(val_ptr); switch (preheat_option) { default: @@ -631,53 +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) { - DEBUG_ECHOLNPGM("SetNewScreen: ", newscreen); +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() { - DEBUG_ECHOLNPGM("PopToOldScreen s=", past_screens[0]); - 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() { - DEBUG_ECHOPGM(" UpdateScreenVPData Screen: ", current_screen); - - const uint16_t *VPList = DGUSLCD_FindScreenVPMapList(current_screen); +void DGUSScreenHandler::updateScreenVPData() { + const uint16_t *VPList = findScreenVPMapList(current_screenID); if (!VPList) { - DEBUG_ECHOLNPGM(" NO SCREEN FOR: ", current_screen); - ScreenComplete = true; + screenComplete = true; return; // nothing to do, likely a bug or boring screen. } @@ -687,11 +643,9 @@ void DGUSScreenHandler::UpdateScreenVPData() { bool sent_one = false; do { uint16_t VP = pgm_read_word(VPList); - DEBUG_ECHOPGM(" VP: ", VP); if (!VP) { update_ptr = 0; - DEBUG_ECHOLNPGM(" UpdateScreenVPData done"); - ScreenComplete = true; + screenComplete = true; return; // Screen completed. } @@ -702,16 +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())) { - //DEBUG_ECHOPGM(" calling handler for ", rcpy.VP); + if (rcpy.send_to_display_handler && (!sent_one || expected_tx <= dgus.getFreeTxBuffer())) { sent_one = true; rcpy.send_to_display_handler(rcpy); } else { - // auto x=dgusdisplay.GetFreeTxBuffer(); - //DEBUG_ECHOLNPGM(" tx almost full: ", x); - //DEBUG_ECHOPGM(" update_ptr ", update_ptr); - ScreenComplete = false; + screenComplete = false; return; // please call again! } } @@ -719,15 +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) { - DEBUG_ECHOLNPGM("GotoScreen ", 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 4486105d3c..cb403dbdad 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 340938c979..163a095d08 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,203 +37,203 @@ public: // 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 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); + 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; - 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; } // Send a float value to the display. // 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) { + template + 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); } } // Send a float value to the display. // 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) { + template + 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); - 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 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 382c5eb1be..30d1c710b2 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_(SDSUPPORT, ScreenHandler.SDCardInserted()); } - void onMediaError() { TERN_(SDSUPPORT, ScreenHandler.SDCardError()); } - void onMediaRemoved() { TERN_(SDSUPPORT, 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() {} @@ -102,20 +102,22 @@ namespace ExtUI { // Called after loading or resetting stored settings } - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { // Called after the entire EEPROM has been written, // whether successful or not. } - void onSettingsLoaded(bool success) { + void onSettingsLoaded(const bool success) { // Called after the entire EEPROM has been read, // 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 } @@ -126,9 +128,15 @@ namespace ExtUI { #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 - 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 @@ -137,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 3e731de438..08d5387cef 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), - #if ENABLED(SDSUPPORT) - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), + #if HAS_MEDIA + 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 ENABLED(SDSUPPORT) - 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), + #if HAS_MEDIA + 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 2543d20b76..70559f9031 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) @@ -258,7 +258,7 @@ constexpr uint16_t VP_BED_STATUS = 0x331C; constexpr uint16_t VP_MOVE_OPTION = 0x3400; // Step per mm -constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , uint16_t , 0~1638.4 //constexpr uint16_t VP_X2_STEP_PER_MM = 0x3602; constexpr uint16_t VP_Y_STEP_PER_MM = 0x3604; //constexpr uint16_t VP_Y2_STEP_PER_MM = 0x3606; @@ -272,10 +272,10 @@ constexpr uint16_t VP_E1_STEP_PER_MM = 0x3612; //constexpr uint16_t VP_E5_STEP_PER_MM = 0x361A; // PIDs -constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E0_PID_I = 0x3702; constexpr uint16_t VP_E0_PID_D = 0x3704; -constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E1_PID_I = 0x3708; constexpr uint16_t VP_E1_PID_D = 0x370A; constexpr uint16_t VP_BED_PID_P = 0x3710; diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index b68f72a1fb..8c26066b28 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -40,11 +40,11 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA 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,52 +52,50 @@ 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)) { - case 0: { // Resume - if (ExtUI::isPrintingFromMediaPaused()) { - ExtUI::resumePrint(); - } - } break; + case 0: // Resume + if (ExtUI::isPrintingFromMediaPaused()) ExtUI::resumePrint(); + break; 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,53 +104,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 // SDSUPPORT +#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]; - DEBUG_ECHOLNPGM("\n DEBUG target", target); - - 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) { - DEBUG_ECHOLNPGM("HandleManualMove"); - +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) { @@ -161,26 +155,33 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - unsigned int speed = 1500; // FIXME: get default feedrate for manual moves, don't hardcode. + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves 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 - case VP_MOVE_Y: - axiscode = 'Y'; - if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; - break; + #if HAS_Y_AXIS + case VP_MOVE_Y: + axiscode = 'Y'; + speed = manual_feedrate_mm_m.y; + if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; + break; + #endif - case VP_MOVE_Z: - axiscode = 'Z'; - speed = 300; // default to 5mm/s - if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; - break; + #if HAS_Z_AXIS + case VP_MOVE_Z: + axiscode = 'Z'; + speed = manual_feedrate_mm_m.z; + if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; + break; + #endif case VP_HOME_ALL: // only used for homing axiscode = '\0'; @@ -190,63 +191,42 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!movevalue) { // homing - DEBUG_ECHOPGM(" homing ", AS_CHAR(axiscode)); char buf[6] = "G28 X"; buf[4] = axiscode; - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓"); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { // movement - DEBUG_ECHOPGM(" move ", AS_CHAR(axiscode)); bool old_relative_mode = relative_mode; - if (!relative_mode) { - //DEBUG_ECHOPGM(" G91"); - queue.enqueue_now(F("G91")); - //DEBUG_ECHOPGM(" ✓ "); - } + if (!relative_mode) queue.enqueue_now(F("G91")); char buf[32]; // G1 X9999.99 F12345 - unsigned int backup_speed = MMS_TO_MMM(feedrate_mm_s); + const uint16_t backup_speed = MMS_TO_MMM(feedrate_mm_s); char sign[] = "\0"; int16_t value = movevalue / 100; if (movevalue < 0) { value = -value; sign[0] = '-'; } int16_t fraction = ABS(movevalue) % 100; snprintf_P(buf, 32, PSTR("G0 %c%s%d.%02d F%d"), axiscode, sign, value, fraction, speed); - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓ "); if (backup_speed != speed) { snprintf_P(buf, 32, PSTR("G0 F%d"), backup_speed); queue.enqueue_one_now(buf); - //DEBUG_ECHOPGM(" ", buf); - } - // while (!enqueue_and_echo_command(buf)) idle(); - //DEBUG_ECHOLNPGM(" ✓ "); - if (!old_relative_mode) { - //DEBUG_ECHOPGM("G90"); - queue.enqueue_now(F("G90")); - //DEBUG_ECHOPGM(" ✓ "); } + //while (!enqueue_and_echo_command(buf)) idle(); + if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); - DEBUG_ECHOLNPGM("manmv done."); - return; + forceCompleteUpdate(); cannotmove: - DEBUG_ECHOLNPGM(" cannot move ", AS_CHAR(axiscode)); 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); - DEBUG_ECHOLNPGM("V1:", rawvalue); float value = (float)rawvalue / 10; - DEBUG_ECHOLNPGM("V2:", value); float newvalue = 0; switch (var.VP) { @@ -268,7 +248,6 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif } - DEBUG_ECHOLNPGM("V3:", newvalue); *(float *)var.memadr = newvalue; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel @@ -276,20 +255,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) { - DEBUG_ECHOLNPGM("HandleLiveAdjustZ"); + 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) { - DEBUG_ECHOLNPGM("HandleFilamentOption"); - + 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); @@ -337,7 +313,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) { @@ -355,12 +331,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) { - DEBUG_ECHOLNPGM("HandleFilamentLoadUnload"); + 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 @@ -370,14 +345,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 @@ -395,14 +370,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) @@ -413,11 +388,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 73e3527d7e..16c5dec408 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 a348a1f9a1..d99a4fe4f6 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), - #if ENABLED(SDSUPPORT) - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), + #if HAS_MEDIA + 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 ENABLED(SDSUPPORT) - 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), + #if HAS_MEDIA + 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 e958155381..6270207990 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) @@ -257,7 +257,7 @@ constexpr uint16_t VP_BED_STATUS = 0x331C; constexpr uint16_t VP_MOVE_OPTION = 0x3400; // Step per mm -constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , uint16_t , 0~1638.4 //constexpr uint16_t VP_X2_STEP_PER_MM = 0x3602; constexpr uint16_t VP_Y_STEP_PER_MM = 0x3604; //constexpr uint16_t VP_Y2_STEP_PER_MM = 0x3606; @@ -271,7 +271,7 @@ constexpr uint16_t VP_E0_STEP_PER_MM = 0x3610; //constexpr uint16_t VP_E5_STEP_PER_MM = 0x361A; // PIDs -constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E0_PID_I = 0x3702; constexpr uint16_t VP_E0_PID_D = 0x3704; constexpr uint16_t VP_BED_PID_P = 0x3710; diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index 475a03307e..f817453f1b 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -40,11 +40,11 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA 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,53 +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 // SDSUPPORT +#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]; - DEBUG_ECHOLNPGM("\n DEBUG target", target); - - 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) { - DEBUG_ECHOLNPGM("HandleManualMove"); - +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) { @@ -161,26 +157,33 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - unsigned int speed = 1500; // FIXME: get default feedrate for manual moves, don't hardcode. + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves 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 - case VP_MOVE_Y: - axiscode = 'Y'; - if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; - break; + #if HAS_Y_AXIS + case VP_MOVE_Y: + axiscode = 'Y'; + speed = manual_feedrate_mm_m.y; + if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; + break; + #endif - case VP_MOVE_Z: - axiscode = 'Z'; - speed = 300; // default to 5mm/s - if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; - break; + #if HAS_Z_AXIS + case VP_MOVE_Z: + axiscode = 'Z'; + speed = manual_feedrate_mm_m.z; + if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; + break; + #endif case VP_HOME_ALL: // only used for homing axiscode = '\0'; @@ -190,63 +193,42 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!movevalue) { // homing - DEBUG_ECHOPGM(" homing ", AS_CHAR(axiscode)); char buf[6] = "G28 X"; buf[4] = axiscode; - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓"); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { // movement - DEBUG_ECHOPGM(" move ", AS_CHAR(axiscode)); - bool old_relative_mode = relative_mode; - if (!relative_mode) { - //DEBUG_ECHOPGM(" G91"); - queue.enqueue_now(F("G91")); - //DEBUG_ECHOPGM(" ✓ "); - } + const bool old_relative_mode = relative_mode; + if (!relative_mode) queue.enqueue_now(F("G91")); char buf[32]; // G1 X9999.99 F12345 - unsigned int backup_speed = MMS_TO_MMM(feedrate_mm_s); + const uint16_t backup_speed = MMS_TO_MMM(feedrate_mm_s); char sign[] = "\0"; int16_t value = movevalue / 100; if (movevalue < 0) { value = -value; sign[0] = '-'; } int16_t fraction = ABS(movevalue) % 100; snprintf_P(buf, 32, PSTR("G0 %c%s%d.%02d F%d"), axiscode, sign, value, fraction, speed); - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓ "); if (backup_speed != speed) { snprintf_P(buf, 32, PSTR("G0 F%d"), backup_speed); queue.enqueue_one_now(buf); - //DEBUG_ECHOPGM(" ", buf); - } - // while (!enqueue_and_echo_command(buf)) idle(); - //DEBUG_ECHOLNPGM(" ✓ "); - if (!old_relative_mode) { - //DEBUG_ECHOPGM("G90"); - queue.enqueue_now(F("G90")); - //DEBUG_ECHOPGM(" ✓ "); } + //while (!enqueue_and_echo_command(buf)) idle(); + if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); - DEBUG_ECHOLNPGM("manmv done."); - return; + forceCompleteUpdate(); cannotmove: - DEBUG_ECHOLNPGM(" cannot move ", AS_CHAR(axiscode)); 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); - DEBUG_ECHOLNPGM("V1:", rawvalue); float value = (float)rawvalue / 10; - DEBUG_ECHOLNPGM("V2:", value); float newvalue = 0; switch (var.VP) { @@ -268,7 +250,6 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif } - DEBUG_ECHOLNPGM("V3:", newvalue); *(float *)var.memadr = newvalue; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel @@ -276,20 +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) { - DEBUG_ECHOLNPGM("HandleLiveAdjustZ"); + 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) { - DEBUG_ECHOLNPGM("HandleFilamentOption"); - + 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); @@ -337,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) { @@ -355,12 +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) { - DEBUG_ECHOLNPGM("HandleFilamentLoadUnload"); + 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 @@ -370,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 @@ -395,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) @@ -413,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 73e3527d7e..16c5dec408 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 40f6a349d5..2b5b6d956e 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), - #if ENABLED(SDSUPPORT) - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), + #if HAS_MEDIA + 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 ENABLED(SDSUPPORT) - 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), + #if HAS_MEDIA + 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 = 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 = 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.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 bdcd248dd6..53e57e1c65 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 }; @@ -256,10 +256,10 @@ constexpr uint16_t VP_E1_STATUS = 0x3412; constexpr uint16_t VP_MOVE_OPTION = 0x3500; // // PIDs -// constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , 2 byte unsigned int , 0~1638.4 +// constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4 // constexpr uint16_t VP_E0_PID_I = 0x3702; // constexpr uint16_t VP_E0_PID_D = 0x3704; -// constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , 2 byte unsigned int , 0~1638.4 +// constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , uint16_t , 0~1638.4 // constexpr uint16_t VP_E1_PID_I = 0x3708; // constexpr uint16_t VP_E1_PID_D = 0x370A; // constexpr uint16_t VP_BED_PID_P = 0x3710; @@ -414,7 +414,7 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040; constexpr uint16_t VP_FAN3_STATUS = 0x2716; // Step per mm - constexpr uint16_t VP_X_STEP_PER_MM = 0x2900; // at the moment , 2 byte unsigned int , 0~1638.4 + constexpr uint16_t VP_X_STEP_PER_MM = 0x2900; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_Y_STEP_PER_MM = 0x2904; constexpr uint16_t VP_Z_STEP_PER_MM = 0x2908; constexpr uint16_t VP_E0_STEP_PER_MM = 0x2910; @@ -521,10 +521,10 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040; constexpr uint16_t VP_PrintTime_S = 0x3504; // PIDs - constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , 2 byte unsigned int , 0~1638.4 + constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E0_PID_I = 0x3702; constexpr uint16_t VP_E0_PID_D = 0x3704; - constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , 2 byte unsigned int , 0~1638.4 + constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E1_PID_I = 0x3708; constexpr uint16_t VP_E1_PID_D = 0x370A; constexpr uint16_t VP_BED_PID_P = 0x3710; diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index d28a2ac961..4c1995cebc 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 @@ -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,84 +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) { - //DEBUG_ECHOPGM(" DGUS_LCD_SendWordValueToDisplay ", var.VP); - //DEBUG_ECHOLNPGM(" data ", *(uint16_t *)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; - DEBUG_ECHOLNPGM(" >> ", value, 6); 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); - DEBUG_ECHOLNPGM("Got uint8:", value); *(uint8_t*)var.memadr = map(constrain(value, 0, 255), 0, 255, 0, 255); - DEBUG_ECHOLNPGM("Set uint8:", *(uint8_t*)var.memadr); } } -void DGUSScreenHandlerMKS::DGUSLCD_SendGbkToDisplay(DGUS_VP_Variable &var) { - DEBUG_ECHOLNPGM(" data ", *(uint16_t *)var.memadr); +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 ENABLED(SDSUPPORT) +#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; @@ -164,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)) { @@ -193,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; @@ -209,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; @@ -219,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] = ""; @@ -235,52 +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 // SDSUPPORT +#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]; - DEBUG_ECHOLNPGM("\n DEBUG target", target); - - // 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; @@ -291,44 +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(); - setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - 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); - DEBUG_ECHOLNPGM(" back = 0x%x", target); 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) { - DEBUG_ECHOLNPGM("GetTurnOffCtrl\n"); +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; @@ -336,16 +325,14 @@ void DGUSScreenHandlerMKS::GetTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr) } } -void DGUSScreenHandlerMKS::GetMinExtrudeTemp(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("GetMinExtrudeTemp"); +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) { - DEBUG_ECHOLNPGM("GetZoffsetDistance"); +void DGUSScreenHandlerMKS::getZoffsetDistance(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); float val_distance = 0; switch (value) { @@ -358,32 +345,31 @@ void DGUSScreenHandlerMKS::GetZoffsetDistance(DGUS_VP_Variable &var, void *val_p ZOffset_distance = val_distance; } -void DGUSScreenHandlerMKS::GetManualMovestep(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("\nGetManualMovestep"); +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) { - const uint16_t z_value = BE16_P(val_ptr); - switch (z_value) { +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; case 1: Z_distance = 0.1; break; case 2: Z_distance = 0.5; break; @@ -391,12 +377,11 @@ 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); const float Offset = value / 100.0f; - DEBUG_ECHOLNPGM("\nget int6 offset >> ", value, 6); switch (var.VP) { default: break; @@ -408,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; @@ -430,10 +415,10 @@ 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) { +void DGUSScreenHandlerMKS::levelControl(DGUS_VP_Variable &var, void *val_ptr) { #if ENABLED(MESH_BED_LEVELING) auto cs = getCurrentScreen(); #endif @@ -455,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; @@ -490,9 +475,9 @@ 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_value = BE16_P(val_ptr); + const uint16_t mesh_val = BE16_P(val_ptr); // static uint8_t a_first_level = 1; char cmd_buf[30]; float offset = mesh_adj_distance; @@ -500,7 +485,7 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { if (!queue.ring_buffer.empty()) return; - switch (mesh_value) { + switch (mesh_val) { case 0: offset = mesh_adj_distance; integer = offset; // get int @@ -539,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) { // 倒数第二个点 @@ -551,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) { @@ -563,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(); } @@ -575,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; @@ -585,25 +570,24 @@ 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) { - - const uint16_t lcd_value = BE16_P(val_ptr); - lcd_default_light = constrain(lcd_value, 10, 100); +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) { - const int16_t point_value = BE16_P(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 static bool first_level_flag = false; - if (!first_level_flag || point_value == 0x0001) { + if (!first_level_flag || point_val == 0x0001) { queue.enqueue_now_P(G28_STR); first_level_flag = true; } @@ -616,10 +600,10 @@ void DGUSScreenHandlerMKS::ManualAssistLeveling(DGUS_VP_Variable &var, void *val queue.enqueue_one_now(buf_level); }; - if (WITHIN(point_value, 0x0001, 0x0005)) + if (WITHIN(point_val, 0x0001, 0x0005)) queue.enqueue_now(F("G1Z10")); - switch (point_value) { + switch (point_val) { case 0x0001: enqueue_corner_move(X_MIN_POS + ABS(mks_corner_offsets[0].x), Y_MIN_POS + ABS(mks_corner_offsets[0].y), level_speed); @@ -643,7 +627,7 @@ void DGUSScreenHandlerMKS::ManualAssistLeveling(DGUS_VP_Variable &var, void *val break; } - if (WITHIN(point_value, 0x0002, 0x0005)) { + if (WITHIN(point_val, 0x0002, 0x0005)) { //queue.enqueue_now(F("G28Z")); queue.enqueue_now(F("G1Z-10")); } @@ -651,16 +635,16 @@ 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) { - #if EITHER(HAS_TRINAMIC_CONFIG, HAS_STEALTHCHOP) - const uint16_t tmc_value = BE16_P(val_ptr); +void DGUSScreenHandlerMKS::tmcChangeConfig(DGUS_VP_Variable &var, void *val_ptr) { + #if ANY(HAS_TRINAMIC_CONFIG, HAS_STEALTHCHOP) + const uint16_t tmc_val = BE16_P(val_ptr); #endif switch (var.VP) { case VP_TMC_X_STEP: #if USE_SENSORLESS #if X_HAS_STEALTHCHOP - stepperX.homing_threshold(mks_min(tmc_value, 255)); + stepperX.homing_threshold(mks_min(tmc_val, 255)); settings.save(); //tmc_step.x = stepperX.homing_threshold(); #endif @@ -669,7 +653,7 @@ void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr case VP_TMC_Y_STEP: #if USE_SENSORLESS #if Y_HAS_STEALTHCHOP - stepperY.homing_threshold(mks_min(tmc_value, 255)); + stepperY.homing_threshold(mks_min(tmc_val, 255)); settings.save(); //tmc_step.y = stepperY.homing_threshold(); #endif @@ -678,7 +662,7 @@ void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr case VP_TMC_Z_STEP: #if USE_SENSORLESS #if Z_HAS_STEALTHCHOP - stepperZ.homing_threshold(mks_min(tmc_value, 255)); + stepperZ.homing_threshold(mks_min(tmc_val, 255)); settings.save(); //tmc_step.z = stepperZ.homing_threshold(); #endif @@ -686,49 +670,49 @@ void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr break; case VP_TMC_X_Current: #if AXIS_IS_TMC(X) - stepperX.rms_current(tmc_value); + stepperX.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_X1_Current: #if AXIS_IS_TMC(X2) - stepperX2.rms_current(tmc_value); + stepperX2.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_Y_Current: #if AXIS_IS_TMC(Y) - stepperY.rms_current(tmc_value); + stepperY.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_Y1_Current: #if AXIS_IS_TMC(X2) - stepperY2.rms_current(tmc_value); + stepperY2.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_Z_Current: #if AXIS_IS_TMC(Z) - stepperZ.rms_current(tmc_value); + stepperZ.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_Z1_Current: #if AXIS_IS_TMC(Z2) - stepperZ2.rms_current(tmc_value); + stepperZ2.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_E0_Current: #if AXIS_IS_TMC(E0) - stepperE0.rms_current(tmc_value); + stepperE0.rms_current(tmc_val); settings.save(); #endif break; case VP_TMC_E1_Current: #if AXIS_IS_TMC(E1) - stepperE1.rms_current(tmc_value); + stepperE1.rms_current(tmc_val); settings.save(); #endif break; @@ -743,9 +727,7 @@ void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr #endif } -void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("HandleManualMove"); - +void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) { int16_t movevalue = BE16_P(val_ptr); // Choose Move distance @@ -753,69 +735,68 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { else if (manualMoveStep == 0x02) manualMoveStep = 100; else if (manualMoveStep == 0x03) manualMoveStep = 1000; - DEBUG_ECHOLNPGM("QUEUE LEN:", queue.ring_buffer.length); - if (!print_job_timer.isPaused() && !queue.ring_buffer.empty()) return; char axiscode; - unsigned int speed = 1500; // FIXME: get default feedrate for manual moves, don't hardcode. + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves switch (var.VP) { // switch X Y Z or Home default: return; - case VP_MOVE_X: - DEBUG_ECHOLNPGM("X Move"); - 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 - case VP_MOVE_Y: - DEBUG_ECHOLNPGM("Y Move"); - axiscode = 'Y'; - if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; - break; + #if HAS_Y_AXIS + case VP_MOVE_Y: + axiscode = 'Y'; + speed = manual_feedrate_mm_m.y; + if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; + break; + #endif - case VP_MOVE_Z: - DEBUG_ECHOLNPGM("Z Move"); - axiscode = 'Z'; - speed = 300; // default to 5mm/s - if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; - break; + #if HAS_Z_AXIS + case VP_MOVE_Z: + axiscode = 'Z'; + speed = manual_feedrate_mm_m.z; + if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; + break; + #endif case VP_MOTOR_LOCK_UNLOK: - DEBUG_ECHOLNPGM("Motor Unlock"); movevalue = 5; - axiscode = '\0'; - // return ; break; case VP_HOME_ALL: // only used for homing - DEBUG_ECHOLNPGM("Home all"); - axiscode = '\0'; + axiscode = '\0'; movevalue = 0; // ignore value sent from display, this VP is _ONLY_ for homing. - //return; break; - case VP_X_HOME: - DEBUG_ECHOLNPGM("X Home"); - axiscode = 'X'; - movevalue = 0; - break; + #if HAS_X_AXIS + case VP_X_HOME: + axiscode = 'X'; + movevalue = 0; + break; + #endif - case VP_Y_HOME: - DEBUG_ECHOLNPGM("Y Home"); - axiscode = 'Y'; - movevalue = 0; - break; + #if HAS_Y_AXIS + case VP_Y_HOME: + axiscode = 'Y'; + movevalue = 0; + break; + #endif - case VP_Z_HOME: - DEBUG_ECHOLNPGM("Z Home"); - axiscode = 'Z'; - movevalue = 0; - break; + #if HAS_Z_AXIS + case VP_Z_HOME: + axiscode = 'Z'; + movevalue = 0; + break; + #endif } - DEBUG_ECHOPGM("movevalue = ", movevalue); if (movevalue != 0 && movevalue != 5) { // get move distance switch (movevalue) { case 0x0001: movevalue = manualMoveStep; break; @@ -825,103 +806,75 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } if (!movevalue) { - // homing - DEBUG_ECHOPGM(" homing ", AS_CHAR(axiscode)); // char buf[6] = "G28 X"; // buf[4] = axiscode; char buf[6]; sprintf(buf, "G28 %c", axiscode); - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓"); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else if (movevalue == 5) { - DEBUG_ECHOPGM("send M84"); char buf[6]; snprintf_P(buf,6,PSTR("M84 %c"), axiscode); queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { // movement - DEBUG_ECHOPGM(" move ", AS_CHAR(axiscode)); - bool old_relative_mode = relative_mode; - - if (!relative_mode) { - //DEBUG_ECHOPGM(" G91"); - queue.enqueue_now(F("G91")); - //DEBUG_ECHOPGM(" ✓ "); - } + const bool old_relative_mode = relative_mode; + if (!relative_mode) queue.enqueue_now(F("G91")); char buf[32]; // G1 X9999.99 F12345 - // unsigned int backup_speed = MMS_TO_MMM(feedrate_mm_s); + //const uint16_t backup_speed = MMS_TO_MMM(feedrate_mm_s); char sign[] = "\0"; int16_t value = movevalue / 100; if (movevalue < 0) { value = -value; sign[0] = '-'; } - int16_t fraction = ABS(movevalue) % 100; + const int16_t fraction = ABS(movevalue) % 100; snprintf_P(buf, 32, PSTR("G0 %c%s%d.%02d F%d"), axiscode, sign, value, fraction, speed); queue.enqueue_one_now(buf); //if (backup_speed != speed) { // snprintf_P(buf, 32, PSTR("G0 F%d"), backup_speed); // queue.enqueue_one_now(buf); - // //DEBUG_ECHOPGM(" ", buf); //} //while (!enqueue_and_echo_command(buf)) idle(); - //DEBUG_ECHOLNPGM(" ✓ "); - if (!old_relative_mode) { - //DEBUG_ECHOPGM("G90"); - //queue.enqueue_now(F("G90")); - queue.enqueue_now(F("G90")); - //DEBUG_ECHOPGM(" ✓ "); - } + + if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); - DEBUG_ECHOLNPGM("manmv done."); - return; + forceCompleteUpdate(); cannotmove: - DEBUG_ECHOLNPGM(" cannot move ", AS_CHAR(axiscode)); return; } -void DGUSScreenHandlerMKS::GetParkPos(DGUS_VP_Variable &var, void *val_ptr) { - const int16_t value_pos = BE16_P(val_ptr); +void DGUSScreenHandlerMKS::getParkPos(DGUS_VP_Variable &var, void *val_ptr) { + const int16_t pos = BE16_P(val_ptr); switch (var.VP) { - case VP_X_PARK_POS: mks_park_pos.x = value_pos; break; - case VP_Y_PARK_POS: mks_park_pos.y = value_pos; break; - case VP_Z_PARK_POS: mks_park_pos.z = value_pos; break; + case VP_X_PARK_POS: mks_park_pos.x = pos; break; + case VP_Y_PARK_POS: mks_park_pos.y = pos; break; + case VP_Z_PARK_POS: mks_park_pos.z = pos; break; default: break; } 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) { - DEBUG_ECHOLNPGM("HandleChangeLevelPoint"); +void DGUSScreenHandlerMKS::handleChangeLevelPoint(DGUS_VP_Variable &var, void *val_ptr) { + const int16_t raw = BE16_P(val_ptr); - const int16_t value_raw = BE16_P(val_ptr); - DEBUG_ECHOLNPGM("value_raw:", value_raw); - - *(int16_t*)var.memadr = value_raw; + *(int16_t*)var.memadr = raw; settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleStepPerMMChanged"); - - const uint16_t value_raw = BE16_P(val_ptr); - const float value = (float)value_raw; - - DEBUG_ECHOLNPGM("value_raw:", value_raw); - DEBUG_ECHOLNPGM("value:", value); +void DGUSScreenHandlerMKS::handleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t raw = BE16_P(val_ptr); + const float value = (float)raw; ExtUI::axis_t axis; switch (var.VP) { @@ -931,19 +884,13 @@ void DGUSScreenHandlerMKS::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *v case VP_Z_STEP_PER_MM: axis = ExtUI::axis_t::Z; break; } ExtUI::setAxisSteps_per_mm(value, axis); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisSteps_per_mm(axis)); settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleStepPerMMExtruderChanged"); - - const uint16_t value_raw = BE16_P(val_ptr); - const float value = (float)value_raw; - - DEBUG_ECHOLNPGM("value_raw:", value_raw); - DEBUG_ECHOLNPGM("value:", value); +void DGUSScreenHandlerMKS::handleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t raw = BE16_P(val_ptr); + const float value = (float)raw; ExtUI::extruder_t extruder; switch (var.VP) { @@ -956,19 +903,13 @@ void DGUSScreenHandlerMKS::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, #endif } ExtUI::setAxisSteps_per_mm(value, extruder); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisSteps_per_mm(extruder)); settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleMaxSpeedChange"); - - const uint16_t value_raw = BE16_P(val_ptr); - const float value = (float)value_raw; - - DEBUG_ECHOLNPGM("value_raw:", value_raw); - DEBUG_ECHOLNPGM("value:", value); +void DGUSScreenHandlerMKS::handleMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t raw = BE16_P(val_ptr); + const float value = (float)raw; ExtUI::axis_t axis; switch (var.VP) { @@ -978,19 +919,13 @@ void DGUSScreenHandlerMKS::HandleMaxSpeedChange(DGUS_VP_Variable &var, void *val default: return; } ExtUI::setAxisMaxFeedrate_mm_s(value, axis); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisMaxFeedrate_mm_s(axis)); settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleExtruderMaxSpeedChange"); - - const uint16_t value_raw = BE16_P(val_ptr); - const float value = (float)value_raw; - - DEBUG_ECHOLNPGM("value_raw:", value_raw); - DEBUG_ECHOLNPGM("value:", value); +void DGUSScreenHandlerMKS::handleExtruderMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t raw = BE16_P(val_ptr); + const float value = (float)raw; ExtUI::extruder_t extruder; switch (var.VP) { @@ -1003,19 +938,13 @@ void DGUSScreenHandlerMKS::HandleExtruderMaxSpeedChange(DGUS_VP_Variable &var, v case VP_E1_MAX_SPEED: extruder = ExtUI::extruder_t::E1; break; } ExtUI::setAxisMaxFeedrate_mm_s(value, extruder); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisMaxFeedrate_mm_s(extruder)); settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleMaxAccChange"); - - const uint16_t value_raw = BE16_P(val_ptr); - const float value = (float)value_raw; - - DEBUG_ECHOLNPGM("value_raw:", value_raw); - DEBUG_ECHOLNPGM("value:", value); +void DGUSScreenHandlerMKS::handleMaxAccChange(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t raw = BE16_P(val_ptr); + const float value = (float)raw; ExtUI::axis_t axis; switch (var.VP) { @@ -1025,17 +954,13 @@ void DGUSScreenHandlerMKS::HandleMaxAccChange(DGUS_VP_Variable &var, void *val_p case VP_Z_ACC_MAX_SPEED: axis = ExtUI::axis_t::Z; break; } ExtUI::setAxisMaxAcceleration_mm_s2(value, axis); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisMaxAcceleration_mm_s2(axis)); settings.save(); 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) { - DEBUG_ECHOLNPGM("HandleExtruderAccChange"); - - uint16_t value_raw = BE16_P(val_ptr); - DEBUG_ECHOLNPGM("value_raw:", value_raw); - float value = (float)value_raw; +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; switch (var.VP) { default: return; @@ -1046,51 +971,47 @@ void DGUSScreenHandlerMKS::HandleExtruderAccChange(DGUS_VP_Variable &var, void * case VP_E1_ACC_MAX_SPEED: extruder = ExtUI::extruder_t::E1; settings.load(); break; #endif } - DEBUG_ECHOLNPGM("value:", value); ExtUI::setAxisMaxAcceleration_mm_s2(value, extruder); - DEBUG_ECHOLNPGM("value_set:", ExtUI::getAxisMaxAcceleration_mm_s2(extruder)); settings.save(); 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) { - uint16_t value_travel = BE16_P(val_ptr); - planner.settings.travel_acceleration = (float)value_travel; +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) { - uint16_t value_t = BE16_P(val_ptr); - planner.settings.min_feedrate_mm_s = (float)value_t; +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) { - uint16_t value_t_f = BE16_P(val_ptr); - planner.settings.min_travel_feedrate_mm_s = (float)value_t_f; +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) { - uint16_t value_acc = BE16_P(val_ptr); - planner.settings.acceleration = (float)value_acc; +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) { - const uint16_t value_ex_min_temp = BE16_P(val_ptr); - thermalManager.extrude_min_temp = value_ex_min_temp; + 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 } #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); - DEBUG_ECHOLNPGM("V1:", rawvalue); - const float value = 1.0f * rawvalue; - DEBUG_ECHOLNPGM("V2:", value); + const float value = float(rawvalue); float newvalue = 0; switch (var.VP) { @@ -1112,7 +1033,6 @@ void DGUSScreenHandlerMKS::HandleAccChange(DGUS_VP_Variable &var, void *val_ptr) #endif } - DEBUG_ECHOLNPGM("V3:", newvalue); *(float *)var.memadr = newvalue; settings.save(); @@ -1121,8 +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) { - DEBUG_ECHOLNPGM("HandleLiveAdjustZ"); + void DGUSScreenHandler::handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { const float step = ZOffset_distance; const uint16_t flag = BE16_P(val_ptr); @@ -1159,30 +1078,28 @@ 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) { - const uint16_t value_len = BE16_P(val_ptr); - const float value = (float)value_len; +void DGUSScreenHandlerMKS::getManualFilament(DGUS_VP_Variable &var, void *val_ptr) { + const uint16_t len = BE16_P(val_ptr); + const float value = (float)len; - DEBUG_ECHOLNPGM("GetManualFilament:", value); distanceFilament = value; 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) { - const uint16_t value_len = BE16_P(val_ptr); - filamentSpeed_mm_s = value_len; - DEBUG_ECHOLNPGM("GetManualFilamentSpeed:", value_len); +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) { - #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) +void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir) { + #if ANY(HAS_MULTI_HOTEND, SINGLENOZZLE) uint8_t swap_tool = 0; #else constexpr uint8_t swap_tool = 1; // T0 (or none at all) @@ -1203,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 } @@ -1218,19 +1135,19 @@ 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); - 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 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") @@ -1242,11 +1159,11 @@ 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() { - #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'))); @@ -1264,21 +1181,17 @@ void GcodeSuite::M1002() { axis_relative = old_axis_relative; } -void DGUSScreenHandlerMKS::FilamentLoad(DGUS_VP_Variable &var, void *val_ptr) { - DEBUG_ECHOLNPGM("FilamentLoad"); - 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) { - DEBUG_ECHOLNPGM("FilamentUnLoad"); - 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) { - DEBUG_ECHOLNPGM("HandleFilamentOption"); - + 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); @@ -1324,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) { @@ -1345,8 +1258,7 @@ void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) } } - void DGUSScreenHandler::HandleFilamentLoadUnload(DGUS_VP_Variable &var) { - DEBUG_ECHOLNPGM("HandleFilamentLoadUnload"); + 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 @@ -1362,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 @@ -1381,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--; } @@ -1414,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; @@ -1457,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 @@ -1467,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) { @@ -1475,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: @@ -1502,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 823ed4297c..9527badb5a 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 @@ public: #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 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 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 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); + 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 ENABLED(SDSUPPORT) + #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 004b453e6e..d69041ebc5 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), - #if ENABLED(SDSUPPORT) - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), + #if HAS_MEDIA + 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 ENABLED(SDSUPPORT) - 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), + #if HAS_MEDIA + 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 f5fb986bde..e601abd255 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) @@ -247,7 +247,7 @@ constexpr uint16_t VP_BED_STATUS = 0x331C; constexpr uint16_t VP_MOVE_OPTION = 0x3400; // Step per mm -constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_X_STEP_PER_MM = 0x3600; // at the moment , uint16_t , 0~1638.4 //constexpr uint16_t VP_X2_STEP_PER_MM = 0x3602; constexpr uint16_t VP_Y_STEP_PER_MM = 0x3604; //constexpr uint16_t VP_Y2_STEP_PER_MM = 0x3606; @@ -261,7 +261,7 @@ constexpr uint16_t VP_E0_STEP_PER_MM = 0x3610; //constexpr uint16_t VP_E5_STEP_PER_MM = 0x361A; // PIDs -constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , 2 byte unsigned int , 0~1638.4 +constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4 constexpr uint16_t VP_E0_PID_I = 0x3702; constexpr uint16_t VP_E0_PID_D = 0x3704; constexpr uint16_t VP_BED_PID_P = 0x3710; diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index 55be3777e1..943d8c50a5 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -40,11 +40,11 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA 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,53 +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 // SDSUPPORT +#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]; - DEBUG_ECHOLNPGM("\n DEBUG target", target); - - 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) { - DEBUG_ECHOLNPGM("HandleManualMove"); - +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) { @@ -161,26 +157,33 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - unsigned int speed = 1500; // FIXME: get default feedrate for manual moves, don't hardcode. + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves 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 - case VP_MOVE_Y: - axiscode = 'Y'; - if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; - break; + #if HAS_Y_AXIS + case VP_MOVE_Y: + axiscode = 'Y'; + speed = manual_feedrate_mm_m.y; + if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; + break; + #endif - case VP_MOVE_Z: - axiscode = 'Z'; - speed = 300; // default to 5mm/s - if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; - break; + #if HAS_Z_AXIS + case VP_MOVE_Z: + axiscode = 'Z'; + speed = manual_feedrate_mm_m.z; + if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; + break; + #endif case VP_HOME_ALL: // only used for homing axiscode = '\0'; @@ -190,63 +193,42 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!movevalue) { // homing - DEBUG_ECHOPGM(" homing ", AS_CHAR(axiscode)); char buf[6] = "G28 X"; buf[4] = axiscode; - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓"); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { // movement - DEBUG_ECHOPGM(" move ", AS_CHAR(axiscode)); - bool old_relative_mode = relative_mode; - if (!relative_mode) { - //DEBUG_ECHOPGM(" G91"); - queue.enqueue_now(F("G91")); - //DEBUG_ECHOPGM(" ✓ "); - } + const bool old_relative_mode = relative_mode; + if (!relative_mode) queue.enqueue_now(F("G91")); char buf[32]; // G1 X9999.99 F12345 - unsigned int backup_speed = MMS_TO_MMM(feedrate_mm_s); + const uint16_t backup_speed = MMS_TO_MMM(feedrate_mm_s); char sign[] = "\0"; int16_t value = movevalue / 100; if (movevalue < 0) { value = -value; sign[0] = '-'; } int16_t fraction = ABS(movevalue) % 100; snprintf_P(buf, 32, PSTR("G0 %c%s%d.%02d F%d"), axiscode, sign, value, fraction, speed); - //DEBUG_ECHOPGM(" ", buf); queue.enqueue_one_now(buf); - //DEBUG_ECHOLNPGM(" ✓ "); if (backup_speed != speed) { snprintf_P(buf, 32, PSTR("G0 F%d"), backup_speed); queue.enqueue_one_now(buf); - //DEBUG_ECHOPGM(" ", buf); - } - // while (!enqueue_and_echo_command(buf)) idle(); - //DEBUG_ECHOLNPGM(" ✓ "); - if (!old_relative_mode) { - //DEBUG_ECHOPGM("G90"); - queue.enqueue_now(F("G90")); - //DEBUG_ECHOPGM(" ✓ "); } + //while (!enqueue_and_echo_command(buf)) idle(); + if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); - DEBUG_ECHOLNPGM("manmv done."); - return; + forceCompleteUpdate(); cannotmove: - DEBUG_ECHOLNPGM(" cannot move ", AS_CHAR(axiscode)); 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); - DEBUG_ECHOLNPGM("V1:", rawvalue); float value = (float)rawvalue / 10; - DEBUG_ECHOLNPGM("V2:", value); float newvalue = 0; switch (var.VP) { @@ -268,7 +250,6 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif } - DEBUG_ECHOLNPGM("V3:", newvalue); *(float *)var.memadr = newvalue; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel @@ -276,20 +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) { - DEBUG_ECHOLNPGM("HandleLiveAdjustZ"); + 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) { - DEBUG_ECHOLNPGM("HandleFilamentOption"); - + 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); @@ -337,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) { @@ -355,12 +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) { - DEBUG_ECHOLNPGM("HandleFilamentLoadUnload"); + 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 @@ -370,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 @@ -395,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) @@ -413,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 73e3527d7e..16c5dec408 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_e3s1pro/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp new file mode 100644 index 0000000000..b897466c6a --- /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 0000000000..8d8a3cf013 --- /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 0000000000..f6d2e2bb89 --- /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 0000000000..03a7224ca6 --- /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 0000000000..118cfd3514 --- /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 0000000000..562edf9509 --- /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 0000000000..17a05ae655 --- /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 0000000000..8844184271 --- /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 0000000000..e53f9b84e7 --- /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 0000000000..85c7b660a7 --- /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 0000000000..37c52d86cd --- /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 0000000000..9220f09aa3 --- /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 0000000000..ddde2689de --- /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 0000000000..f8e3b33da8 --- /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 0000000000..0dd12b1612 --- /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 0000000000..2b22c7a62e --- /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 0000000000..73694a4e09 --- /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 0000000000..3c89f7ad8a --- /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 0000000000..c846b56bf4 --- /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 0000000000..237cec7795 --- /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 0000000000..8e890aa14f --- /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 0000000000..00083ced8c --- /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 0000000000..b20bab1336 --- /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 0000000000..3e4d191c8d --- /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 0000000000..4321413fd1 --- /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 0000000000..60eb9cfae2 --- /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 0000000000..dddc6f889e --- /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 0000000000..8ca16e924e --- /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 0000000000..530ce9bcf0 --- /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/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.cpp index df22407c0f..3127268180 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,15 +118,14 @@ 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); - uint8_t left_spaces = 0; - uint8_t right_spaces = 0; + uint8_t left_spaces = 0, right_spaces = 0; if (len < size) { if (!len) { @@ -147,86 +146,71 @@ void DGUSDisplay::WriteStringPGM(uint16_t addr, const void* data_ptr, uint8_t si 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'); - } + 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() { +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) { - DEBUG_ECHOLNPGM("SwitchScreen ", (uint8_t)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; - DEBUG_ECHOLNPGM("PlaySound ", start, ":", len, "\nVolume ", volume); 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) { - DEBUG_ECHOLNPGM("EnableControl ", (uint8_t)control, "\nScreen ", (uint8_t)screen, "\nType ", (uint8_t)type); +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)); - const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (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) { - DEBUG_ECHOLNPGM("DisableControl ", (uint8_t)control, "\nScreen ", (uint8_t)screen, "\nType ", (uint8_t)type); +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)); - const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (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); - DEBUG_ECHOLNPGM("SetBrightness ", new_brightness); 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); - DEBUG_ECHOLNPGM("SetVolume ", volume); 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()) { // Overrun, but reset the flag only when the buffer is empty // We want to extract as many as valid datagrams possible... - DEBUG_ECHOPGM("OVFL"); rx_datagram_state = DGUS_IDLE; //LCD_SERIAL.reset_rx_overun(); LCD_SERIAL.flush(); @@ -239,20 +223,16 @@ void DGUSDisplay::ProcessRx() { case DGUS_IDLE: // Waiting for the first header byte receivedbyte = LCD_SERIAL.read(); - DEBUG_ECHOPGM("< ", receivedbyte); 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(); - DEBUG_ECHOPGM(" ", receivedbyte); 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(); - DEBUG_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; @@ -262,22 +242,16 @@ void DGUSDisplay::ProcessRx() { initialized = true; // We've talked to it, so we defined it as initialized. uint8_t command = LCD_SERIAL.read(); - - DEBUG_ECHOPGM("# ", command); - 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(); - DEBUG_ECHOPGM(" ", receivedbyte); *ptmp++ = receivedbyte; } - DEBUG_ECHOPGM(" # "); // 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]) { - DEBUG_ECHOLNPGM(">"); rx_datagram_state = DGUS_IDLE; break; } @@ -292,10 +266,7 @@ void DGUSDisplay::ProcessRx() { if (command == DGUS_READVAR) { const uint16_t addr = tmp[0] << 8 | tmp[1]; const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) - DEBUG_ECHOPGM("addr=", addr, " dlen=", dlen, "> "); - if (addr == DGUS_VERSION && dlen == 2) { - DEBUG_ECHOLNPGM("VERSIONS"); gui_version = tmp[3]; os_version = tmp[4]; rx_datagram_state = DGUS_IDLE; @@ -303,14 +274,12 @@ void DGUSDisplay::ProcessRx() { } DGUS_VP vp; - if (!DGUS_PopulateVP((DGUS_Addr)addr, &vp)) { - DEBUG_ECHOLNPGM("VP not found"); + if (!populateVP((DGUS_Addr)addr, &vp)) { rx_datagram_state = DGUS_IDLE; break; } if (!vp.rx_handler) { - DEBUG_ECHOLNPGM("VP found, no handler."); rx_datagram_state = DGUS_IDLE; break; } @@ -346,7 +315,6 @@ void DGUSDisplay::ProcessRx() { } if (dlen != vp.size) { - DEBUG_ECHOLNPGM("VP found, size mismatch."); rx_datagram_state = DGUS_IDLE; break; } @@ -358,22 +326,23 @@ void DGUSDisplay::ProcessRx() { break; } - DEBUG_ECHOLNPGM(">"); rx_datagram_state = DGUS_IDLE; break; } } } -size_t DGUSDisplay::GetFreeTxBuffer() { - #ifdef LCD_SERIAL_GET_TX_BUFFER_FREE - return LCD_SERIAL_GET_TX_BUFFER_FREE(); - #else - return SIZE_MAX; - #endif +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() { +void DGUSDisplay::flushTx() { #ifdef ARDUINO_ARCH_STM32 LCD_SERIAL.flush(); #else @@ -381,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); @@ -390,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 { @@ -402,7 +371,6 @@ bool DGUS_PopulateVP(const DGUS_Addr addr, DGUS_VP * const buffer) { return true; } } while (++ret); - DEBUG_ECHOLNPGM("VP not found: ", (uint16_t)addr); return false; } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h index c4e3645f28..7c27162ce6 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" @@ -47,66 +47,69 @@ 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 + 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 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, 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; } @@ -114,24 +117,24 @@ public: 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)]; } 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; } 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)); } @@ -154,11 +157,11 @@ private: }; enum dgus_system_addr : uint16_t { - DGUS_VERSION = 0x000f // OS/GUI version + 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; @@ -169,11 +172,11 @@ private: 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 2b750df9c9..aa58e85692 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,121 +42,121 @@ #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 ENABLED(SDSUPPORT) + #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(F("Impossible 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(F("Impossible while idle")); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_NOT_WHILE_IDLE)); return; } - dgus_screen_handler.TriggerScreenChange(screen); + screen.triggerScreenChange(screenID); } -#if ENABLED(SDSUPPORT) - void DGUSRxHandler::Scroll(DGUS_VP &vp, void *data_ptr) { +#if HAS_MEDIA + 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) { + void DGUSRxHandler::selectFile(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); 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(F("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(FPSTR(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 // SDSUPPORT +#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(FPSTR(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(F("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 (!ExtUI::isAxisPositionKnown(ExtUI::Z)) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(ExtUI::Z))) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(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 (!ExtUI::isAxisPositionKnown(ExtUI::Z)) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(ExtUI::Z))) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(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(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } @@ -499,51 +499,51 @@ 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(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(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")); #else queue.enqueue_now(F("G29")); #endif - queue.enqueue_now_P(DGUS_CMD_EEPROM_SAVE); + 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(FPSTR(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(FPSTR(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(F("Temperature too low")); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_TEMP_TOO_LOW)); return; } @@ -606,29 +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(FPSTR(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.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(DGUS_MSG_HOMING, 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(dgus_screen_handler.GetCurrentScreen()); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), screen.getCurrentScreen()); switch (axis) { case DGUS_Data::Axis::X_Y_Z: @@ -643,50 +639,37 @@ 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) { default: return; - case DGUS_Addr::MOVE_SetX: - axis = ExtUI::X; - break; - case DGUS_Addr::MOVE_SetY: - axis = ExtUI::Y; - break; - case DGUS_Addr::MOVE_SetZ: - axis = ExtUI::Z; - break; + case DGUS_Addr::MOVE_SetX: axis = ExtUI::X; break; + case DGUS_Addr::MOVE_SetY: axis = ExtUI::Y; break; + case DGUS_Addr::MOVE_SetZ: axis = ExtUI::Z; break; } - if (!ExtUI::isAxisPositionKnown(axis)) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(axis))) { + 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; - case DGUS_Data::StepSize::MMP1: - offset = 0.1f; - break; + case DGUS_Data::StepSize::MM10: offset = 10.0f; break; + case DGUS_Data::StepSize::MM1: offset = 1.0f; break; + case DGUS_Data::StepSize::MMP1: offset = 0.1f; break; } const DGUS_Data::MoveDirection direction = (DGUS_Data::MoveDirection)((uint8_t*)data_ptr)[1]; @@ -694,99 +677,75 @@ void DGUSRxHandler::MoveStep(DGUS_VP &vp, void *data_ptr) { switch (direction) { default: return; - case DGUS_Data::MoveDirection::XP: - axis = ExtUI::X; - break; - case DGUS_Data::MoveDirection::XM: - axis = ExtUI::X; - offset = -offset; - break; - case DGUS_Data::MoveDirection::YP: - axis = ExtUI::Y; - break; - case DGUS_Data::MoveDirection::YM: - axis = ExtUI::Y; - offset = -offset; - break; - case DGUS_Data::MoveDirection::ZP: - axis = ExtUI::Z; - break; - case DGUS_Data::MoveDirection::ZM: - axis = ExtUI::Z; - offset = -offset; - break; + case DGUS_Data::MoveDirection::XM: offset = -offset; + case DGUS_Data::MoveDirection::XP: axis = ExtUI::X; break; + case DGUS_Data::MoveDirection::YM: offset = -offset; + case DGUS_Data::MoveDirection::YP: axis = ExtUI::Y; break; + case DGUS_Data::MoveDirection::ZM: offset = -offset; + case DGUS_Data::MoveDirection::ZP: axis = ExtUI::Z; break; } - if (!ExtUI::isAxisPositionKnown(axis)) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_HOMING_REQUIRED)); + if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(axis))) { + 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]; + screen.move_steps = size; - dgus_screen_handler.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)) { + if (!strlen(screen.gcode)) return; + + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); - return; - } + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_EXECUTING_COMMAND), DGUS_ScreenID::GCODE); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(PSTR("Executing command..."), 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(DGUS_Screen::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 (result != DGUS_Data::Popup::CONFIRMED) return; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } queue.enqueue_now(F("M502")); - queue.enqueue_now_P(DGUS_CMD_EEPROM_SAVE); + 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]; @@ -795,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(FPSTR(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); @@ -821,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(FPSTR(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); @@ -863,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(FPSTR(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(F("Bed PID disabled")); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BED_PID_DISABLED)); return; #endif case DGUS_Data::Heater::H0: @@ -895,7 +854,7 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { heater = H_E0; break; #else - dgus_screen_handler.SetStatusMessage(F("PID disabled")); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_PID_DISABLED)); return; #endif #if HAS_MULTI_HOTEND @@ -904,27 +863,23 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { heater = H_E1; break; #else - dgus_screen_handler.SetStatusMessage(F("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.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(PSTR("PID autotuning..."), 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(DGUS_Screen::PID); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_PID_AUTOTUNING), DGUS_ScreenID::PID); queue.enqueue_one_now(buffer); - queue.enqueue_now_P(DGUS_CMD_EEPROM_SAVE); + 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]; @@ -933,17 +888,17 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(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]; @@ -952,23 +907,23 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } if (!recovery.valid()) { - dgus_screen_handler.SetStatusMessage(F("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]; @@ -978,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; @@ -1006,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 4cad11fc0b..9143b83554 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 ENABLED(SDSUPPORT) - void Scroll(DGUS_VP &, void *); - void SelectFile(DGUS_VP &, void *); - void PrintFile(DGUS_VP &, void *); + #if HAS_MEDIA + void scroll(DGUS_VP &, void *); + void selectFile(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 3d0896a67c..76aa3de872 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; @@ -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,51 +69,40 @@ bool DGUSScreenHandler::leveling_active = false; millis_t DGUSScreenHandler::status_expire = 0; millis_t DGUSScreenHandler::eeprom_save = 0; -const char DGUS_MSG_HOMING_REQUIRED[] PROGMEM = "Homing required", - DGUS_MSG_BUSY[] PROGMEM = "Busy", - DGUS_MSG_UNDEF[] PROGMEM = "-", - DGUS_MSG_HOMING[] PROGMEM = "Homing...", - DGUS_MSG_FW_OUTDATED[] PROGMEM = "DWIN GUI/OS update required", - DGUS_MSG_ABL_REQUIRED[] PROGMEM = "Auto bed leveling required"; +void DGUSScreenHandler::init() { + dgus.init(); -const char DGUS_CMD_HOME[] PROGMEM = "G28", - DGUS_CMD_EEPROM_SAVE[] PROGMEM = "M500"; - -void DGUSScreenHandler::Init() { - dgus_display.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; } @@ -121,332 +110,331 @@ 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::getMeshValid() ? F("Probing successful") : F("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_P(DGUS_CMD_EEPROM_SAVE); + queue.enqueue_now(F("M500")); return; } - dgus_display.Loop(); + dgus.loop(); } -void DGUSScreenHandler::PrinterKilled(FSTR_P const error, FSTR_P const component) { - SetMessageLinePGM(FTOP(error), 1); - SetMessageLinePGM(FTOP(component), 2); - SetMessageLinePGM(NUL_STR, 3); - SetMessageLinePGM(GET_TEXT(MSG_PLEASE_RESET), 4); +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); - 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) { - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLine(msg, 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.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); - dgus_screen_handler.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(F("EEPROM reset")); + 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.abl_okay = (ExtUI::getLevelingActive() && ExtUI::getMeshValid()); + 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::getMeshValid()); + leveling_active = (data.abl_okay && ExtUI::getLevelingIsValid()); ExtUI::setLevelingActive(leveling_active); } } -void DGUSScreenHandler::ConfigurationStoreWritten(bool success) { +void DGUSScreenHandler::configurationStoreWritten(bool success) { if (!success) - SetStatusMessage(F("EEPROM write failed")); + setStatusMessage(GET_TEXT_F(DGUS_MSG_WRITE_EEPROM_FAILED)); } -void DGUSScreenHandler::ConfigurationStoreRead(bool success) { +void DGUSScreenHandler::configurationStoreRead(bool success) { if (!success) { - SetStatusMessage(F("EEPROM read 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) { - UNUSED(duration); - - if (frequency >= 1 && frequency <= 255) { - if (duration >= 1 && duration <= 255) - dgus_display.PlaySound((uint8_t)frequency, (uint8_t)duration); +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_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; } 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(); + 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) { +void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { char buffer[21]; - snprintf_P(buffer, sizeof(buffer), PSTR("Filament runout E%d"), extruder); - SetStatusMessage(buffer); + snprintf_P(buffer, sizeof(buffer), GET_TEXT(DGUS_MSG_FILAMENT_RUNOUT), extruder); - dgus_display.PlaySound(3); + setStatusMessage(buffer); + + dgus.playSound(3); } -#if ENABLED(SDSUPPORT) +#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 // SDSUPPORT +#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 +#endif #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* msg, 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 msg, 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.WriteStringPGM((uint16_t)DGUS_Addr::MESSAGE_Status, FTOP(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(DGUS_Screen return_screen, bool has_continue) { - 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); } -DGUS_Screen DGUSScreenHandler::GetCurrentScreen() { - return current_screen; +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); } -void DGUSScreenHandler::TriggerScreenChange(DGUS_Screen screen) { - new_screen = screen; +DGUS_ScreenID DGUSScreenHandler::getCurrentScreen() { + return current_screenID; } -void DGUSScreenHandler::TriggerFullUpdate() { +void DGUSScreenHandler::triggerScreenChange(const DGUS_ScreenID screenID) { + new_screenID = screenID; +} + +void DGUSScreenHandler::triggerFullUpdate() { full_update = true; } -void DGUSScreenHandler::TriggerEEPROMSave() { +void DGUSScreenHandler::triggerEEPROMSave() { eeprom_save = ExtUI::safe_millis() + 500; } -bool DGUSScreenHandler::IsPrinterIdle() { - return (!ExtUI::commandsInQueue() - && !ExtUI::isMoving()); +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) { - return list.addr_list; - } + if (list.screenID == screenID) return list.addr_list; } while (++map); 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); @@ -454,40 +442,31 @@ bool DGUSScreenHandler::CallScreenSetup(DGUS_Screen screen) { return true; } -void DGUSScreenHandler::MoveToScreen(DGUS_Screen screen, bool abort_wait) { - if (current_screen == DGUS_Screen::KILL) { - return; - } +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; - if (wait_continue && wait_for_user) { + if (wait_continue && wait_for_user) ExtUI::setUserConfirmed(); - } } - if (!CallScreenSetup(screen)) return; + if (!callScreenSetup(screenID)) return; - if (!SendScreenVPData(screen, true)) { - DEBUG_ECHOLNPGM("SendScreenVPData failed"); - 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) { - if (complete_update) { - full_update = false; - } +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 @@ -496,17 +475,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 6a00a4f72a..27f7f92517 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,61 +33,63 @@ 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 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 FilamentRunout(const ExtUI::extruder_t extruder); + 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 ENABLED(SDSUPPORT) + #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* msg, uint8_t line); - static void SetMessageLinePGM(PGM_P msg, uint8_t 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(DGUS_Screen return_screen, 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; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static ExtUI::FileList filelist; static uint16_t filelist_offset; static int16_t filelist_selected; @@ -112,20 +114,20 @@ public: 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; @@ -138,14 +140,4 @@ private: } eeprom_data_t; }; -extern DGUSScreenHandler dgus_screen_handler; - -extern const char DGUS_MSG_HOMING_REQUIRED[], - DGUS_MSG_BUSY[], - DGUS_MSG_UNDEF[], - DGUS_MSG_HOMING[], - DGUS_MSG_FW_OUTDATED[], - DGUS_MSG_ABL_REQUIRED[]; - -extern const char DGUS_CMD_HOME[], - DGUS_CMD_EEPROM_SAVE[]; +extern DGUSScreenHandler screen; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp index 4caccc0717..8f970e094f 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp @@ -31,44 +31,44 @@ #include "../../../gcode/queue.h" -#if ENABLED(SDSUPPORT) - bool DGUSSetupHandler::Print() { - dgus_screen_handler.filelist.refresh(); +#if HAS_MEDIA + bool DGUSSetupHandler::print() { + 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; } #endif -bool DGUSSetupHandler::PrintStatus() { +bool DGUSSetupHandler::printStatus() { if (ExtUI::isPrinting() || ExtUI::isPrintingPaused()) { return true; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_FINISHED); + screen.triggerScreenChange(DGUS_ScreenID::PRINT_FINISHED); return false; } -bool DGUSSetupHandler::PrintAdjust() { +bool DGUSSetupHandler::printAdjust() { if (ExtUI::isPrinting() || ExtUI::isPrintingPaused()) { 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); +bool DGUSSetupHandler::levelingMenu() { + ExtUI::setLevelingActive(screen.leveling_active); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } @@ -80,45 +80,37 @@ bool DGUSSetupHandler::LevelingMenu() { return true; } - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(DGUS_MSG_HOMING, 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(DGUS_Screen::LEVELING_MENU); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_MENU); - queue.enqueue_now_P(DGUS_CMD_HOME); + queue.enqueue_now(F("G28")); return false; } -bool DGUSSetupHandler::LevelingManual() { +bool DGUSSetupHandler::levelingManual() { ExtUI::setLevelingActive(false); if (ExtUI::isPositionKnown()) { return true; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(DGUS_MSG_HOMING, 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(DGUS_Screen::LEVELING_MANUAL); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_MANUAL); - queue.enqueue_now_P(DGUS_CMD_HOME); + queue.enqueue_now(F("G28")); return false; } -bool DGUSSetupHandler::LevelingOffset() { - dgus_screen_handler.offset_steps = DGUS_Data::StepSize::MMP1; +bool DGUSSetupHandler::levelingOffset() { + screen.offset_steps = DGUS_Data::StepSize::MMP1; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } @@ -136,20 +128,16 @@ bool DGUSSetupHandler::LevelingOffset() { return true; } - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 1); - dgus_screen_handler.SetMessageLinePGM(DGUS_MSG_HOMING, 2); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 3); - dgus_screen_handler.SetMessageLinePGM(NUL_STR, 4); - dgus_screen_handler.ShowWaitScreen(DGUS_Screen::LEVELING_OFFSET); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_OFFSET); - queue.enqueue_now_P(DGUS_CMD_HOME); + queue.enqueue_now(F("G28")); return false; } -bool DGUSSetupHandler::LevelingAutomatic() { - if (ExtUI::getMeshValid()) { - dgus_screen_handler.leveling_active = true; +bool DGUSSetupHandler::levelingAutomatic() { + if (ExtUI::getLevelingIsValid()) { + screen.leveling_active = true; ExtUI::setLevelingActive(true); } @@ -157,51 +145,51 @@ bool DGUSSetupHandler::LevelingAutomatic() { return true; } -bool DGUSSetupHandler::LevelingProbing() { - dgus_screen_handler.probing_icons[0] = 0; - dgus_screen_handler.probing_icons[1] = 0; +bool DGUSSetupHandler::levelingProbing() { + 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; +bool DGUSSetupHandler::filament() { + 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; +bool DGUSSetupHandler::move() { + screen.move_steps = DGUS_Data::StepSize::MM10; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } return true; } -bool DGUSSetupHandler::Gcode() { - ZERO(dgus_screen_handler.gcode); +bool DGUSSetupHandler::gcode() { + ZERO(screen.gcode); - if (dgus_display.gui_version < 0x30 || dgus_display.os_version < 0x21) { - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_FW_OUTDATED)); + if (dgus.gui_version < 0x30 || dgus.os_version < 0x21) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_FW_OUTDATED)); return false; } return true; } -bool DGUSSetupHandler::PID() { - dgus_screen_handler.pid_heater = DGUS_Data::Heater::H0; - dgus_screen_handler.pid_temp = DGUS_PLA_TEMP_HOTEND; +bool DGUSSetupHandler::pid() { + 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; +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 9e3866467f..67edfee484 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h @@ -23,20 +23,20 @@ namespace DGUSSetupHandler { - #if ENABLED(SDSUPPORT) - bool Print(); + #if HAS_MEDIA + 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/DGUSTxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp index 47603052e9..037eafcc94 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp @@ -36,8 +36,8 @@ #include "../../../feature/pause.h" #endif -#if ENABLED(SDSUPPORT) - void DGUSTxHandler::SetFileControlState(int file, bool state) { +#if HAS_MEDIA + 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 (int i = 0; i < DGUS_FILE_COUNT; i++) { - if (!dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_offset + i)) { - data[i] = Swap16((uint16_t)DGUS_Data::SDType::NONE); + for (int16_t i = 0; i < DGUS_FILE_COUNT; 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() ? - Swap16((uint16_t)DGUS_Data::SDType::DIRECTORY) - : Swap16((uint16_t)DGUS_Data::SDType::FILE); + 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,87 +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 // SDSUPPORT +#endif // HAS_MEDIA -void DGUSTxHandler::PositionZ(DGUS_VP &vp) { - float position = ExtUI::isAxisPositionKnown(ExtUI::Z) ? - planner.get_axis_position_mm(Z_AXIS) - : 0; - - const int16_t data = dgus_display.ToFixedPoint(position); - dgus_display.Write((uint16_t)vp.addr, Swap16(data)); +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.toFixedPoint(int32_t(position * 50.0f) / 50.0f); // Round to 0.02 + dgus.write((uint16_t)vp.addr, dgus.swapBytes(data)); } -void DGUSTxHandler::Ellapsed(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) { @@ -208,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); } @@ -230,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) { @@ -261,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) { @@ -282,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(uint16_t(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; @@ -310,50 +307,50 @@ 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; int16_t fixed; - for (int i = 0; i < DGUS_LEVEL_GRID_SIZE; i++) { + 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 @@ -376,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((uint16_t)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((uint16_t)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; @@ -411,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: @@ -436,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: @@ -462,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: @@ -488,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.WriteStringPGM((uint16_t)vp.addr, DGUS_MSG_UNDEF, 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.WriteStringPGM((uint16_t)vp.addr, DGUS_MSG_UNDEF, 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.WriteStringPGM((uint16_t)vp.addr, DGUS_MSG_UNDEF, 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) { @@ -588,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 7d1b46773b..c82f4c80da 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h @@ -24,102 +24,102 @@ #include "DGUSDisplay.h" #include "definition/DGUS_VP.h" -#define Swap16(val) ((uint16_t)(((uint16_t)(val) >> 8) | ((uint16_t)(val) << 8))) +#define Swap16(val) (uint16_t((uint16_t(val) >> 8) | (uint16_t(val) << 8))) namespace DGUSTxHandler { - #if ENABLED(SDSUPPORT) - void SetFileControlState(int, bool); - void FileType(DGUS_VP &); - void FileName(DGUS_VP &); - void ScrollIcons(DGUS_VP &); - void SelectedFileName(DGUS_VP &); + #if HAS_MEDIA + 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 Ellapsed(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); + 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_display.Write((uint16_t)vp.addr, Swap16(data)); + const uint16_t data = uint16_t(*(T*)vp.extra); + 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)); + const uint32_t data = uint32_t(*(T*)vp.extra); + 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_Addr.h b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h index 39e97156d0..ec4962e6b2 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h @@ -21,153 +21,154 @@ */ #pragma once -constexpr uint8_t DGUS_LINE_LEN = 32; -constexpr uint8_t DGUS_STATUS_LEN = 32; -constexpr uint8_t DGUS_FILE_COUNT = 5; -constexpr uint8_t DGUS_FILENAME_LEN = 32; -constexpr uint8_t DGUS_ELLAPSED_LEN = 15; -constexpr uint8_t DGUS_LEVEL_GRID_SIZE = 25; -constexpr uint8_t DGUS_MACHINE_LEN = 24; -constexpr uint8_t DGUS_BUILDVOLUME_LEN = 24; -constexpr uint8_t DGUS_VERSION_LEN = 16; -constexpr uint8_t DGUS_PRINTTIME_LEN = 24; -constexpr uint8_t DGUS_LONGESTPRINT_LEN = 24; -constexpr uint8_t DGUS_FILAMENTUSED_LEN = 24; -constexpr uint8_t DGUS_GCODE_LEN = 32; +#define DGUS_LINE_LEN 32 +#define DGUS_STATUS_LEN 32 +#define DGUS_FILE_COUNT 5 +#define DGUS_FILENAME_LEN 32 +#define DGUS_ELAPSED_LEN 15 +#define DGUS_LEVEL_GRID_SIZE 25 +#define DGUS_MACHINE_LEN 24 +#define DGUS_BUILDVOLUME_LEN 24 +#define DGUS_VERSION_LEN 16 +#define DGUS_PRINTTIME_LEN 24 +#define DGUS_LONGESTPRINT_LEN 24 +#define DGUS_FILAMENTUSED_LEN 24 +#define DGUS_GCODE_LEN 32 enum class DGUS_Addr : uint16_t { - MESSAGE_Line1 = 0x1100, // 0x1100 - 0x111F - MESSAGE_Line2 = 0x1120, // 0x1120 - 0x113F - MESSAGE_Line3 = 0x1140, // 0x1140 - 0x115F - MESSAGE_Line4 = 0x1160, // 0x1160 - 0x117F + END = 0, + MESSAGE_Line1 = 0x1100, // 0x1100 - 0x111F + MESSAGE_Line2 = 0x1120, // 0x1120 - 0x113F + MESSAGE_Line3 = 0x1140, // 0x1140 - 0x115F + MESSAGE_Line4 = 0x1160, // 0x1160 - 0x117F // READ-ONLY VARIABLES - SCREENCHANGE = 0x2000, // Screen change request. Data contains target screen in low byte. - SCREENCHANGE_SD = 0x2001, // Only change if SD card present. - SCREENCHANGE_Idle = 0x2002, // Only change if not printing. - SCREENCHANGE_Printing = 0x2003, // Only change if printing. - SD_SelectFile = 0x2004, // Data: file index (0-4) - SD_Scroll = 0x2005, // Data: DGUS_Data::Scroll - SD_Print = 0x2006, - STATUS_Abort = 0x2007, // Popup / Data: DGUS_Data::Popup - STATUS_Pause = 0x2008, // Popup / Data: DGUS_Data::Popup - STATUS_Resume = 0x2009, // Popup / Data: DGUS_Data::Popup - ADJUST_SetFeedrate = 0x200A, // Type: Integer (16 bits signed) - ADJUST_SetFlowrate_CUR = 0x200B, // Type: Integer (16 bits signed) + SCREENCHANGE = 0x2000, // Screen change request. Data contains target screen in low byte. + SCREENCHANGE_SD = 0x2001, // Only change if SD card present. + SCREENCHANGE_Idle = 0x2002, // Only change if not printing. + SCREENCHANGE_Printing = 0x2003, // Only change if printing. + SD_SelectFile = 0x2004, // Data: file index (0-4) + SD_Scroll = 0x2005, // Data: DGUS_Data::Scroll + SD_Print = 0x2006, + STATUS_Abort = 0x2007, // Popup / Data: DGUS_Data::Popup + STATUS_Pause = 0x2008, // Popup / Data: DGUS_Data::Popup + STATUS_Resume = 0x2009, // Popup / Data: DGUS_Data::Popup + ADJUST_SetFeedrate = 0x200A, // Type: Integer (16 bits signed) + ADJUST_SetFlowrate_CUR = 0x200B, // Type: Integer (16 bits signed) #if HAS_MULTI_EXTRUDER - ADJUST_SetFlowrate_E0 = 0x200C, // Type: Integer (16 bits signed) - ADJUST_SetFlowrate_E1 = 0x200D, // Type: Integer (16 bits signed) + ADJUST_SetFlowrate_E0 = 0x200C, // Type: Integer (16 bits signed) + ADJUST_SetFlowrate_E1 = 0x200D, // Type: Integer (16 bits signed) #endif - ADJUST_SetBabystep = 0x200E, // Type: Fixed point, 2 decimals (16 bits signed) - ADJUST_Babystep = 0x200F, // Data: DGUS_Data::Adjust - TEMP_Preset = 0x2010, // Popup / Data: DGUS_Data::TempPreset - TEMP_SetTarget_Bed = 0x2011, // Type: Integer (16 bits signed) - TEMP_SetTarget_H0 = 0x2012, // Type: Integer (16 bits signed) + ADJUST_SetBabystep = 0x200E, // Type: Fixed point, 2 decimals (16 bits signed) + ADJUST_Babystep = 0x200F, // Data: DGUS_Data::Adjust + TEMP_Preset = 0x2010, // Popup / Data: DGUS_Data::TempPreset + TEMP_SetTarget_Bed = 0x2011, // Type: Integer (16 bits signed) + TEMP_SetTarget_H0 = 0x2012, // Type: Integer (16 bits signed) #if HAS_MULTI_HOTEND - TEMP_SetTarget_H1 = 0x2013, // Type: Integer (16 bits signed) + TEMP_SetTarget_H1 = 0x2013, // Type: Integer (16 bits signed) #endif - TEMP_Cool = 0x2014, // Data: DGUS_Data::Heater - STEPPER_Control = 0x2015, // Popup / Data: DGUS_Data::Control - LEVEL_OFFSET_Set = 0x2016, // Type: Fixed point, 2 decimals (16 bits signed) - LEVEL_OFFSET_Step = 0x2017, // Data: DGUS_Data::Adjust - LEVEL_OFFSET_SetStep = 0x2018, // Data: DGUS_Data::StepSize - LEVEL_MANUAL_Point = 0x2019, // Data: point index (1-5) - LEVEL_AUTO_Probe = 0x201A, - LEVEL_AUTO_Disable = 0x201B, - FILAMENT_Select = 0x201C, // Data: DGUS_Data::Extruder - FILAMENT_SetLength = 0x201D, // Type: Integer (16 bits unsigned) - FILAMENT_Move = 0x201E, // Data: DGUS_Data::FilamentMove - MOVE_Home = 0x201F, // Data: DGUS_Data::Axis - MOVE_SetX = 0x2020, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_SetY = 0x2021, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_SetZ = 0x2022, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_Step = 0x2023, // Data: DGUS_Data::MoveDirection - MOVE_SetStep = 0x2024, // Data: DGUS_Data::StepSize - GCODE_Clear = 0x2025, - GCODE_Execute = 0x2026, - EEPROM_Reset = 0x2027, // Popup / Data: DGUS_Data::Popup - SETTINGS2_Extra = 0x2028, // Data: DGUS_Data::Extra - PID_Select = 0x2029, // Data: DGUS_Data::Heater - PID_SetTemp = 0x202A, // Type: Integer (16 bits unsigned) - PID_Run = 0x202B, - POWERLOSS_Abort = 0x202C, // Popup / Data: DGUS_Data::Popup - POWERLOSS_Resume = 0x202D, // Popup / Data: DGUS_Data::Popup - WAIT_Abort = 0x202E, // Popup / Data: DGUS_Data::Popup - WAIT_Continue = 0x202F, + TEMP_Cool = 0x2014, // Data: DGUS_Data::Heater + STEPPER_Control = 0x2015, // Popup / Data: DGUS_Data::Control + LEVEL_OFFSET_Set = 0x2016, // Type: Fixed point, 2 decimals (16 bits signed) + LEVEL_OFFSET_Step = 0x2017, // Data: DGUS_Data::Adjust + LEVEL_OFFSET_SetStep = 0x2018, // Data: DGUS_Data::StepSize + LEVEL_MANUAL_Point = 0x2019, // Data: point index (1-5) + LEVEL_AUTO_Probe = 0x201A, + LEVEL_AUTO_Disable = 0x201B, + FILAMENT_Select = 0x201C, // Data: DGUS_Data::Extruder + FILAMENT_SetLength = 0x201D, // Type: Integer (16 bits unsigned) + FILAMENT_Move = 0x201E, // Data: DGUS_Data::FilamentMove + MOVE_Home = 0x201F, // Data: DGUS_Data::Axis + MOVE_SetX = 0x2020, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_SetY = 0x2021, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_SetZ = 0x2022, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_Step = 0x2023, // Data: DGUS_Data::MoveDirection + MOVE_SetStep = 0x2024, // Data: DGUS_Data::StepSize + GCODE_Clear = 0x2025, + GCODE_Execute = 0x2026, + EEPROM_Reset = 0x2027, // Popup / Data: DGUS_Data::Popup + SETTINGS2_Extra = 0x2028, // Data: DGUS_Data::Extra + PID_Select = 0x2029, // Data: DGUS_Data::Heater + PID_SetTemp = 0x202A, // Type: Integer (16 bits unsigned) + PID_Run = 0x202B, + POWERLOSS_Abort = 0x202C, // Popup / Data: DGUS_Data::Popup + POWERLOSS_Resume = 0x202D, // Popup / Data: DGUS_Data::Popup + WAIT_Abort = 0x202E, // Popup / Data: DGUS_Data::Popup + WAIT_Continue = 0x202F, // WRITE-ONLY VARIABLES - MESSAGE_Status = 0x3000, // 0x3000 - 0x301F - SD_Type = 0x3020, // 0x3020 - 0x3024 / Data: DGUS_Data::SDType - SD_FileName0 = 0x3025, // 0x3025 - 0x3044 - SD_FileName1 = 0x3045, // 0x3045 - 0x3064 - SD_FileName2 = 0x3065, // 0x3065 - 0x3084 - SD_FileName3 = 0x3085, // 0x3085 - 0x30A4 - SD_FileName4 = 0x30A5, // 0x30A5 - 0x30C4 - SD_ScrollIcons = 0x30C5, // Bits: DGUS_Data::ScrollIcon - SD_SelectedFileName = 0x30C6, // 0x30C6 - 0x30E5 - STATUS_PositionZ = 0x30E6, // Type: Fixed point, 1 decimal (16 bits signed) - STATUS_Ellapsed = 0x30E7, // 0x30E7 - 0x30F5 - STATUS_Percent = 0x30F6, // Type: Integer (16 bits unsigned) - STATUS_Icons = 0x30F7, // Bits: DGUS_Data::StatusIcon - ADJUST_Feedrate = 0x30F8, // Type: Integer (16 bits signed) - ADJUST_Flowrate_CUR = 0x30F9, // Type: Integer (16 bits signed) + MESSAGE_Status = 0x3000, // 0x3000 - 0x301F + SD_Type = 0x3020, // 0x3020 - 0x3024 / Data: DGUS_Data::SDType + SD_FileName0 = 0x3025, // 0x3025 - 0x3044 + SD_FileName1 = 0x3045, // 0x3045 - 0x3064 + SD_FileName2 = 0x3065, // 0x3065 - 0x3084 + SD_FileName3 = 0x3085, // 0x3085 - 0x30A4 + SD_FileName4 = 0x30A5, // 0x30A5 - 0x30C4 + SD_ScrollIcons = 0x30C5, // Bits: DGUS_Data::ScrollIcon + SD_SelectedFileName = 0x30C6, // 0x30C6 - 0x30E5 + STATUS_PositionZ = 0x30E6, // Type: Fixed point, 2 decimal (32 bits signed) + STATUS_Elapsed = 0x30E8, // 0x30E8 - 0x30F6 + STATUS_Percent = 0x30F7, // Type: Integer (16 bits unsigned) + ADJUST_Feedrate = 0x30F8, // Type: Integer (16 bits signed) + ADJUST_Flowrate_CUR = 0x30F9, // Type: Integer (16 bits signed) #if HAS_MULTI_EXTRUDER - ADJUST_Flowrate_E0 = 0x30FA, // Type: Integer (16 bits signed) - ADJUST_Flowrate_E1 = 0x30FB, // Type: Integer (16 bits signed) + ADJUST_Flowrate_E0 = 0x30FA, // Type: Integer (16 bits signed) + ADJUST_Flowrate_E1 = 0x30FB, // Type: Integer (16 bits signed) #endif - TEMP_Current_Bed = 0x30FC, // Type: Integer (16 bits signed) - TEMP_Target_Bed = 0x30FD, // Type: Integer (16 bits signed) - TEMP_Max_Bed = 0x30FE, // Type: Integer (16 bits unsigned) - TEMP_Current_H0 = 0x30FF, // Type: Integer (16 bits signed) - TEMP_Target_H0 = 0x3100, // Type: Integer (16 bits signed) - TEMP_Max_H0 = 0x3101, // Type: Integer (16 bits unsigned) + TEMP_Current_Bed = 0x30FC, // Type: Integer (16 bits signed) + TEMP_Target_Bed = 0x30FD, // Type: Integer (16 bits signed) + TEMP_Max_Bed = 0x30FE, // Type: Integer (16 bits unsigned) + TEMP_Current_H0 = 0x30FF, // Type: Fixed point, 1 decimal (16 bits signed) + TEMP_Target_H0 = 0x3100, // Type: Integer (16 bits signed) + TEMP_Max_H0 = 0x3101, // Type: Integer (16 bits unsigned) #if HAS_MULTI_HOTEND - TEMP_Current_H1 = 0x3102, // Type: Integer (16 bits signed) - TEMP_Target_H1 = 0x3103, // Type: Integer (16 bits signed) - TEMP_Max_H1 = 0x3104, // Type: Integer (16 bits unsigned) + TEMP_Current_H1 = 0x3102, // Type: Fixed point, 1 decimal (16 bits signed) + TEMP_Target_H1 = 0x3103, // Type: Integer (16 bits signed) + TEMP_Max_H1 = 0x3104, // Type: Integer (16 bits unsigned) #endif - STEPPER_Status = 0x3105, // Data: DGUS_Data::Status - LEVEL_OFFSET_Current = 0x3106, // Type: Fixed point, 2 decimals (16 bits signed) - LEVEL_OFFSET_StepIcons = 0x3107, // Bits: DGUS_Data::StepIcon - LEVEL_AUTO_DisableIcon = 0x3108, // Data: DGUS_Data::Status - LEVEL_AUTO_Grid = 0x3109, // 0x3109 - 0x3121 / Type: Fixed point, 3 decimals (16 bits signed) - LEVEL_PROBING_Icons1 = 0x3122, // Type: Integer (16 bits unsigned) / Each bit represents a grid point - LEVEL_PROBING_Icons2 = 0x3123, // Type: Integer (16 bits unsigned) / Each bit represents a grid point - FILAMENT_ExtruderIcons = 0x3124, // Data: DGUS_Data::ExtruderIcon - FILAMENT_Length = 0x3125, // Type: Integer (16 bits unsigned) - MOVE_CurrentX = 0x3126, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_CurrentY = 0x3127, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_CurrentZ = 0x3128, // Type: Fixed point, 1 decimal (16 bits signed) - MOVE_StepIcons = 0x3129, // Bits: DGUS_Data::StepIcon - SETTINGS2_BLTouch = 0x312A, // Data: DGUS_Data::Status - PID_HeaterIcons = 0x312B, // Data: DGUS_Data::HeaterIcon - PID_Temp = 0x312C, // Type: Integer (16 bits unsigned) - PID_Kp = 0x312D, // Type: Fixed point, 2 decimals (32 bits signed) - PID_Ki = 0x312F, // Type: Fixed point, 2 decimals (32 bits signed) - PID_Kd = 0x3131, // Type: Fixed point, 2 decimals (32 bits signed) - INFOS_Machine = 0x3133, // 0x3133 - 0x314A - INFOS_BuildVolume = 0x314B, // 0x314B - 0x3162 - INFOS_Version = 0x3163, // 0x3163 - 0x3172 - INFOS_TotalPrints = 0x3173, // Type: Integer (16 bits unsigned) - INFOS_FinishedPrints = 0x3174, // Type: Integer (16 bits unsigned) - INFOS_PrintTime = 0x3175, // 0x3175 - 0x318C - INFOS_LongestPrint = 0x318D, // 0x318D - 0x31A4 - INFOS_FilamentUsed = 0x31A5, // 0x31A5 - 0x31BC - WAIT_Icons = 0x31BD, // Bits: DGUS_Data::WaitIcon + STEPPER_Status = 0x3105, // Data: DGUS_Data::Status + LEVEL_OFFSET_Current = 0x3106, // Type: Fixed point, 2 decimals (16 bits signed) + LEVEL_OFFSET_StepIcons = 0x3107, // Bits: DGUS_Data::StepIcon + LEVEL_AUTO_DisableIcon = 0x3108, // Data: DGUS_Data::Status + LEVEL_AUTO_Grid = 0x3109, // 0x3109 - 0x3121 / Type: Fixed point, 3 decimals (16 bits signed) + LEVEL_PROBING_Icons1 = 0x3122, // Type: Integer (16 bits unsigned) / Each bit represents a grid point + LEVEL_PROBING_Icons2 = 0x3123, // Type: Integer (16 bits unsigned) / Each bit represents a grid point + FILAMENT_ExtruderIcons = 0x3124, // Data: DGUS_Data::ExtruderIcon + FILAMENT_Length = 0x3125, // Type: Integer (16 bits unsigned) + MOVE_CurrentX = 0x3126, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_CurrentY = 0x3127, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_CurrentZ = 0x3128, // Type: Fixed point, 1 decimal (16 bits signed) + MOVE_StepIcons = 0x3129, // Bits: DGUS_Data::StepIcon + SETTINGS2_BLTouch = 0x312A, // Data: DGUS_Data::Status + PID_HeaterIcons = 0x312B, // Data: DGUS_Data::HeaterIcon + PID_Temp = 0x312C, // Type: Integer (16 bits unsigned) + PID_Kp = 0x312D, // Type: Fixed point, 2 decimals (32 bits signed) + PID_Ki = 0x312F, // Type: Fixed point, 2 decimals (32 bits signed) + PID_Kd = 0x3131, // Type: Fixed point, 2 decimals (32 bits signed) + INFOS_Machine = 0x3133, // 0x3133 - 0x314A + INFOS_BuildVolume = 0x314B, // 0x314B - 0x3162 + INFOS_Version = 0x3163, // 0x3163 - 0x3172 + INFOS_TotalPrints = 0x3173, // Type: Integer (16 bits unsigned) + INFOS_FinishedPrints = 0x3174, // Type: Integer (16 bits unsigned) + INFOS_PrintTime = 0x3175, // 0x3175 - 0x318C + INFOS_LongestPrint = 0x318D, // 0x318D - 0x31A4 + INFOS_FilamentUsed = 0x31A5, // 0x31A5 - 0x31BC + WAIT_Icons = 0x31BD, // Bits: DGUS_Data::WaitIcon + STATUS_Icons = 0x31BE, // Bits: DGUS_Data::StatusIcon // READ-WRITE VARIABLES - FAN0_Speed = 0x4000, // Type: Integer (16 bits unsigned) / Data: fan speed as percent (0-100) - GCODE_Data = 0x4001, // 0x4001 - 0x4020 - PID_Cycles = 0x4021, // Type: Integer (16 bits unsigned) - VOLUME_Level = 0x4022, // Type: Integer (16 bits unsigned) / Data: volume as percent (0-100) - BRIGHTNESS_Level = 0x4023, // Type: Integer (16 bits unsigned) / Data: brightness as percent (0-100) + FAN0_Speed = 0x4000, // Type: Integer (16 bits unsigned) / Data: fan speed as percent (0-100) + GCODE_Data = 0x4001, // 0x4001 - 0x4020 + PID_Cycles = 0x4021, // Type: Integer (16 bits unsigned) + VOLUME_Level = 0x4022, // Type: Integer (16 bits unsigned) / Data: volume as percent (0-100) + BRIGHTNESS_Level = 0x4023, // Type: Integer (16 bits unsigned) / Data: brightness as percent (0-100) // SPECIAL CASES - STATUS_Percent_Complete = 0x5000, // Same as STATUS_Percent, but always 100% - INFOS_Debug = 0x5001, + STATUS_Percent_Complete = 0x5000, // Same as STATUS_Percent, but always 100% + INFOS_Debug = 0x5001, }; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Constants.h b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Constants.h index 846fd15942..dda3c888fe 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Constants.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Constants.h @@ -25,7 +25,9 @@ #include "DGUS_Addr.h" -static_assert((DGUS_LEVEL_GRID_SIZE == GRID_MAX_POINTS_X * GRID_MAX_POINTS_Y), "DGUS_LEVEL_GRID_SIZE incompatible with current mesh."); +#if DGUS_LEVEL_GRID_SIZE != GRID_MAX_POINTS + #error "DGUS_LEVEL_GRID_SIZE is incompatible with current mesh." +#endif #ifndef DGUS_DEFAULT_VOLUME #define DGUS_DEFAULT_VOLUME 50 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 0a738223ce..546ebb4666 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 855c0bccfa..32e95f2508 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp @@ -33,10 +33,10 @@ 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 ENABLED(SDSUPPORT) +#if HAS_MEDIA constexpr DGUS_Addr LIST_PRINT[] PROGMEM = { DGUS_Addr::SD_Type, DGUS_Addr::SD_FileName0, @@ -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 @@ -56,10 +56,10 @@ constexpr DGUS_Addr LIST_PRINT_STATUS[] PROGMEM = { DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, DGUS_Addr::STATUS_PositionZ, - DGUS_Addr::STATUS_Ellapsed, + 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 = { @@ -78,9 +78,9 @@ constexpr DGUS_Addr LIST_PRINT_FINISHED[] PROGMEM = { DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, DGUS_Addr::STATUS_PositionZ, - DGUS_Addr::STATUS_Ellapsed, + 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,45 +196,43 @@ 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) \ - { .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), - #if ENABLED(SDSUPPORT) - MAP_HELPER(DGUS_Screen::PRINT, LIST_PRINT), + MAP_HELPER(DGUS_ScreenID::HOME, LIST_HOME), + #if HAS_MEDIA + 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_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_Screen)0, nullptr) + 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 1e481ef3cc..dea39ed145 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 a9f13b5ee5..502ac2a6af 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 ENABLED(SDSUPPORT) - SETUP_HELPER(DGUS_Screen::PRINT, &DGUSSetupHandler::Print), + #if HAS_MEDIA + 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_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_Screen)0, nullptr) + 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 93df5ad90a..e740997ad4 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 faa6a0d235..172cf98fe6 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp @@ -75,249 +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 ENABLED(SDSUPPORT) - 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), + #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), #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 ENABLED(SDSUPPORT) - VP_HELPER_TX(DGUS_Addr::SD_Type, &DGUSTxHandler::FileType), + #if HAS_MEDIA + 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), - VP_HELPER(DGUS_Addr::STATUS_Ellapsed, - DGUS_ELLAPSED_LEN, + &DGUSTxHandler::zPosition), + VP_HELPER(DGUS_Addr::STATUS_Elapsed, + DGUS_ELAPSED_LEN, VPFLAG_AUTOUPLOAD, nullptr, nullptr, - &DGUSTxHandler::Ellapsed), + &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::ExtraToInteger), + (&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::ExtraToInteger), + (&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::ExtraToInteger), + (&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 @@ -325,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 1ff22da268..68e405776e 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_(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, 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,52 +87,60 @@ 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(bool success) { - dgus_screen_handler.ConfigurationStoreWritten(success); + void onSettingsStored(const bool success) { + screen.configurationStoreWritten(success); } - void onSettingsLoaded(bool success) { - dgus_screen_handler.ConfigurationStoreRead(success); + void onSettingsLoaded(const bool success) { + screen.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); + 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 #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 - 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/example/example.cpp b/Marlin/src/lcd/extui/example/example.cpp index 27269a9bee..e78e4b9679 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" @@ -88,20 +88,22 @@ namespace ExtUI { // Called after loading or resetting stored settings } - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { // Called after the entire EEPROM has been written, // whether successful or not. } - void onSettingsLoaded(bool success) { + void onSettingsLoaded(const bool success) { // Called after the entire EEPROM has been read, // 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 } @@ -112,6 +114,12 @@ namespace ExtUI { #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 } 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 a23ad6e37e..c3a4118f20 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 b4165a742a..99e875712a 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 eb76bb9b2b..78b1652c50 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,15 +24,15 @@ #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) - SdFile root, file; + #if HAS_MEDIA + MediaFile root, file; #endif public: 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 edae2cb042..8de81a98ae 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/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 4af38dcb9d..9b67f0e3c8 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/cocoa_press/advanced_settings_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/advanced_settings_menu.cpp index 00cdf76331..f607dc102d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/advanced_settings_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/advanced_settings_menu.cpp @@ -58,8 +58,8 @@ void AdvancedSettingsMenu::onRedraw(draw_mode_t what) { .enabled(ENABLED(HAS_TRINAMIC_CONFIG)) .tag(3) .button(TMC_CURRENT_POS, GET_TEXT_F(MSG_TMC_CURRENT)) .enabled(ENABLED(LIN_ADVANCE)) - .tag(4) .button(LIN_ADVANCE_POS, GET_TEXT_F(MSG_LINEAR_ADVANCE)) - .tag(5) .button(VELOCITY_POS, GET_TEXT_F(MSG_MAX_SPEED)) + .tag(4) .button(LIN_ADVANCE_POS, GET_TEXT_F(MSG_LINEAR_ADVANCE)) + .tag(5) .button(VELOCITY_POS, GET_TEXT_F(MSG_MAX_SPEED_NO_UNITS)) .tag(6) .button(ACCELERATION_POS, GET_TEXT_F(MSG_ACCELERATION)) .tag(7) .button(JERK_POS, GET_TEXT_F(TERN(HAS_JUNCTION_DEVIATION, MSG_JUNCTION_DEVIATION, MSG_JERK))) .tag(8) .button(ENDSTOPS_POS, GET_TEXT_F(MSG_LCD_ENDSTOPS)) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/cocoa_press_ui.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/cocoa_press_ui.h index 6a02228925..5704371131 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/cocoa_press_ui.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/cocoa_press_ui.h @@ -1,4 +1,3 @@ - /**************************************************************************** * 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 * @@ -28,33 +27,26 @@ constexpr float x_max = 480.000000; constexpr float y_min = 0.000000; constexpr float y_max = 272.000000; -const PROGMEM uint16_t syringe_outline[] = {0xED96, 0x14F0, 0xE65D, 0x10E9, 0xDED2, 0x0F9C, 0xD74B, 0x110E, 0xD01B, 0x1543, 0xCE80, 0x1836, 0xCE0A, 0x1C3A, 0xCE0F, 0x27AD, 0xCF0A, 0x2BD3, 0xD127, 0x2E5B, 0xD2A1, 0x2FF0, 0xD2A2, 0x9FC9, 0xD407, 0xA97A, 0xD7B9, 0xB10C, 0xD7BF, 0xBB58, 0xD978, 0xC2BE, 0xDD55, 0xC6EB, 0xDD58, 0xD159, 0xDE3B, 0xD3A8, 0xDFCF, 0xD3AF, 0xE0B8, 0xD04C, 0xE0B8, 0xC6EB, 0xE4A7, 0xC299, 0xE652, 0xBAF6, 0xE652, 0xB10C, 0xEA2E, 0xA8EA, 0xEB6C, 0x9E86, 0xEB6C, 0x2F58, 0xEF3C, 0x2B4E, 0xF003, 0x2583, 0xEFFD, 0x1AC2, 0xED96, 0x14F0, 0xED96, 0x14F0}; -const PROGMEM uint16_t syringe_fluid[] = {0xDE73, 0x2512, 0xDA0C, 0x261D, 0xD5B8, 0x29A0, 0xD4AE, 0x2D87, 0xD4AE, 0x9F60, 0xD585, 0xA63B, 0xDE44, 0xA9DE, 0xE32A, 0xA942, 0xE7E3, 0xA6A5, 0xE930, 0xA342, 0xE95D, 0x9C1D, 0xE95B, 0x31B8, 0xE955, 0x2B63, 0xE867, 0x2A67, 0xE790, 0x28DE, 0xE342, 0x25CB, 0xDE73, 0x2512}; -const PROGMEM uint16_t syringe[] = {0xED91, 0x1502, 0xE658, 0x10FB, 0xDECE, 0x0FAE, 0xD746, 0x1120, 0xD016, 0x1555, 0xCE7B, 0x1848, 0xCE05, 0x1C4D, 0xCE0A, 0x27BF, 0xCF05, 0x2BE5, 0xD122, 0x2E6E, 0xD29C, 0x3002, 0xD29D, 0x9FDB, 0xD402, 0xA98C, 0xD7B4, 0xB11F, 0xD7BA, 0xBB6A, 0xD973, 0xC2D1, 0xDD50, 0xC6FD, 0xDD53, 0xD16C, 0xDE36, 0xD3BA, 0xDFCA, 0xD3C2, 0xE0B3, 0xD05E, 0xE0B3, 0xC6FD, 0xE4A2, 0xC2AB, 0xE64D, 0xBB09, 0xE64D, 0xB11F, 0xEA29, 0xA8FC, 0xEB67, 0x9E98, 0xEB67, 0x2F6B, 0xEF37, 0x2B60, 0xEFFE, 0x2595, 0xEFF8, 0x1AD5, 0xED91, 0x1502, 0xED91, 0x1502, 0xFFFF, 0xD1CF, 0x1A7E, 0xD84F, 0x16DB, 0xDF19, 0x15A9, 0xE5E0, 0x16EA, 0xEC5B, 0x1AA4, 0xEC9D, 0x1D34, 0xEC9D, 0x20CC, 0xE5F1, 0x1D41, 0xDF02, 0x1C12, 0xD812, 0x1D41, 0xD166, 0x20CC, 0xD16C, 0x1B45, 0xD1CF, 0x1A7E, 0xFFFF, 0xE3BD, 0xACFD, 0xDE8E, 0xAF4F, 0xD988, 0xAC0F, 0xD7CC, 0xA8CD, 0xDD1C, 0xAAA9, 0xE287, 0xAA5B, 0xE655, 0xA8BE, 0xE3BD, 0xACFD, 0xFFFF, 0xE802, 0x2DC5, 0xE809, 0x343C, 0xE808, 0x9FC8, 0xE7E3, 0xA296, 0xE70D, 0xA4B1, 0xE2C9, 0xA70E, 0xDE4E, 0xA790, 0xD6A1, 0xA457, 0xD5FF, 0x9F2B, 0xD5FF, 0x2DFD, 0xD6B2, 0x2B72, 0xDA78, 0x2861, 0xDE9D, 0x276F, 0xE300, 0x2824, 0xE70D, 0x2B13, 0xE7FF, 0x2DB6, 0xE800, 0x2DC5, 0xE802, 0x2DC5, 0xFFFF, 0xE2ED, 0xBA8B, 0xE1CC, 0xBF52, 0xDF1C, 0xC165, 0xDC64, 0xBF99, 0xDB1B, 0xBAFF, 0xDB19, 0xB433, 0xDF04, 0xB552, 0xE2EF, 0xB438, 0xE2ED, 0xBA8B, 0xFFFF, 0xEC09, 0x2893, 0xE925, 0x2A08, 0xE57D, 0x261D, 0xE149, 0x246F, 0xDBDE, 0x24A0, 0xD6BC, 0x2795, 0xD484, 0x2A46, 0xD1C0, 0x2853, 0xD166, 0x251E, 0xD80D, 0x2151, 0xDF02, 0x200C, 0xE5F6, 0x2151, 0xEC9D, 0x251E, 0xEC09, 0x2893}; -const PROGMEM uint16_t park_btn[] = {0x0AAA, 0x0E1E, 0x57FF, 0x0E1E, 0x57FF, 0x33C3, 0x0AAA, 0x33C3, 0x0AAA, 0x0E1E}; -const PROGMEM uint16_t pause_btn[] = {0x47FF, 0xCA58, 0x7FFF, 0xCA58, 0x7FFF, 0xEFFE, 0x47FF, 0xEFFE, 0x47FF, 0xCA58}; -const PROGMEM uint16_t load_chocolate_btn[] = {0x0AAA, 0x3D2C, 0x57FF, 0x3D2C, 0x57FF, 0x62D2, 0x0AAA, 0x62D2, 0x0AAA, 0x3D2C}; -const PROGMEM uint16_t preheat_chocolate_btn[] = {0x0AAA, 0x6C3B, 0x57FF, 0x6C3B, 0x57FF, 0x91E0, 0x0AAA, 0x91E0, 0x0AAA, 0x6C3B}; -const PROGMEM uint16_t menu_btn[] = {0x0AAA, 0x9B4A, 0x57FF, 0x9B4A, 0x57FF, 0xC0EF, 0x0AAA, 0xC0EF, 0x0AAA, 0x9B4A}; -const PROGMEM uint16_t print_btn[] = {0x0AAA, 0xCA58, 0x42AA, 0xCA58, 0x42AA, 0xEFFE, 0x0AAA, 0xEFFE, 0x0AAA, 0xCA58}; -const PROGMEM uint16_t stop_btn[] = {0x8554, 0xCA58, 0xBD53, 0xCA58, 0xBD53, 0xEFFE, 0x8554, 0xEFFE, 0x8554, 0xCA58}; -const PROGMEM uint16_t print_time_hms[] = {0x62A9, 0xA968, 0x8FFE, 0xA968, 0x8FFE, 0xC0EF, 0x62A9, 0xC0EF, 0x62A9, 0xA968}; -const PROGMEM uint16_t print_time_percent[] = {0x8FFE, 0xA968, 0xBD53, 0xA968, 0xBD53, 0xC0EF, 0x8FFE, 0xC0EF, 0x8FFE, 0xA968}; -const PROGMEM uint16_t print_time_label[] = {0x62A9, 0x91E0, 0xBD53, 0x91E0, 0xBD53, 0xA986, 0x62A9, 0xA986, 0x62A9, 0x91E0}; -const PROGMEM uint16_t h3_temp[] = {0x62A9, 0x75A4, 0x8FFE, 0x75A4, 0x8FFE, 0x8D2C, 0x62A9, 0x8D2C, 0x62A9, 0x75A4}; -const PROGMEM uint16_t h3_label[] = {0x62A9, 0x5E1D, 0x8FFE, 0x5E1D, 0x8FFE, 0x75A4, 0x62A9, 0x75A4, 0x62A9, 0x5E1D}; -const PROGMEM uint16_t chocolate_label[] = {0x62A9, 0x12D2, 0xBD53, 0x12D2, 0xBD53, 0x2A5A, 0x62A9, 0x2A5A, 0x62A9, 0x12D2}; -const PROGMEM uint16_t h0_label[] = {0x62A9, 0x2A5A, 0x8FFE, 0x2A5A, 0x8FFE, 0x41E1, 0x62A9, 0x41E1, 0x62A9, 0x2A5A}; -const PROGMEM uint16_t h0_temp[] = {0x62A9, 0x41E1, 0x8FFE, 0x41E1, 0x8FFE, 0x5968, 0x62A9, 0x5968, 0x62A9, 0x41E1}; -const PROGMEM uint16_t h1_label[] = {0x8FFE, 0x2A5A, 0xBD53, 0x2A5A, 0xBD53, 0x41E1, 0x8FFE, 0x41E1, 0x8FFE, 0x2A5A}; -const PROGMEM uint16_t h1_temp[] = {0x8FFE, 0x41E1, 0xBD53, 0x41E1, 0xBD53, 0x5968, 0x8FFE, 0x5968, 0x8FFE, 0x41E1}; -const PROGMEM uint16_t h2_label[] = {0x8FFE, 0x5E1D, 0xBD53, 0x5E1D, 0xBD53, 0x75A4, 0x8FFE, 0x75A4, 0x8FFE, 0x5E1D}; -const PROGMEM uint16_t h2_temp[] = {0x8FFE, 0x75A4, 0xBD53, 0x75A4, 0xBD53, 0x8D2C, 0x8FFE, 0x8D2C, 0x8FFE, 0x75A4}; -const PROGMEM uint16_t extrude_btn[] = {0xC859, 0xDD2B, 0xF5AE, 0xDD2B, 0xF5AE, 0xEFFE, 0xC859, 0xEFFE, 0xC859, 0xDD2B}; -const PROGMEM uint16_t load_screen_extrude[] = {0x25FB, 0x89AE, 0x2F58, 0x89AE, 0x2F58, 0xAAF6, 0x3406, 0xAAF6, 0x2AAA, 0xBB9A, 0x214D, 0xAAF6, 0x25FB, 0xAAF6, 0x25FB, 0x89AE}; -const PROGMEM uint16_t load_screen_retract[] = {0x25FC, 0x790A, 0x2F58, 0x790A, 0x2F58, 0x57C2, 0x3406, 0x57C2, 0x2AAA, 0x471D, 0x214D, 0x57C2, 0x25FC, 0x57C2, 0x25FC, 0x790A}; -const PROGMEM uint16_t load_screen_back_btn[] = {0x1555, 0xCA58, 0xC553, 0xCA58, 0xC553, 0xEFFE, 0x1555, 0xEFFE, 0x1555, 0xCA58}; -const PROGMEM uint16_t load_screen_unload_btn[] = {0x4AAA, 0x8EBD, 0xC553, 0x8EBD, 0xC553, 0xB463, 0x4AAA, 0xB463, 0x4AAA, 0x8EBD}; -const PROGMEM uint16_t load_screen_load_btn[] = {0x4AAA, 0x5322, 0xC553, 0x5322, 0xC553, 0x78C7, 0x4AAA, 0x78C7, 0x4AAA, 0x5322}; -const PROGMEM uint16_t load_sreen_title[] = {0x4AAA, 0x1787, 0xC553, 0x1787, 0xC553, 0x3D2C, 0x4AAA, 0x3D2C, 0x4AAA, 0x1787}; -const PROGMEM uint16_t load_screen_increment[] = {0x1555, 0x2E1D, 0x3FFF, 0x2E1D, 0x3FFF, 0x3D2C, 0x1555, 0x3D2C, 0x1555, 0x2E1D}; +const PROGMEM uint16_t menu_btn[] = {0x0AAA, 0x0E1E, 0x6D54, 0x0E1E, 0x6D54, 0x2F0E, 0x0AAA, 0x2F0E, 0x0AAA, 0x0E1E}; +const PROGMEM uint16_t print_btn[] = {0x47FF, 0xCF0D, 0x7FFF, 0xCF0D, 0x7FFF, 0xEFFE, 0x47FF, 0xEFFE, 0x47FF, 0xCF0D}; +const PROGMEM uint16_t load_chocolate_btn[] = {0x0AAA, 0x3878, 0x6D54, 0x3878, 0x6D54, 0x5968, 0x0AAA, 0x5968, 0x0AAA, 0x3878}; +const PROGMEM uint16_t extrude_btn[] = {0x0AAA, 0x5E1D, 0x6D54, 0x5E1D, 0x6D54, 0x7F0E, 0x0AAA, 0x7F0E, 0x0AAA, 0x5E1D}; +const PROGMEM uint16_t preheat_chocolate_btn[] = {0x0AAA, 0x83C2, 0x6D54, 0x83C2, 0x6D54, 0xA4B3, 0x0AAA, 0xA4B3, 0x0AAA, 0x83C2}; +const PROGMEM uint16_t media_btn[] = {0x0AAA, 0xCF0D, 0x42AA, 0xCF0D, 0x42AA, 0xEFFE, 0x0AAA, 0xEFFE, 0x0AAA, 0xCF0D}; +const PROGMEM uint16_t pause_btn[] = {0x8554, 0xCF0D, 0xBD53, 0xCF0D, 0xBD53, 0xEFFE, 0x8554, 0xEFFE, 0x8554, 0xCF0D}; +const PROGMEM uint16_t print_time_hms[] = {0xC59E, 0xAEA0, 0xF510, 0xAEA0, 0xF510, 0xC52D, 0xC59E, 0xC52D, 0xC59E, 0xAEA0}; +const PROGMEM uint16_t file_name[] = {0x0B0E, 0xAECD, 0xBCEF, 0xAECD, 0xBCEF, 0xC4AB, 0x0B0E, 0xC4AB, 0x0B0E, 0xAECD}; +const PROGMEM uint16_t chocolate_label[] = {0x75C1, 0x1369, 0xF4FE, 0x1369, 0xF4FE, 0x2AB1, 0x75C1, 0x2AB1, 0x75C1, 0x1369}; +const PROGMEM uint16_t h0_label[] = {0x8304, 0x4BEB, 0xB271, 0x4BEB, 0xB271, 0x63B0, 0x8304, 0x63B0, 0x8304, 0x4BEB}; +const PROGMEM uint16_t h0_temp[] = {0x8304, 0x7190, 0xB271, 0x7190, 0xB271, 0x8955, 0x8304, 0x8955, 0x8304, 0x7190}; +const PROGMEM uint16_t h1_label[] = {0xBB04, 0x4BEB, 0xEA71, 0x4BEB, 0xEA71, 0x63B0, 0xBB04, 0x63B0, 0xBB04, 0x4BEB}; +const PROGMEM uint16_t h1_temp[] = {0xBB04, 0x7190, 0xEA71, 0x7190, 0xEA71, 0x8956, 0xBB04, 0x8956, 0xBB04, 0x7190}; +const PROGMEM uint16_t stop_btn[] = {0xC2A9, 0xCF0D, 0xF553, 0xCF0D, 0xF553, 0xEFFE, 0xC2A9, 0xEFFE, 0xC2A9, 0xCF0D}; +const PROGMEM uint16_t load_screen_extrude[] = {0x382C, 0x8B02, 0x4188, 0x8B02, 0x4188, 0xAC4A, 0x4637, 0xAC4A, 0x3CDA, 0xBCEE, 0x337D, 0xAC4A, 0x382C, 0xAC4A, 0x382C, 0x8B02}; +const PROGMEM uint16_t load_screen_retract[] = {0x382C, 0x7A5D, 0x4188, 0x7A5D, 0x4188, 0x5915, 0x4637, 0x5915, 0x3CDA, 0x4871, 0x337E, 0x5915, 0x382C, 0x5915, 0x382C, 0x7A5D}; +const PROGMEM uint16_t load_screen_back_btn[] = {0x1555, 0xCA58, 0xEAA8, 0xCA58, 0xEAA8, 0xEFFE, 0x1555, 0xEFFE, 0x1555, 0xCA58}; +const PROGMEM uint16_t load_screen_unload_btn[] = {0x67FF, 0x70F0, 0xEAA8, 0x70F0, 0xEAA8, 0x9695, 0x67FF, 0x9695, 0x67FF, 0x70F0}; +const PROGMEM uint16_t load_screen_start_stop_btn[] = {0x67FF, 0x9B4A, 0xEAA8, 0x9B4A, 0xEAA8, 0xC0EF, 0x67FF, 0xC0EF, 0x67FF, 0x9B4A}; +const PROGMEM uint16_t load_screen_load_btn[] = {0x67FF, 0x4696, 0xEAA8, 0x4696, 0xEAA8, 0x6C3B, 0x67FF, 0x6C3B, 0x67FF, 0x4696}; +const PROGMEM uint16_t load_screen_continuous[] = {0x67FF, 0x1787, 0xEAA8, 0x1787, 0xEAA8, 0x3D2C, 0x67FF, 0x3D2C, 0x67FF, 0x1787}; +const PROGMEM uint16_t load_screen_increment[] = {0x1555, 0x1787, 0x62A9, 0x1787, 0x62A9, 0x3D2C, 0x1555, 0x3D2C, 0x1555, 0x1787}; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.cpp new file mode 100644 index 0000000000..ca98e7c9b6 --- /dev/null +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.cpp @@ -0,0 +1,55 @@ +/************************************** + * confirm_start_print_dialog_box.cpp * + **************************************/ + +/**************************************************************************** + * Written By Mark Pelletier 2017 - Aleph Objects, Inc. * + * Written By Marcio Teixeira 2018 - Aleph Objects, Inc. * + * * + * 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. * + * * + * To view a copy of the GNU General Public License, go to the following * + * location: . * + ****************************************************************************/ + +#include "../config.h" +#include "../screens.h" + +#ifdef COCOA_CONFIRM_START_PRINT + +using namespace FTDI; +using namespace Theme; +using namespace ExtUI; + +void ConfirmStartPrintDialogBox::onRedraw(draw_mode_t) { + FileList files; + const char *filename = files.filename(); + char buffer[strlen_P(GET_TEXT(MSG_START_PRINT_CONFIRMATION)) + strlen(filename) + 1]; + sprintf_P(buffer, GET_TEXT(MSG_START_PRINT_CONFIRMATION), filename); + drawMessage((const char *)buffer); + drawYesNoButtons(); +} + +bool ConfirmStartPrintDialogBox::onTouchEnd(uint8_t tag) { + switch (tag) { + case 1: { + FileList files; + printFile(files.shortFilename()); + StatusScreen::setStatusMessage(GET_TEXT_F(MSG_PRINT_STARTING)); + GOTO_SCREEN(StatusScreen); + return true; + } + case 2: GOTO_PREVIOUS(); return true; + default: return false; + } +} + +#endif // COCOA_CONFIRM_START_PRINT diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.h new file mode 100644 index 0000000000..38cb5c2774 --- /dev/null +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/confirm_start_print_dialog_box.h @@ -0,0 +1,32 @@ +/************************************ + * confirm_start_print_dialog_box.h * + ************************************/ + +/**************************************************************************** + * Written By Mark Pelletier 2017 - Aleph Objects, Inc. * + * Written By Marcio Teixeira 2018 - Aleph Objects, Inc. * + * * + * 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. * + * * + * To view a copy of the GNU General Public License, go to the following * + * location: . * + ****************************************************************************/ + +#pragma once + +#define COCOA_CONFIRM_START_PRINT +#define COCOA_CONFIRM_START_PRINT_CLASS ConfirmStartPrintDialogBox + +class ConfirmStartPrintDialogBox : public DialogBoxBaseClass, public UncachedScreen { + public: + static void onRedraw(draw_mode_t); + static bool onTouchEnd(uint8_t); +}; 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 new file mode 100644 index 0000000000..f058b40e03 --- /dev/null +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.cpp @@ -0,0 +1,289 @@ +/******************** + * files_screen.cpp * + ********************/ + +/**************************************************************************** + * Written By Mark Pelletier 2017 - Aleph Objects, Inc. * + * Written By Marcio Teixeira 2018 - Aleph Objects, Inc. * + * * + * 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. * + * * + * To view a copy of the GNU General Public License, go to the following * + * location: . * + ****************************************************************************/ + +#include "../config.h" +#include "../screens.h" +#include "../screen_data.h" + +#ifdef COCOA_FILES_SCREEN + +#if ENABLED(TOUCH_UI_PORTRAIT) + #define GRID_COLS 6 + #define GRID_ROWS 15 + #define FILES_PER_PAGE 11 + #define PREV_DIR LEFT + #define NEXT_DIR RIGHT + + #define PREV_POS BTN_POS(1,1), BTN_SIZE(1,2) + #define HEAD_POS BTN_POS(2,1), BTN_SIZE(4,2) + #define NEXT_POS BTN_POS(6,1), BTN_SIZE(1,2) + #define LIST_POS BTN_POS(1,3), BTN_SIZE(6,FILES_PER_PAGE) + #define BTN1_POS BTN_POS(1,14), BTN_SIZE(3,2) + #define BTN2_POS BTN_POS(4,14), BTN_SIZE(3,2) +#else + #define GRID_COLS 12 + #define GRID_ROWS 8 + #define FILES_PER_PAGE 6 + #define PREV_DIR UP + #define NEXT_DIR DOWN + + #define PREV_POS BTN_POS(12,2), BTN_SIZE(1,3) + #define HEAD_POS BTN_POS( 1,1), BTN_SIZE(12,1) + #define NEXT_POS BTN_POS(12,5), BTN_SIZE(1,4) + #define LIST_POS BTN_POS( 1,2), BTN_SIZE(11,FILES_PER_PAGE) + #define BTN1_POS BTN_POS( 1,8), BTN_SIZE(6,1) + #define BTN2_POS BTN_POS( 7,8), BTN_SIZE(5,1) +#endif + +using namespace FTDI; +using namespace ExtUI; +using namespace Theme; + +constexpr static FilesScreenData &mydata = screen_data.FilesScreen; + +void FilesScreen::onEntry() { + mydata.cur_page = 0; + mydata.selected_tag = 0xFF; + #if ENABLED(SCROLL_LONG_FILENAMES) && (FTDI_API_LEVEL >= 810) + CLCD::mem_write_32(CLCD::REG::MACRO_0,DL::NOP); + #endif + gotoPage(0); + BaseScreen::onEntry(); +} + +const char *FilesScreen::getSelectedFilename(bool shortName) { + FileList files; + files.seek(getSelectedFileIndex(), true); + return shortName ? files.shortFilename() : files.filename(); +} + +void FilesScreen::drawSelectedFile() { + if (mydata.selected_tag == 0xFF) return; + FileList files; + files.seek(getSelectedFileIndex(), true); + mydata.flags.is_dir = files.isDir(); + drawFileButton( + files.filename(), + mydata.selected_tag, + mydata.flags.is_dir, + true + ); +} + +uint16_t FilesScreen::getSelectedFileIndex() { + return getFileForTag(mydata.selected_tag); +} + +uint16_t FilesScreen::getFileForTag(uint8_t tag) { + return mydata.cur_page * FILES_PER_PAGE + tag - 2; +} + +void FilesScreen::drawFileButton(int x, int y, int w, int h, const char *filename, uint8_t tag, bool is_dir, bool is_highlighted) { + #define SUB_COLS 6 + #define SUB_ROWS FILES_PER_PAGE + + const int bx = SUB_X(1); + const int by = SUB_Y(getLineForTag(tag)+1); + const int bw = SUB_W(6); + const int bh = SUB_H(1); + + CommandProcessor cmd; + cmd.tag(tag); + cmd.cmd(COLOR_RGB(is_highlighted ? fg_action : bg_color)); + cmd.font(font_medium).rectangle(bx, by, bw, bh); + cmd.cmd(COLOR_RGB(is_highlighted ? normal_btn.rgb : bg_text_enabled)); + #if ENABLED(SCROLL_LONG_FILENAMES) + if (is_highlighted) { + cmd.cmd(SAVE_CONTEXT()); + cmd.cmd(SCISSOR_XY(x,y)); + cmd.cmd(SCISSOR_SIZE(w,h)); + cmd.cmd(MACRO(0)); + cmd.text(bx, by, bw, bh, filename, OPT_CENTERY | OPT_NOFIT); + } else + #endif + draw_text_with_ellipsis(cmd, bx,by, bw - (is_dir ? 20 : 0), bh, filename, OPT_CENTERY, font_medium); + if (is_dir && !is_highlighted) cmd.text(bx, by, bw, bh, F("> "), OPT_CENTERY | OPT_RIGHTX); + #if ENABLED(SCROLL_LONG_FILENAMES) + if (is_highlighted) cmd.cmd(RESTORE_CONTEXT()); + #endif +} + +void FilesScreen::drawFileList() { + FileList files; + mydata.num_page = max(1,ceil(float(files.count()) / FILES_PER_PAGE)); + mydata.cur_page = min(mydata.cur_page, mydata.num_page-1); + mydata.flags.is_root = files.isAtRootDir(); + mydata.flags.is_empty = true; + + uint16_t fileIndex = mydata.cur_page * FILES_PER_PAGE; + for (uint8_t i = 0; i < FILES_PER_PAGE; i++, fileIndex++) { + if (files.seek(fileIndex)) { + drawFileButton(files.filename(), getTagForLine(i), files.isDir(), false); + mydata.flags.is_empty = false; + } else + break; + } +} + +void FilesScreen::drawHeader() { + char str[16]; + sprintf_P(str, PSTR("Page %d of %d"), mydata.cur_page + 1, mydata.num_page); + + CommandProcessor cmd; + cmd.colors(normal_btn) + .font(font_small) + .tag(0).button(HEAD_POS, str, OPT_CENTER | OPT_FLAT); +} + +void FilesScreen::drawArrows() { + const bool prev_enabled = mydata.cur_page > 0; + const bool next_enabled = mydata.cur_page < (mydata.num_page - 1); + + CommandProcessor cmd; + cmd.colors(normal_btn); + cmd.tag(242).enabled(prev_enabled).button(PREV_POS, F("")); if (prev_enabled) drawArrow(PREV_POS, PREV_DIR); + cmd.tag(243).enabled(next_enabled).button(NEXT_POS, F("")); if (next_enabled) drawArrow(NEXT_POS, NEXT_DIR); +} + +void FilesScreen::drawFooter() { + const bool has_selection = mydata.selected_tag != 0xFF; + + CommandProcessor cmd; + cmd.colors(normal_btn) + .font(font_medium) + .colors(normal_btn) + .enabled(!mydata.flags.is_root) + .tag(245).button(BTN2_POS, F("Up Dir")) + .colors(action_btn); + + if (mydata.flags.is_empty) + cmd.tag(240).button(BTN1_POS, GET_TEXT_F(MSG_BUTTON_DONE)); + else if (has_selection && mydata.flags.is_dir) + cmd.tag(244).button(BTN1_POS, GET_TEXT_F(MSG_BUTTON_OPEN)); + else + cmd.tag(241).enabled(has_selection).button(BTN1_POS, F("Select")); +} + +void FilesScreen::drawFileButton(const char *filename, uint8_t tag, bool is_dir, bool is_highlighted) { + #undef MARGIN_L + #undef MARGIN_R + #define MARGIN_L 0 + #define MARGIN_R 0 + drawFileButton(LIST_POS, filename, tag, is_dir, is_highlighted); +} + +void FilesScreen::onRedraw(draw_mode_t what) { + if (what & FOREGROUND) { + drawHeader(); + drawArrows(); + drawSelectedFile(); + drawFooter(); + } +} + +void FilesScreen::gotoPage(uint8_t page) { + mydata.selected_tag = 0xFF; + mydata.cur_page = page; + CommandProcessor cmd; + cmd.cmd(CMD_DLSTART) + .cmd(CLEAR_COLOR_RGB(bg_color)) + .cmd(CLEAR(true,true,true)) + .colors(normal_btn); + drawFileList(); + storeBackground(); +} + +bool FilesScreen::onTouchEnd(uint8_t tag) { + switch (tag) { + case 240: // Done button, always select first file + { + FileList files; + files.seek(0); + GOTO_PREVIOUS(); + } + return true; + case 241: // Select highlighted file + GOTO_PREVIOUS(); + return true; + case 242: // Previous page + if (mydata.cur_page > 0) { + gotoPage(mydata.cur_page-1); + } + break; + case 243: // Next page + if (mydata.cur_page < (mydata.num_page-1)) { + gotoPage(mydata.cur_page+1); + } + break; + case 244: // Select directory + { + FileList files; + files.changeDir(getSelectedShortFilename()); + gotoPage(0); + } + break; + case 245: // Up directory + { + FileList files; + files.upDir(); + gotoPage(0); + } + break; + default: // File selected + if (tag < 240) { + mydata.selected_tag = tag; + #if ENABLED(SCROLL_LONG_FILENAMES) && (FTDI_API_LEVEL >= 810) + mydata.scroll_pos = 0; + mydata.scroll_max = 0; + if (FTDI::ftdi_chip >= 810) { + const char *filename = getSelectedFilename(); + if (filename[0]) { + CommandProcessor cmd; + constexpr int dim[4] = {LIST_POS}; + const uint16_t text_width = cmd.font(font_medium).text_width(filename); + if (text_width > dim[2]) + mydata.scroll_max = text_width - dim[2] + MARGIN_L + MARGIN_R + 10; + } + } + #endif + } + break; + } + return true; +} + +void FilesScreen::onIdle() { + #if ENABLED(SCROLL_LONG_FILENAMES) && (FTDI_API_LEVEL >= 810) + if (FTDI::ftdi_chip >= 810) { + CLCD::mem_write_32(CLCD::REG::MACRO_0, + VERTEX_TRANSLATE_X(-int32_t(mydata.scroll_pos))); + if (mydata.scroll_pos < mydata.scroll_max * 16) + mydata.scroll_pos++; + } + #endif +} + +void FilesScreen::onMediaRemoved() { + if (AT_SCREEN(FilesScreen)) GOTO_SCREEN(StatusScreen); +} + +#endif // COCOA_FILES_SCREEN diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.h new file mode 100644 index 0000000000..99ea52ff81 --- /dev/null +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.h @@ -0,0 +1,68 @@ +/****************** + * files_screen.h * + ******************/ + +/**************************************************************************** + * Written By Mark Pelletier 2017 - Aleph Objects, Inc. * + * Written By Marcio Teixeira 2018 - Aleph Objects, Inc. * + * * + * 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. * + * * + * To view a copy of the GNU General Public License, go to the following * + * location: . * + ****************************************************************************/ + +#pragma once + +#define COCOA_FILES_SCREEN +#define COCOA_FILES_SCREEN_CLASS FilesScreen + +struct FilesScreenData { + struct { + uint8_t is_dir : 1; + uint8_t is_root : 1; + uint8_t is_empty : 1; + } flags; + uint8_t selected_tag; + uint8_t num_page; + uint8_t cur_page; + #if ENABLED(SCROLL_LONG_FILENAMES) && (FTDI_API_LEVEL >= 810) + uint16_t scroll_pos; + uint16_t scroll_max; + #endif +}; + +class FilesScreen : public BaseScreen, public CachedScreen { + private: + static uint8_t getTagForLine(uint8_t line) {return line + 2;} + static uint8_t getLineForTag(uint8_t tag) {return tag - 2;} + static uint16_t getFileForTag(uint8_t tag); + static uint16_t getSelectedFileIndex(); + + inline static const char *getSelectedShortFilename() {return getSelectedFilename(true);} + static const char *getSelectedFilename(bool shortName = false); + + static void drawFileButton(int x, int y, int w, int h, const char *filename, uint8_t tag, bool is_dir, bool is_highlighted); + static void drawFileButton(const char *filename, uint8_t tag, bool is_dir, bool is_highlighted); + static void drawFileList(); + static void drawHeader(); + static void drawArrows(); + static void drawFooter(); + static void drawSelectedFile(); + + static void gotoPage(uint8_t); + public: + static void onEntry(); + static void onRedraw(draw_mode_t); + static bool onTouchEnd(uint8_t tag); + static void onIdle(); + static void onMediaRemoved(); +}; 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 5e61bdb12f..fa31ce1553 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 @@ -57,7 +57,9 @@ void LevelingMenu::onRedraw(draw_mode_t what) { cmd.font(font_large) .cmd(COLOR_RGB(bg_text_enabled)) .text(BED_MESH_TITLE_POS, GET_TEXT_F(MSG_BED_LEVELING)) + #if ENABLED(BLTOUCH) .text(BLTOUCH_TITLE_POS, GET_TEXT_F(MSG_BLTOUCH)) + #endif .font(font_medium).colors(normal_btn) .tag(2).button(PROBE_BED_POS, GET_TEXT_F(MSG_PROBE_BED)) .enabled(ENABLED(HAS_MESH)) @@ -66,8 +68,10 @@ void LevelingMenu::onRedraw(draw_mode_t what) { .tag(4).button(EDIT_MESH_POS, GET_TEXT_F(MSG_EDIT_MESH)) #undef GRID_COLS #define GRID_COLS 2 + #if ENABLED(BLTOUCH) .tag(5).button(BLTOUCH_RESET_POS, GET_TEXT_F(MSG_BLTOUCH_RESET)) .tag(6).button(BLTOUCH_TEST_POS, GET_TEXT_F(MSG_BLTOUCH_SELFTEST)) + #endif #undef GRID_COLS #define GRID_COLS 3 .colors(action_btn) @@ -81,8 +85,10 @@ bool LevelingMenu::onTouchEnd(uint8_t tag) { case 2: BedMeshViewScreen::doProbe(); break; case 3: BedMeshViewScreen::show(); break; case 4: BedMeshEditScreen::show(); break; + #if ENABLED(BLTOUCH) case 5: injectCommands(F("M280 P0 S60")); break; case 6: SpinnerDialogBox::enqueueAndWait(F("M280 P0 S90\nG4 P100\nM280 P0 S120")); break; + #endif default: return false; } return true; 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 d40b3be354..c7870eeaf8 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 @@ -39,42 +39,6 @@ using namespace Theme; constexpr static LoadChocolateScreenData &mydata = screen_data.LoadChocolateScreen; -void LoadChocolateScreen::draw_syringe(draw_mode_t what) { - #if ENABLED(COCOA_PRESS_CHOCOLATE_LEVEL_SENSOR) - const float fill_level = get_chocolate_fill_level(); - #else - constexpr float fill_level = 1.0f; - #endif - - CommandProcessor cmd; - PolyUI ui(cmd, what); - - if (what & BACKGROUND) { - // Paint the shadow for the syringe - ui.color(shadow_rgb); - ui.shadow(POLY(syringe_outline), shadow_depth); - } - - if (what & FOREGROUND) { - int16_t x, y, h, v; - - // Paint the syringe icon - ui.color(syringe_rgb); - ui.fill(POLY(syringe_outline)); - - ui.color(fluid_rgb); - ui.bounds(POLY(syringe_fluid), x, y, h, v); - cmd.cmd(SAVE_CONTEXT()); - cmd.cmd(SCISSOR_XY(x,y + v * (1.0 - fill_level))); - cmd.cmd(SCISSOR_SIZE(h, v * fill_level)); - ui.fill(POLY(syringe_fluid), false); - cmd.cmd(RESTORE_CONTEXT()); - - ui.color(stroke_rgb); - ui.fill(POLY(syringe)); - } -} - void LoadChocolateScreen::draw_buttons(draw_mode_t what) { int16_t x, y, h, v; @@ -84,10 +48,17 @@ void LoadChocolateScreen::draw_buttons(draw_mode_t what) { cmd.font(font_medium).colors(normal_btn); ui.bounds(POLY(load_screen_unload_btn), x, y, h, v); - cmd.tag(2).button(x, y, h, v, GET_TEXT_F(MSG_FULL_UNLOAD)); + cmd.tag(2).colors(mydata.repeat_tag == 5 ? action_btn : normal_btn).button(x, y, h, v, GET_TEXT_F(MSG_UNLOAD)); ui.bounds(POLY(load_screen_load_btn), x, y, h, v); - cmd.tag(3).button(x, y, h, v, GET_TEXT_F(MSG_FULL_LOAD)); + 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); + 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); cmd.tag(1).colors(action_btn).button(x, y, h, v, GET_TEXT_F(MSG_BUTTON_DONE)); @@ -102,8 +73,8 @@ void LoadChocolateScreen::draw_text(draw_mode_t what) { cmd.font(font_medium).cmd(COLOR_RGB(bg_text_enabled)); - ui.bounds(POLY(load_sreen_title), x, y, h, v); - cmd.tag(2).text(x, y, h, v, GET_TEXT_F(MSG_LOAD_UNLOAD)); + ui.bounds(POLY(load_screen_continuous), x, y, h, v); + cmd.tag(2).text(x, y, h, v, GET_TEXT_F(MSG_CONTINUOUS)); ui.bounds(POLY(load_screen_increment), x, y, h, v); cmd.tag(3).text(x, y, h, v, GET_TEXT_F(MSG_INCREMENT)); @@ -120,11 +91,12 @@ void LoadChocolateScreen::draw_arrows(draw_mode_t what) { constexpr uint8_t style = PolyUI::REGULAR; - ui.button(4, POLY(load_screen_extrude), style); - ui.button(5, POLY(load_screen_retract), style); + ui.button(5, POLY(load_screen_extrude), style); + ui.button(6, POLY(load_screen_retract), style); } void LoadChocolateScreen::onEntry() { + mydata.repeating = false; mydata.repeat_tag = 0; } @@ -136,26 +108,22 @@ void LoadChocolateScreen::onRedraw(draw_mode_t what) { .tag(0); } - draw_syringe(what); draw_arrows(what); draw_buttons(what); draw_text(what); } -bool LoadChocolateScreen::onTouchStart(uint8_t) { - mydata.repeat_tag = 0; +bool LoadChocolateScreen::onTouchStart(uint8_t tag) { + if (tag != 4) mydata.repeating = false; return true; } bool LoadChocolateScreen::onTouchEnd(uint8_t tag) { using namespace ExtUI; switch (tag) { - case 2: - mydata.repeat_tag = (mydata.repeat_tag == 2) ? 0 : 2; - break; - case 3: - mydata.repeat_tag = (mydata.repeat_tag == 3) ? 0 : 3; - 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; @@ -176,28 +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 2: { - if (get_chocolate_fill_level() < 0.1) { - mydata.repeat_tag = 0; - return false; - } - UI_INCREMENT_AXIS(E0); - break; - } - case 3: { - if (get_chocolate_fill_level() > 0.75) { - mydata.repeat_tag = 0; - return false; - } - UI_DECREMENT_AXIS(E0); - break; - } - case 4: - UI_INCREMENT_AXIS(E0); - break; - case 5: - 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 @@ -207,12 +155,12 @@ bool LoadChocolateScreen::onTouchHeld(uint8_t tag) { void LoadChocolateScreen::onIdle() { reset_menu_timeout(); - if (mydata.repeat_tag) onTouchHeld(mydata.repeat_tag); + 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/load_chocolate.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.h index 4a582f0212..426669775d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.h @@ -28,11 +28,11 @@ struct LoadChocolateScreenData { uint8_t repeat_tag; + bool repeating; }; class LoadChocolateScreen : public BaseScreen, public CachedScreen { private: - static void draw_syringe(draw_mode_t what); static void draw_arrows(draw_mode_t what); static void draw_buttons(draw_mode_t what); static void draw_text(draw_mode_t what); 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 ee299a7f64..2f231278f2 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/cocoa_press/preheat_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/preheat_menu.cpp index b01aa81dd4..2fabb81ee4 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/preheat_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/preheat_menu.cpp @@ -32,7 +32,7 @@ using namespace Theme; #define GRID_ROWS 5 void PreheatMenu::onRedraw(draw_mode_t what) { - const int16_t w = TERN0(COCOA_PRESS_EXTRA_HEATER, has_extra_heater() ? BTN_W(1) : BTN_W(2)); + const int16_t w = TERN0(COCOA_PRESS_EXTRA_HEATER, has_extra_heater()) ? BTN_W(1) : BTN_W(2); const int16_t h = BTN_H(1); if (what & BACKGROUND) { diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/screens.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/screens.h index 8481e446c4..5276f64f44 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/screens.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/screens.h @@ -90,7 +90,6 @@ enum { #include "../generic/spinner_dialog_box.h" #include "../generic/restore_failsafe_dialog_box.h" #include "../generic/save_settings_dialog_box.h" -#include "../generic/confirm_start_print_dialog_box.h" #include "../generic/confirm_abort_print_dialog_box.h" #include "../generic/confirm_user_request_alert_box.h" #include "../generic/touch_calibration_screen.h" @@ -114,7 +113,6 @@ enum { #include "../generic/bed_mesh_edit_screen.h" #include "../generic/case_light_screen.h" #include "../generic/linear_advance_screen.h" -#include "../generic/files_screen.h" #include "../generic/move_axis_screen.h" #include "../generic/flow_percent_screen.h" #if HAS_JUNCTION_DEVIATION @@ -132,3 +130,5 @@ enum { #include "leveling_menu.h" #include "move_xyz_screen.h" #include "move_e_screen.h" +#include "files_screen.h" +#include "confirm_start_print_dialog_box.h" 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 00b2d6a094..1312d022c3 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 @@ -29,6 +29,8 @@ #include "cocoa_press_ui.h" #define POLY(A) PolyUI::poly_reader_t(A, sizeof(A)/sizeof(A[0])) +#define ICON_POS(x,y,w,h) x, y, h, h +#define TEXT_POS(x,y,w,h) x + h, y, w - h, h const uint8_t shadow_depth = 5; @@ -38,8 +40,28 @@ using namespace ExtUI; float StatusScreen::increment; +void StatusScreen::_format_time(char *outstr, uint32_t time) { + const uint8_t hrs = time / 3600, + min = (time / 60) % 60, + sec = time % 60; + if (hrs) + sprintf_P(outstr, PSTR("%02d:%02d"), hrs, min); + else + sprintf_P(outstr, PSTR("%02d:%02ds"), min, sec); +} + void StatusScreen::loadBitmaps() { + // Load the bitmaps for the status screen + using namespace Theme; constexpr uint32_t base = ftdi_memory_map::RAM_G; + CLCD::mem_write_xbm(base + Light_Bulb_Info.RAMG_offset, Light_Bulb, sizeof(Light_Bulb)); + CLCD::mem_write_xbm(base + Chamber_Icon_Info.RAMG_offset, Chamber_Icon, sizeof(Chamber_Icon)); + CLCD::mem_write_xbm(base + Clock_Icon_Info.RAMG_offset, Clock_Icon, sizeof(Clock_Icon)); + CLCD::mem_write_xbm(base + File_Icon_Info.RAMG_offset, File_Icon, sizeof(File_Icon)); + CLCD::mem_write_xbm(base + TD_Icon_Info.RAMG_offset, TD_Icon, sizeof(TD_Icon)); + CLCD::mem_write_xbm(base + Extruder_Icon_Info.RAMG_offset, Extruder_Icon, sizeof(Extruder_Icon)); + CLCD::mem_write_xbm(base + Bed_Heat_Icon_Info.RAMG_offset, Bed_Heat_Icon, sizeof(Bed_Heat_Icon)); + CLCD::mem_write_xbm(base + Fan_Icon_Info.RAMG_offset, Fan_Icon, sizeof(Fan_Icon)); // Load fonts for internationalization #if ENABLED(TOUCH_UI_USE_UTF8) @@ -47,33 +69,50 @@ void StatusScreen::loadBitmaps() { #endif } -void StatusScreen::draw_progress(draw_mode_t what) { +void StatusScreen::draw_time(draw_mode_t what) { CommandProcessor cmd; PolyUI ui(cmd, what); - int16_t x, y, h, v; - - cmd.cmd(COLOR_RGB(accent_color_1)); - cmd.font(font_medium); + int16_t x, y, w, h; + ui.bounds(POLY(print_time_hms), x, y, w, h); if (what & BACKGROUND) { - ui.bounds(POLY(print_time_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_ELAPSED_PRINT)); + cmd.cmd(COLOR_RGB(bg_text_enabled)) + .cmd (BITMAP_SOURCE(Clock_Icon_Info)) + .cmd (BITMAP_LAYOUT(Clock_Icon_Info)) + .cmd (BITMAP_SIZE (Clock_Icon_Info)) + .icon(ICON_POS(x, y, w, h), Clock_Icon_Info, icon_scale) + .cmd(COLOR_RGB(bg_text_enabled)); } if (what & FOREGROUND) { const uint32_t elapsed = getProgress_seconds_elapsed(); - const uint8_t hrs = elapsed/3600; - const uint8_t min = (elapsed/60)%60; + char elapsed_str[10]; + _format_time(elapsed_str, elapsed); - char str[10]; - sprintf_P(str, PSTR(" %02d : %02d"), hrs, min); - ui.bounds(POLY(print_time_hms), x, y, h, v); - cmd.text(x, y, h, v, str); + cmd.font(font_medium) + .cmd(COLOR_RGB(bg_text_enabled)) + .text(TEXT_POS(x, y, w, h), elapsed_str); + } +} - sprintf_P(str, PSTR("%-3d%%"), getProgress_percent() ); - ui.bounds(POLY(print_time_percent), x, y, h, v); - cmd.text(x, y, h, v, str); + +void StatusScreen::draw_progress(draw_mode_t what) { + CommandProcessor cmd; + PolyUI ui(cmd, what); + + int16_t x, y, w, h; + + cmd.cmd(COLOR_RGB(accent_color_1)); + cmd.font(font_medium); + + if (what & FOREGROUND) { + // Draw progress bar + ui.bounds(POLY(file_name), x, y, w, h); + const uint16_t bar_width = w * getProgress_percent() / 100; + cmd.tag(8) + .cmd(COLOR_RGB(accent_color_5)) + .rectangle(x, y, bar_width, h); } } @@ -81,30 +120,38 @@ void StatusScreen::draw_temperature(draw_mode_t what) { CommandProcessor cmd; PolyUI ui(cmd, what); - int16_t x, y, h, v; + int16_t x, y, w, h; if (what & BACKGROUND) { cmd.cmd(COLOR_RGB(fluid_rgb)); cmd.font(font_medium).tag(10); - ui.bounds(POLY(chocolate_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_CHOCOLATE)); + /*ui.bounds(POLY(temp_lbl), x, y, w, h); + cmd.text(x, y, w, h, F("Temp")); - ui.bounds(POLY(h0_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_NOZZLE)); + ui.bounds(POLY(set_lbl), x, y, w, h); + cmd.text(x, y, w, h, F("Set"));*/ - ui.bounds(POLY(h1_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_BODY)); + ui.bounds(POLY(chocolate_label), x, y, w, h); + cmd.text(x, y, w, h, F("Cocoa Press")); + + ui.bounds(POLY(h0_label), x, y, w, h); + cmd.text(x, y, w, h, GET_TEXT_F(MSG_NOZZLE)); + + ui.bounds(POLY(h1_label), x, y, w, h); + cmd.text(x, y, w, h, GET_TEXT_F(MSG_BODY)); #if ENABLED(COCOA_PRESS_EXTRA_HEATER) if (has_extra_heater()) { - ui.bounds(POLY(h2_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_EXTERNAL)); + ui.bounds(POLY(h2_label), x, y, w, h); + cmd.text(x, y, w, h, GET_TEXT_F(MSG_EXTERNAL)); } #endif - ui.bounds(POLY(h3_label), x, y, h, v); - cmd.text(x, y, h, v, GET_TEXT_F(MSG_CHAMBER)); + #if ENABLED(COCOA_PRESS_CHAMBER_COOLER) + ui.bounds(POLY(h3_label), x, y, w, h); + cmd.text(x, y, w, h, GET_TEXT_F(MSG_CHAMBER)); + #endif #if ENABLED(TOUCH_UI_USE_UTF8) load_utf8_bitmaps(cmd); // Restore font bitmap handles @@ -117,68 +164,60 @@ void StatusScreen::draw_temperature(draw_mode_t what) { cmd.font(font_large).tag(10); + // Show the actual temperatures + format_temp(str, getActualTemp_celsius(E0)); - ui.bounds(POLY(h0_temp), x, y, h, v); - cmd.text(x, y, h, v, str); + ui.bounds(POLY(h0_temp), x, y, w, h); + cmd.text(x, y, w, h, str); format_temp(str, getActualTemp_celsius(E1)); - ui.bounds(POLY(h1_temp), x, y, h, v); - cmd.text(x, y, h, v, str); + ui.bounds(POLY(h1_temp), x, y, w, h); + cmd.text(x, y, w, h, str); #if ENABLED(COCOA_PRESS_EXTRA_HEATER) if (has_extra_heater()) { format_temp(str, getActualTemp_celsius(E2)); - ui.bounds(POLY(h2_temp), x, y, h, v); - cmd.text(x, y, h, v, str); + ui.bounds(POLY(h2_temp), x, y, w, h); + cmd.text(x, y, w, h, str); } #endif - format_temp(str, getActualTemp_celsius(CHAMBER)); - ui.bounds(POLY(h3_temp), x, y, h, v); - cmd.text(x, y, h, v, str); - } -} + #if ENABLED(COCOA_PRESS_CHAMBER_COOLER) + format_temp(str, getActualTemp_celsius(CHAMBER)); + ui.bounds(POLY(h3_temp), x, y, w, h); + cmd.text(x, y, w, h, str); + #endif -void StatusScreen::draw_syringe(draw_mode_t what) { - #if ENABLED(COCOA_PRESS_CHOCOLATE_LEVEL_SENSOR) - const float fill_level = get_chocolate_fill_level(); - #else - constexpr float fill_level = 1.0f; - #endif + /*// Show the set temperatures + format_temp(str, getTargetTemp_celsius(E0)); + ui.bounds(POLY(h0_set), x, y, w, h); + cmd.text(x, y, w, h, str); - CommandProcessor cmd; - PolyUI ui(cmd, what); + format_temp(str, getTargetTemp_celsius(E1)); + ui.bounds(POLY(h1_set), x, y, w, h); + cmd.text(x, y, w, h, str); - if (what & BACKGROUND) { - // Paint the shadow for the syringe - ui.color(shadow_rgb); - ui.shadow(POLY(syringe_outline), shadow_depth); - } + #if ENABLED(COCOA_PRESS_EXTRA_HEATER) + if (has_extra_heater()) { + format_temp(str, getTargetTemp_celsius(E2)); + ui.bounds(POLY(h2_set), x, y, w, h); + cmd.text(x, y, w, h, str); + } + #endif - if (what & FOREGROUND) { - int16_t x, y, h, v; - - // Paint the syringe icon - ui.color(syringe_rgb); - ui.fill(POLY(syringe_outline)); - - ui.color(fluid_rgb); - ui.bounds(POLY(syringe_fluid), x, y, h, v); - cmd.cmd(SAVE_CONTEXT()); - cmd.cmd(SCISSOR_XY(x,y + v * (1.0 - fill_level))); - cmd.cmd(SCISSOR_SIZE(h, v * fill_level)); - ui.fill(POLY(syringe_fluid), false); - cmd.cmd(RESTORE_CONTEXT()); - - ui.color(stroke_rgb); - ui.fill(POLY(syringe)); + #if ENABLED(COCOA_PRESS_CHAMBER_COOLER) + format_temp(str, getTargetTemp_celsius(CHAMBER)); + ui.bounds(POLY(h3_set), x, y, w, h); + cmd.text(x, y, w, h, str); + #endif*/ } } void StatusScreen::draw_buttons(draw_mode_t what) { - int16_t x, y, h, v; + int16_t x, y, w, h; - const bool can_print = isMediaInserted() && !isPrintingFromMedia(); + const bool can_print = !isPrinting() && isMediaInserted() && isFileSelected(); + const bool can_select = !isPrinting() && isMediaInserted(); const bool sdOrHostPrinting = ExtUI::isPrinting(); const bool sdOrHostPaused = ExtUI::isPrintingPaused(); @@ -187,29 +226,69 @@ void StatusScreen::draw_buttons(draw_mode_t what) { cmd.font(font_medium).colors(normal_btn); - ui.bounds(POLY(park_btn), x, y, h, v); - cmd.tag(1).button(x, y, h, v, GET_TEXT_F(MSG_FILAMENT_PARK_ENABLED)); + ui.bounds(POLY(load_chocolate_btn), x, y, w, h); + cmd.tag(1).button(x, y, w, h, GET_TEXT_F(MSG_LOAD_UNLOAD)); - ui.bounds(POLY(load_chocolate_btn), x, y, h, v); - cmd.tag(2).button(x, y, h, v, GET_TEXT_F(MSG_LOAD_UNLOAD)); + ui.bounds(POLY(extrude_btn), x, y, w, h); + cmd.tag(2).button(x, y, w, h, GET_TEXT_F(MSG_EXTRUDE)); - ui.bounds(POLY(preheat_chocolate_btn), x, y, h, v); - cmd.tag(3).button(x, y, h, v, GET_TEXT_F(MSG_PREHEAT_CHOCOLATE)); + ui.bounds(POLY(preheat_chocolate_btn), x, y, w, h); + cmd.tag(3).button(x, y, w, h, GET_TEXT_F(MSG_PREHEAT_CHOCOLATE)); - ui.bounds(POLY(menu_btn), x, y, h, v); - cmd.tag(4).button(x, y, h, v, GET_TEXT_F(MSG_BUTTON_MENU)); + ui.bounds(POLY(menu_btn), x, y, w, h); + cmd.tag(4).button(x, y, w, h, GET_TEXT_F(MSG_BUTTON_MENU)); - ui.bounds(POLY(pause_btn), x, y, h, v); - cmd.tag(sdOrHostPaused ? 6 : 5).enabled(sdOrHostPrinting).button(x, y, h, v, sdOrHostPaused ? GET_TEXT_F(MSG_BUTTON_RESUME) : GET_TEXT_F(MSG_BUTTON_PAUSE)); + ui.bounds(POLY(media_btn), x, y, w, h); + cmd.tag(5).enabled(can_select).button(x, y, w, h, GET_TEXT_F(MSG_BUTTON_MEDIA)); - ui.bounds(POLY(stop_btn), x, y, h, v); - cmd.tag(7).enabled(sdOrHostPrinting).button(x, y, h, v, GET_TEXT_F(MSG_BUTTON_STOP)); + ui.bounds(POLY(print_btn), x, y, w, h); + cmd.tag(6).colors(action_btn).enabled(can_print).button(x, y, w, h, GET_TEXT_F(MSG_BUTTON_PRINT)); - ui.bounds(POLY(extrude_btn), x, y, h, v); - cmd.tag(8).button(x, y, h, v, GET_TEXT_F(MSG_EXTRUDE)); + ui.bounds(POLY(pause_btn), x, y, w, h); + cmd.tag(sdOrHostPaused ? 8 : 7).enabled(sdOrHostPrinting).button(x, y, w, h, sdOrHostPaused ? GET_TEXT_F(MSG_BUTTON_RESUME) : GET_TEXT_F(MSG_BUTTON_PAUSE)); - ui.bounds(POLY(print_btn), x, y, h, v); - cmd.tag(9).colors(action_btn).enabled(can_print).button(x, y, h, v, GET_TEXT_F(MSG_BUTTON_PRINT)); + ui.bounds(POLY(stop_btn), x, y, w, h); + cmd.tag(9).enabled(sdOrHostPrinting).button(x, y, w, h, GET_TEXT_F(MSG_BUTTON_STOP)); +} + +void StatusScreen::draw_file(draw_mode_t what) { + int16_t x, y, w, h; + + CommandProcessor cmd; + PolyUI ui(cmd, what); + + ui.bounds(POLY(file_name), x, y, w, h); + + if (what & BACKGROUND) { + cmd.tag(5) + .cmd(COLOR_RGB(bg_text_enabled)) + .cmd (BITMAP_SOURCE(File_Icon_Info)) + .cmd (BITMAP_LAYOUT(File_Icon_Info)) + .cmd (BITMAP_SIZE (File_Icon_Info)) + .icon(ICON_POS(x, y, w, h), File_Icon_Info, icon_scale); + } + + if (what & FOREGROUND) { + cmd.cmd(COLOR_RGB(bg_text_enabled)); + + if (!isMediaInserted()) + draw_text_with_ellipsis(cmd, TEXT_POS(x, y, w, h), F("No media present"), OPT_CENTERY, font_small); + else if (isFileSelected()) { + FileList list; + draw_text_with_ellipsis(cmd, TEXT_POS(x, y, w, h), list.filename(), OPT_CENTERY, font_small); + } + 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; + FileList list; + if (list.isDir()) return false; + const char *filename = list.filename(); + if (filename[0] == '\0') return false; + return true; } void StatusScreen::onRedraw(draw_mode_t what) { @@ -220,8 +299,9 @@ void StatusScreen::onRedraw(draw_mode_t what) { .tag(0); } + draw_file(what); + draw_time(what); draw_progress(what); - draw_syringe(what); draw_temperature(what); draw_buttons(what); } @@ -233,11 +313,12 @@ bool StatusScreen::onTouchStart(uint8_t) { bool StatusScreen::onTouchEnd(uint8_t tag) { switch (tag) { - case 1: SpinnerDialogBox::enqueueAndWait(F("G28 O\nG27")); break; - case 2: GOTO_SCREEN(LoadChocolateScreen); break; + case 1: GOTO_SCREEN(LoadChocolateScreen); break; case 3: GOTO_SCREEN(PreheatMenu); break; case 4: GOTO_SCREEN(MainMenu); break; - case 5: + case 5: GOTO_SCREEN(FilesScreen); break; + case 6: GOTO_SCREEN(ConfirmStartPrintDialogBox); break; + case 7: sound.play(twinkle, PLAY_ASYNCHRONOUS); if (ExtUI::isPrintingFromMedia()) ExtUI::pausePrint(); @@ -246,7 +327,7 @@ bool StatusScreen::onTouchEnd(uint8_t tag) { #endif GOTO_SCREEN(StatusScreen); break; - case 6: + case 8: sound.play(twinkle, PLAY_ASYNCHRONOUS); if (ExtUI::isPrintingFromMedia()) ExtUI::resumePrint(); @@ -255,12 +336,12 @@ bool StatusScreen::onTouchEnd(uint8_t tag) { #endif GOTO_SCREEN(StatusScreen); break; - case 7: + case 9: GOTO_SCREEN(ConfirmAbortPrintDialogBox); current_screen.forget(); PUSH_SCREEN(StatusScreen); break; - case 9: GOTO_SCREEN(FilesScreen); break; + case 10: GOTO_SCREEN(TemperatureScreen); break; default: return false; } @@ -271,7 +352,7 @@ bool StatusScreen::onTouchEnd(uint8_t tag) { } bool StatusScreen::onTouchHeld(uint8_t tag) { - if (tag == 8 && !ExtUI::isMoving()) { + if (tag == 2 && !ExtUI::isMoving()) { LoadChocolateScreen::setManualFeedrateAndIncrement(1, increment); UI_INCREMENT(AxisPosition_mm, E0); current_screen.onRefresh(); @@ -288,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/ftdi_eve_touch_ui/cocoa_press/status_screen.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.h index 08fb6f26d4..05f99e953d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.h @@ -28,17 +28,19 @@ class StatusScreen : public BaseScreen, public CachedScreen { private: + static void _format_time(char *outstr, uint32_t time); + static float increment; static bool jog_xy; static bool fine_motion; + static void draw_time(draw_mode_t what); static void draw_progress(draw_mode_t what); static void draw_temperature(draw_mode_t what); - static void draw_syringe(draw_mode_t what); - static void draw_arrows(draw_mode_t what); - static void draw_overlay_icons(draw_mode_t what); - static void draw_fine_motion(draw_mode_t what); static void draw_buttons(draw_mode_t what); + static void draw_file(draw_mode_t what); + + static bool isFileSelected(); public: static void loadBitmaps(); static void unlockMotors(); 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 84de2c5871..dc49a77ff8 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); @@ -97,7 +97,7 @@ namespace ExtUI { void onLoadSettings(const char *buff) { InterfaceSettingsScreen::loadSettings(buff); } void onPostprocessSettings() {} // Called after loading or resetting stored settings - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { #ifdef ARCHIM2_SPI_FLASH_EEPROM_BACKUP_SIZE if (success && InterfaceSettingsScreen::backupEEPROM()) { SERIAL_ECHOLNPGM("EEPROM backed up to SPI Flash"); @@ -106,7 +106,7 @@ namespace ExtUI { UNUSED(success); #endif } - void onSettingsLoaded(bool) {} + void onSettingsLoaded(const bool) {} void onPlayTone(const uint16_t frequency, const uint16_t duration) { sound.play_tone(frequency, duration); } @@ -117,15 +117,26 @@ 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 #if ENABLED(POWER_LOSS_RECOVERY) - void onPowerLossResume() {} // Called on resume from power-loss + 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 + } #endif #if HAS_PID_HEATING 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 662753a154..a796c8edcf 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 6b2dc9eb44..a9f77a518b 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/circular_progress.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/circular_progress.cpp index 32cc37d2e2..7849b1e461 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/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 648ed5330a..fd3e8f921c 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 47bf79e467..3d53f2d99b 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/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 1c193ade4b..2faa1c72e6 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/font_size_t.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_size_t.cpp index 0e251f7bb1..b229154e82 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 d12bf97119..5171ee508a 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 6f189155f5..d7f4d31bdc 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/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 4fb2f8fdbf..02a39cd01c 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/about_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/about_screen.cpp index 43e5c33365..698f0d47b7 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 8753b44e70..4745ff99dc 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/bed_mesh_edit_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_edit_screen.cpp index 37eb29a99d..ab6d8a8902 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 7b4195ff5c..86eab54d85 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/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 b9791fff7a..3ec8e06adf 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/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp index c0940bed5c..b01e45948c 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 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 2ec8a3bbd1..4a60733723 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/dialog_box_base_class.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp index a006d30942..ea177bfdc1 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); } 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 f7e57cf0b9..6105591d15 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 @@ -41,7 +41,7 @@ void EndstopStatesScreen::onExit() { #define GRID_ROWS 7 #define PIN_BTN(X,Y,PIN,LABEL) button(BTN_POS(X,Y), BTN_SIZE(2,1), LABEL) -#define PIN_ENABLED(X,Y,LABEL,PIN,INV) cmd.enabled(1).colors(READ(PIN##_PIN) != INV ? action_btn : normal_btn).PIN_BTN(X,Y,PIN,LABEL); +#define PIN_ENABLED(X,Y,LABEL,PIN,ST) cmd.enabled(1).colors(READ(PIN##_PIN) == ST ? action_btn : normal_btn).PIN_BTN(X,Y,PIN,LABEL); #define PIN_DISABLED(X,Y,LABEL,PIN) cmd.enabled(0).PIN_BTN(X,Y,PIN,LABEL); void EndstopStatesScreen::onRedraw(draw_mode_t) { @@ -54,33 +54,33 @@ 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 - PIN_ENABLED (1, 2, PSTR(STR_X_MAX), X_MAX, X_MAX_ENDSTOP_INVERTING) + #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 - PIN_ENABLED (3, 2, PSTR(STR_Y_MAX), Y_MAX, Y_MAX_ENDSTOP_INVERTING) + #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 - PIN_ENABLED (5, 2, PSTR(STR_Z_MAX), Z_MAX, Z_MAX_ENDSTOP_INVERTING) + #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 - PIN_ENABLED (1, 3, PSTR(STR_X_MIN), X_MIN, X_MIN_ENDSTOP_INVERTING) + #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 - PIN_ENABLED (3, 3, PSTR(STR_Y_MIN), Y_MIN, Y_MIN_ENDSTOP_INVERTING) + #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) #endif - #if HAS_Z_MIN - PIN_ENABLED (5, 3, PSTR(STR_Z_MIN), Z_MIN, Z_MIN_ENDSTOP_INVERTING) + #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) #endif @@ -89,13 +89,13 @@ 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) #endif #if PIN_EXISTS(Z_MIN_PROBE) - PIN_ENABLED (5, 4, PSTR(STR_Z_PROBE), Z_MIN_PROBE, Z_MIN_PROBE_ENDSTOP_INVERTING) + PIN_ENABLED (5, 4, PSTR(STR_Z_PROBE), Z_MIN_PROBE, Z_MIN_PROBE_ENDSTOP_HIT_STATE) #else PIN_DISABLED(5, 4, PSTR(STR_Z_PROBE), Z_MIN_PROBE) #endif 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 499f741540..5d797f44df 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/generic/leveling_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/leveling_menu.cpp index 2fb9d18498..47540b0f55 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/max_velocity_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/max_velocity_screen.cpp index e7fc23ab48..666a7542cc 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/max_velocity_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/max_velocity_screen.cpp @@ -34,7 +34,7 @@ void MaxVelocityScreen::onRedraw(draw_mode_t what) { widgets_t w(what); w.precision(0); w.units(GET_TEXT_F(MSG_UNITS_MM_S)); - w.heading( GET_TEXT_F(MSG_MAX_SPEED)); + w.heading( GET_TEXT_F(MSG_MAX_SPEED_NO_UNITS)); w.color(x_axis) .adjuster( 2, GET_TEXT_F(MSG_VMAX_X), getAxisMaxFeedrate_mm_s(X) ); w.color(y_axis) .adjuster( 4, GET_TEXT_F(MSG_VMAX_Y), getAxisMaxFeedrate_mm_s(Y) ); w.color(z_axis) .adjuster( 6, GET_TEXT_F(MSG_VMAX_Z), getAxisMaxFeedrate_mm_s(Z) ); 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 061c8555df..fbfce19a75 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/move_axis_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp index c3927c21a7..95fe023cda 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(); @@ -72,13 +72,15 @@ 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(); 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; @@ -120,20 +122,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 16723cfc13..b26254c4df 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/ftdi_eve_touch_ui/generic/screens.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h index b88e517576..c200931eec 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) @@ -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) @@ -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 @@ -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 f1c65357e0..738d8ee64f 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/generic/tune_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/tune_menu.cpp index 0370c44174..259f6d5b89 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/language/language.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp index bf684e43f9..9ff738e45c 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 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 5dbde8a5c3..db37ccfd22 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"; @@ -146,6 +145,9 @@ namespace Language_en { LSTR MSG_PROBE_BED = u8"Probe Mesh"; LSTR MSG_PRINT_TEST = u8"Print Test (PLA)"; 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"; @@ -163,8 +165,9 @@ namespace Language_en { LSTR MSG_CHOCOLATE = u8"Chocolate"; LSTR MSG_UNLOAD_CARTRIDGE = u8"Unload Cartridge"; LSTR MSG_LOAD_UNLOAD = u8"Load/Unload"; - LSTR MSG_FULL_LOAD = u8"Full Load"; - LSTR MSG_FULL_UNLOAD = u8"Full Unload"; + LSTR MSG_START_STOP = u8"Start/Stop"; + LSTR MSG_LOAD = u8"Load"; + LSTR MSG_UNLOAD = u8"Unload"; LSTR MSG_PREHEAT_CHOCOLATE = u8"Preheat Chocolate"; LSTR MSG_PREHEAT_FINISHED = u8"Preheat finished"; LSTR MSG_PREHEAT = u8"Preheat"; 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 34026f4a26..3963493841 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 @@ -42,13 +42,13 @@ #elif ENABLED(CR10_TFT_PINMAP) // FYSETC S6 - STM32F4 - with TOUCH_UI_ULTIPANEL #define CLCD_USE_SOFT_SPI - #define CLCD_SOFT_SPI_SCLK LCD_PINS_D4 // PORTA1 Pin 6 - #define CLCD_SOFT_SPI_MOSI LCD_PINS_ENABLE // PORTC1 Pin 8 - #define CLCD_SPI_CS LCD_PINS_RS // PORTA3 Pin 7 - #define CLCD_SOFT_SPI_MISO 16 // PORTC0 BTN_ENC Pin 2 - #define CLCD_MOD_RESET 11 // PORTD3 BTN_EN1 Pin 3 - #define CLCD_AUX_0 10 // PORTD2 BTN_EN2 Pin 5 - #define CLCD_AUX_1 BEEPER_PIN // PORTA4 Pin 1 + #define CLCD_SOFT_SPI_SCLK LCD_PINS_D4 // PORTA1 Pin 6 + #define CLCD_SOFT_SPI_MOSI LCD_PINS_EN // PORTC1 Pin 8 + #define CLCD_SPI_CS LCD_PINS_RS // PORTA3 Pin 7 + #define CLCD_SOFT_SPI_MISO 16 // PORTC0 BTN_ENC Pin 2 + #define CLCD_MOD_RESET 11 // PORTD3 BTN_EN1 Pin 3 + #define CLCD_AUX_0 10 // PORTD2 BTN_EN2 Pin 5 + #define CLCD_AUX_1 BEEPER_PIN // PORTA4 Pin 1 #elif ENABLED(AO_EXP1_DEPRECATED_PINMAP) @@ -60,7 +60,7 @@ #define CLCD_MOD_RESET LCD_PINS_D4 #define CLCD_SPI_CS LCD_PINS_D5 - #define CLCD_AUX_0 LCD_PINS_ENABLE + #define CLCD_AUX_0 LCD_PINS_EN #define CLCD_AUX_1 BTN_ENC #define CLCD_AUX_2 BEEPER_PIN @@ -93,7 +93,7 @@ * functionality over software SPI. */ - #define CLCD_MOD_RESET LCD_PINS_ENABLE + #define CLCD_MOD_RESET LCD_PINS_EN #define CLCD_SPI_CS LCD_PINS_D4 #define CLCD_USE_SOFT_SPI @@ -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/ftdi_eve_touch_ui/screen_data.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screen_data.h index 5d715572fa..48a0c1a964 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screen_data.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screen_data.h @@ -64,6 +64,7 @@ union screen_data_t { DECL_DATA_IF_INCLUDED(FTDI_ALERT_DIALOG_BOX) DECL_DATA_IF_INCLUDED(COCOA_PREHEAT_SCREEN) DECL_DATA_IF_INCLUDED(COCOA_LOAD_CHOCOLATE_SCREEN) + DECL_DATA_IF_INCLUDED(COCOA_FILES_SCREEN) }; extern screen_data_t screen_data; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screens.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screens.cpp index ec627e313b..ed210369c4 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screens.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/screens.cpp @@ -116,6 +116,8 @@ SCREEN_TABLE { DECL_SCREEN_IF_INCLUDED(COCOA_LEVELING_MENU) DECL_SCREEN_IF_INCLUDED(COCOA_MOVE_XYZ_SCREEN) DECL_SCREEN_IF_INCLUDED(COCOA_MOVE_E_SCREEN) + DECL_SCREEN_IF_INCLUDED(COCOA_CONFIRM_START_PRINT) + DECL_SCREEN_IF_INCLUDED(COCOA_FILES_SCREEN) }; SCREEN_TABLE_POST 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 70c2be4ec2..0e145e39f2 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/ftdi_eve_touch_ui/theme/marlin_bootscreen_landscape.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_landscape.h index 1231d31dc3..4e706a645a 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_landscape.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_landscape.h @@ -1,4 +1,3 @@ - /**************************************************************************** * 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 * diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_portrait.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_portrait.h index c6065af7f7..ce04239213 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_portrait.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/marlin_bootscreen_portrait.h @@ -1,4 +1,3 @@ - /**************************************************************************** * 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 * diff --git a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp index cdde3c4f6b..f16bdde29a 100644 --- a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp @@ -33,25 +33,23 @@ #if DGUS_LCD_UI_IA_CREALITY +#include "ia_creality_rts.h" #include "FileNavigator.h" -using namespace ExtUI; +#include -#define DEBUG_OUT ENABLED(DEBUG_DWIN) -#include "../../../core/debug_out.h" - -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; @@ -97,25 +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); } - DEBUG_ECHOLNPGM("index=", index, " currentindex=", currentindex, "folderdepth=", folderdepth); - 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) @@ -126,33 +122,30 @@ void FileNavigator::getFiles(uint16_t index) { const int filelen = strlen(filelist.filename()); if (filelen > 20) { char *buf = (char *)filelist.filename(); - //char buf[filelen]; - //strcpy(&buf[filelen], 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"); + SERIAL_ECHOLNPGM("-", seek, " '", filelist.filename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); fcnt++; } } } void FileNavigator::changeDIR(char *folder) { - DEBUG_ECHOLNPGM("currentfolder: ", currentfoldername, " New: ", 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++; @@ -166,18 +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'; } - DEBUG_ECHOLNPGM("depth: ", folderdepth, " currentfoldername: ", currentfoldername); } -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 29f5628455..af98210a9f 100644 --- a/Marlin/src/lcd/extui/ia_creality/FileNavigator.h +++ b/Marlin/src/lcd/extui/ia_creality/FileNavigator.h @@ -30,16 +30,12 @@ * Written by Insanity Automation * ***************************************/ -#include "creality_extui.h" #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(); @@ -48,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/creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp deleted file mode 100644 index d9e3cb5877..0000000000 --- a/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp +++ /dev/null @@ -1,2203 +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 "creality_extui.h" -#include "FileNavigator.h" -#include "../ui_api.h" - -#include -#include -#include - -#define DEBUG_OUT ENABLED(DEBUG_DWIN) -#include "../../../core/debug_out.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; - int recnum = 0; - unsigned char Percentrecord = 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 - - unsigned char 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; - unsigned char 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 - - void onStartup() { - DWIN_SERIAL.begin(115200); - rtscheck.recdat.head[0] = rtscheck.snddat.head[0] = FHONE; - rtscheck.recdat.head[1] = rtscheck.snddat.head[1] = FHTWO; - memset(rtscheck.databuf, 0, sizeof(rtscheck.databuf)); - - delay_ms(TERN(DWINOS_4, 1500, 500)); // 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 (int 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 (int i = 0; i < MaxFileNumber; i++) - for (int j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - - DEBUG_ECHOLNPGM("==Dwin Init Complete=="); - } - - 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: DEBUG_ECHOLNPGM("PauseStatus"); 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; - DEBUG_ECHOLNPGM("==waitway 1=="); - rtscheck.RTS_SndData(ExchangePageBase + 54, ExchangepageAddr); - waitway = 0; - } - break; - - case 2: - if (isPositionKnown() && !commandsInQueue()) waitway = 0; - break; - - case 3: - DEBUG_ECHOLNPGM("==waitway 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 - DEBUG_ECHOLNPGM("==waitway 4=="); - // rtscheck.RTS_SndData(ExchangePageBase + 71 + AxisPagenum, ExchangepageAddr); - AutohomeKey = false; - waitway = 0; - } - break; - case 5: - if (isPositionKnown() && !commandsInQueue()) { - InforShowStatus = true; - waitway = 0; - DEBUG_ECHOLNPGM("==waitway 5=="); - 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; - DEBUG_ECHOLNPGM(" startprogress "); - 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) { - Percentrecord = getProgress_percent() + 1; - if (Percentrecord <= 50) { - rtscheck.RTS_SndData((unsigned int)Percentrecord * 2, PrintscheduleIcon); - rtscheck.RTS_SndData(0, PrintscheduleIcon + 1); - } - else { - rtscheck.RTS_SndData(100, PrintscheduleIcon); - rtscheck.RTS_SndData((unsigned int)Percentrecord * 2 - 100, PrintscheduleIcon + 1); - } - } - else { - rtscheck.RTS_SndData(0, PrintscheduleIcon); - rtscheck.RTS_SndData(0, PrintscheduleIcon + 1); - } - rtscheck.RTS_SndData((unsigned int)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((unsigned int)(getAxisSteps_per_mm(X) * 10), StepMM_X); - rtscheck.RTS_SndData((unsigned int)(getAxisSteps_per_mm(Y) * 10), StepMM_Y); - rtscheck.RTS_SndData((unsigned int)(getAxisSteps_per_mm(Z) * 10), StepMM_Z); - rtscheck.RTS_SndData((unsigned int)(getAxisSteps_per_mm(E0) * 10), StepMM_E); - - rtscheck.RTS_SndData(((unsigned int)getAxisMaxAcceleration_mm_s2(X) / 100), Accel_X); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxAcceleration_mm_s2(Y) / 100), Accel_Y); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxAcceleration_mm_s2(Z) / 10), Accel_Z); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxAcceleration_mm_s2(E0)), Accel_E); - - rtscheck.RTS_SndData(((unsigned int)getAxisMaxFeedrate_mm_s(X)), Feed_X); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxFeedrate_mm_s(Y)), Feed_Y); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxFeedrate_mm_s(Z)), Feed_Z); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxFeedrate_mm_s(E0)), Feed_E); - - rtscheck.RTS_SndData(((unsigned int)getAxisMaxJerk_mm_s(X) * 100), Jerk_X); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxJerk_mm_s(Y) * 100), Jerk_Y); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxJerk_mm_s(Z) * 100), Jerk_Z); - rtscheck.RTS_SndData(((unsigned int)getAxisMaxJerk_mm_s(E0) * 100), Jerk_E); - - #if HAS_HOTEND_OFFSET - rtscheck.RTS_SndData(((unsigned int)getNozzleOffset_mm(X, E1) * 10), T2Offset_X); - rtscheck.RTS_SndData(((unsigned int)getNozzleOffset_mm(Y, E1) * 10), T2Offset_Y); - rtscheck.RTS_SndData(((unsigned int)getNozzleOffset_mm(Z, E1) * 10), T2Offset_Z); - rtscheck.RTS_SndData((unsigned int)(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((unsigned int)(getPID_Kp(E0) * 10), HotendPID_P); - rtscheck.RTS_SndData((unsigned int)(getPID_Ki(E0) * 10), HotendPID_I); - rtscheck.RTS_SndData((unsigned int)(getPID_Kd(E0) * 10), HotendPID_D); - #if ENABLED(PIDTEMPBED) - rtscheck.RTS_SndData((unsigned int)(getBedPID_Kp() * 10), BedPID_P); - rtscheck.RTS_SndData((unsigned int)(getBedPID_Ki() * 10), BedPID_I); - rtscheck.RTS_SndData((unsigned int)(getBedPID_Kd() * 10), BedPID_D); - #endif - #endif - } - - rtscheck.RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - rtscheck.RTS_SndData((unsigned int)(getFlow_percent(E0)), Flowrate); - - if (NozzleTempStatus[0] || NozzleTempStatus[2]) { // statuse of loadfilement and unloadfinement when temperature is less than - unsigned int IconTemp; - - IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100); - 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); - DEBUG_ECHOLNPGM("==Heating Done Change Filament=="); - rtscheck.RTS_SndData(ExchangePageBase + 65, ExchangepageAddr); - } - else if (getActualTemp_celsius(getActiveTool()) >= getTargetTemp_celsius(getActiveTool()) && NozzleTempStatus[2]) { - DEBUG_ECHOLNPGM("***NozzleTempStatus[2] =", (int)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; - memset(databuf, 0, sizeof(databuf)); - } - - int 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(); - //DEBUG_ECHOLNPGM("< ",receivedbyte); - if (FHONE == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; - break; - - case DGUS_HEADER1_SEEN: // Waiting for the second header byte - receivedbyte = DWIN_SERIAL.read(); - //DEBUG_ECHOLNPGM(" ", receivedbyte); - 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_ECHOPAIR(" (", 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_ECHOPAIR("# ", command); - - 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 = DWIN_SERIAL.read(); - // DEBUGLCDCOMM_ECHOPAIR(" ", 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]) { - // DEBUG_ECHOLNPGM(">"); - 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) - //DEBUG_ECHOLNPGM(" vp=", vp, " dlen=", dlen); - recdat.addr = vp; - recdat.len = tmp[2]; - for (unsigned int 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]; - } - - DEBUG_ECHOLNPGM("VP received: ", vp, " - len ", tmp[2]); - - DEBUG_ECHOLNPGM("d1: ", tmp[3], " - d2 ", tmp[4]); - DEBUG_ECHOLNPGM("d3: ", tmp[5], " - d4 ", tmp[6]); - - rx_datagram_state = DGUS_IDLE; - return 2; - break; - } - - // discard anything else - rx_datagram_state = DGUS_IDLE; - } - return -1; - } - - void RTSSHOW::RTS_SndData(void) { - 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 (int 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 (int 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 (int i = 0; i < (snddat.len + 3); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - - memset(&snddat, 0, sizeof(snddat)); - memset(databuf, 0, sizeof(databuf)); - snddat.head[0] = FHONE; - snddat.head[1] = FHTWO; - } - } - - void RTSSHOW::RTS_SndData(const String &s, unsigned long addr, unsigned char cmd /*= VarAddr_W*/) { - if (s.length() < 1) return; - RTS_SndData(s.c_str(), addr, cmd); - } - - void RTSSHOW::RTS_SndData(const char *str, unsigned long addr, unsigned char cmd /*= VarAddr_W*/) { - - int len = strlen(str); - constexpr int 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 (int i = 0; i < len; i++) databuf[6 + i] = str[i]; - - for (int i = 0; i < (len + 6); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - memset(databuf, 0, sizeof(databuf)); - } - } - - void RTSSHOW::RTS_SndData(char c, unsigned long addr, unsigned char cmd /*= VarAddr_W*/) { - snddat.command = cmd; - snddat.addr = addr; - snddat.data[0] = (unsigned long)c; - snddat.data[0] = snddat.data[0] << 8; - snddat.len = 5; - RTS_SndData(); - } - - void RTSSHOW::RTS_SndData(unsigned char *str, unsigned long addr, unsigned char cmd) { RTS_SndData((char *)str, addr, cmd); } - - void RTSSHOW::RTS_SndData(int n, unsigned long addr, unsigned char cmd /*= VarAddr_W*/) { - if (cmd == VarAddr_W) { - if ((uint8_t)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(unsigned int n, unsigned long addr, unsigned char cmd) { RTS_SndData((int)n, addr, cmd); } - - void RTSSHOW::RTS_SndData(float n, unsigned long addr, unsigned char cmd) { RTS_SndData((int)n, addr, cmd); } - - void RTSSHOW::RTS_SndData(long n, unsigned long addr, unsigned char cmd) { RTS_SndData((unsigned long)n, addr, cmd); } - - void RTSSHOW::RTS_SndData(unsigned long n, unsigned long addr, unsigned char 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() { - int Checkkey = -1; - DEBUG_ECHOLNPGM(" *******RTS_HandleData******** "); - if (waitway > 0) { // for waiting - DEBUG_ECHOLNPGM("waitway ==", (int)waitway); - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - return; - } - DEBUG_ECHOLNPGM("recdat.data[0] ==", recdat.data[0], " recdat.addr ==", recdat.addr); - for (int 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 (Addrbuf[i] >= Stopprint && Addrbuf[i] <= Resumeprint) - Checkkey = PrintChoice; - else if (Addrbuf[i] >= AutoZero && Addrbuf[i] <= DisplayZaxis) - Checkkey = XYZEaxis; - else if (Addrbuf[i] >= FilamentUnit1 && Addrbuf[i] <= 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: break; - 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)) // ((int)AutolevelVal+(GRID_MAX_POINTS_X*GRID_MAX_POINTS_Y*2)) = 4400 with 5x5 mesh - Checkkey = AutolevelVal; - else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) - Checkkey = Filename; - break; - } - - DEBUG_ECHOLNPGM("== Checkkey=="); - DEBUG_ECHOLN(Checkkey); - - 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; - DEBUG_ECHOLNPGM("BeginSwitch"); - - switch (Checkkey) { - case Printfile: - if (recdat.data[0] == 1) { // card - InforShowStatus = false; - DEBUG_ECHOLNPGM("Handle Data PrintFile Pre"); - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; - DEBUG_ECHOLNPGM("Handle Data PrintFile Post"); - 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); - - DEBUG_ECHOLNPGM("Handle Data PrintFile 2 Setting Screen "); - RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); // exchange to 45 page - } - else if (recdat.data[0] == 3) { // Temperature control - InforShowStatus = true; - TPShowStatus = false; - DEBUG_ECHOLNPGM("Handle Data PrintFile 3 Setting Screen "); - 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) { - DEBUG_ECHOLNPGM("Handle Data Adjust 2 Setting Screen "); - 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) { - DEBUG_ECHOLNPGM("StopPrint"); - if (recdat.data[0] == 240) { // no - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - DEBUG_ECHOLNPGM("Stop No", recdat.data[0] ); - } - else { - RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); - RTS_SndData(0, Timehour); - RTS_SndData(0, Timemin); - DEBUG_ECHOLNPGM("Stop Triggered", recdat.data[0] ); - 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; - DEBUG_ECHOLNPGM("Requested Offset ", tmp_zprobe_offset); - 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) { - DEBUG_ECHOLNPGM("Rounding to step"); - tmpSteps = getZOffset_mm() < tmp_zprobe_offset ? 1 : -1; - } - smartAdjustAxis_steps(tmpSteps * -1, 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")); - RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - } - - 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: - DEBUG_ECHOLNPGM("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 = { 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 filement - InforShowStatus = true; - TPShowStatus = false; - memset(ChangeMaterialbuf, 0, sizeof(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[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: - DEBUG_ECHOPGM("Return : ", recdat.data[0]); - 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: - DEBUG_ECHOLNPGM("Bed Level Option ", recdat.data[0]); - 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); - //DEBUG_ECHOLNPGM("Babystep Pos Steps : ", (int)(getAxisSteps_per_mm(Z) / 10)); - //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) * -1), axis_t(Z), false); - // DEBUG_ECHOLNPGM("Babystep Neg Steps : ", (int)((getAxisSteps_per_mm(Z) / 10) * -1)); - // babystepAxis_steps((((int)getAxisSteps_per_mm(Z) / 10) * -1), 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: { - DEBUG_ECHOLNPGM("Unsupported Option Selected", recdat.data[0]); - 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: - - unsigned int IconTemp; - if (recdat.addr == Exchfilement) { - if (getActualTemp_celsius(getActiveTool()) < EXTRUDE_MINTEMP && recdat.data[0] < 5) { - RTS_SndData((int)EXTRUDE_MINTEMP, 0x1020); - delay_ms(5); - RTS_SndData(ExchangePageBase + 66, ExchangepageAddr); - break; - } - - switch (recdat.data[0]) { - case 1: { // Unload filement1 - setAxisPosition_mm((getAxisPosition_mm(E0) - ChangeMaterialbuf[0]), E0); - break; - } - case 2: { // Load filement1 - setAxisPosition_mm((getAxisPosition_mm(E0) + ChangeMaterialbuf[0]), E0); - break; - } - case 3: { // Unload filement2 - setAxisPosition_mm((getAxisPosition_mm(E1) - ChangeMaterialbuf[1]), E1); - break; - } - case 4: { // Load filement2 - setAxisPosition_mm((getAxisPosition_mm(E1) + ChangeMaterialbuf[1]), E1); - break; - } - case 5: { // sure to heat - NozzleTempStatus[0] = 1; - // InforShowoStatus = true; - - setTargetTemp_celsius((PREHEAT_1_TEMP_HOTEND + 10), getActiveTool()); - IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100); - 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 - // InforShowoStatus = true; - 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_AXIS] 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: - - DEBUG_ECHOLNPGM("\n ***recdat.data[0] =", recdat.data[0]); - /*if(recdat.data[0]==1) { - settings.save(); - } - else { - injectCommands(F("M300")); - }*/ - // may at some point use language change screens to save eeprom explicitly - DEBUG_ECHOLNPGM("InLangChoice"); - switch (recdat.data[0]) { - case 0: { - DEBUG_ECHOLNPGM("Store Settings"); - 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: { - DEBUG_ECHOLNPGM("Init EEPROM"); - injectCommands(F("M502\nM500")); - break; - } - case 4: { - DEBUG_ECHOLNPGM("BLTouch Reset"); - injectCommands(F("M999\nM280P0S160")); - break; - } - - case 5: { - #if ENABLED(PIDTEMPBED) - onStatusChanged(F("Bed PID Started")); - startBedPIDTune(static_cast(pid_bedAutoTemp)); - #else - DEBUG_ECHOLNPGM("Bed PID Disabled"); - #endif - break; - } - case 6: { - DEBUG_ECHOLNPGM("Store Settings"); - injectCommands(F("M500")); - break; - } - default: { - DEBUG_ECHOLNPGM("Invalid Option"); - break; - } - } - break; - case No_Filament: - DEBUG_ECHOLNPGM("\n No Filament"); - - if (recdat.data[0] == 1) { // Filament is out, resume / resume selected on screen - DEBUG_ECHOLNPGM("Resume Yes during print"); - 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 - DEBUG_ECHOLNPGM(" Filament Response No"); - 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: - DEBUG_ECHOLNPGM("Filename Selected"); - if (isMediaInserted() && recdat.addr == FilenameChs) { - DEBUG_ECHOLNPGM("Has Media"); - - recordcount = recdat.data[0] - 1; - if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0 && (fileIndex + recordcount) == 0) { - filenavigator.upDIR(); - DEBUG_ECHOLNPGM("GoUpDir"); - 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 (int j = 1; j <= 4; j++) { // Clear filename BG Color and Frame - RTS_SndData((unsigned long)0xFFFF, FilenameNature + j * 16); // white - RTS_SndData(10, FilenameIcon1 + j); // clean - } - for (int j = 0; j < 10; j++) // clear current filename - RTS_SndData(0, Choosefilename + j); - - if (filenavigator.getIndexisDir(fileIndex + recordcount)) { - DEBUG_ECHOLNPGM("Is Dir ", (fileIndex + recordcount)); - filenavigator.changeDIR((char *)filenavigator.getIndexName(fileIndex + recordcount)); - filenavigator.getFiles(0); - fileIndex = 0; - return; - } - else { - DEBUG_ECHOLNPGM("Is File ", (fileIndex + recordcount)); - RTS_SndData(filenavigator.getIndexName(fileIndex + recordcount), Choosefilename); - RTS_SndData((unsigned long)0x87F0, 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 (int j = 0; j < 10; j++) // clean screen. - RTS_SndData(0, Printfilename + j); - - RTS_SndData(filenavigator.getIndexName(fileIndex + recordcount), Printfilename); - delay_ms(2); - - delay_ms(2); - 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 - DEBUG_ECHOLNPGM("PgDown"); - 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 - DEBUG_ECHOLNPGM("PgUp"); - 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 - DEBUG_ECHOLNPGM("Refresh"); - injectCommands(F("M22\nM21")); - } - else if (recdat.data[0] == 0) { // return to main page - InforShowStatus = true; - TPShowStatus = false; - } - } - break; - - case VolumeDisplay: { - DEBUG_ECHOLNPGM("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: { - DEBUG_ECHOLNPGM("DisplayBrightness LCD: ", recdat.data[0]); - 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]; - DEBUG_ECHOLNPGM("DisplayBrightness Set: ", Settings.screen_brightness); - SetTouchScreenConfiguration(); - break; - } - - case DisplayStandbyBrightness: { - DEBUG_ECHOLNPGM("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: { - DEBUG_ECHOLNPGM("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 - - DEBUG_ECHOLNPGM("meshPoint ", meshPoint, " xPnt ", xPnt, " yPnt ", yPnt); - - float meshVal = float(recdat.data[0] - (recdat.data[0] >= 32768 ? 65536 : 0)) / 1000; - - DEBUG_ECHOLNPGM("meshVal ", meshVal); - LIMIT(meshVal, Z_PROBE_LOW_POINT, Z_CLEARANCE_BETWEEN_PROBES); - DEBUG_ECHOLNPGM("Constrain meshVal ", meshVal); - xy_uint8_t point = { xPnt, yPnt }; - setMeshPoint(point, meshVal); - rtscheck.RTS_SndData(meshVal * 1000, recdat.addr); - break; - } - - default: - DEBUG_ECHOLNPGM("No Match :"); - 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 - - unsigned char 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 EITHER(MachineCR10Smart, MachineCR10SmartPro) - | _BV(0) // Portrait Mode or 800x480 display has 0 point rotated 90deg from 480x272 display - #endif - ; - - const unsigned char 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 unsigned char 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) { - DEBUG_ECHOLNPGM("***kill***"); - rtscheck.RTS_SndData(ExchangePageBase + 88, ExchangepageAddr); - int 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() { - DEBUG_ECHOLNPGM("***Initing card is OK***"); - filenavigator.reset(); - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; - } - - void onMediaError() { - filenavigator.reset(); - for (int i = 0; i < MaxFileNumber; i++) - for (int j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - return; - DEBUG_ECHOLNPGM("***Initing card fails***"); - } - - void onMediaRemoved() { - filenavigator.reset(); - for (int i = 0; i < MaxFileNumber; i++) - for (int j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - return; - DEBUG_ECHOLNPGM("***Card Removed***"); - } - - void onPlayTone(const uint16_t frequency, const uint16_t duration) { - DEBUG_ECHOLNPGM("***CPlay Tone***"); - rtscheck.RTS_SndData(StartSoundSet, SoundAddr); - } - - void onPrintTimerStarted() { - DEBUG_ECHOLNPGM("==onPrintTimerStarted=="); - if (waitway == 7) return; - PrinterStatusKey[1] = 3; - InforShowStatus = true; - delay_ms(1); - rtscheck.RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - } - - void onPrintTimerPaused() { - DEBUG_ECHOLNPGM("==onPrintTimerPaused=="); - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); // Display Pause Screen - onStatusChanged(F("Pausing...")); - } - void onPrintTimerStopped() { - DEBUG_ECHOLNPGM("==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() { - DEBUG_ECHOLNPGM("==onFilamentRunout=="); - PrinterStatusKey[1] = 4; - TPShowStatus = false; - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - } - void onFilamentRunout(extruder_t extruder) { - DEBUG_ECHOLNPGM("==onFilamentRunout=="); - 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(); - DEBUG_ECHOLNPGM("Pause Mode Status"); - break; - } - } - lastPauseMsgState = ExtUI::pauseModeStatus; - DEBUG_ECHOLNPGM("==onUserConfirmRequired==", pauseModeStatus); - } - - void onStatusChanged(const char *const statMsg) { - for (int 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; - DEBUG_ECHOLNPGM("==onFactoryReset=="); - } - - 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 = { 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 - DEBUG_ECHOLNPGM("Saving DWIN LCD setting from EEPROM"); - 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)) { - DEBUG_ECHOLNPGM("Discarding DWIN LCD setting from EEPROM - size incorrect"); - onFactoryReset(); - return; - } - - if (eepromSettings.settings_version != dwin_settings_version) { - DEBUG_ECHOLNPGM("Discarding DWIN LCD setting from EEPROM - settings version incorrect"); - onFactoryReset(); - return; - } - - // Copy into final location - DEBUG_ECHOLNPGM("Loading DWIN LCD setting from EEPROM"); - memcpy(&Settings, &eepromSettings, sizeof(creality_dwin_settings_t)); - - DEBUG_ECHOLNPGM("Setting Brightness : ", Settings.screen_brightness); - DEBUG_ECHOLNPGM("Setting Standby : ", Settings.standby_screen_brightness); - DEBUG_ECHOLNPGM("Setting Standby Time : ", Settings.standby_time_seconds); - DEBUG_ECHOLNPGM("Setting Rotation : ", Settings.screen_rotation); - DEBUG_ECHOLNPGM("Setting Volume : ", Settings.display_volume); - - DEBUG_ECHOLNPGM("Setting Standby On : ", Settings.display_standby); - DEBUG_ECHOLNPGM("Setting Volume On : ", Settings.display_sound); - - SetTouchScreenConfiguration(); - } - - void onSettingsStored(bool success) { - DEBUG_ECHOLNPGM("==onSettingsStored=="); - // This is called after the entire EEPROM has been written, - // whether successful or not. - } - - void onSettingsLoaded(bool success) { - DEBUG_ECHOLNPGM("==onConfigurationStoreRead=="); - #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 = { 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 - - DEBUG_ECHOLNPGM("\n init zprobe_zoffset = ", getZOffset_mm()); - rtscheck.RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - SetTouchScreenConfiguration(); - } - - #if ENABLED(POWER_LOSS_RECOVERY) - void onPowerLossResume() { - DEBUG_ECHOLNPGM("==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((unsigned int)(getPID_Kp(E0) * 10), HotendPID_P); - rtscheck.RTS_SndData((unsigned int)(getPID_Ki(E0) * 10), HotendPID_I); - rtscheck.RTS_SndData((unsigned int)(getPID_Kd(E0) * 10), HotendPID_D); - #if ENABLED(PIDTEMPBED) - rtscheck.RTS_SndData((unsigned int)(getBedPID_Kp() * 10), BedPID_P); - rtscheck.RTS_SndData((unsigned int)(getBedPID_Ki() * 10), BedPID_I); - rtscheck.RTS_SndData((unsigned int)(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 = { 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 0000000000..2d6c2aa96e --- /dev/null +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp @@ -0,0 +1,403 @@ +/** + * 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 Marlin ExtUI + * 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" + +namespace ExtUI { + +uint8_t dwin_settings_version = 1; + +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; + show_status = 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; + show_status = 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() { + 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; +} + +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, &dwin_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(&dwin_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::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++) { + 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; + show_status = true; + tpShowStatus = false; + no_reentry = 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::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++) { + 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_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp new file mode 100644 index 0000000000..6246b9f002 --- /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, 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; + 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::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++) { + 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/creality_extui.h b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h similarity index 56% rename from Marlin/src/lcd/extui/ia_creality/creality_extui.h rename to Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h index a051ea92c2..3b467f4d25 100644 --- a/Marlin/src/lcd/extui/ia_creality/creality_extui.h +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h @@ -22,18 +22,18 @@ #pragma once /* **************************************** - * lcd/extui/ia_creality/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 "string.h" -#include -#include "../ui_api.h" +#include "../../../inc/MarlinConfig.h" + +#include /*********************************/ #define FHONE (0x5A) @@ -47,21 +47,23 @@ #define FileNum MaxFileNumber #define FileNameLen TEXTBYTELEN -#define SizeofDatabuf 46 +#define DATA_BUF_SIZE 46 -/*************Register and Variable addr*****************/ +//#define FONT_EEPROM 90 +//#define AutoLeve_EEPROM 100 +//#define FanOn 255 +#define FanOff 0 + +#define ExchangePageBase 0x5A010000UL // the first page ID. other page = first page ID + relevant num; +#define StartSoundSet 0x060480A0UL // 06,start-music; 04, 4 musics; 80, the volume value; 04, return value about music number. + +// Register addresses #define RegAddr_W 0x80 #define RegAddr_R 0x81 #define VarAddr_W 0x82 #define VarAddr_R 0x83 -#define ExchangePageBase (unsigned long)0x5A010000 // the first page ID. other page = first page ID + relevant num; -#define StartSoundSet ((unsigned long)0x060480A0) // 06,start-music; 04, 4 musics; 80, the volume value; 04, return value about music number. -//#define FONT_EEPROM 90 -//#define AutoLeve_EEPROM 100 -//#define FanOn 255 -#define FanOff 0 -/*variable addr*/ +// Variable addresses #define ExchangepageAddr 0x0084 #define SoundAddr 0x00A0 #define StartIcon 0x1000 @@ -142,7 +144,7 @@ #define DisplayZaxis 0x104C #define FilamentUnit1 0x1054 -#define Exchfilement 0x1056 +#define Exchfilament 0x1056 #define FilamentUnit2 0x1058 #define MacVersion 0x1060 @@ -175,120 +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**************/ - /************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 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; - typedef struct DataBuf { - unsigned char len; - unsigned char head[2]; - unsigned char command; - unsigned long addr; - unsigned long bytelen; - unsigned short data[32]; - unsigned char reserv[4]; - } DB; +struct creality_dwin_settings_t { + size_t settings_size; + uint8_t settings_version; - 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_brightness; + uint8_t screen_brightness; + int16_t standby_time_seconds; +}; - 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); - void SetTouchScreenConfiguration(); + 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); } - class RTSSHOW { - public: - RTSSHOW(); - int RTS_RecData(); - void RTS_SDCardInit(void); - void RTS_SDCardUpate(bool, bool); - int RTS_CheckFilament(int); - void RTS_SndData(void); - void RTS_SndData(const String &, unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(const char[], unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(char, unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(unsigned char*, unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(int, unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(float, unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(unsigned int,unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(long,unsigned long, unsigned char = VarAddr_W); - void RTS_SndData(unsigned long,unsigned long, unsigned char = VarAddr_W); - void RTS_SDcard_Stop(); - void RTS_HandleData(); - void RTS_Init(); + static void handleData(); - DB recdat; - DB snddat; - unsigned char databuf[SizeofDatabuf]; + 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 rx_datagram_state_t rx_datagram_state; - static uint8_t rx_datagram_len; - static bool Initialized; - }; + static DB recdat, snddat; + static uint8_t databuf[DATA_BUF_SIZE]; - static RTSSHOW rtscheck; + static rx_datagram_state_t rx_datagram_state; + static uint8_t rx_datagram_len; +}; - #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) +extern RTS rts; - 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 - }; +#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) - const unsigned long 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 - }; +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 +}; - void RTSUpdate(); - void RTSInit(); +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 +}; -} // ExtUI +void RTS_Update(); #ifndef MAIN_MENU_ITEM_1_GCODE #if ENABLED(AUTO_BED_LEVELING_BILINEAR) @@ -301,3 +297,19 @@ namespace ExtUI { #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/ia_dwin/Creality_DWIN.cpp b/Marlin/src/lcd/extui/ia_dwin/Creality_DWIN.cpp index 152f79e594..0cab6c3231 100644 --- a/Marlin/src/lcd/extui/ia_dwin/Creality_DWIN.cpp +++ b/Marlin/src/lcd/extui/ia_dwin/Creality_DWIN.cpp @@ -47,6 +47,8 @@ namespace ExtUI const float manual_feedrate_mm_m[] = MANUAL_FEEDRATE; uint8_t startprogress = 0; + uint16_t rcvdData; + uint8_t babystepIncrementIndex = 0; char waitway = 0; @@ -60,8 +62,6 @@ namespace ExtUI // PrinterStatusKey[0] value: 0 reprensents 3D printer ready unsigned char 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. int16_t userConfValidation = 0; uint8_t lastPauseMsgState = 0; @@ -162,7 +162,7 @@ void onIdle() { int dataRec; - do { dataRec = rtscheck.RTS_RecData(); } while (dataRec > 0); + do { dataRec = rtscheck.RTS_RecData(); rcvdData++;} while (dataRec > 0); if (reEntryPrevent && reEntryCount < 120) { reEntryCount++; @@ -249,7 +249,6 @@ if(idleThrottling == 300) { { case 1: if(isPositionKnown()) { - InforShowStatus = true; SERIAL_ECHOLNPGM_P(PSTR("==waitway 1==")); rtscheck.RTS_SndData(ExchangePageBase + 54, ExchangepageAddr); waitway = 0; @@ -275,7 +274,6 @@ if(idleThrottling == 300) { break; case 5: if(isPositionKnown() && !commandsInQueue()) { - InforShowStatus = true; waitway = 0; SERIAL_ECHOLNPGM_P(PSTR("==waitway 5==")); rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); //exchange to 78 page @@ -388,8 +386,6 @@ if(idleThrottling == 400) { // injectCommands_P(PSTR("M22\nM21")); startprogress = 254; //SERIAL_ECHOLNPGM_P(PSTR(" startprogress ")); - InforShowStatus = true; - TPShowStatus = false; rtscheck.RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); reEntryPrevent = false; return; @@ -532,7 +528,6 @@ if(idleThrottling == 1700) { { //SERIAL_ECHOLNPGM("***NozzleTempStatus[2] =", (int)NozzleTempStatus[2]); NozzleTempStatus[2] = 0; - TPShowStatus = true; rtscheck.RTS_SndData(4, ExchFlmntIcon); rtscheck.RTS_SndData(ExchangePageBase + 83, ExchangepageAddr); } @@ -574,14 +569,21 @@ if(idleThrottling == 1900) { void yield(); - -if(idleThrottling == 2000) { - idleThrottling = 0; -} #if ENABLED(DWINOS_4) int dataRec2; - do { dataRec2 = rtscheck.RTS_RecData(); } while (dataRec2 > 0); // Since OS4 returns an ack on an 82 command, receive and purge it now + do { dataRec2 = rtscheck.RTS_RecData(); rcvdData++;} while (dataRec2 > 0); // Since OS4 returns an ack on an 82 command, receive and purge it now #endif + +if(idleThrottling == 2000) { + if(rcvdData < 4010) + { + SERIAL_ECHOLNPGM("RX Halt Detected..."); + RTSSHOW::rx_datagram_state = DGUS_IDLE; + DWIN_SERIAL.flush(); + } + idleThrottling = 0; +} + reEntryPrevent = false; } @@ -598,9 +600,14 @@ RTSSHOW::RTSSHOW() int RTSSHOW::RTS_RecData() { + //if(!isPrinting()) + //SERIAL_ECHOLNPGM("Receiving..."); uint8_t receivedbyte; - #if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS) - if (!DWIN_SERIAL.available() && DWIN_SERIAL.buffer_overruns()) { + if(!DWIN_SERIAL.connected()) + DWIN_SERIAL.begin(115200); + + //#if ENABLED(DGUS_SERIAL_STATS_RX_BUFFER_OVERRUNS) + if ((!DWIN_SERIAL.available() && DWIN_SERIAL.buffer_overruns()) || DWIN_SERIAL.dropped() > 0) { // Overrun, but reset the flag only when the buffer is empty // We want to extract as many as valid datagrams possible... SERIAL_ECHOLNPGM("OVFL"); @@ -678,10 +685,10 @@ int RTSSHOW::RTS_RecData() recdat.data[i/2]= (recdat.data[i/2] << 8 )| tmp[4+i]; } - //SERIAL_ECHOLNPGM("VP received: ", vp , " - len ", tmp[2]); + SERIAL_ECHOLNPGM("VP received: ", vp , " - len ", tmp[2]); - //SERIAL_ECHOLNPGM("d1: ", tmp[3] , " - d2 ", tmp[4]); - //SERIAL_ECHOLNPGM("d3: ", tmp[5] , " - d4 ", tmp[6]); + SERIAL_ECHOLNPGM("d1: ", tmp[3] , " - d2 ", tmp[4]); + SERIAL_ECHOLNPGM("d3: ", tmp[5] , " - d4 ", tmp[6]); rx_datagram_state = DGUS_IDLE; RTS_HandleData(); @@ -691,9 +698,15 @@ int RTSSHOW::RTS_RecData() // discard anything else rx_datagram_state = DGUS_IDLE; + //if(!isPrinting()) + SERIAL_ECHOLNPGM("Discard Return..."); return -1; } + //if(!isPrinting()) + //SERIAL_ECHOLNPGM("No Case Match..."); } + //if(!isPrinting()) + //SERIAL_ECHOLNPGM("No Data..."); return -1; } @@ -1045,7 +1058,6 @@ void RTSSHOW::RTS_HandleData() case Printfile: if (recdat.data[0] == 1) // card { - InforShowStatus = false; //SERIAL_ECHOLNPGM_P(PSTR("Handle Data PrintFile Pre")); filenavigator.getFiles(0); fileIndex = 0; @@ -1055,8 +1067,6 @@ void RTSSHOW::RTS_HandleData() } else if (recdat.data[0] == 2) // return after printing result. { - InforShowStatus = true; - TPShowStatus = false; stopPrint(); injectCommands_P(PSTR("M84")); delay_ms(50); @@ -1078,24 +1088,19 @@ void RTSSHOW::RTS_HandleData() } else if (recdat.data[0] == 3) // Temperature control { - InforShowStatus = true; - TPShowStatus = false; //SERIAL_ECHOLNPGM_P(PSTR("Handle Data PrintFile 3 Setting Screen ")); RTS_SndData(ExchangePageBase + 57, ExchangepageAddr); //exchange to 57 page, the fans on } else if (recdat.data[0] == 4) //Settings - InforShowStatus = false; break; case Ajust: if (recdat.data[0] == 1) { - InforShowStatus = false; } else if (recdat.data[0] == 2) { //SERIAL_ECHOLNPGM_P(PSTR("Handle Data Adjust 2 Setting Screen ")); - InforShowStatus = true; if (PrinterStatusKey[1] == 3) // during heating { RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); @@ -1187,7 +1192,6 @@ void RTSSHOW::RTS_HandleData() resumePrint(); PrinterStatusKey[1] = 0; - InforShowStatus = true; RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); } @@ -1196,7 +1200,6 @@ void RTSSHOW::RTS_HandleData() resumePrint(); NozzleTempStatus[2] = 1; PrinterStatusKey[1] = 0; - InforShowStatus = true; RTS_SndData(ExchangePageBase + 68, ExchangepageAddr); } break; @@ -1240,8 +1243,6 @@ void RTSSHOW::RTS_HandleData() case TempControl: if (recdat.data[0] == 0) { - InforShowStatus = true; - TPShowStatus = false; } else if (recdat.data[0] == 1) { @@ -1249,7 +1250,6 @@ void RTSSHOW::RTS_HandleData() } else if (recdat.data[0] == 2) { - InforShowStatus = true; } else if (recdat.data[0] == 3) { @@ -1282,7 +1282,6 @@ void RTSSHOW::RTS_HandleData() } 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); @@ -1523,8 +1522,6 @@ void RTSSHOW::RTS_HandleData() case Setting: if (recdat.data[0] == 0) // return to main page { - InforShowStatus = true; - TPShowStatus = false; } else if (recdat.data[0] == 1) //Bed Autoleveling { @@ -1534,7 +1531,7 @@ void RTSSHOW::RTS_HandleData() else RTS_SndData(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++) @@ -1562,8 +1559,6 @@ void RTSSHOW::RTS_HandleData() } else if (recdat.data[0] == 2) // Exchange filement { - InforShowStatus = true; - TPShowStatus = false; memset(ChangeMaterialbuf, 0, sizeof(ChangeMaterialbuf)); ChangeMaterialbuf[1] = ChangeMaterialbuf[0] = 10; RTS_SndData(10 * ChangeMaterialbuf[0], FilementUnit1); //It's ChangeMaterialbuf for show,instead of current_position[E_AXIS] in them. @@ -1604,7 +1599,6 @@ void RTSSHOW::RTS_HandleData() SERIAL_ECHOPGM("Return : ", recdat.data[0]); 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 @@ -1955,7 +1949,6 @@ void RTSSHOW::RTS_HandleData() { waitway = 4; injectCommands_P((PSTR("G28\nG1 F1000 Z10"))); - InforShowStatus = true; RTS_SndData(10, FilenameIcon); } else @@ -2250,7 +2243,6 @@ void RTSSHOW::RTS_HandleData() delay_ms(2); RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - TPShowStatus = InforShowStatus = true; PrinterStatusKey[0] = 1; PrinterStatusKey[1] = 3; fileIndex = 0; @@ -2284,11 +2276,6 @@ void RTSSHOW::RTS_HandleData() //SERIAL_ECHOLNPGM_P(PSTR("Refresh")); injectCommands_P(PSTR("M22\nM21")); } - else if (recdat.data[0] == 0) // return to main page - { - InforShowStatus = true; - TPShowStatus = false; - } } break; @@ -2548,7 +2535,6 @@ void onPrintTimerStarted() if ( waitway == 7 ) return; PrinterStatusKey[1] = 3; - InforShowStatus = true; delay_ms(1); rtscheck.RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); } @@ -2571,8 +2557,6 @@ void onPrintTimerStopped() #endif PrinterStatusKey[0] = 0; - InforShowStatus = true; - TPShowStatus = false; rtscheck.RTS_SndData(ExchangePageBase + 51, ExchangepageAddr); } @@ -2580,20 +2564,17 @@ void onFilamentRunout() { //SERIAL_ECHOLNPGM_P(PSTR("==onFilamentRunout==")); PrinterStatusKey[1] = 4; - TPShowStatus = false; rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); } void onFilamentRunout(extruder_t extruder) { //SERIAL_ECHOLNPGM_P(PSTR("==onFilamentRunout==")); 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; @@ -2717,7 +2698,6 @@ void onFactoryReset() Settings.screen_rotation = 0; onStartup(); startprogress = 0; - InforShowStatus = true; //SERIAL_ECHOLNPGM_P(PSTR("==onFactoryReset==")); } @@ -2813,7 +2793,7 @@ void onSettingsLoaded(bool success) { //SERIAL_ECHOLNPGM_P(PSTR("==onConfigurationStoreRead==")); #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++) @@ -2848,8 +2828,6 @@ void onSettingsLoaded(bool success) void onPowerLossResume() { //SERIAL_ECHOLNPGM_P(PSTR("==OnPowerLossResume==")); startprogress = 254; - InforShowStatus = true; - TPShowStatus = false; reEntryPrevent = false; rtscheck.RTS_SndData(ExchangePageBase + 76, ExchangepageAddr); } @@ -2877,7 +2855,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++) @@ -2934,6 +2912,15 @@ void onPostprocessSettings() } +void onSetPowerLoss(const bool onoff) +{ + +} +void onPowerLoss() +{ + +} + } // namespace ExtUI diff --git a/Marlin/src/lcd/extui/malyan/malyan.cpp b/Marlin/src/lcd/extui/malyan/malyan.cpp index 06c9886f01..d1c2387682 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); @@ -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 @@ -326,8 +326,8 @@ void process_lcd_s_command(const char *command) { // select a file for printing during a print, there's // little reason not to do it this way. char message_buffer[MAX_CURLY_COMMAND]; - uint16_t file_count = card.get_num_Files(); - for (uint16_t i = 0; i < file_count; i++) { + int16_t file_count = card.get_num_items(); + for (int16_t i = 0; i < file_count; i++) { card.selectFileByIndex(i); sprintf_P(message_buffer, card.flag.filenameIsDir ? PSTR("{DIR:%s}") : PSTR("{FILE:%s}"), card.longest_filename()); write_to_lcd(message_buffer); diff --git a/Marlin/src/lcd/extui/malyan/malyan_extui.cpp b/Marlin/src/lcd/extui/malyan/malyan_extui.cpp index 8ed319e35c..f82f1f06a7 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. @@ -147,18 +147,29 @@ namespace ExtUI { void onStoreSettings(char*) {} void onLoadSettings(const char*) {} void onPostprocessSettings() {} - void onSettingsStored(bool) {} - void onSettingsLoaded(bool) {} + 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) - void onPowerLossResume() {} + 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 + } #endif void onSteppersDisabled() {} diff --git a/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp b/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp index 6508f6f024..2c6dda5121 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 @@ -148,7 +148,7 @@ uint32_t SPIFlashStorage::m_startAddress; #endif // HAS_SPI_FLASH_COMPRESSION -void SPIFlashStorage::beginWrite(uint32_t startAddress) { +void SPIFlashStorage::beginWrite(const uint32_t startAddress) { m_pageDataUsed = 0; m_currentPage = 0; m_startAddress = startAddress; @@ -171,7 +171,7 @@ void SPIFlashStorage::endWrite() { #endif } -void SPIFlashStorage::savePage(uint8_t *buffer) { +void SPIFlashStorage::savePage(uint8_t * const buffer) { W25QXX.SPI_FLASH_BufferWrite(buffer, m_startAddress + (SPI_FLASH_PageSize * m_currentPage), SPI_FLASH_PageSize); // Test env // char fname[256]; @@ -181,7 +181,7 @@ void SPIFlashStorage::savePage(uint8_t *buffer) { // fclose(fp); } -void SPIFlashStorage::loadPage(uint8_t *buffer) { +void SPIFlashStorage::loadPage(uint8_t * const buffer) { W25QXX.SPI_FLASH_BufferRead(buffer, m_startAddress + (SPI_FLASH_PageSize * m_currentPage), SPI_FLASH_PageSize); // Test env // char fname[256]; @@ -260,7 +260,7 @@ void SPIFlashStorage::readPage() { #endif } -uint16_t SPIFlashStorage::inData(uint8_t *data, uint16_t size) { +uint16_t SPIFlashStorage::inData(const uint8_t * const data, uint16_t size) { // Don't write more than we can NOMORE(size, pageDataFree()); memcpy(m_pageData + m_pageDataUsed, data, size); @@ -268,12 +268,12 @@ uint16_t SPIFlashStorage::inData(uint8_t *data, uint16_t size) { return size; } -void SPIFlashStorage::writeData(uint8_t *data, uint16_t size) { +void SPIFlashStorage::writeData(const uint8_t *data, uint16_t size) { // Flush a page if needed if (pageDataFree() == 0) flushPage(); while (size > 0) { - uint16_t written = inData(data, size); + const uint16_t written = inData(data, size); size -= written; // Need to write more? Flush page and continue! if (size > 0) { @@ -283,7 +283,7 @@ void SPIFlashStorage::writeData(uint8_t *data, uint16_t size) { } } -void SPIFlashStorage::beginRead(uint32_t startAddress) { +void SPIFlashStorage::beginRead(const uint32_t startAddress) { m_startAddress = startAddress; m_currentPage = 0; // Nothing in memory now @@ -293,7 +293,7 @@ void SPIFlashStorage::beginRead(uint32_t startAddress) { #endif } -uint16_t SPIFlashStorage::outData(uint8_t *data, uint16_t size) { +uint16_t SPIFlashStorage::outData(uint8_t * const data, uint16_t size) { // Don't read more than we have NOMORE(size, pageDataFree()); memcpy(data, m_pageData + m_pageDataUsed, size); @@ -306,7 +306,7 @@ void SPIFlashStorage::readData(uint8_t *data, uint16_t size) { if (pageDataFree() == 0) readPage(); while (size > 0) { - uint16_t read = outData(data, size); + const uint16_t read = outData(data, size); size -= read; // Need to write more? Flush page and continue! if (size > 0) { diff --git a/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.h b/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.h index 72394286ac..bd7109b7ac 100644 --- a/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.h +++ b/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.h @@ -75,23 +75,23 @@ class SPIFlashStorage { public: // Write operation - static void beginWrite(uint32_t startAddress); + static void beginWrite(const uint32_t startAddress); static void endWrite(); - static void writeData(uint8_t *data, uint16_t size); + static void writeData(const uint8_t *data, uint16_t size); // Read operation - static void beginRead(uint32_t startAddress); + static void beginRead(const uint32_t startAddress); static void readData(uint8_t *data, uint16_t size); static uint32_t getCurrentPage() { return m_currentPage; } private: static void flushPage(); - static void savePage(uint8_t *buffer); - static void loadPage(uint8_t *buffer); + static void savePage(uint8_t * const buffer); + static void loadPage(uint8_t * const buffer); static void readPage(); - static uint16_t inData(uint8_t *data, uint16_t size); - static uint16_t outData(uint8_t *data, uint16_t size); + static uint16_t inData(const uint8_t * const data, uint16_t size); + static uint16_t outData(uint8_t * const data, uint16_t size); static uint8_t m_pageData[SPI_FLASH_PageSize]; static uint32_t m_currentPage; diff --git a/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp b/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp index 42abd4bf64..6cbe13e9fd 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 62a084fb11..56576c8c16 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_acceleration_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_acceleration_settings.cpp index ac7d6d3dfb..48455e7e36 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/draw_auto_level_offset_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_auto_level_offset_settings.cpp index fd14585e70..5a5d457b08 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 1dae0ebe22..0798db1cc9 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_dialog.cpp b/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp index a69c54bcff..f0609f4ebb 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp @@ -85,12 +85,12 @@ 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], '/'); - SdFile file, *curDir; + MediaFile file, *curDir; card.abortFilePrintNow(); const char * const fname = card.diveToFile(false, curDir, cur_name); if (!fname) return; @@ -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_error_message.cpp b/Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp index bc15100153..2c9928f387 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_jerk_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_jerk_settings.cpp index a070cae15f..5b22103e8f 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 81c82dc02d..085a008acd 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_operation.cpp b/Marlin/src/lcd/extui/mks_ui/draw_operation.cpp index ffe714fca9..bf39a52fe9 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_pause_message.cpp b/Marlin/src/lcd/extui/mks_ui/draw_pause_message.cpp index e5f6a5963a..b753a57801 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_print_file.cpp b/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp index 0199bc1f55..da79cb6174 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; @@ -72,11 +72,11 @@ uint8_t sel_id = 0; else card.cdroot(); - const uint16_t fileCnt = card.get_num_Files(); + const int16_t fileCnt = card.get_num_items(); - for (uint16_t i = 0; i < fileCnt; i++) { + for (int16_t i = 0; i < fileCnt; i++) { if (list_file.Sd_file_cnt == list_file.Sd_file_offset) { - card.getfilename_sorted(SD_ORDER(i, fileCnt)); + card.selectFileByIndexSorted(i); list_file.IsFolder[valid_name_cnt] = card.flag.filenameIsDir; strcpy(list_file.file_name[valid_name_cnt], list_file.curDirPath); @@ -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); @@ -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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - 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 ENABLED(SDSUPPORT) - file_count = search_file(); - #endif + TERN_(HAS_MEDIA, file_count = search_file()); lv_clear_print_file(); disp_gcode_icon(file_count); } @@ -222,7 +210,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 +347,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 +363,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,9 +383,8 @@ int ascii2dec_test(char *ascii) { } void lv_gcode_file_read(uint8_t *data_buf) { - #if ENABLED(SDSUPPORT) - uint16_t i = 0, j = 0, k = 0; - uint16_t row_1 = 0; + #if HAS_MEDIA + 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,29 +422,18 @@ 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 // 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 5dc3861f65..345c5dd732 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_tmc_current_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_tmc_current_settings.cpp index 9ec8f1501a..b243c88705 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 990cdda7e6..d09c823b59 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 e0c663e282..0fd2aa0ee9 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" @@ -47,44 +47,44 @@ 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() { uint16_t x, y; - calibrationState calibration_stage = touch_calibration.get_calibration_state(); - if (calibration_stage == CALIBRATION_NONE) { + calibrationState stage = touch_calibration.get_calibration_state(); + if (stage == CALIBRATION_NONE) { // start and clear screen - calibration_stage = touch_calibration.calibration_start(); + stage = touch_calibration.calibration_start(); } else { // clear last cross - x = touch_calibration.calibration_points[_MIN(calibration_stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(calibration_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); } const char *str = nullptr; - if (calibration_stage < CALIBRATION_SUCCESS) { + if (stage < CALIBRATION_SUCCESS) { // handle current state - switch (calibration_stage) { + 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; } - x = touch_calibration.calibration_points[calibration_stage].x; - y = touch_calibration.calibration_points[calibration_stage].y; + x = touch_calibration.calibration_points[stage].x; + y = touch_calibration.calibration_points[stage].y; drawCross(x, y, LV_COLOR_WHITE.full); } else { // end calibration - str = calibration_stage == CALIBRATION_SUCCESS ? GET_TEXT(MSG_CALIBRATION_COMPLETED) : GET_TEXT(MSG_CALIBRATION_FAILED); + str = stage == CALIBRATION_SUCCESS ? GET_TEXT(MSG_CALIBRATION_COMPLETED) : GET_TEXT(MSG_CALIBRATION_FAILED); touch_calibration.calibration_end(); lv_big_button_create(scr, "F:/bmp_return.bin", common_menu.text_back, BTN_X_PIXEL * 3 + INTERVAL_V * 4, BTN_Y_PIXEL + INTERVAL_H + titleHeight, event_handler, ID_TC_RETURN); } diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp index 6a8333fd66..5d44090a77 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; @@ -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); @@ -647,8 +647,8 @@ char *creat_title_text() { char *cur_name = strrchr(list_file.file_name[sel_id], '/'); - SdFile file; - SdFile *curDir; + MediaFile file; + MediaFile *curDir; const char * const fname = card.diveToFile(false, curDir, cur_name); if (!fname) return; if (file.open(curDir, fname, O_READ)) { @@ -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) { @@ -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++; } @@ -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 ALL(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_hardware_test(); #endif diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.h b/Marlin/src/lcd/extui/mks_ui/draw_ui.h index 9bc583d3ad..da43f2a490 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/draw_wifi_tips.h b/Marlin/src/lcd/extui/mks_ui/draw_wifi_tips.h index ad15238932..a289a80dc7 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_wifi_tips.h +++ b/Marlin/src/lcd/extui/mks_ui/draw_wifi_tips.h @@ -38,7 +38,7 @@ extern TIPS_TYPE wifi_tips_type; typedef struct { unsigned char timer; - unsigned int timer_count; + uint16_t timer_count; } TIPS_DISP; extern TIPS_DISP tips_disp; 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 d143234fd5..9d16c9dff2 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 @@ -36,7 +36,7 @@ #if HAS_LEVELING #include "../../../feature/bedlevel/bedlevel.h" - bool leveling_was_active; + bool mks_leveling_was_active; #endif extern lv_group_t *g; @@ -102,20 +102,20 @@ 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; case ID_M_RETURN: probe.offset.z = z_offset_backup; SET_SOFT_ENDSTOP_LOOSE(false); - TERN_(HAS_LEVELING, set_bed_leveling_enabled(leveling_was_active)); + 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(); @@ -149,8 +149,8 @@ void lv_draw_z_offset_wizard() { // Store Bed-Leveling-State and disable #if HAS_LEVELING - leveling_was_active = planner.leveling_active; - set_bed_leveling_enabled(leveling_was_active); + mks_leveling_was_active = planner.leveling_active; + set_bed_leveling_enabled(mks_leveling_was_active); #endif queue.inject_P(PSTR("G28")); diff --git a/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp b/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp index aca1db0039..b2615ac24b 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 00bb9833fc..a759f8677e 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -45,38 +45,58 @@ #if PIN_EXISTS(MT_DET_2) bool mt_det2_sta; #endif - #if X_HOME_DIR - 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_MIN || HAS_X2_MAX + #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_AXIS && Y_HOME_DIR + #if USE_Y_MIN bool endstopy1_sta; #else constexpr static bool endstopy1_sta = true; #endif - #if HAS_Y2_MIN || HAS_Y2_MAX + #if USE_Y2_MIN bool endstopy2_sta; #else constexpr static bool endstopy2_sta = true; #endif - #if HAS_Z_AXIS && Z_HOME_DIR - 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_MIN || HAS_Z2_MAX + #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_INVERTING) + #define ESTATE(S) (READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) void test_gpio_readlevel_L() { WRITE(WIFI_IO0_PIN, HIGH); @@ -87,35 +107,27 @@ #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); + 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 HAS_X2_MIN - endstopx2_sta = ESTATE(X2_MIN); - #elif HAS_X2_MAX - endstopx2_sta = ESTATE(X2_MAX); + #if USE_Y_MIN || USE_Y_MAX + endstopy1_sta = ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX)); #endif - #if HAS_Y_MIN - endstopy1_sta = ESTATE(Y_MIN); - #elif HAS_Y_MAX - endstopy1_sta = ESTATE(Y_MAX); + #if USE_Y2_MIN || USE_Y2_MAX + endstopy2_sta = ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX)); #endif - #if HAS_Y2_MIN - endstopy2_sta = ESTATE(Y2_MIN); - #elif HAS_Y2_MAX - endstopy2_sta = ESTATE(Y2_MAX); + 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 HAS_Z_MIN - endstopz1_sta = ESTATE(Z_MIN); - #elif HAS_Z_MAX - endstopz1_sta = ESTATE(Z_MAX); + #if USE_Z3_MIN || USE_Z3_MAX + endstopz3_sta = ESTATE(TERN(USE_Z3_MIN, Z3_MIN, Z3_MAX)); #endif - #if HAS_Z2_MIN - endstopz2_sta = ESTATE(Z2_MIN); - #elif HAS_Z2_MAX - endstopz2_sta = ESTATE(Z2_MAX); + #if USE_Z4_MIN || USE_Z4_MAX + endstopz4_sta = ESTATE(TERN(USE_Z4_MIN, Z4_MIN, Z4_MAX)); #endif } @@ -128,35 +140,27 @@ #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); + 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 HAS_X2_MIN - endstopx2_sta = !ESTATE(X2_MIN); - #elif HAS_X2_MAX - endstopx2_sta = !ESTATE(X2_MAX); + #if USE_Y_MIN || USE_Y_MAX + endstopy1_sta = !ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX)); #endif - #if HAS_Y_MIN - endstopy1_sta = !ESTATE(Y_MIN); - #elif HAS_Y_MAX - endstopy1_sta = !ESTATE(Y_MAX); + #if USE_Y2_MIN || USE_Y2_MAX + endstopy2_sta = !ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX)); #endif - #if HAS_Y2_MIN - endstopy2_sta = !ESTATE(Y2_MIN); - #elif HAS_Y2_MAX - endstopy2_sta = !ESTATE(Y2_MAX); + 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 HAS_Z_MIN - endstopz1_sta = !ESTATE(Z_MIN); - #elif HAS_Z_MAX - endstopz1_sta = !ESTATE(Z_MAX); + #if USE_Z3_MIN || USE_Z3_MAX + endstopz3_sta = !ESTATE(TERN(USE_Z3_MIN, Z3_MIN, Z3_MAX)); #endif - #if HAS_Z2_MIN - endstopz2_sta = !ESTATE(Z2_MIN); - #elif HAS_Z2_MAX - endstopz2_sta = !ESTATE(Z2_MAX); + #if USE_Z4_MIN || USE_Z4_MAX + endstopz4_sta = !ESTATE(TERN(USE_Z4_MIN, Z4_MIN, Z4_MAX)); #endif } @@ -178,7 +182,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 @@ -205,7 +211,7 @@ void mks_test_beeper() { buzzer.click(100); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void mks_gpio_test() { init_test_gpio(); @@ -231,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(); @@ -240,7 +246,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 @@ -265,11 +273,13 @@ } 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 - #if HAS_Y_AXIS + #if HAS_Z_AXIS WRITE(Z_DIR_PIN, HIGH); #endif #if HAS_EXTRUDERS @@ -289,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 { @@ -690,7 +702,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); } } @@ -706,7 +718,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); } @@ -723,11 +735,11 @@ void disp_assets_update_progress(FSTR_P const fmsg) { #endif } -#if BOTH(MKS_TEST, SDSUPPORT) +#if ALL(MKS_TEST, HAS_MEDIA) uint8_t mks_test_flag = 0; const char *MKSTestPath = "MKS_TEST"; void mks_test_get() { - SdFile dir, root = card.getroot(); + MediaFile dir, root = card.getroot(); if (dir.open(&root, MKSTestPath, O_RDONLY)) mks_test_flag = 0x1E; } diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.h b/Marlin/src/lcd/extui/mks_ui/mks_hardware.h index c0cdacd963..f73f4e6459 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 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/pic_manager.cpp b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp index c618127980..06d47d949b 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,9 +33,11 @@ #include "../../../sd/cardreader.h" #include "../../../MarlinCore.h" +#include + extern uint16_t DeviceCode; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern char *createFilename(char * const buffer, const dir_t &p); #endif @@ -290,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); @@ -307,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)) @@ -328,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); @@ -345,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')) { @@ -361,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); @@ -371,14 +372,14 @@ 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 ENABLED(SDSUPPORT) +#if HAS_MEDIA 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]; @@ -403,8 +404,8 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { #define ASSET_TYPE_TITLE_LOGO 2 #define ASSET_TYPE_G_PREVIEW 3 #define ASSET_TYPE_FONT 4 - static void loadAsset(SdFile &dir, dir_t& entry, FSTR_P const fn, int8_t assetType) { - SdFile file; + static void loadAsset(MediaFile &dir, dir_t& entry, FSTR_P const fn, int8_t assetType) { + MediaFile file; char dosFilename[FILENAME_LENGTH]; createFilename(dosFilename, entry); if (!file.open(&dir, dosFilename, O_READ)) { @@ -429,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) { @@ -447,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 { @@ -488,7 +489,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { void UpdateAssets() { if (!card.isMounted()) return; - SdFile dir, root = card.getroot(); + MediaFile dir, root = card.getroot(); if (dir.open(&root, assetsPath, O_RDONLY)) { disp_assets_update(); @@ -547,9 +548,9 @@ 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) { +void picRead(uint8_t *Pname, uint8_t *P_Rbuff) { uint8_t i, j; uint8_t Pic_cnt; uint32_t tmp_cnt = 0; @@ -595,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 cdcc5b76b8..1483b96461 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/printer_operation.cpp b/Marlin/src/lcd/extui/mks_ui/printer_operation.cpp index 8f5b89cf34..26979af270 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 b31977e7ca..a53e0d606b 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(../../../HAL, tft/xpt2046.h) -#include "../../marlinui.h" +#include HAL_PATH(../../.., tft/xpt2046.h) XPT2046 touch; #if ENABLED(POWER_LOSS_RECOVERY) @@ -50,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 @@ -78,7 +79,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; @@ -128,16 +129,18 @@ 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 #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); - 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(); @@ -153,13 +156,13 @@ 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()); #endif - touch.Init(); + touch.init(); lv_init(); @@ -246,7 +249,7 @@ void tft_lvgl_init() { if (ready) lv_draw_ready_print(); - #if BOTH(MKS_TEST, SDSUPPORT) + #if ALL(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_gpio_test(); #endif } @@ -261,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 } @@ -275,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 @@ -294,14 +297,12 @@ 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); } -#define TICK_CYCLE 1 - -unsigned int getTickDiff(unsigned int curTick, unsigned int lastTick) { - return TICK_CYCLE * (lastTick <= curTick ? (curTick - lastTick) : (0xFFFFFFFF - lastTick + curTick)); +uint16_t getTickDiff(const uint16_t curTick, const uint16_t lastTick) { + return (TICK_CYCLE) * (lastTick <= curTick ? (curTick - lastTick) : (0xFFFFFFFF - lastTick + curTick)); } static bool get_point(int16_t *x, int16_t *y) { @@ -309,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; } @@ -494,6 +495,7 @@ void lv_encoder_pin_init() { } #if 1 // HAS_ENCODER_ACTION + void lv_update_encoder() { static uint32_t encoder_time1; uint32_t tmpTime, diffTime = 0; @@ -554,7 +556,7 @@ void lv_encoder_pin_init() { #endif // HAS_ENCODER_WHEEL - } // next_button_update_ms + } // encoder_time1 } #endif // HAS_ENCODER_ACTION 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 0368140b28..80335b7370 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]; @@ -42,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/wifiSerial_STM32.cpp b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32.cpp index 0e55b3448b..cb5b7f0b68 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" @@ -230,7 +230,7 @@ void WifiSerial::_rx_complete_irq(serial_t *obj) { WRITE(WIFI_IO1_PIN, HIGH); - rx_buffer_index_t i = (unsigned int)(obj->rx_head + 1) % WIFI_RX_BUF_SIZE; + rx_buffer_index_t i = uint16_t(obj->rx_head + 1) % WIFI_RX_BUF_SIZE; // if we should be storing the received character into the location // just before the tail (meaning that the head would advance to the @@ -292,7 +292,7 @@ void WifiSerial::begin(unsigned long baud, byte config) { case 0: Error_Handler(); break; } - uart_init(&_serial, (uint32_t)baud, databits, parity, stopbits); + uart_init(&_serial, uint32_t(baud), databits, parity, stopbits); enableHalfDuplexRx(); if (baud == WIFI_BAUDRATE) uart_attach_rx_callback(&_serial, _rx_complete_irq); @@ -311,7 +311,7 @@ void WifiSerial::end() { } int WifiSerial::available() { - return ((unsigned int)(WIFI_RX_BUF_SIZE + _serial.rx_head - _serial.rx_tail)) % WIFI_RX_BUF_SIZE; + return uint16_t(WIFI_RX_BUF_SIZE + _serial.rx_head - _serial.rx_tail) % WIFI_RX_BUF_SIZE; } // @@ -322,7 +322,7 @@ int WifiSerial::read() { // if the head isn't ahead of the tail, we don't have any characters if (_serial.rx_head == _serial.rx_tail) return -1; - unsigned char c = _serial.rx_buff[_serial.rx_tail]; + uint8_t c = _serial.rx_buff[_serial.rx_tail]; _serial.rx_tail = (rx_buffer_index_t)(_serial.rx_tail + 1) % WIFI_RX_BUF_SIZE; return c; } diff --git a/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp index 654fca6cb3..92fd139dfa 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 23a39aabc4..122712e9e1 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" @@ -55,11 +55,11 @@ #define WIFI_IO1_SET() WRITE(WIFI_IO1_PIN, HIGH); #define WIFI_IO1_RESET() WRITE(WIFI_IO1_PIN, LOW); -extern uint8_t Explore_Disk(char *path, uint8_t recu_level); +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; -extern unsigned int getTickDiff(unsigned int curTick, unsigned int lastTick); +uint16_t getTickDiff(const uint16_t curTick, const uint16_t lastTick); volatile SZ_USART_FIFO WifiRxFifo; @@ -114,33 +114,34 @@ extern CLOUD_PARA cloud_para; extern bool once_flag, flash_preview_begin, default_preview_flg, gcode_preview_over; extern bool flash_dma_mode; -uint32_t getWifiTick() { return millis(); } +millis_t getWifiTick() { return millis(); } -uint32_t getWifiTickDiff(int32_t lastTick, int32_t curTick) { - return (lastTick <= curTick ? curTick - lastTick : 0xFFFFFFFF - lastTick + curTick) * TICK_CYCLE; +millis_t getWifiTickDiff(const millis_t lastTick, const millis_t curTick) { + return (TICK_CYCLE) * (lastTick <= curTick ? curTick - lastTick : 0xFFFFFFFFUL - lastTick + curTick); } -void wifi_delay(int n) { - const uint32_t start = getWifiTick(); - while (getWifiTickDiff(start, getWifiTick()) < (uint32_t)n) +void wifi_delay(const uint16_t n) { + const millis_t start = getWifiTick(); + while (getWifiTickDiff(start, getWifiTick()) < millis_t(n)) hal.watchdog_refresh(); } void wifi_reset() { - uint32_t start = getWifiTick(); + const millis_t start = getWifiTick(); WIFI_RESET(); while (getWifiTickDiff(start, getWifiTick()) < 500) { /* nada */ } WIFI_SET(); } -void mount_file_sys(uint8_t disk_type) { - if (disk_type == FILE_SYS_SD) { - TERN_(SDSUPPORT, card.mount()); - } - else if (disk_type == FILE_SYS_USB) { +void mount_file_sys(const uint8_t disk_type) { + switch (disk_type) { + case FILE_SYS_SD: TERN_(HAS_MEDIA, card.mount()); break; + case FILE_SYS_USB: break; } } +#define ILLEGAL_CHAR_REPLACE 0x5F // '_' + static bool longName2DosName(const char *longName, char *dosName) { uint8_t i = FILENAME_LENGTH; while (i) dosName[--i] = '\0'; @@ -152,18 +153,24 @@ static bool longName2DosName(const char *longName, char *dosName) { strcat_P(dosName, PSTR(".GCO")); return dosName[0] != '\0'; } + + // Fail for illegal characters + if (c < 0x21 || c == 0x7F) // Check size, non-printable characters + c = ILLEGAL_CHAR_REPLACE; // replace non-printable chars with underscore '_' else { - // Fail for illegal characters PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); - while (uint8_t b = pgm_read_byte(p++)) if (b == c) return false; - if (c < 0x21 || c == 0x7F) return false; // Check size, non-printable characters - dosName[i++] = (c < 'a' || c > 'z') ? (c) : (c + ('A' - 'a')); // Uppercase required for 8.3 name + while (const uint8_t b = pgm_read_byte(p++)) + if (b == c) c = ILLEGAL_CHAR_REPLACE; // replace illegal chars with underscore '_' } + + dosName[i++] = (c < 'a' || c > 'z') ? (c) : (c + ('A' - 'a')); // Uppercase required for 8.3 name + if (i >= 5) { strcat_P(dosName, PSTR("~1.GCO")); return dosName[0] != '\0'; } } + return dosName[0] != '\0'; // Return true if any name was set } @@ -562,8 +569,8 @@ static bool longName2DosName(const char *longName, char *dosName) { #if ENABLED(MKS_WIFI_MODULE) - int raw_send_to_wifi(uint8_t *buf, int len) { - if (buf == 0 || len <= 0) return 0; + int raw_send_to_wifi(uint8_t * const buf, const int len) { + if (buf == nullptr || len <= 0) return 0; for (int i = 0; i < len; i++) WIFISERIAL.write(*(buf + i)); return len; } @@ -701,22 +708,22 @@ int package_to_wifi(WIFI_RET_TYPE type, uint8_t *buf, int len) { return 1; } +int send_to_wifi(uint8_t * const buf, const int len) { return package_to_wifi(WIFI_TRANS_INF, buf, len); } -#define SEND_OK_TO_WIFI send_to_wifi((uint8_t *)"ok\r\n", strlen("ok\r\n")) -int send_to_wifi(uint8_t *buf, int len) { return package_to_wifi(WIFI_TRANS_INF, buf, len); } +inline void send_ok_to_wifi() { send_to_wifi((uint8_t *)"ok\r\n", strlen("ok\r\n")); } void set_cur_file_sys(int fileType) { gCfgItems.fileSysType = fileType; } -void get_file_list(char *path) { +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 } - Explore_Disk(path, 0); + exploreDisk(path, 0, with_longnames); } char wait_ip_back_flag = 0; @@ -736,7 +743,7 @@ int32_t lastFragment = 0; char saveFilePath[50]; -static SdFile upload_file, *upload_curDir; +static MediaFile upload_file, *upload_curDir; static filepos_t pos; int write_to_file(char *buf, int len) { @@ -795,7 +802,7 @@ typedef struct { uint8_t tail; } ESP_PROTOC_FRAME; -static int cut_msg_head(uint8_t *msg, uint16_t msgLen, uint16_t cutLen) { +static int cut_msg_head(uint8_t * const msg, const uint16_t msgLen, uint16_t cutLen) { if (msgLen < cutLen) return 0; else if (msgLen == cutLen) { @@ -811,25 +818,31 @@ static int cut_msg_head(uint8_t *msg, uint16_t msgLen, uint16_t cutLen) { return msgLen - cutLen; } -uint8_t Explore_Disk(char *path , uint8_t recu_level) { - char tmp[200]; +uint8_t exploreDisk(const char * const path, const uint8_t recu_level, const bool with_longnames) { char Fstream[200]; if (!path) return 0; - const uint8_t fileCnt = card.get_num_Files(); + const int16_t fileCnt = card.get_num_items(); - for (uint8_t i = 0; i < fileCnt; i++) { - card.getfilename_sorted(SD_ORDER(i, fileCnt)); - ZERO(tmp); - strcpy(tmp, card.filename); + MediaFile file; + MediaFile *diveDir; + for (int16_t i = 0; i < fileCnt; i++) { + card.selectFileByIndexSorted(i); ZERO(Fstream); - strcpy(Fstream, tmp); + strcpy(Fstream, card.filename); if (card.flag.filenameIsDir && recu_level <= 10) strcat_P(Fstream, PSTR(".DIR")); + strcat_P(Fstream, PSTR(" 0")); // report 0 file size + + if (with_longnames) { + strcat_P(Fstream, PSTR(" ")); + strcat_P(Fstream, card.longest_filename()); + } + strcat_P(Fstream, PSTR("\r\n")); send_to_wifi((uint8_t*)Fstream, strlen(Fstream)); } @@ -837,434 +850,449 @@ uint8_t Explore_Disk(char *path , uint8_t recu_level) { return fileCnt; } -static void wifi_gcode_exec(uint8_t *cmd_line) { +static void wifi_gcode_exec(uint8_t * const cmd_line) { int8_t tempBuf[100] = { 0 }; - uint8_t *tmpStr = 0; int cmd_value; volatile int print_rate; - if (strchr((char *)cmd_line, '\n') && (strchr((char *)cmd_line, 'G') || strchr((char *)cmd_line, 'M') || strchr((char *)cmd_line, 'T'))) { - tmpStr = (uint8_t *)strchr((char *)cmd_line, '\n'); - if (tmpStr) *tmpStr = '\0'; - tmpStr = (uint8_t *)strchr((char *)cmd_line, '\r'); - if (tmpStr) *tmpStr = '\0'; + // Only accept commands with a linefeed + char * const lfStr = strchr((char *)cmd_line, '\n'); + if (!lfStr) return; - tmpStr = (uint8_t *)strchr((char *)cmd_line, '*'); - if (tmpStr) *tmpStr = '\0'; + // Only accept commands with G, M, or T somewhere + const char * const gStr = strchr((char *)cmd_line, 'G'); + const char * const mStr = strchr((char *)cmd_line, 'M'); + const char * const tStr = strchr((char *)cmd_line, 'T'); + if (!(gStr || mStr || tStr)) return; - tmpStr = (uint8_t *)strchr((char *)cmd_line, 'M'); - if (tmpStr) { - cmd_value = atoi((char *)(tmpStr + 1)); - tmpStr = (uint8_t *)strchr((char *)tmpStr, ' '); + // Replace the linefeed with nul terminator + *lfStr = '\0'; - switch (cmd_value) { + // Terminate on the first cr, if any + char * const crStr = strchr((char *)cmd_line, '\r'); + if (crStr) *crStr = '\0'; - case 20: // M20: Print SD / µdisk file - file_writer.fileTransfer = 0; - if (uiCfg.print_state == IDLE) { - int index = 0; + // Terminate on the checksum marker, if any + char * const aStr = strchr((char *)cmd_line, '*'); + if (aStr) *aStr = '\0'; - if (tmpStr == 0) { - gCfgItems.fileSysType = FILE_SYS_SD; + // Handle some M commands here + if (mStr) { + cmd_value = atoi(mStr + 1); + char * const spStr = strchr(mStr, ' '); + + switch (cmd_value) { + + case 20: // M20: Print SD / µdisk file + file_writer.fileTransfer = 0; + if (uiCfg.print_state == IDLE) { + int index = 0; + if (spStr == nullptr) { + gCfgItems.fileSysType = FILE_SYS_SD; + send_to_wifi((uint8_t *)(STR_BEGIN_FILE_LIST "\r\n"), strlen(STR_BEGIN_FILE_LIST "\r\n")); + get_file_list("0:/", false); + send_to_wifi((uint8_t *)(STR_END_FILE_LIST "\r\n"), strlen(STR_END_FILE_LIST "\r\n")); + send_ok_to_wifi(); + break; + } + + while (mStr[index] == ' ') index++; + + if (gCfgItems.wifi_type == ESP_WIFI) { + char * const path = (char *)tempBuf; + if (strlen(&mStr[index]) < 80) { send_to_wifi((uint8_t *)(STR_BEGIN_FILE_LIST "\r\n"), strlen(STR_BEGIN_FILE_LIST "\r\n")); - get_file_list((char *)"0:/"); + + if (strncmp(&mStr[index], "1:", 2) == 0) + gCfgItems.fileSysType = FILE_SYS_SD; + else if (strncmp(&mStr[index], "0:", 2) == 0) + gCfgItems.fileSysType = FILE_SYS_USB; + + strcpy(path, &mStr[index]); + const bool with_longnames = strchr(mStr, 'L') != nullptr; + get_file_list(path, with_longnames); send_to_wifi((uint8_t *)(STR_END_FILE_LIST "\r\n"), strlen(STR_END_FILE_LIST "\r\n")); - SEND_OK_TO_WIFI; - break; } + send_ok_to_wifi(); + } + } + break; - while (tmpStr[index] == ' ') index++; + case 21: send_ok_to_wifi(); break; // Init SD card - if (gCfgItems.wifi_type == ESP_WIFI) { - char *path = (char *)tempBuf; + case 23: + // Select the file + if (uiCfg.print_state == IDLE) { + int index = 0; + while (mStr[index] == ' ') index++; - if (strlen((char *)&tmpStr[index]) < 80) { - send_to_wifi((uint8_t *)(STR_BEGIN_FILE_LIST "\r\n"), strlen(STR_BEGIN_FILE_LIST "\r\n")); + if (strstr_P(&mStr[index], PSTR(".g")) || strstr_P(&mStr[index], PSTR(".G"))) { + if (strlen(&mStr[index]) < 80) { + ZERO(list_file.file_name[sel_id]); + ZERO(list_file.long_name[sel_id]); + uint8_t has_path_selected = 0; - if (strncmp((char *)&tmpStr[index], "1:", 2) == 0) + if (gCfgItems.wifi_type == ESP_WIFI) { + if (strncmp_P(&mStr[index], PSTR("1:"), 2) == 0) { gCfgItems.fileSysType = FILE_SYS_SD; - else if (strncmp((char *)&tmpStr[index], "0:", 2) == 0) + has_path_selected = 1; + } + else if (strncmp_P(&mStr[index], PSTR("0:"), 2) == 0) { gCfgItems.fileSysType = FILE_SYS_USB; + has_path_selected = 1; + } + else if (mStr[index] != '/') + strcat_P((char *)list_file.file_name[sel_id], PSTR("/")); - strcpy((char *)path, (char *)&tmpStr[index]); - get_file_list(path); - send_to_wifi((uint8_t *)(STR_END_FILE_LIST "\r\n"), strlen(STR_END_FILE_LIST "\r\n")); - } - SEND_OK_TO_WIFI; - } - } - break; - - case 21: SEND_OK_TO_WIFI; break; // Init SD card - - case 23: - // Select the file - if (uiCfg.print_state == IDLE) { - int index = 0; - while (tmpStr[index] == ' ') index++; - - if (strstr_P((char *)&tmpStr[index], PSTR(".g")) || strstr_P((char *)&tmpStr[index], PSTR(".G"))) { - if (strlen((char *)&tmpStr[index]) < 80) { - ZERO(list_file.file_name[sel_id]); - ZERO(list_file.long_name[sel_id]); - uint8_t has_path_selected = 0; - - if (gCfgItems.wifi_type == ESP_WIFI) { - if (strncmp_P((char *)&tmpStr[index], PSTR("1:"), 2) == 0) { - gCfgItems.fileSysType = FILE_SYS_SD; - has_path_selected = 1; - } - else if (strncmp_P((char *)&tmpStr[index], PSTR("0:"), 2) == 0) { - gCfgItems.fileSysType = FILE_SYS_USB; - has_path_selected = 1; - } - else if (tmpStr[index] != '/') + if (file_writer.fileTransfer == 1) { + char dosName[FILENAME_LENGTH]; + uint8_t fileName[sizeof(list_file.file_name[sel_id])]; + fileName[0] = '\0'; + if (has_path_selected == 1) { + strcat((char *)fileName, &mStr[index + 3]); strcat_P((char *)list_file.file_name[sel_id], PSTR("/")); - - if (file_writer.fileTransfer == 1) { - char dosName[FILENAME_LENGTH]; - uint8_t fileName[sizeof(list_file.file_name[sel_id])]; - fileName[0] = '\0'; - if (has_path_selected == 1) { - strcat((char *)fileName, (char *)&tmpStr[index + 3]); - strcat_P((char *)list_file.file_name[sel_id], PSTR("/")); - } - else strcat((char *)fileName, (char *)&tmpStr[index]); - if (!longName2DosName((const char *)fileName, dosName)) - strcpy_P(list_file.file_name[sel_id], PSTR("notValid")); - strcat((char *)list_file.file_name[sel_id], dosName); - strcat((char *)list_file.long_name[sel_id], dosName); } - else { - strcat((char *)list_file.file_name[sel_id], (char *)&tmpStr[index]); - strcat((char *)list_file.long_name[sel_id], (char *)&tmpStr[index]); - } - + else strcat((char *)fileName, &mStr[index]); + if (!longName2DosName((const char *)fileName, dosName)) + strcpy_P(list_file.file_name[sel_id], PSTR("notValid")); + strcat((char *)list_file.file_name[sel_id], dosName); + strcat((char *)list_file.long_name[sel_id], (const char *)fileName); } - else - strcpy(list_file.file_name[sel_id], (char *)&tmpStr[index]); - - char *cur_name=strrchr(list_file.file_name[sel_id],'/'); - - card.openFileRead(cur_name); - - if (card.isFileOpen()) - send_to_wifi((uint8_t *)"File selected\r\n", strlen("File selected\r\n")); else { - send_to_wifi((uint8_t *)"file.open failed\r\n", strlen("file.open failed\r\n")); - strcpy_P(list_file.file_name[sel_id], PSTR("notValid")); + strcat((char *)list_file.file_name[sel_id], &mStr[index]); + strcat((char *)list_file.long_name[sel_id], &mStr[index]); } - SEND_OK_TO_WIFI; + } + else + strcpy(list_file.file_name[sel_id], &mStr[index]); + + char *cur_name = strrchr(list_file.file_name[sel_id],'/'); + + card.openFileRead(cur_name); + + if (card.isFileOpen()) + send_to_wifi((uint8_t *)"File selected\r\n", strlen("File selected\r\n")); + else { + send_to_wifi((uint8_t *)"file.open failed\r\n", strlen("file.open failed\r\n")); + strcpy_P(list_file.file_name[sel_id], PSTR("notValid")); + } + send_ok_to_wifi(); } } - break; - - case 24: - if (strcmp_P(list_file.file_name[sel_id], PSTR("notValid")) != 0) { - if (uiCfg.print_state == IDLE) { - clear_cur_ui(); - reset_print_time(); - start_print_time(); - preview_gcode_prehandle(list_file.file_name[sel_id]); - uiCfg.print_state = WORKING; - lv_draw_printing(); - - #if ENABLED(SDSUPPORT) - if (!gcode_preview_over) { - char *cur_name = strrchr(list_file.file_name[sel_id], '/'); - - SdFile file; - SdFile *curDir; - card.abortFilePrintNow(); - const char * const fname = card.diveToFile(false, curDir, cur_name); - if (!fname) return; - if (file.open(curDir, fname, O_READ)) { - gCfgItems.curFilesize = file.fileSize(); - file.close(); - update_spi_flash(); - } - card.openFileRead(cur_name); - if (card.isFileOpen()) { - //saved_feedrate_percentage = feedrate_percentage; - feedrate_percentage = 100; - #if HAS_EXTRUDERS - planner.flow_percentage[0] = 100; - planner.e_factor[0] = planner.flow_percentage[0] * 0.01f; - #endif - #if HAS_MULTI_EXTRUDER - planner.flow_percentage[1] = 100; - planner.e_factor[1] = planner.flow_percentage[1] * 0.01f; - #endif - card.startOrResumeFilePrinting(); - TERN_(POWER_LOSS_RECOVERY, recovery.prepare()); - once_flag = false; - } - } - #endif - } - else if (uiCfg.print_state == PAUSED) { - uiCfg.print_state = RESUMING; - clear_cur_ui(); - start_print_time(); - - if (gCfgItems.from_flash_pic) - flash_preview_begin = true; - else - default_preview_flg = true; - lv_draw_printing(); - } - else if (uiCfg.print_state == REPRINTING) { - uiCfg.print_state = REPRINTED; - clear_cur_ui(); - start_print_time(); - if (gCfgItems.from_flash_pic) - flash_preview_begin = true; - else - default_preview_flg = true; - lv_draw_printing(); - } - } - SEND_OK_TO_WIFI; - break; - - case 25: - // Pause print file - if (uiCfg.print_state == WORKING) { - stop_print_time(); + } + break; + case 24: + if (strcmp_P(list_file.file_name[sel_id], PSTR("notValid")) != 0) { + if (uiCfg.print_state == IDLE) { clear_cur_ui(); + reset_print_time(); + start_print_time(); + preview_gcode_prehandle(list_file.file_name[sel_id]); + uiCfg.print_state = WORKING; + lv_draw_printing(); - #if ENABLED(SDSUPPORT) - card.pauseSDPrint(); - uiCfg.print_state = PAUSING; + #if HAS_MEDIA + if (!gcode_preview_over) { + char *cur_name = strrchr(list_file.file_name[sel_id], '/'); + + MediaFile file; + MediaFile *curDir; + card.abortFilePrintNow(); + const char * const fname = card.diveToFile(false, curDir, cur_name); + if (!fname) return; + if (file.open(curDir, fname, O_READ)) { + gCfgItems.curFilesize = file.fileSize(); + file.close(); + update_spi_flash(); + } + card.openFileRead(cur_name); + if (card.isFileOpen()) { + //saved_feedrate_percentage = feedrate_percentage; + feedrate_percentage = 100; + #if HAS_EXTRUDERS + planner.flow_percentage[0] = 100; + planner.e_factor[0] = planner.flow_percentage[0] * 0.01f; + #endif + #if HAS_MULTI_EXTRUDER + planner.flow_percentage[1] = 100; + planner.e_factor[1] = planner.flow_percentage[1] * 0.01f; + #endif + card.startOrResumeFilePrinting(); + TERN_(POWER_LOSS_RECOVERY, recovery.prepare()); + once_flag = false; + } + } #endif + } + else if (uiCfg.print_state == PAUSED) { + uiCfg.print_state = RESUMING; + clear_cur_ui(); + start_print_time(); + if (gCfgItems.from_flash_pic) flash_preview_begin = true; else default_preview_flg = true; lv_draw_printing(); - SEND_OK_TO_WIFI; - } - break; - - case 26: - // Stop print file - if ((uiCfg.print_state == WORKING) || (uiCfg.print_state == PAUSED) || (uiCfg.print_state == REPRINTING)) { - stop_print_time(); - - clear_cur_ui(); - #if ENABLED(SDSUPPORT) - uiCfg.print_state = IDLE; - card.abortFilePrintSoon(); - #endif - - lv_draw_ready_print(); - - SEND_OK_TO_WIFI; - } - break; - - case 27: - // Report print rate - if ((uiCfg.print_state == WORKING) || (uiCfg.print_state == PAUSED)|| (uiCfg.print_state == REPRINTING)) { - print_rate = uiCfg.totalSend; - ZERO(tempBuf); - sprintf_P((char *)tempBuf, PSTR("M27 %d\r\n"), print_rate); - send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); - } - break; - - case 28: - // Begin to transfer file to filesys - if (uiCfg.print_state == IDLE) { - - int index = 0; - while (tmpStr[index] == ' ') index++; - - if (strstr_P((char *)&tmpStr[index], PSTR(".g")) || strstr_P((char *)&tmpStr[index], PSTR(".G"))) { - strcpy((char *)file_writer.saveFileName, (char *)&tmpStr[index]); - - if (gCfgItems.fileSysType == FILE_SYS_SD) { - ZERO(tempBuf); - sprintf_P((char *)tempBuf, PSTR("%s"), file_writer.saveFileName); - } - else if (gCfgItems.fileSysType == FILE_SYS_USB) { - ZERO(tempBuf); - sprintf_P((char *)tempBuf, PSTR("%s"), (char *)file_writer.saveFileName); - } - mount_file_sys(gCfgItems.fileSysType); - - #if ENABLED(SDSUPPORT) - char *cur_name = strrchr(list_file.file_name[sel_id], '/'); - card.openFileWrite(cur_name); - if (card.isFileOpen()) { - ZERO(file_writer.saveFileName); - strcpy((char *)file_writer.saveFileName, (char *)&tmpStr[index]); - ZERO(tempBuf); - sprintf_P((char *)tempBuf, PSTR("Writing to file: %s\r\n"), (char *)file_writer.saveFileName); - wifi_ret_ack(); - send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); - wifi_link_state = WIFI_WAIT_TRANS_START; - } - else { - wifi_link_state = WIFI_CONNECTED; - clear_cur_ui(); - lv_draw_dialog(DIALOG_TRANSFER_NO_DEVICE); - } - #endif - } - } - break; - - case 105: - case 991: - ZERO(tempBuf); - if (cmd_value == 105) { - - SEND_OK_TO_WIFI; - - char *outBuf = (char *)tempBuf; - char tbuf[34]; - - sprintf_P(tbuf, PSTR("%d /%d"), thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0)); - - const int tlen = strlen(tbuf); - sprintf_P(outBuf, PSTR("T:%s"), tbuf); - outBuf += 2 + tlen; - - strcpy_P(outBuf, PSTR(" B:")); - outBuf += 3; - #if HAS_HEATED_BED - sprintf_P(outBuf, PSTR("%d /%d"), thermalManager.wholeDegBed(), thermalManager.degTargetBed()); - #else - strcpy_P(outBuf, PSTR("0 /0")); - #endif - outBuf += 4; - - strcat_P(outBuf, PSTR(" T0:")); - strcat(outBuf, tbuf); - outBuf += 4 + tlen; - - strcat_P(outBuf, PSTR(" T1:")); - outBuf += 4; - #if HAS_MULTI_HOTEND - sprintf_P(outBuf, PSTR("%d /%d"), thermalManager.wholeDegHotend(1), thermalManager.degTargetHotend(1)); - #else - strcpy_P(outBuf, PSTR("0 /0")); - #endif - outBuf += 4; - - strcat_P(outBuf, PSTR(" @:0 B@:0\r\n")); - } - else { - sprintf_P((char *)tempBuf, PSTR("T:%d /%d B:%d /%d T0:%d /%d T1:%d /%d @:0 B@:0\r\n"), - thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0), - TERN0(HAS_HEATED_BED, thermalManager.wholeDegBed()), - TERN0(HAS_HEATED_BED, thermalManager.degTargetBed()), - thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0), - TERN0(HAS_MULTI_HOTEND, thermalManager.wholeDegHotend(1)), - TERN0(HAS_MULTI_HOTEND, thermalManager.degTargetHotend(1)) - ); - } - - send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); - queue.enqueue_one(F("M105")); - break; - - case 992: - if ((uiCfg.print_state == WORKING) || (uiCfg.print_state == PAUSED)) { - ZERO(tempBuf); - sprintf_P((char *)tempBuf, PSTR("M992 %d%d:%d%d:%d%d\r\n"), print_time.hours/10, print_time.hours%10, print_time.minutes/10, print_time.minutes%10, print_time.seconds/10, print_time.seconds%10); - wifi_ret_ack(); - send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); - } - break; - - case 994: - if ((uiCfg.print_state == WORKING) || (uiCfg.print_state == PAUSED)) { - ZERO(tempBuf); - if (strlen((char *)list_file.file_name[sel_id]) > (100 - 1)) return; - sprintf_P((char *)tempBuf, PSTR("M994 %s;%d\n"), list_file.file_name[sel_id], (int)gCfgItems.curFilesize); - wifi_ret_ack(); - send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); - } - break; - - case 997: - if (uiCfg.print_state == IDLE) { - wifi_ret_ack(); - send_to_wifi((uint8_t *)"M997 IDLE\r\n", strlen("M997 IDLE\r\n")); - } - else if (uiCfg.print_state == WORKING) { - wifi_ret_ack(); - send_to_wifi((uint8_t *)"M997 PRINTING\r\n", strlen("M997 PRINTING\r\n")); - } - else if (uiCfg.print_state == PAUSED) { - wifi_ret_ack(); - send_to_wifi((uint8_t *)"M997 PAUSE\r\n", strlen("M997 PAUSE\r\n")); } else if (uiCfg.print_state == REPRINTING) { - wifi_ret_ack(); - send_to_wifi((uint8_t *)"M997 PAUSE\r\n", strlen("M997 PAUSE\r\n")); + uiCfg.print_state = REPRINTED; + clear_cur_ui(); + start_print_time(); + if (gCfgItems.from_flash_pic) + flash_preview_begin = true; + else + default_preview_flg = true; + lv_draw_printing(); } - if (!uiCfg.command_send) get_wifi_list_command_send(); - break; - - case 998: - if (uiCfg.print_state == IDLE) { - const int v = atoi((char *)tmpStr); - if (v == 0 || v == 1) set_cur_file_sys(v); - wifi_ret_ack(); - } - break; - - case 115: - ZERO(tempBuf); - SEND_OK_TO_WIFI; - send_to_wifi((uint8_t *)"FIRMWARE_NAME:Robin_nano\r\n", strlen("FIRMWARE_NAME:Robin_nano\r\n")); - break; - - default: - strcat_P((char *)cmd_line, PSTR("\n")); - - if (espGcodeFifo.wait_tick > 5) { - const uint32_t left = espGcodeFifo.r > espGcodeFifo.w - ? espGcodeFifo.r - espGcodeFifo.w - 1 - : WIFI_GCODE_BUFFER_SIZE + espGcodeFifo.r - espGcodeFifo.w - 1; - - if (left >= strlen((const char *)cmd_line)) { - for (uint32_t index = 0; index < strlen((const char *)cmd_line); index++) { - espGcodeFifo.Buffer[espGcodeFifo.w] = cmd_line[index] ; - espGcodeFifo.w = (espGcodeFifo.w + 1) % WIFI_GCODE_BUFFER_SIZE; - } - if (left - WIFI_GCODE_BUFFER_LEAST_SIZE >= strlen((const char *)cmd_line)) - SEND_OK_TO_WIFI; - else - need_ok_later = true; - } - } - break; - } - } - else { - strcat_P((char *)cmd_line, PSTR("\n")); - - if (espGcodeFifo.wait_tick > 5) { - const uint32_t left_g = espGcodeFifo.r > espGcodeFifo.w - ? espGcodeFifo.r - espGcodeFifo.w - 1 - : WIFI_GCODE_BUFFER_SIZE + espGcodeFifo.r - espGcodeFifo.w - 1; - - if (left_g >= strlen((const char *)cmd_line)) { - for (uint32_t index = 0; index < strlen((const char *)cmd_line); index++) { - espGcodeFifo.Buffer[espGcodeFifo.w] = cmd_line[index] ; - espGcodeFifo.w = (espGcodeFifo.w + 1) % WIFI_GCODE_BUFFER_SIZE; - } - if (left_g - WIFI_GCODE_BUFFER_LEAST_SIZE >= strlen((const char *)cmd_line)) - SEND_OK_TO_WIFI; - else - need_ok_later = true; } + send_ok_to_wifi(); + break; + + case 25: + // Pause print file + if (uiCfg.print_state == WORKING) { + stop_print_time(); + + clear_cur_ui(); + + #if HAS_MEDIA + card.pauseSDPrint(); + uiCfg.print_state = PAUSING; + #endif + if (gCfgItems.from_flash_pic) + flash_preview_begin = true; + else + default_preview_flg = true; + lv_draw_printing(); + send_ok_to_wifi(); + } + break; + + case 26: + // Stop print file + if (uiCfg.print_state == WORKING || uiCfg.print_state == PAUSED || uiCfg.print_state == REPRINTING) { + stop_print_time(); + + clear_cur_ui(); + #if HAS_MEDIA + uiCfg.print_state = IDLE; + card.abortFilePrintSoon(); + #endif + + lv_draw_ready_print(); + + send_ok_to_wifi(); + } + break; + + case 27: + // Report print rate + if (uiCfg.print_state == WORKING || uiCfg.print_state == PAUSED|| uiCfg.print_state == REPRINTING) { + print_rate = uiCfg.totalSend; + ZERO(tempBuf); + sprintf_P((char *)tempBuf, PSTR("M27 %d\r\n"), print_rate); + send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); + } + break; + + case 28: + // Begin to transfer file to filesys + if (uiCfg.print_state == IDLE) { + + int index = 0; + while (mStr[index] == ' ') index++; + + if (strstr_P(&mStr[index], PSTR(".g")) || strstr_P(&mStr[index], PSTR(".G"))) { + strcpy((char *)file_writer.saveFileName, &mStr[index]); + + if (gCfgItems.fileSysType == FILE_SYS_SD) { + ZERO(tempBuf); + sprintf_P((char *)tempBuf, PSTR("%s"), file_writer.saveFileName); + } + else if (gCfgItems.fileSysType == FILE_SYS_USB) { + ZERO(tempBuf); + sprintf_P((char *)tempBuf, PSTR("%s"), (char *)file_writer.saveFileName); + } + mount_file_sys(gCfgItems.fileSysType); + + #if HAS_MEDIA + char *cur_name = strrchr(list_file.file_name[sel_id], '/'); + card.openFileWrite(cur_name); + if (card.isFileOpen()) { + ZERO(file_writer.saveFileName); + strcpy((char *)file_writer.saveFileName, &mStr[index]); + ZERO(tempBuf); + sprintf_P((char *)tempBuf, PSTR("Writing to file: %s\r\n"), (char *)file_writer.saveFileName); + wifi_ret_ack(); + send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); + wifi_link_state = WIFI_WAIT_TRANS_START; + } + else { + wifi_link_state = WIFI_CONNECTED; + clear_cur_ui(); + lv_draw_dialog(DIALOG_TRANSFER_NO_DEVICE); + } + #endif + } + } + break; + + case 105: + case 991: + ZERO(tempBuf); + if (cmd_value == 105) { + + send_ok_to_wifi(); + + char *outBuf = (char *)tempBuf; + char tbuf[34]; + + sprintf_P(tbuf, PSTR("%d /%d"), thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0)); + + const int tlen = strlen(tbuf); + sprintf_P(outBuf, PSTR("T:%s"), tbuf); + outBuf += 2 + tlen; + + strcpy_P(outBuf, PSTR(" B:")); + outBuf += 3; + #if HAS_HEATED_BED + sprintf_P(outBuf, PSTR("%d /%d"), thermalManager.wholeDegBed(), thermalManager.degTargetBed()); + #else + strcpy_P(outBuf, PSTR("0 /0")); + #endif + outBuf += 4; + + strcat_P(outBuf, PSTR(" T0:")); + strcat(outBuf, tbuf); + outBuf += 4 + tlen; + + strcat_P(outBuf, PSTR(" T1:")); + outBuf += 4; + #if HAS_MULTI_HOTEND + sprintf_P(outBuf, PSTR("%d /%d"), thermalManager.wholeDegHotend(1), thermalManager.degTargetHotend(1)); + #else + strcpy_P(outBuf, PSTR("0 /0")); + #endif + outBuf += 4; + + strcat_P(outBuf, PSTR(" @:0 B@:0\r\n")); + } + else { + sprintf_P((char *)tempBuf, PSTR("T:%d /%d B:%d /%d T0:%d /%d T1:%d /%d @:0 B@:0\r\n"), + thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0), + TERN0(HAS_HEATED_BED, thermalManager.wholeDegBed()), + TERN0(HAS_HEATED_BED, thermalManager.degTargetBed()), + thermalManager.wholeDegHotend(0), thermalManager.degTargetHotend(0), + TERN0(HAS_MULTI_HOTEND, thermalManager.wholeDegHotend(1)), + TERN0(HAS_MULTI_HOTEND, thermalManager.degTargetHotend(1)) + ); + } + + send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); + queue.enqueue_one(F("M105")); + break; + + case 992: + if (uiCfg.print_state == WORKING || uiCfg.print_state == PAUSED) { + ZERO(tempBuf); + sprintf_P((char *)tempBuf, PSTR("M992 %d%d:%d%d:%d%d\r\n"), print_time.hours/10, print_time.hours%10, print_time.minutes/10, print_time.minutes%10, print_time.seconds/10, print_time.seconds%10); + wifi_ret_ack(); + send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); + } + break; + + case 994: + if (uiCfg.print_state == WORKING || uiCfg.print_state == PAUSED) { + ZERO(tempBuf); + if (strlen((char *)list_file.file_name[sel_id]) > (100 - 1)) return; + sprintf_P((char *)tempBuf, PSTR("M994 %s;%d\n"), list_file.file_name[sel_id], (int)gCfgItems.curFilesize); + wifi_ret_ack(); + send_to_wifi((uint8_t *)tempBuf, strlen((char *)tempBuf)); + } + break; + + case 997: + #define SENDIDLE "M997 IDLE\r\n" + #define SENDPRINTING "M997 PRINTING\r\n" + #define SENDPAUSE "M997 PAUSE\r\n" + switch (uiCfg.print_state) { + default: break; + case IDLE: + wifi_ret_ack(); + send_to_wifi((uint8_t *)SENDIDLE, strlen(SENDIDLE)); + break; + case WORKING: + wifi_ret_ack(); + send_to_wifi((uint8_t *)SENDPRINTING, strlen(SENDPRINTING)); + break; + case PAUSED: + wifi_ret_ack(); + send_to_wifi((uint8_t *)SENDPAUSE, strlen(SENDPAUSE)); + break; + case REPRINTING: + wifi_ret_ack(); + send_to_wifi((uint8_t *)SENDPAUSE, strlen(SENDPAUSE)); + break; + } + if (!uiCfg.command_send) get_wifi_list_command_send(); + break; + + case 998: + if (uiCfg.print_state == IDLE) { + const int v = atoi(mStr); + if (v == 0 || v == 1) set_cur_file_sys(v); + wifi_ret_ack(); + } + break; + + case 115: + ZERO(tempBuf); + send_ok_to_wifi(); + #define SENDFW "FIRMWARE_NAME:Robin_nano\r\n" + send_to_wifi((uint8_t *)SENDFW, strlen(SENDFW)); + break; + + default: + strcat_P((char *)cmd_line, PSTR("\n")); + + if (espGcodeFifo.wait_tick > 5) { + uint32_t left = espGcodeFifo.r - espGcodeFifo.w - 1; + if (espGcodeFifo.r > espGcodeFifo.w) left += WIFI_GCODE_BUFFER_SIZE; + + if (left >= strlen((const char *)cmd_line)) { + for (uint32_t index = 0; index < strlen((const char *)cmd_line); index++) { + espGcodeFifo.Buffer[espGcodeFifo.w] = cmd_line[index]; + espGcodeFifo.w = (espGcodeFifo.w + 1) % (WIFI_GCODE_BUFFER_SIZE); + } + if (left - (WIFI_GCODE_BUFFER_LEAST_SIZE) >= strlen((const char *)cmd_line)) + send_ok_to_wifi(); + else + need_ok_later = true; + } + } + break; + } + } + else { + // Add another linefeed to the command, terminate with null + strcat_P((char *)cmd_line, PSTR("\n")); + + if (espGcodeFifo.wait_tick > 5) { + uint32_t left_g = espGcodeFifo.r - espGcodeFifo.w - 1; + if (espGcodeFifo.r > espGcodeFifo.w) left_g += WIFI_GCODE_BUFFER_SIZE; + + if (left_g >= strlen((char * const)cmd_line)) { + for (uint32_t index = 0; index < strlen((char * const)cmd_line); index++) { + espGcodeFifo.Buffer[espGcodeFifo.w] = cmd_line[index]; + espGcodeFifo.w = (espGcodeFifo.w + 1) % (WIFI_GCODE_BUFFER_SIZE); + } + if (left_g - (WIFI_GCODE_BUFFER_LEAST_SIZE) >= strlen((char * const)cmd_line)) + send_ok_to_wifi(); + else + need_ok_later = true; } } } @@ -1281,7 +1309,7 @@ void get_wifi_list_command_send() { raw_send_to_wifi(cmd_wifi_list, COUNT(cmd_wifi_list)); } -static void net_msg_handle(uint8_t * msg, uint16_t msgLen) { +static void net_msg_handle(const uint8_t * const msg, const uint16_t msgLen) { int wifiNameLen, wifiKeyLen, hostLen, id_len, ver_len; if (msgLen <= 0) return; @@ -1316,7 +1344,7 @@ static void net_msg_handle(uint8_t * msg, uint16_t msgLen) { } } - cloud_para.state =msg[10 + wifiNameLen + wifiKeyLen]; + cloud_para.state = msg[10 + wifiNameLen + wifiKeyLen]; hostLen = msg[11 + wifiNameLen + wifiKeyLen]; if (cloud_para.state) { if (hostLen < 96) { @@ -1356,7 +1384,7 @@ static void net_msg_handle(uint8_t * msg, uint16_t msgLen) { } } -static void wifi_list_msg_handle(uint8_t * msg, uint16_t msgLen) { +static void wifi_list_msg_handle(const uint8_t * const msg, const uint16_t msgLen) { int wifiNameLen,wifiMsgIdex = 1; int8_t wifi_name_is_same = 0; int8_t i, j; @@ -1415,16 +1443,15 @@ static void wifi_list_msg_handle(uint8_t * msg, uint16_t msgLen) { } } -static void gcode_msg_handle(uint8_t * msg, uint16_t msgLen) { +static void gcode_msg_handle(const uint8_t * const msg, const uint16_t msgLen) { uint8_t gcodeBuf[100] = { 0 }; - char *index_s, *index_e; if (msgLen <= 0) return; - index_s = (char *)msg; - index_e = (char *)strchr((char *)msg, '\n'); + char *index_s = (char *)msg, + *index_e = strchr((char *)msg, '\n'); if (*msg == 'N') { - index_s = (char *)strchr((char *)msg, ' '); + index_s = strchr((char *)msg, ' '); while (*index_s == ' ') index_s++; } while ((index_e != 0) && ((int)index_s < (int)index_e)) { @@ -1435,7 +1462,7 @@ static void gcode_msg_handle(uint8_t * msg, uint16_t msgLen) { } while ((*index_e == '\r') || (*index_e == '\n')) index_e++; index_s = index_e; - index_e = (char *)strchr(index_s, '\n'); + index_e = strchr(index_s, '\n'); } } @@ -1482,8 +1509,8 @@ void utf8_2_unicode(uint8_t *source, uint8_t Len) { COPY(source, FileName_unicode); } -static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) { - uint8_t fileNameLen = *msg; +static void file_first_msg_handle(const uint8_t * const msg, const uint16_t msgLen) { + const uint8_t fileNameLen = *msg; if (msgLen != fileNameLen + 5) return; @@ -1502,7 +1529,7 @@ static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) { 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 @@ -1514,11 +1541,11 @@ static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) { 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]; @@ -1547,7 +1574,7 @@ static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) { return; } - #endif // SDSUPPORT + #endif // HAS_MEDIA wifi_link_state = WIFI_TRANS_FILE; @@ -1565,8 +1592,8 @@ static void file_first_msg_handle(uint8_t * msg, uint16_t msgLen) { #define FRAG_MASK ~_BV32(31) -static void file_fragment_msg_handle(uint8_t * msg, uint16_t msgLen) { - uint32_t frag = *((uint32_t *)msg); +static void file_fragment_msg_handle(const uint8_t * const msg, const uint16_t msgLen) { + const uint32_t frag = *((uint32_t *)msg); if ((frag & FRAG_MASK) != (uint32_t)(lastFragment + 1)) { ZERO(public_buf); file_writer.write_index = 0; @@ -1595,7 +1622,7 @@ static void file_fragment_msg_handle(uint8_t * msg, uint16_t msgLen) { } } upload_file.close(); - SdFile file, *curDir; + MediaFile file, *curDir; const char * const fname = card.diveToFile(false, curDir, saveFilePath); if (file.open(curDir, fname, O_RDWR)) { gCfgItems.curFilesize = file.fileSize(); @@ -1747,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; @@ -1777,7 +1804,8 @@ void stopEspTransfer() { W25QXX.init(SPI_QUARTER_SPEED); - TERN_(HAS_TFT_LVGL_UI_SPI, SPI_TFT.spi_init(SPI_FULL_SPEED)); + // ?? Workaround for SPI / Servo issues ?? + 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()); @@ -1842,7 +1870,7 @@ void wifi_rcv_handle() { } if (need_ok_later && !queue.ring_buffer.full()) { need_ok_later = false; - send_to_wifi((uint8_t *)"ok\r\n", strlen("ok\r\n")); + send_ok_to_wifi(); } } @@ -1872,7 +1900,7 @@ void wifi_rcv_handle() { if (wifiTransError.flag == 0x1) { wifiTransError.now_tick = getWifiTick(); - if (getWifiTickDiff(wifiTransError.start_tick, wifiTransError.now_tick) > WAIT_ESP_TRANS_TIMEOUT_TICK) { + if (getWifiTickDiff(wifiTransError.start_tick, wifiTransError.now_tick) > (WAIT_ESP_TRANS_TIMEOUT_TICK)) { wifiTransError.flag = 0; WIFI_IO1_RESET(); } @@ -1969,7 +1997,7 @@ void mks_wifi_firmware_update() { if (wifi_upload(0) >= 0) { card.removeFile((char *)ESP_FIRMWARE_FILE_RENAME); - SdFile file, *curDir; + MediaFile file, *curDir; const char * const fname = card.diveToFile(false, curDir, ESP_FIRMWARE_FILE); if (file.open(curDir, fname, O_READ)) { file.rename(curDir, (char *)ESP_FIRMWARE_FILE_RENAME); @@ -1992,7 +2020,7 @@ void get_wifi_commands() { char wifi_char = espGcodeFifo.Buffer[espGcodeFifo.r]; - espGcodeFifo.r = (espGcodeFifo.r + 1) % WIFI_GCODE_BUFFER_SIZE; + espGcodeFifo.r = (espGcodeFifo.r + 1) % (WIFI_GCODE_BUFFER_SIZE); /** * If the character ends the line diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_module.h b/Marlin/src/lcd/extui/mks_ui/wifi_module.h index 36998899b4..851e85c512 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_module.h +++ b/Marlin/src/lcd/extui/mks_ui/wifi_module.h @@ -163,8 +163,8 @@ typedef struct { //uint8_t uartTxBuffer[UART_FIFO_BUFFER_SIZE]; } SZ_USART_FIFO; -#define WIFI_GCODE_BUFFER_LEAST_SIZE 96 -#define WIFI_GCODE_BUFFER_SIZE (WIFI_GCODE_BUFFER_LEAST_SIZE * 3) +#define WIFI_GCODE_BUFFER_LEAST_SIZE 96 +#define WIFI_GCODE_BUFFER_SIZE (WIFI_GCODE_BUFFER_LEAST_SIZE * 3) typedef struct { uint8_t wait_tick; uint8_t Buffer[WIFI_GCODE_BUFFER_SIZE]; @@ -179,14 +179,14 @@ extern CLOUD_PARA cloud_para; extern WIFI_GCODE_BUFFER espGcodeFifo; -uint32_t getWifiTick(); -uint32_t getWifiTickDiff(int32_t lastTick, int32_t curTick); +millis_t getWifiTick(); +millis_t getWifiTickDiff(const millis_t lastTick, const millis_t curTick); void mks_esp_wifi_init(); extern int cfg_cloud_flag; -int send_to_wifi(uint8_t *buf, int len); +int send_to_wifi(uint8_t * const buf, const int len); void wifi_looping(); -int raw_send_to_wifi(uint8_t *buf, int len); +int raw_send_to_wifi(uint8_t * const buf, const int len); int package_to_wifi(WIFI_RET_TYPE type, uint8_t *buf, int len); void get_wifi_list_command_send(); void get_wifi_commands(); diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp index c07cc47a36..2d4d19e7a2 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" @@ -38,10 +38,8 @@ extern SZ_USART_FIFO WifiRxFifo; -extern int readUsartFifo(SZ_USART_FIFO *fifo, int8_t *buf, int32_t len); -extern int writeUsartFifo(SZ_USART_FIFO * fifo, int8_t * buf, int32_t len); void esp_port_begin(uint8_t interrupt); -void wifi_delay(int n); +void wifi_delay(const uint16_t n); #define ARRAY_SIZE(a) sizeof(a) / sizeof((a)[0]) @@ -79,14 +77,14 @@ const uint32_t ESP_FLASH_ADDR = 0x40200000; // address of start of Flash UPLOAD_STRUCT esp_upload; -static const unsigned int retriesPerReset = 3; +static const uint16_t retriesPerReset = 3; static const uint32_t connectAttemptInterval = 50; -static const unsigned int percentToReportIncrement = 5; // how often we report % complete +static const uint16_t percentToReportIncrement = 5; // how often we report % complete static const uint32_t defaultTimeout = 500; static const uint32_t eraseTimeout = 15000; static const uint32_t blockWriteTimeout = 200; static const uint32_t blockWriteInterval = 15; // 15ms is long enough, 10ms is mostly too short -static SdFile update_file, *update_curDir; +static MediaFile update_file, *update_curDir; // Messages corresponding to result codes, should make sense when followed by " error" const char *resultMessages[] = { @@ -103,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; } @@ -151,7 +151,7 @@ void flushInput() { uint32_t getData(unsigned byteCnt, const uint8_t *buf, int ofst) { uint32_t val = 0; if (buf && byteCnt) { - unsigned int shiftCnt = 0; + uint16_t shiftCnt = 0; NOMORE(byteCnt, 4U); do { val |= (uint32_t)buf[ofst++] << shiftCnt; @@ -172,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 @@ -208,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, @@ -246,7 +250,7 @@ EspUploadResult readPacket(uint8_t op, uint32_t *valp, size_t *bodyLen, uint32_t const size_t headerLength = 8; - uint32_t startTime = getWifiTick(); + const millis_t startTime = getWifiTick(); uint8_t hdr[headerLength]; uint16_t hdrIdx = 0; @@ -294,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; @@ -348,7 +352,7 @@ EspUploadResult readPacket(uint8_t op, uint32_t *valp, size_t *bodyLen, uint32_t // Send a block of data performing SLIP encoding of the content. void _writePacket(const uint8_t *data, size_t len) { unsigned char outBuf[2048] = {0}; - unsigned int outIndex = 0; + uint16_t outIndex = 0; while (len != 0) { if (*data == 0xC0) { outBuf[outIndex++] = 0xDB; @@ -372,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. @@ -420,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; @@ -555,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; @@ -597,7 +601,7 @@ void upload_spin() { case uploading: // The ESP needs several milliseconds to recover from one packet before it will accept another if (getWifiTickDiff(esp_upload.lastAttemptTime, getWifiTick()) >= 15) { - unsigned int percentComplete; + uint16_t percentComplete; const uint32_t blkCnt = (esp_upload.fileSize + EspFlashBlockSize - 1) / EspFlashBlockSize; if (esp_upload.uploadBlockNumber < blkCnt) { esp_upload.uploadResult = flashWriteBlock(0, 0); @@ -624,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; @@ -642,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(); @@ -662,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; } @@ -676,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/extui/mks_ui/wifi_upload.h b/Marlin/src/lcd/extui/mks_ui/wifi_upload.h index 2daa505d90..524fb28f85 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_upload.h +++ b/Marlin/src/lcd/extui/mks_ui/wifi_upload.h @@ -59,8 +59,8 @@ typedef struct { UploadState state; uint32_t retriesPerBaudRate; uint32_t connectAttemptNumber; - uint32_t lastAttemptTime; - uint32_t lastResetTime; + millis_t lastAttemptTime; + millis_t lastResetTime; uint32_t uploadBlockNumber; uint32_t uploadNextPercentToReport; EspUploadResult uploadResult; diff --git a/Marlin/src/lcd/extui/nextion/FileNavigator.cpp b/Marlin/src/lcd/extui/nextion/FileNavigator.cpp index 6730370a94..c00ccb4e36 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 fd29bceade..57773fab5e 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 0e84fd33cf..b1e1997a3a 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() {} @@ -79,20 +79,22 @@ namespace ExtUI { // Called after loading or resetting stored settings } - void onSettingsStored(bool success) { + void onSettingsStored(const bool success) { // Called after the entire EEPROM has been written, // whether successful or not. } - void onSettingsLoaded(bool success) { + void onSettingsLoaded(const bool success) { // Called after the entire EEPROM has been read, // 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 } @@ -103,6 +105,12 @@ namespace ExtUI { #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 } @@ -111,7 +119,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 63c25177a6..87a6544e5e 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,29 +96,29 @@ 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); + DEBUG_ECHO(fstr); #endif PGM_P str = FTOP(fstr); 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,32 +149,32 @@ 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) - 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; } } @@ -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; @@ -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) @@ -431,27 +431,27 @@ void NextionTFT::PanelInfo(uint8_t req) { case 36: // Endstop Info #if X_HOME_TO_MIN - SEND_VALasTXT("x1", READ(X_MIN_PIN) != X_MIN_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("x1", READ(X_MIN_PIN) == X_MIN_ENDSTOP_HIT_STATE ? "triggered" : "open"); #elif X_HOME_TO_MAX - SEND_VALasTXT("x2", READ(X_MAX_PIN) != X_MAX_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("x2", READ(X_MAX_PIN) == X_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif #if Y_HOME_TO_MIN - SEND_VALasTXT("y1", READ(Y_MIN_PIN) != Y_MIN_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("y1", READ(Y_MIN_PIN) == Y_MIN_ENDSTOP_HIT_STATE ? "triggered" : "open"); #elif Y_HOME_TO_MAX - SEND_VALasTXT("y2", READ(X_MAX_PIN) != Y_MAX_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("y2", READ(X_MAX_PIN) == Y_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif #if Z_HOME_TO_MIN - SEND_VALasTXT("z1", READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("z1", READ(Z_MIN_PIN) == Z_MIN_ENDSTOP_HIT_STATE ? "triggered" : "open"); #elif Z_HOME_TO_MAX - SEND_VALasTXT("z2", READ(Z_MAX_PIN) != Z_MAX_ENDSTOP_INVERTING ? "triggered" : "open"); + SEND_VALasTXT("z2", READ(Z_MAX_PIN) == Z_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif - #if HAS_Z2_MIN - SEND_VALasTXT("z2", READ(Z2_MIN_PIN) != Z2_MIN_ENDSTOP_INVERTING ? "triggered" : "open"); - #elif HAS_Z2_MAX - SEND_VALasTXT("z2", READ(Z2_MAX_PIN) != Z2_MAX_ENDSTOP_INVERTING ? "triggered" : "open"); + #if USE_Z2_MIN + SEND_VALasTXT("z2", READ(Z2_MIN_PIN) == Z2_MIN_ENDSTOP_HIT_STATE ? "triggered" : "open"); + #elif USE_Z2_MAX + 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_INVERTING ? "triggered" : "open"); + //SEND_VALasTXT("bltouch", PROBE_TRIGGERED() ? "triggered" : "open"); #else SEND_NA("bltouch"); #endif @@ -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) @@ -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 806630485c..9e085b0f72 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 cdd91bf2a3..061d29559c 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/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index 8e5ad560ac..c1f5aa0f03 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -112,9 +112,9 @@ namespace ExtUI { static struct { - uint8_t printer_killed : 1; + bool printer_killed : 1; #if ENABLED(JOYSTICK) - uint8_t jogging : 1; + bool jogging : 1; #endif } flags; @@ -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 @@ -801,7 +801,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 @@ -846,7 +848,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)); } @@ -871,11 +873,13 @@ namespace ExtUI { #endif // BABYSTEPPING float getZOffset_mm() { - return (0.0f + return ( #if HAS_BED_PROBE - + probe.offset.z + probe.offset.z #elif ENABLED(BABYSTEP_DISPLAY_TOTAL) - + planner.mm_per_step[Z_AXIS] * babystep.axis_total[BS_AXIS_IND(Z_AXIS)] + planner.mm_per_step[Z_AXIS] * babystep.axis_total[BS_AXIS_IND(Z_AXIS)] + #else + 0.0f #endif ); } @@ -943,7 +947,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 @@ -952,28 +956,27 @@ namespace ExtUI { void setMeshPoint(const xy_uint8_t &pos, const_float_t zoff) { if (WITHIN(pos.x, 0, (GRID_MAX_POINTS_X) - 1) && WITHIN(pos.y, 0, (GRID_MAX_POINTS_Y) - 1)) { bedlevel.z_values[pos.x][pos.y] = zoff; - TERN_(ABL_BILINEAR_SUBDIVISION, bed_level_virt_interpolate()); + TERN_(ABL_BILINEAR_SUBDIVISION, bedlevel.refresh_bed_level()); } } 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; + #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); 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); @@ -1109,14 +1112,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(); @@ -1126,7 +1129,7 @@ namespace ExtUI { return isPrinting() && (isPrintingFromMediaPaused() || print_job_timer.isPaused()); } - bool isMediaInserted() { return TERN0(SDSUPPORT, IS_SD_INSERTED() || card.isMounted()); } + bool isMediaInserted() { return TERN0(HAS_MEDIA, IS_SD_INSERTED() || card.isMounted()); } void pausePrint() { ui.pause_print(); } void resumePrint() { ui.resume_print(); } @@ -1153,14 +1156,21 @@ namespace ExtUI { #endif } + void onSurviveInKilled() { + thermalManager.disable_all_heaters(); + flags.printer_killed = 0; + marlin_state = MF_RUNNING; + //SERIAL_ECHOLNPGM("survived at: ", millis()); + } + FileList::FileList() { refresh(); } - void FileList::refresh() { num_files = 0xFFFF; } + 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.getfilename_sorted(SD_ORDER(pos, count())); + card.selectFileByIndexSorted(pos); return card.filename[0] != '\0'; #else UNUSED(pos); @@ -1170,43 +1180,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, (num_files = (num_files == 0xFFFF ? card.get_num_Files() : num_files))); + 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() { - #if ENABLED(SDSUPPORT) - card.cdup(); - num_files = 0xFFFF; - #endif + TERN_(HAS_MEDIA, card.cdup()); } void FileList::changeDir(const char * const dirname) { - #if ENABLED(SDSUPPORT) - card.cd(dirname); - num_files = 0xFFFF; - #else - UNUSED(dirname); - #endif + TERN(HAS_MEDIA, card.cd(dirname), UNUSED(dirname)); } } // namespace ExtUI diff --git a/Marlin/src/lcd/extui/ui_api.h b/Marlin/src/lcd/extui/ui_api.h index d2ecda9c2f..7feb2c4297 100644 --- a/Marlin/src/lcd/extui/ui_api.h +++ b/Marlin/src/lcd/extui/ui_api.h @@ -45,6 +45,7 @@ #include "../../inc/MarlinConfig.h" #include "../marlinui.h" #include "../../gcode/gcode.h" + #if M600_PURGE_MORE_RESUMABLE #include "../../feature/pause.h" #endif @@ -171,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); } @@ -381,9 +382,6 @@ namespace ExtUI { void resumePrint(); class FileList { - private: - uint16_t num_files; - public: FileList(); void refresh(); @@ -412,6 +410,7 @@ namespace ExtUI { void onMediaRemoved(); void onPlayTone(const uint16_t frequency, const uint16_t duration); void onPrinterKilled(FSTR_P const error, FSTR_P const component); + void onSurviveInKilled(); void onPrintTimerStarted(); void onPrintTimerPaused(); void onPrintTimerStopped(); @@ -429,9 +428,11 @@ namespace ExtUI { void onStoreSettings(char *); void onLoadSettings(const char *); void onPostprocessSettings(); - void onSettingsStored(bool success); - void onSettingsLoaded(bool success); + void onSettingsStored(const bool success); + void onSettingsLoaded(const bool success); #if ENABLED(POWER_LOSS_RECOVERY) + void onSetPowerLoss(const bool onoff); + void onPowerLoss(); void onPowerLossResume(); #endif #if HAS_PID_HEATING diff --git a/Marlin/src/lcd/language/language_an.h b/Marlin/src/lcd/language/language_an.h index 1d4801278c..0d2b96d5a4 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; @@ -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"); @@ -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"); @@ -93,7 +93,7 @@ namespace Language_an { LSTR MSG_MOVE_50MM = _UxGT("Mover 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Mover 100mm"); LSTR MSG_SPEED = _UxGT("Velocidat"); - LSTR MSG_BED_Z = _UxGT("Base Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Base Z"); LSTR MSG_NOZZLE = _UxGT("Boquilla"); LSTR MSG_NOZZLE_N = _UxGT("Boquilla ~"); LSTR MSG_BED = _UxGT("Base"); @@ -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 - // - - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - 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 + // 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 + // 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...")); + #endif +} + +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 312ada7b10..ed76dfa48d 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; @@ -39,28 +39,28 @@ 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("Паркиране"); 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("Изкл. захранване"); @@ -82,7 +82,7 @@ namespace Language_bg { LSTR MSG_MOVE_50MM = _UxGT("Премести с 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Премести с 100mm"); LSTR MSG_SPEED = _UxGT("Скорост"); - LSTR MSG_BED_Z = _UxGT("Bed Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bed Z"); LSTR MSG_NOZZLE = " " LCD_STR_THERMOMETER _UxGT(" Дюза"); LSTR MSG_NOZZLE_N = " " LCD_STR_THERMOMETER _UxGT(" Дюза ~"); LSTR MSG_BED = " " LCD_STR_THERMOMETER _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 13b5d70837..7a83da7d4e 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; @@ -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"); @@ -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"); @@ -93,7 +93,7 @@ namespace Language_ca { LSTR MSG_MOVE_50MM = _UxGT("Mou 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Mou 100mm"); LSTR MSG_SPEED = _UxGT("Velocitat"); - LSTR MSG_BED_Z = _UxGT("Llit Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Llit Z"); LSTR MSG_NOZZLE = _UxGT("Nozzle"); LSTR MSG_NOZZLE_N = _UxGT("Nozzle ~"); LSTR MSG_BED = _UxGT("Llit"); @@ -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"); @@ -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 bb930eb784..ba54eb051e 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; @@ -54,17 +54,13 @@ 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"); 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"); @@ -243,7 +237,7 @@ namespace Language_cz { LSTR MSG_MOVE_50MM = _UxGT("Posunout o 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Posunout o 100mm"); LSTR MSG_SPEED = _UxGT("Rychlost"); - LSTR MSG_BED_Z = _UxGT("Výška podl."); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Výška podl."); LSTR MSG_NOZZLE = _UxGT("Tryska"); LSTR MSG_NOZZLE_N = _UxGT("Tryska ~"); LSTR MSG_BED = _UxGT("Podložka"); @@ -334,7 +328,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"); @@ -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"); @@ -512,7 +490,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"); @@ -520,23 +498,13 @@ 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"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - 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"); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Alias V-nástroje"); - 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_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:"); @@ -546,33 +514,18 @@ namespace Language_cz { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Bludiště"); - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - 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")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Vložte filament", "a stiskněte", "tlačítko...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klikněte pro", "nahřátí trysky")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Čekejte prosím", "na nahřátí tr.")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Čekejte prosím", "na vysunuti", "filamentu")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Čekejte prosím", "na zavedení", "filamentu")); - 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 + // 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čů"); @@ -586,3 +539,46 @@ namespace Language_cz { 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"); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Alias V-nástroje"); + 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"); + #endif +} + +namespace LanguageTall_cz { + using namespace LanguageWide_cz; + #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("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")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Vložte filament", "a stiskněte", "tlačítko...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klikněte pro", "nahřátí trysky")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Čekejte prosím", "na nahřátí tr.")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Čekejte prosím", "na vysunuti", "filamentu")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Čekejte prosím", "na zavedení", "filamentu")); + 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")); + #endif +} + +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 56c53b84fd..6a7bcad598 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; @@ -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"); @@ -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"); @@ -84,7 +84,7 @@ namespace Language_da { LSTR MSG_MOVE_50MM = _UxGT("Flyt 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Flyt 100mm"); LSTR MSG_SPEED = _UxGT("Hastighed"); - LSTR MSG_BED_Z = _UxGT("Plade Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Plade Z"); LSTR MSG_NOZZLE = _UxGT("Dyse"); LSTR MSG_NOZZLE_N = _UxGT("Dyse ~"); @@ -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"); @@ -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 1cbddf860e..30e2521d23 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; @@ -52,10 +52,8 @@ 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"); LSTR MSG_CONFIGURATION = _UxGT("Konfiguration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Motoren deaktivieren"); // M84 :: Max length 19 characters @@ -70,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"); @@ -94,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"); @@ -277,7 +268,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"); @@ -308,7 +299,7 @@ namespace Language_de { LSTR MSG_MOVE_01IN = _UxGT("0.100 in"); LSTR MSG_MOVE_1IN = _UxGT("1.000 in"); LSTR MSG_SPEED = _UxGT("Geschw."); - LSTR MSG_BED_Z = _UxGT("Bett Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bett Z"); LSTR MSG_NOZZLE = _UxGT("Düse"); LSTR MSG_NOZZLE_N = _UxGT("Düse ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Düse geparkt"); @@ -345,7 +336,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."); @@ -414,7 +405,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"); @@ -461,7 +452,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"); @@ -513,7 +504,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"); @@ -624,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"); @@ -692,7 +671,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"); @@ -731,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"); @@ -774,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"); @@ -811,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 57af804147..0a8e50109b 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; @@ -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"); @@ -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("Απενεργοποίηση"); @@ -102,7 +102,7 @@ namespace Language_el { LSTR MSG_MOVE_50MM = _UxGT("Μετακίνηση 50 μμ"); LSTR MSG_MOVE_100MM = _UxGT("Μετακίνηση 100 μμ"); LSTR MSG_SPEED = _UxGT("Ταχύτητα"); - LSTR MSG_BED_Z = _UxGT("Επ. Εκτύπωσης Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Επ. Εκτύπωσης Z"); LSTR MSG_NOZZLE = _UxGT("Ακροφύσιο"); LSTR MSG_NOZZLE_N = _UxGT("Ακροφύσιο ~"); LSTR MSG_BED = _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("Μετατόπιση Ζ"); @@ -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 08f647f705..e766ecb941 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; @@ -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("Αυτομ. επαναφορά στο αρχικό σημείο"); @@ -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("Απενεργοποίηση"); @@ -91,7 +91,7 @@ namespace Language_el_gr { LSTR MSG_MOVE_50MM = _UxGT("Μετακίνηση 50 μμ"); LSTR MSG_MOVE_100MM = _UxGT("Μετακίνηση 100 μμ"); LSTR MSG_SPEED = _UxGT("Ταχύτητα"); - LSTR MSG_BED_Z = _UxGT("Κλίνη Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Κλίνη Z"); LSTR MSG_NOZZLE = _UxGT("Ακροφύσιο"); LSTR MSG_NOZZLE_N = _UxGT("Ακροφύσιο ~"); LSTR MSG_BED = _UxGT("Κλίνη"); @@ -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("Συντονισμός"); @@ -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 6b821a739f..0b4d67839e 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 @@ -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"); @@ -64,18 +68,20 @@ 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"); - 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"); LSTR MSG_CONFIGURATION = _UxGT("Configuration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Run Auto Files"); 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 @"); @@ -86,11 +92,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"); @@ -111,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"); @@ -187,6 +186,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"); @@ -296,7 +296,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"); @@ -329,7 +329,7 @@ namespace Language_en { LSTR MSG_MOVE_1IN = _UxGT("Move 1.0in"); LSTR MSG_LIVE_MOVE = _UxGT("Live Move"); LSTR MSG_SPEED = _UxGT("Speed"); - LSTR MSG_BED_Z = _UxGT("Bed Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bed Z"); LSTR MSG_NOZZLE = _UxGT("Nozzle"); LSTR MSG_NOZZLE_N = _UxGT("Nozzle ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Nozzle Parked"); @@ -364,10 +364,10 @@ 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."); + 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."); @@ -395,6 +395,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 +419,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"); @@ -430,6 +437,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 *"); @@ -443,6 +451,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"); @@ -453,11 +462,12 @@ 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_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"); @@ -498,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("Print 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..."); @@ -566,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"); @@ -639,6 +635,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"); @@ -666,6 +663,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"); @@ -686,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"); @@ -747,17 +737,18 @@ 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"); 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 ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Component {"); LSTR MSG_MIXER = _UxGT("Mixer"); LSTR MSG_GRADIENT = _UxGT("Gradient"); LSTR MSG_FULL_GRADIENT = _UxGT("Full Gradient"); @@ -795,37 +786,24 @@ 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"); + 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"); @@ -836,13 +814,26 @@ 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) - 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"); @@ -871,11 +862,12 @@ namespace Language_en { LSTR MSG_HOST_SHUTDOWN = _UxGT("Host Shutdown"); - // These strings can be the same in all languages - LSTR MSG_MARLIN = _UxGT("Marlin"); 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 + + // These strings can be the same in all languages + LSTR MSG_MARLIN = _UxGT("Marlin"); LSTR MSG_PID_P = _UxGT("PID-P"); LSTR MSG_PID_P_E = _UxGT("PID-P *"); LSTR MSG_PID_I = _UxGT("PID-I"); @@ -887,12 +879,70 @@ namespace Language_en { LSTR MSG_PID_F = _UxGT("PID-F"); LSTR MSG_PID_F_E = _UxGT("PID-F *"); LSTR MSG_BACKLASH_N = _UxGT("@"); + + // DGUS-Specific message strings, not used elsewhere + LSTR DGUS_MSG_NOT_WHILE_PRINTING = _UxGT("Not allowed during print"); + LSTR DGUS_MSG_NOT_WHILE_IDLE = _UxGT("Not allowed while idle"); + LSTR DGUS_MSG_NO_FILE_SELECTED = _UxGT("No file selected"); + LSTR DGUS_MSG_TEMP_TOO_LOW = _UxGT("Temperature too low"); + LSTR DGUS_MSG_EXECUTING_COMMAND = _UxGT("Executing command..."); + LSTR DGUS_MSG_BED_PID_DISABLED = _UxGT("Bed PID disabled"); + LSTR DGUS_MSG_PID_DISABLED = _UxGT("PID disabled"); + LSTR DGUS_MSG_PID_AUTOTUNING = _UxGT("PID autotuning..."); + LSTR DGUS_MSG_INVALID_RECOVERY_DATA = _UxGT("Invalid recovery data"); + + LSTR DGUS_MSG_HOMING_REQUIRED = _UxGT("Homing required"); + LSTR DGUS_MSG_BUSY = _UxGT("Busy"); + LSTR DGUS_MSG_HOMING = _UxGT("Homing..."); + LSTR DGUS_MSG_FW_OUTDATED = _UxGT("DWIN GUI/OS update required"); + LSTR DGUS_MSG_ABL_REQUIRED = _UxGT("Auto bed leveling required"); + LSTR DGUS_MSG_PROBING_FAILED = _UxGT("Probing failed"); + LSTR DGUS_MSG_PROBING_SUCCESS = _UxGT("Probing successful"); + LSTR DGUS_MSG_RESET_EEPROM = _UxGT("EEPROM reset"); + 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"); } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 d95275c317..3726e25270 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; @@ -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"); @@ -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"); @@ -237,7 +235,7 @@ namespace Language_es { LSTR MSG_MOVE_50MM = _UxGT("Mover 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Mover 100mm"); LSTR MSG_SPEED = _UxGT("Velocidad"); - LSTR MSG_BED_Z = _UxGT("Cama Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Cama Z"); LSTR MSG_NOZZLE = _UxGT("Boquilla"); LSTR MSG_NOZZLE_N = _UxGT("Boquilla ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Boquilla Aparcada"); @@ -315,11 +313,11 @@ 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"); - 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"); @@ -338,7 +336,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"); @@ -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"); @@ -510,7 +500,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"); @@ -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 0c29cdd2aa..d96b099f3e 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; @@ -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"); @@ -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"); @@ -146,7 +144,7 @@ namespace Language_eu { LSTR MSG_MOVE_50MM = _UxGT("Mugitu 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Mugitu 100mm"); LSTR MSG_SPEED = _UxGT("Abiadura"); - LSTR MSG_BED_Z = _UxGT("Z Ohea"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Z Ohea"); LSTR MSG_NOZZLE = _UxGT("Pita"); LSTR MSG_NOZZLE_N = _UxGT("Pita ~"); LSTR MSG_BED = _UxGT("Ohea"); @@ -194,7 +192,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"); @@ -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 300da9b956..9e87bb7578 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; @@ -39,27 +39,27 @@ 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"); - #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"); @@ -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ä"); @@ -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 d9d43427c2..c281497e96 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; @@ -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"); @@ -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"); @@ -246,7 +244,7 @@ namespace Language_fr { LSTR MSG_MOVE_05IN = _UxGT("Déplacer 0.5\""); LSTR MSG_MOVE_1IN = _UxGT("Déplacer 1\""); LSTR MSG_SPEED = _UxGT("Vitesse"); - LSTR MSG_BED_Z = _UxGT("Lit Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Lit Z"); LSTR MSG_NOZZLE = _UxGT("Buse"); LSTR MSG_NOZZLE_N = _UxGT("Buse ~"); LSTR MSG_BED = _UxGT("Lit"); @@ -331,7 +329,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"); @@ -353,7 +351,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"); @@ -367,7 +365,7 @@ namespace Language_fr { LSTR MSG_STOPPED = _UxGT("STOPPÉ"); LSTR MSG_CONTROL_RETRACT = _UxGT("Rétractation mm"); LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Ech. rétr. mm"); - LSTR MSG_CONTROL_RETRACTF = _UxGT("Vit. rétract°"); + LSTR MSG_CONTROL_RETRACTF = _UxGT("Vit. rétract") LCD_STR_DEGREE; LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Saut Z mm"); LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Rét.reprise mm"); LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Ech.reprise mm"); @@ -378,7 +376,7 @@ namespace Language_fr { LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Augmenter Z"); LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Vitesse primaire"); LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Purge Retract"); - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Vitesse rétract°"); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Vitesse rétract") LCD_STR_DEGREE; LSTR MSG_FILAMENT_PARK_ENABLED = _UxGT("Garer Extrudeur"); LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Vitesse reprise"); LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Vit. ventil."); @@ -443,9 +441,6 @@ namespace Language_fr { LSTR MSG_HALTED = _UxGT("IMPR. STOPPÉE"); LSTR MSG_PLEASE_RESET = _UxGT("Redémarrer SVP"); - LSTR MSG_SHORT_DAY = _UxGT("j"); // One character only - LSTR MSG_SHORT_HOUR = _UxGT("h"); // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("m"); // One character only LSTR MSG_HEATING = _UxGT("en chauffe..."); LSTR MSG_COOLING = _UxGT("Refroidissement"); @@ -488,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"); @@ -543,7 +530,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"); @@ -569,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"); @@ -608,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..."); @@ -631,4 +600,64 @@ namespace Language_fr { LSTR MSG_SD_CARD = _UxGT("Carte SD"); LSTR MSG_USB_DISK = _UxGT("Clé USB"); + + // DGUS-Specific message strings, not used elsewhere + LSTR DGUS_MSG_NOT_WHILE_PRINTING = _UxGT("Impossible pendant une impression"); + LSTR DGUS_MSG_NOT_WHILE_IDLE = _UxGT("Impossible tant que l'imprimante est en attente"); + LSTR DGUS_MSG_NO_FILE_SELECTED = _UxGT("Aucun fichier selectionne"); + LSTR DGUS_MSG_TEMP_TOO_LOW = _UxGT("Temperature trop basse"); + LSTR DGUS_MSG_EXECUTING_COMMAND = _UxGT("Execution de la commande..."); + LSTR DGUS_MSG_BED_PID_DISABLED = _UxGT("Bed PID desactive"); + LSTR DGUS_MSG_PID_DISABLED = _UxGT("PID desactive"); + LSTR DGUS_MSG_PID_AUTOTUNING = _UxGT("Autocalibrage du PID..."); + LSTR DGUS_MSG_INVALID_RECOVERY_DATA = _UxGT("Donnees de recuperation non valides"); + + LSTR DGUS_MSG_HOMING_REQUIRED = _UxGT("Retour a l'origine necessaire..."); + LSTR DGUS_MSG_BUSY = _UxGT("Occupe"); + LSTR DGUS_MSG_HOMING = _UxGT("Retour a l'origine..."); + LSTR DGUS_MSG_FW_OUTDATED = _UxGT("Mise a jour DWIN GUI/OS necessaire"); + LSTR DGUS_MSG_ABL_REQUIRED = _UxGT("Nivellement du bed necessaire"); + LSTR DGUS_MSG_PROBING_FAILED = _UxGT("Echec du nivellement..."); + LSTR DGUS_MSG_PROBING_SUCCESS = _UxGT("Nivellement realise avec succes"); + LSTR DGUS_MSG_RESET_EEPROM = _UxGT("Reinitialisation de l'EEPROM"); + LSTR DGUS_MSG_WRITE_EEPROM_FAILED = _UxGT("Echec ecriture de l'EEPROM"); + LSTR DGUS_MSG_READ_EEPROM_FAILED = _UxGT("Echec lecture de l'EEPROM"); + LSTR DGUS_MSG_FILAMENT_RUNOUT = _UxGT("Sortie de filament E%d"); + + LSTR MSG_SHORT_DAY = _UxGT("j"); // One character only + 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 new file mode 100644 index 0000000000..05e5b061dd --- /dev/null +++ b/Marlin/src/lcd/language/language_fr_na.h @@ -0,0 +1,663 @@ +/** + * 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 + +/** + * French (without accent for DWIN T5UID1) + * + * LCD Menu Messages + * See also https://marlinfw.org/docs/development/lcd_language.html + */ + +#define DISPLAY_CHARSET_ISO10646_1 +#define NOT_EXTENDED_ISO10646_1_5X7 + +namespace LanguageNarrow_fr_na { + using namespace Language_en; // Inherit undefined strings from English + + LSTR LANGUAGE = _UxGT("Francais"); + + LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" prete."); + LSTR MSG_YES = _UxGT("Oui"); + LSTR MSG_NO = _UxGT("Non"); + LSTR MSG_BACK = _UxGT("Retour"); + LSTR MSG_MEDIA_ABORTING = _UxGT("Annulation..."); + LSTR MSG_MEDIA_INSERTED = _UxGT("Media insere"); + LSTR MSG_MEDIA_REMOVED = _UxGT("Media retire"); + LSTR MSG_MEDIA_WAITING = _UxGT("Attente media"); + LSTR MSG_MEDIA_READ_ERROR = _UxGT("Err lecture media"); + LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB debranche"); + 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_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"); + LSTR MSG_DISABLE_STEPPERS = _UxGT("Arreter moteurs"); + LSTR MSG_DEBUG_MENU = _UxGT("Menu debug"); + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test barre progress."); + LSTR MSG_HOMING = _UxGT("Origine"); + LSTR MSG_AUTO_HOME = _UxGT("Origine auto"); + LSTR MSG_AUTO_HOME_A = _UxGT("Origine @ auto"); + LSTR MSG_AUTO_HOME_X = _UxGT("Origine X auto"); + LSTR MSG_AUTO_HOME_Y = _UxGT("Origine Y auto"); + LSTR MSG_AUTO_HOME_Z = _UxGT("Origine Z auto"); + LSTR MSG_AUTO_Z_ALIGN = _UxGT("Align. Z auto"); + LSTR MSG_LEVEL_BED_HOMING = _UxGT("Origine XYZ..."); + LSTR MSG_LEVEL_BED_WAITING = _UxGT("Clic pour commencer"); + LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("Point suivant"); + LSTR MSG_LEVEL_BED_DONE = _UxGT("Mise a niveau OK!"); + LSTR MSG_Z_FADE_HEIGHT = _UxGT("Hauteur lissee"); + LSTR MSG_SET_HOME_OFFSETS = _UxGT("Regl. decal origine"); + LSTR MSG_HOME_OFFSET_X = _UxGT("Decal. origine X"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Decal. origine Y"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Decal. origine Z"); + LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Decalages appliques"); + 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 "); + + 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"); + LSTR MSG_LASER_POWER = _UxGT("Puissance"); + LSTR MSG_SPINDLE_REVERSE = _UxGT("Inverser broches"); + LSTR MSG_SWITCH_PS_ON = _UxGT("Allumer alim."); + LSTR MSG_SWITCH_PS_OFF = _UxGT("Eteindre alim."); + LSTR MSG_EXTRUDE = _UxGT("Extrusion"); + LSTR MSG_RETRACT = _UxGT("Retractation"); + LSTR MSG_MOVE_AXIS = _UxGT("Deplacer un axe"); + LSTR MSG_BED_LEVELING = _UxGT("Regler Niv. lit"); + LSTR MSG_LEVEL_BED = _UxGT("Niveau du lit"); + LSTR MSG_BED_TRAMMING = _UxGT("Niveau des coins"); + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Relever le coin jusqu'a la sonde"); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Coins dans la tolerance. Niveau lit."); + LSTR MSG_NEXT_CORNER = _UxGT("Coin suivant"); + LSTR MSG_MESH_EDITOR = _UxGT("Modif. maille"); // 13 car. max + LSTR MSG_EDIT_MESH = _UxGT("Modifier grille"); + LSTR MSG_EDITING_STOPPED = _UxGT("Modification arretee"); + LSTR MSG_PROBING_POINT = _UxGT("Mesure point"); + LSTR MSG_MESH_X = _UxGT("Index X"); + LSTR MSG_MESH_Y = _UxGT("Index Y"); + LSTR MSG_MESH_EDIT_Z = _UxGT("Valeur Z"); + LSTR MSG_CUSTOM_COMMANDS = _UxGT("Commandes perso"); + + LSTR MSG_LCD_TILTING_MESH = _UxGT("Mesure point"); + LSTR MSG_M48_TEST = _UxGT("Ecart sonde Z M48"); + LSTR MSG_M48_DEVIATION = _UxGT("Ecart"); + LSTR MSG_M48_POINT = _UxGT("Point M48"); + LSTR MSG_IDEX_MENU = _UxGT("Mode IDEX"); + LSTR MSG_IDEX_MODE_AUTOPARK = _UxGT("Auto-Park"); + LSTR MSG_IDEX_MODE_DUPLICATE = _UxGT("Duplication"); + LSTR MSG_IDEX_MODE_MIRRORED_COPY = _UxGT("Copie miroir"); + LSTR MSG_IDEX_MODE_FULL_CTRL = _UxGT("Controle complet"); + LSTR MSG_OFFSETS_MENU = _UxGT("Offsets Outil"); + LSTR MSG_HOTEND_OFFSET_Z = _UxGT("Buse 2 Z"); + LSTR MSG_HOTEND_OFFSET_A = _UxGT("Buse 2 @"); + LSTR MSG_G26_HEATING_BED = _UxGT("G26: Chauffage du lit"); + LSTR MSG_G26_HEATING_NOZZLE = _UxGT("Buse en chauffe..."); + LSTR MSG_G26_MANUAL_PRIME = _UxGT("Amorce manuelle..."); + LSTR MSG_G26_FIXED_LENGTH = _UxGT("Amorce longueur fixe"); + LSTR MSG_G26_PRIME_DONE = _UxGT("Amorce terminee"); + LSTR MSG_G26_CANCELED = _UxGT("G26 annule"); + LSTR MSG_G26_LEAVING = _UxGT("Sortie G26"); + LSTR MSG_UBL_DOING_G29 = _UxGT("G29 en cours"); + LSTR MSG_UBL_TOOLS = _UxGT("Outils UBL"); + LSTR MSG_UBL_LEVEL_BED = _UxGT("Niveau lit unifie"); + LSTR MSG_UBL_MANUAL_MESH = _UxGT("Maillage manuel"); + LSTR MSG_UBL_BC_INSERT = _UxGT("Poser cale & mesurer"); + LSTR MSG_UBL_BC_INSERT2 = _UxGT("Mesure"); + LSTR MSG_UBL_BC_REMOVE = _UxGT("oter et mesurer lit"); + LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Aller au suivant"); + LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("Activer l'UBL"); + LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("Desactiver l'UBL"); + LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Temperature lit"); + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Temperature lit"); + LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("Temperature buse"); + LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Temperature buse"); + LSTR MSG_UBL_MESH_EDIT = _UxGT("Modifier grille"); + LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Modif. grille perso"); + 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"); + 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"); + LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Hauteur (x0.1mm)"); + LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("Verifier grille"); + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Impr. grille ..."); + LSTR MSG_UBL_CONTINUE_MESH = _UxGT("Continuer grille"); + LSTR MSG_UBL_MESH_LEVELING = _UxGT("Niveau par mailles"); + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("Niveau a 3 points"); + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Niveau par grille"); + LSTR MSG_UBL_MESH_LEVEL = _UxGT("Effectuer mesures"); + LSTR MSG_UBL_SIDE_POINTS = _UxGT("Points lateraux"); + LSTR MSG_UBL_MAP_TYPE = _UxGT("Type de carte"); + LSTR MSG_UBL_OUTPUT_MAP = _UxGT("Exporter grille"); + LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("Export pour hote"); + LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("Export en CSV"); + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Export sauvegarde"); + LSTR MSG_UBL_INFO_UBL = _UxGT("Infos debug UBL"); + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Nombre de points"); + LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("Remplissage manuel"); + LSTR MSG_UBL_SMART_FILLIN = _UxGT("Remplissage auto"); + LSTR MSG_UBL_FILLIN_MESH = _UxGT("Remplissage grille"); + LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("Tout effacer"); + LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("Effacer le + pres"); + LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Reglage fin (tous)"); + LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Reglage fin + pres"); + LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("Stockage grille"); + LSTR MSG_UBL_STORAGE_SLOT = _UxGT("Slot memoire"); + LSTR MSG_UBL_LOAD_MESH = _UxGT("Charger la grille"); + LSTR MSG_UBL_SAVE_MESH = _UxGT("Stocker la grille"); + LSTR MSG_MESH_LOADED = _UxGT("Grille %i chargee"); + LSTR MSG_MESH_SAVED = _UxGT("Grille %i enreg."); + LSTR MSG_UBL_NO_STORAGE = _UxGT("Pas de memoire"); + LSTR MSG_UBL_SAVE_ERROR = _UxGT("Err: Enreg. UBL"); + LSTR MSG_UBL_RESTORE_ERROR = _UxGT("Err: Ouvrir UBL"); + LSTR MSG_UBL_Z_OFFSET = _UxGT("Z-Offset: "); + LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Decal. Z arrete"); + LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("Assistant UBL"); + LSTR MSG_UBL_1_BUILD_COLD_MESH = _UxGT("1.Mesure a froid"); + LSTR MSG_UBL_2_SMART_FILLIN = _UxGT("2.Completer auto."); + LSTR MSG_UBL_3_VALIDATE_MESH_MENU = _UxGT("3.Verifier grille"); + LSTR MSG_UBL_4_FINE_TUNE_ALL = _UxGT("4.Reglage fin"); + LSTR MSG_UBL_5_VALIDATE_MESH_MENU = _UxGT("5.Verifier grille"); + LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6.Reglage fin"); + LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7.Stocker grille"); + + LSTR MSG_LED_CONTROL = _UxGT("Controle LED"); + LSTR MSG_LEDS = _UxGT("Lumiere"); + LSTR MSG_LED_PRESETS = _UxGT("Preregl. LED"); + LSTR MSG_SET_LEDS_RED = _UxGT("Rouge"); + LSTR MSG_SET_LEDS_ORANGE = _UxGT("Orange"); + LSTR MSG_SET_LEDS_YELLOW = _UxGT("Jaune"); + LSTR MSG_SET_LEDS_GREEN = _UxGT("Vert"); + LSTR MSG_SET_LEDS_BLUE = _UxGT("Bleu"); + LSTR MSG_SET_LEDS_INDIGO = _UxGT("Indigo"); + LSTR MSG_SET_LEDS_VIOLET = _UxGT("Violet"); + LSTR MSG_SET_LEDS_WHITE = _UxGT("Blanc"); + LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Defaut"); + LSTR MSG_CUSTOM_LEDS = _UxGT("LEDs perso."); + LSTR MSG_INTENSITY_R = _UxGT("Intensite rouge"); + LSTR MSG_INTENSITY_G = _UxGT("Intensite vert"); + LSTR MSG_INTENSITY_B = _UxGT("Intensite bleu"); + LSTR MSG_INTENSITY_W = _UxGT("Intensite blanc"); + LSTR MSG_LED_BRIGHTNESS = _UxGT("Luminosite"); + + LSTR MSG_MOVING = _UxGT("Deplacement..."); + LSTR MSG_FREE_XY = _UxGT("Debloquer XY"); + LSTR MSG_MOVE_X = _UxGT("Deplacer X"); + LSTR MSG_MOVE_Y = _UxGT("Deplacer Y"); + LSTR MSG_MOVE_Z = _UxGT("Deplacer Z"); + LSTR MSG_MOVE_N = _UxGT("Deplacer @"); + LSTR MSG_MOVE_E = _UxGT("Extruder"); + LSTR MSG_MOVE_EN = _UxGT("Extruder *"); + LSTR MSG_HOTEND_TOO_COLD = _UxGT("Buse trop froide"); + LSTR MSG_MOVE_N_MM = _UxGT("Deplacer $mm"); + LSTR MSG_MOVE_01MM = _UxGT("Deplacer 0.1mm"); + LSTR MSG_MOVE_1MM = _UxGT("Deplacer 1mm"); + LSTR MSG_MOVE_10MM = _UxGT("Deplacer 10mm"); + LSTR MSG_MOVE_50MM = _UxGT("Deplacer 50mm"); + LSTR MSG_MOVE_100MM = _UxGT("Deplacer 100mm"); + LSTR MSG_MOVE_0001IN = _UxGT("Deplacer 0.001\""); + LSTR MSG_MOVE_001IN = _UxGT("Deplacer 0.01\""); + LSTR MSG_MOVE_01IN = _UxGT("Deplacer 0.1\""); + LSTR MSG_MOVE_05IN = _UxGT("Deplacer 0.5\""); + LSTR MSG_MOVE_1IN = _UxGT("Deplacer 1\""); + LSTR MSG_SPEED = _UxGT("Vitesse"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Lit Z"); + LSTR MSG_NOZZLE = _UxGT("Buse"); + LSTR MSG_NOZZLE_N = _UxGT("Buse ~"); + LSTR MSG_BED = _UxGT("Lit"); + LSTR MSG_CHAMBER = _UxGT("Caisson"); + LSTR MSG_FAN_SPEED = _UxGT("Vit. ventil. "); // 15 car. max + LSTR MSG_FAN_SPEED_N = _UxGT("Vit. ventil. ~"); + LSTR MSG_STORED_FAN_N = _UxGT("Vit. enreg. ~"); + LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Extra ventil. "); + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Extra ventil. ~"); + + LSTR MSG_FLOW = _UxGT("Flux"); + LSTR MSG_FLOW_N = _UxGT("Flux ~"); + LSTR MSG_CONTROL = _UxGT("Controler"); + LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" Min"); + LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" Max"); + LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" Facteur"); + LSTR MSG_AUTOTEMP = _UxGT("Temp. Auto."); + LSTR MSG_LCD_ON = _UxGT("Marche"); + LSTR MSG_LCD_OFF = _UxGT("Arret"); + LSTR MSG_PID_AUTOTUNE = _UxGT("PID Autotune"); + LSTR MSG_PID_AUTOTUNE_E = _UxGT("PID Autotune *"); + LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("Tuning PID termine"); + LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Echec Autotune! E incorrect"); + LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Echec Autotune! Temp. trop haute"); + LSTR MSG_PID_TIMEOUT = _UxGT("Echec Autotune! Oper. expiree"); + LSTR MSG_SELECT_E = _UxGT("Selectionner *"); + LSTR MSG_ACC = _UxGT("Acceleration"); + LSTR MSG_JERK = _UxGT("Jerk"); + LSTR MSG_VA_JERK = _UxGT("V") STR_A _UxGT(" jerk"); + LSTR MSG_VB_JERK = _UxGT("V") STR_B _UxGT(" jerk"); + LSTR MSG_VC_JERK = _UxGT("V") STR_C _UxGT(" jerk"); + LSTR MSG_VN_JERK = _UxGT("V@ jerk"); + LSTR MSG_VE_JERK = _UxGT("Ve jerk"); + LSTR MSG_MAX_SPEED = _UxGT("Max Velocite"); + LSTR MSG_VMAX_A = _UxGT("Vit. Max ") STR_A; + LSTR MSG_VMAX_B = _UxGT("Vit. Max ") STR_B; + LSTR MSG_VMAX_C = _UxGT("Vit. Max ") STR_C; + LSTR MSG_VMAX_N = _UxGT("Vit. Max @"); + LSTR MSG_VMAX_E = _UxGT("Vit. Max E"); + LSTR MSG_VMAX_EN = _UxGT("Vit. Max *"); + LSTR MSG_JUNCTION_DEVIATION = _UxGT("Deviat. jonct."); + LSTR MSG_VMIN = _UxGT("Vit. Min"); + LSTR MSG_VTRAV_MIN = _UxGT("Vmin course"); + LSTR MSG_ACCELERATION = _UxGT("Acceleration"); + LSTR MSG_AMAX_A = _UxGT("Max Accel. ") STR_A; + LSTR MSG_AMAX_B = _UxGT("Max Accel. ") STR_B; + LSTR MSG_AMAX_C = _UxGT("Max Accel. ") STR_C; + LSTR MSG_AMAX_N = _UxGT("Max Accel. @"); + LSTR MSG_AMAX_E = _UxGT("Max Accel. E"); + LSTR MSG_AMAX_EN = _UxGT("Max Accel. *"); + LSTR MSG_A_RETRACT = _UxGT("Acc.retraction"); + LSTR MSG_A_TRAVEL = _UxGT("Acc.course"); + LSTR MSG_XY_FREQUENCY_LIMIT = _UxGT("Frequence max"); + LSTR MSG_XY_FREQUENCY_FEEDRATE = _UxGT("Vitesse min"); + LSTR MSG_STEPS_PER_MM = _UxGT("Pas/mm"); + LSTR MSG_A_STEPS = STR_A _UxGT(" pas/mm"); + LSTR MSG_B_STEPS = STR_B _UxGT(" pas/mm"); + LSTR MSG_C_STEPS = STR_C _UxGT(" pas/mm"); + LSTR MSG_N_STEPS = _UxGT("@ pas/mm"); + LSTR MSG_E_STEPS = _UxGT("E pas/mm"); + LSTR MSG_EN_STEPS = _UxGT("* pas/mm"); + LSTR MSG_TEMPERATURE = _UxGT("Temperature"); + LSTR MSG_MOTION = _UxGT("Mouvement"); + LSTR MSG_FILAMENT = _UxGT("Filament"); + LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E en mm") SUPERSCRIPT_THREE; + LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("Limite en mm") SUPERSCRIPT_THREE; + LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("Limite *"); + LSTR MSG_FILAMENT_DIAM = _UxGT("Diametre fil."); + LSTR MSG_FILAMENT_DIAM_E = _UxGT("Diametre fil. *"); + LSTR MSG_FILAMENT_UNLOAD = _UxGT("Retrait mm"); + LSTR MSG_FILAMENT_LOAD = _UxGT("Charger mm"); + LSTR MSG_ADVANCE_K = _UxGT("Avance K"); + LSTR MSG_ADVANCE_K_E = _UxGT("Avance K *"); + LSTR MSG_BRIGHTNESS = _UxGT("Luminosite LCD"); + LSTR MSG_CONTRAST = _UxGT("Contraste LCD"); + LSTR MSG_SCREEN_TIMEOUT = _UxGT("Veille LCD (m)"); + LSTR MSG_BRIGHTNESS_OFF = _UxGT("Eteindre l'ecran LCD"); + LSTR MSG_STORE_EEPROM = _UxGT("Enregistrer config."); + LSTR MSG_LOAD_EEPROM = _UxGT("Charger config."); + LSTR MSG_RESTORE_DEFAULTS = _UxGT("Restaurer defauts"); + LSTR MSG_INIT_EEPROM = _UxGT("Initialiser EEPROM"); + 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_INFO_SCREEN = _UxGT("Surveiller"); + LSTR MSG_PREPARE = _UxGT("Preparer"); + LSTR MSG_TUNE = _UxGT("Regler"); + LSTR MSG_START_PRINT = _UxGT("Demarrer impression"); + LSTR MSG_BUTTON_NEXT = _UxGT("Suivant"); + LSTR MSG_BUTTON_INIT = _UxGT("Init."); + LSTR MSG_BUTTON_STOP = _UxGT("Stop"); + LSTR MSG_BUTTON_PRINT = _UxGT("Imprimer"); + LSTR MSG_BUTTON_RESET = _UxGT("Reset"); + LSTR MSG_BUTTON_IGNORE = _UxGT("Ignorer"); + LSTR MSG_BUTTON_CANCEL = _UxGT("Annuler"); + LSTR MSG_BUTTON_DONE = _UxGT("Termine"); + LSTR MSG_BUTTON_BACK = _UxGT("Retour"); + LSTR MSG_BUTTON_PROCEED = _UxGT("Proceder"); + LSTR MSG_BUTTON_SKIP = _UxGT("Passer"); + LSTR MSG_PAUSING = _UxGT("Mise en pause..."); + LSTR MSG_PAUSE_PRINT = _UxGT("Pause impression"); + LSTR MSG_RESUME_PRINT = _UxGT("Reprendre impr."); + 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_OUTAGE_RECOVERY = _UxGT("Recup. coup."); + LSTR MSG_MEDIA_MENU = _UxGT("Impression SD"); + LSTR MSG_NO_MEDIA = _UxGT("Pas de media"); + LSTR MSG_DWELL = _UxGT("Repos..."); + LSTR MSG_USERWAIT = _UxGT("Attente utilis."); + LSTR MSG_PRINT_PAUSED = _UxGT("Impr. en pause"); + LSTR MSG_PRINTING = _UxGT("Impression"); + LSTR MSG_PRINT_ABORTED = _UxGT("Impr. annulee"); + LSTR MSG_NO_MOVE = _UxGT("Moteurs bloques"); + LSTR MSG_KILLED = _UxGT("KILLED"); + LSTR MSG_STOPPED = _UxGT("STOPPE"); + LSTR MSG_CONTROL_RETRACT = _UxGT("Retractation mm"); + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Ech. retr. mm"); + LSTR MSG_CONTROL_RETRACTF = _UxGT("Vit. retract") LCD_STR_DEGREE; + LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Saut Z mm"); + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Ret.reprise mm"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Ech.reprise mm"); + LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("V.ret. reprise"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("V.ech. reprise"); + LSTR MSG_AUTORETRACT = _UxGT("Retraction auto"); + LSTR MSG_TOOL_CHANGE = _UxGT("Changement outil"); + LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Augmenter Z"); + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Vitesse primaire"); + LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Purge Retract"); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Vitesse retract") LCD_STR_DEGREE; + LSTR MSG_FILAMENT_PARK_ENABLED = _UxGT("Garer Extrudeur"); + LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Vitesse reprise"); + LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Vit. ventil."); + LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Temps ventil."); + LSTR MSG_TOOL_MIGRATION_ON = _UxGT("Auto ON"); + LSTR MSG_TOOL_MIGRATION_OFF = _UxGT("Auto OFF"); + LSTR MSG_TOOL_MIGRATION = _UxGT("Migration d'outil"); + LSTR MSG_TOOL_MIGRATION_AUTO = _UxGT("Migration auto"); + LSTR MSG_TOOL_MIGRATION_END = _UxGT("Extrudeur Final"); + LSTR MSG_TOOL_MIGRATION_SWAP = _UxGT("Migrer vers *"); + LSTR MSG_NOZZLE_STANDBY = _UxGT("Attente buse"); + LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("Longueur retrait"); + LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Longueur Extra"); + LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("Longueur de purge"); + LSTR MSG_FILAMENTCHANGE = _UxGT("Changer filament"); + LSTR MSG_FILAMENTCHANGE_E = _UxGT("Changer filament *"); + LSTR MSG_FILAMENTLOAD = _UxGT("Charger filament"); + LSTR MSG_FILAMENTLOAD_E = _UxGT("Charger filament *"); + LSTR MSG_FILAMENTUNLOAD = _UxGT("Retrait filament"); + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Retrait filament *"); + LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Retirer tout"); + LSTR MSG_ATTACH_MEDIA = _UxGT("Charger le media"); + LSTR MSG_CHANGE_MEDIA = _UxGT("Actualiser media"); + LSTR MSG_RELEASE_MEDIA = _UxGT("Retirer le media"); + LSTR MSG_ZPROBE_OUT = _UxGT("Sonde Z hors lit"); + LSTR MSG_SKEW_FACTOR = _UxGT("Facteur ecart"); + LSTR MSG_BLTOUCH = _UxGT("BLTouch"); + LSTR MSG_BLTOUCH_SELFTEST = _UxGT("Self-Test"); + LSTR MSG_BLTOUCH_RESET = _UxGT("Reset"); + LSTR MSG_BLTOUCH_STOW = _UxGT("Ranger"); + LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Deployer"); + LSTR MSG_BLTOUCH_SW_MODE = _UxGT("Mode SW"); + LSTR MSG_BLTOUCH_5V_MODE = _UxGT("Mode 5V"); + LSTR MSG_BLTOUCH_OD_MODE = _UxGT("Mode OD"); + LSTR MSG_BLTOUCH_MODE_STORE = _UxGT("Appliquer Mode"); + LSTR MSG_BLTOUCH_MODE_STORE_5V = _UxGT("Mise en 5V"); + LSTR MSG_BLTOUCH_MODE_STORE_OD = _UxGT("Mise en OD"); + LSTR MSG_BLTOUCH_MODE_ECHO = _UxGT("Afficher Mode"); + LSTR MSG_TOUCHMI_PROBE = _UxGT("TouchMI"); + LSTR MSG_TOUCHMI_INIT = _UxGT("Init. TouchMI"); + LSTR MSG_TOUCHMI_ZTEST = _UxGT("Test decalage Z"); + LSTR MSG_TOUCHMI_SAVE = _UxGT("Sauvegarde"); + LSTR MSG_MANUAL_DEPLOY_TOUCHMI = _UxGT("Deployer TouchMI"); + LSTR MSG_MANUAL_DEPLOY = _UxGT("Deployer Sonde Z"); + LSTR MSG_MANUAL_STOW = _UxGT("Ranger Sonde Z"); + LSTR MSG_HOME_FIRST = _UxGT("Origine %s Premier"); + LSTR MSG_ZPROBE_OFFSETS = _UxGT("Position sonde Z"); + LSTR MSG_ZPROBE_XOFFSET = _UxGT("Decalage X"); + LSTR MSG_ZPROBE_YOFFSET = _UxGT("Decalage Y"); + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Decalage Z"); + LSTR MSG_BABYSTEP_X = _UxGT("Babystep X"); + LSTR MSG_BABYSTEP_Y = _UxGT("Babystep Y"); + LSTR MSG_BABYSTEP_Z = _UxGT("Babystep Z"); + LSTR MSG_BABYSTEP_N = _UxGT("Babystep @"); + LSTR MSG_BABYSTEP_TOTAL = _UxGT("Total"); + LSTR MSG_ENDSTOP_ABORT = _UxGT("Butee abandon"); + LSTR MSG_HEATING_FAILED_LCD = _UxGT("Err de chauffe"); + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Err TEMP. REDONDANTE"); + LSTR MSG_THERMAL_RUNAWAY = _UxGT("Err THERMIQUE"); + LSTR MSG_ERR_MAXTEMP = _UxGT("Err TEMP. MAX"); + LSTR MSG_ERR_MINTEMP = _UxGT("Err TEMP. MIN"); + + LSTR MSG_HALTED = _UxGT("IMPR. STOPPEE"); + LSTR MSG_PLEASE_RESET = _UxGT("Redemarrer SVP"); + LSTR MSG_SHORT_DAY = _UxGT("j"); // One character only + LSTR MSG_SHORT_HOUR = _UxGT("h"); // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("m"); // One character only + + LSTR MSG_HEATING = _UxGT("en chauffe..."); + LSTR MSG_COOLING = _UxGT("Refroidissement"); + LSTR MSG_BED_HEATING = _UxGT("Lit en chauffe..."); + LSTR MSG_BED_COOLING = _UxGT("Refroid. du lit..."); + LSTR MSG_PROBE_HEATING = _UxGT("Probe en chauffe..."); + LSTR MSG_PROBE_COOLING = _UxGT("Refroid. Probe..."); + LSTR MSG_CHAMBER_HEATING = _UxGT("Chauffe caisson..."); + LSTR MSG_CHAMBER_COOLING = _UxGT("Refroid. caisson..."); + LSTR MSG_DELTA_CALIBRATE = _UxGT("Calibration Delta"); + LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Calibrer X"); + LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Calibrer Y"); + LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Calibrer Z"); + LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Calibrer centre"); + LSTR MSG_DELTA_SETTINGS = _UxGT("Reglages Delta"); + LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("Calibration Auto"); + LSTR MSG_DELTA_DIAG_ROD = _UxGT("Diagonale"); + LSTR MSG_DELTA_HEIGHT = _UxGT("Hauteur"); + LSTR MSG_DELTA_RADIUS = _UxGT("Rayon"); + + LSTR MSG_INFO_MENU = _UxGT("Infos imprimante"); + LSTR MSG_INFO_PRINTER_MENU = _UxGT("Infos imprimante"); + LSTR MSG_3POINT_LEVELING = _UxGT("Niveau a 3 points"); + LSTR MSG_LINEAR_LEVELING = _UxGT("Niveau lineaire"); + LSTR MSG_BILINEAR_LEVELING = _UxGT("Niveau bilineaire"); + LSTR MSG_UBL_LEVELING = _UxGT("Niveau lit unifie"); + LSTR MSG_MESH_LEVELING = _UxGT("Niveau par grille"); + LSTR MSG_MESH_DONE = _UxGT("Niveau termine"); + LSTR MSG_INFO_STATS_MENU = _UxGT("Stats. imprimante"); + LSTR MSG_INFO_BOARD_MENU = _UxGT("Infos carte"); + LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("Thermistances"); + LSTR MSG_INFO_EXTRUDERS = _UxGT("Extrudeurs"); + LSTR MSG_INFO_BAUDRATE = _UxGT("Bauds"); + LSTR MSG_INFO_PROTOCOL = _UxGT("Protocole"); + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Protection inactive"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Protection active"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Hotend Idle Timeout"); + + LSTR MSG_CASE_LIGHT = _UxGT("Lumiere caisson"); + LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Luminosite"); + LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Imprimante incorrecte"); + + 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"); + LSTR MSG_INFO_PSU = _UxGT("Alim."); + LSTR MSG_DRIVE_STRENGTH = _UxGT("Puiss. moteur "); + LSTR MSG_DAC_PERCENT_N = _UxGT("Driver @ %"); + LSTR MSG_DAC_EEPROM_WRITE = _UxGT("DAC EEPROM sauv."); + LSTR MSG_ERROR_TMC = _UxGT("ERREUR CONNEXION TMC"); + + LSTR MSG_FILAMENT_CHANGE_HEADER = _UxGT("CHANGER FILAMENT"); + LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("IMPR. PAUSE"); + LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("CHARGER FIL"); + LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("DECHARGER FIL"); + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("OPTIONS REPRISE:"); + LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Purger encore"); + LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Reprendre impr."); + LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Buse: "); + LSTR MSG_RUNOUT_SENSOR = _UxGT("Capteur fil."); + LSTR MSG_KILL_HOMING_FAILED = _UxGT("Echec origine"); + LSTR MSG_LCD_PROBING_FAILED = _UxGT("Echec sonde"); + + LSTR MSG_KILL_MMU2_FIRMWARE = _UxGT("MAJ firmware MMU!!"); + LSTR MSG_MMU2_CHOOSE_FILAMENT_HEADER = _UxGT("CHOISIR FILAMENT"); + LSTR MSG_MMU2_MENU = _UxGT("MMU"); + LSTR MSG_MMU2_NOT_RESPONDING = _UxGT("MMU ne repond plus"); + LSTR MSG_MMU2_RESUME = _UxGT("Continuer Imp. MMU"); + LSTR MSG_MMU2_RESUMING = _UxGT("Reprise MMU..."); + LSTR MSG_MMU2_LOAD_FILAMENT = _UxGT("Charge dans MMU"); + LSTR MSG_MMU2_LOAD_ALL = _UxGT("Charger tous dans MMU"); + LSTR MSG_MMU2_LOAD_TO_NOZZLE = _UxGT("Charger dans buse"); + LSTR MSG_MMU2_EJECT_FILAMENT = _UxGT("Ejecter fil. du MMU"); + LSTR MSG_MMU2_EJECT_FILAMENT_N = _UxGT("Ejecter fil. ~"); + LSTR MSG_MMU2_UNLOAD_FILAMENT = _UxGT("Retrait filament"); + LSTR MSG_MMU2_LOADING_FILAMENT = _UxGT("Chargem. fil. %i..."); + LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Ejection fil..."); + LSTR MSG_MMU2_UNLOADING_FILAMENT = _UxGT("Retrait fil...."); + LSTR MSG_MMU2_ALL = _UxGT("Tous"); + LSTR MSG_MMU2_FILAMENT_N = _UxGT("Filament ~"); + LSTR MSG_MMU2_RESET = _UxGT("Reinit. MMU"); + LSTR MSG_MMU2_RESETTING = _UxGT("Reinit. MMU..."); + LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Retrait, click"); + + LSTR MSG_MIX_COMPONENT_N = _UxGT("Composante {"); + LSTR MSG_MIXER = _UxGT("Mixeur"); + LSTR MSG_GRADIENT = _UxGT("Degrade"); + LSTR MSG_FULL_GRADIENT = _UxGT("Degrade complet"); + LSTR MSG_TOGGLE_MIX = _UxGT("Toggle mix"); + LSTR MSG_CYCLE_MIX = _UxGT("Cycle mix"); + LSTR MSG_GRADIENT_MIX = _UxGT("Mix degrade"); + LSTR MSG_REVERSE_GRADIENT = _UxGT("Inverser degrade"); + LSTR MSG_ACTIVE_VTOOL = _UxGT("Active V-tool"); + LSTR MSG_START_VTOOL = _UxGT("Debut V-tool"); + LSTR MSG_END_VTOOL = _UxGT(" Fin V-tool"); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Alias V-tool"); + LSTR MSG_RESET_VTOOLS = _UxGT("Reinit. V-tools"); + LSTR MSG_COMMIT_VTOOL = _UxGT("Valider Mix V-tool"); + LSTR MSG_VTOOLS_RESET = _UxGT("V-tools reinit. ok"); + LSTR MSG_START_Z = _UxGT("Debut Z:"); + LSTR MSG_END_Z = _UxGT(" Fin Z:"); + LSTR MSG_GAMES = _UxGT("Jeux"); + LSTR MSG_BRICKOUT = _UxGT("Casse-briques"); + LSTR MSG_INVADERS = _UxGT("Invaders"); + LSTR MSG_SNAKE = _UxGT("Sn4k3"); + LSTR MSG_MAZE = _UxGT("Labyrinthe"); + + LSTR MSG_BAD_PAGE = _UxGT("Erreur index page"); + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Erreur vitesse page"); + + // 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"); + LSTR MSG_TMC_HOMING_THRS = _UxGT("Home sans capteur"); + LSTR MSG_TMC_STEPPING_MODE = _UxGT("Mode pas a pas"); + LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("StealthChop active"); + LSTR MSG_SERVICE_RESET = _UxGT("Reinit."); + LSTR MSG_SERVICE_IN = _UxGT(" dans:"); + LSTR MSG_BACKLASH_CORRECTION = _UxGT("Correction"); + LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Lissage"); + + LSTR MSG_LEVEL_X_AXIS = _UxGT("Niveau axe X"); + LSTR MSG_AUTO_CALIBRATE = _UxGT("Etalon. auto."); + 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..."); + + LSTR MSG_PROBE_WIZARD = _UxGT("Assistant Sonde Z"); + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Mesure reference"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Depl. vers pos"); + + LSTR MSG_SOUND = _UxGT("Sons"); + + LSTR MSG_TOP_LEFT = _UxGT("Coin haut gauche"); + LSTR MSG_BOTTOM_LEFT = _UxGT("Coin bas gauche"); + LSTR MSG_TOP_RIGHT = _UxGT("Coin haut droit"); + LSTR MSG_BOTTOM_RIGHT = _UxGT("Coin bas droit"); + LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Calibration terminee"); + LSTR MSG_CALIBRATION_FAILED = _UxGT("Echec de l'etalonnage"); + + LSTR MSG_SD_CARD = _UxGT("Carte SD"); + LSTR MSG_USB_DISK = _UxGT("Cle USB"); + + // DGUS-Specific message strings, not used elsewhere + LSTR DGUS_MSG_NOT_WHILE_PRINTING = _UxGT("Impossible pendant une impression"); + LSTR DGUS_MSG_NOT_WHILE_IDLE = _UxGT("Impossible tant que l'imprimante est en attente"); + LSTR DGUS_MSG_NO_FILE_SELECTED = _UxGT("Aucun fichier selectionne"); + LSTR DGUS_MSG_TEMP_TOO_LOW = _UxGT("Temperature trop basse"); + LSTR DGUS_MSG_EXECUTING_COMMAND = _UxGT("Execution de la commande..."); + LSTR DGUS_MSG_BED_PID_DISABLED = _UxGT("Bed PID desactive"); + LSTR DGUS_MSG_PID_DISABLED = _UxGT("PID desactive"); + LSTR DGUS_MSG_PID_AUTOTUNING = _UxGT("Autocalibrage du PID..."); + LSTR DGUS_MSG_INVALID_RECOVERY_DATA = _UxGT("Donnees de recuperation non valides"); + + LSTR DGUS_MSG_HOMING_REQUIRED = _UxGT("Retour a l'origine necessaire..."); + LSTR DGUS_MSG_BUSY = _UxGT("Occupe"); + LSTR DGUS_MSG_HOMING = _UxGT("Retour a l'origine..."); + LSTR DGUS_MSG_FW_OUTDATED = _UxGT("Mise a jour DWIN GUI/OS necessaire"); + LSTR DGUS_MSG_ABL_REQUIRED = _UxGT("Nivellement du bed necessaire"); + LSTR DGUS_MSG_PROBING_FAILED = _UxGT("Echec du nivellement..."); + LSTR DGUS_MSG_PROBING_SUCCESS = _UxGT("Nivellement realise avec succes"); + LSTR DGUS_MSG_RESET_EEPROM = _UxGT("Reinitialisation de l'EEPROM"); + LSTR DGUS_MSG_WRITE_EEPROM_FAILED = _UxGT("Echec ecriture de l'EEPROM"); + LSTR DGUS_MSG_READ_EEPROM_FAILED = _UxGT("Echec lecture de l'EEPROM"); + 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 28917bad35..b55a74bb17 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 @@ -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; @@ -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"); @@ -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"); @@ -234,7 +232,7 @@ namespace Language_gl { LSTR MSG_MOVE_50MM = _UxGT("Mover 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Mover 100mm"); LSTR MSG_SPEED = _UxGT("Velocidade"); - LSTR MSG_BED_Z = _UxGT("Cama Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Cama Z"); LSTR MSG_NOZZLE = _UxGT("Bico"); LSTR MSG_NOZZLE_N = _UxGT("Bico ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Bico Estacionado"); @@ -317,12 +315,12 @@ 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"); 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"); @@ -342,7 +340,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"); @@ -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"); @@ -525,7 +515,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"); @@ -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 36eaf78acb..8480708e78 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; @@ -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"); @@ -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"); @@ -89,7 +89,7 @@ namespace Language_hr { LSTR MSG_MOVE_50MM = _UxGT("Miči 50mm"); LSTR MSG_MOVE_100MM = _UxGT("Miči 100mm"); LSTR MSG_SPEED = _UxGT("Brzina"); - LSTR MSG_BED_Z = _UxGT("Bed Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bed Z"); LSTR MSG_NOZZLE = _UxGT("Dizna"); LSTR MSG_NOZZLE_N = _UxGT("Dizna ~"); LSTR MSG_BED = _UxGT("Bed"); @@ -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"); @@ -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...")); - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - 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..."); + // 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 + // 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...")); + #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 61c7d9f9c4..39ee0fc558 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; @@ -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"); @@ -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"); @@ -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ö"); @@ -272,7 +272,7 @@ namespace Language_hu { LSTR MSG_MOVE_05IN = _UxGT("Mozgás 12.7mm"); LSTR MSG_MOVE_1IN = _UxGT("Mozgáá 25.4mm"); LSTR MSG_SPEED = _UxGT("Sebesség"); - LSTR MSG_BED_Z = _UxGT("Z ágy"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Z ágy"); LSTR MSG_NOZZLE = _UxGT("Fej"); LSTR MSG_NOZZLE_N = _UxGT("Fej ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Fej parkolva"); @@ -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"); @@ -363,12 +363,12 @@ 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"); 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"); @@ -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ó"); @@ -490,9 +490,6 @@ namespace Language_hu { LSTR MSG_ERR_MINTEMP = _UxGT("Hiba: MIN höfok"); LSTR MSG_HALTED = _UxGT("A NYOMTATÓ LEÁLLT"); LSTR MSG_PLEASE_RESET = _UxGT("Indítsd újra!"); - LSTR MSG_SHORT_DAY = _UxGT("n"); // Csak egy karakter - LSTR MSG_SHORT_HOUR = _UxGT("ó"); // Csak egy karakter - LSTR MSG_SHORT_MINUTE = _UxGT("p"); // Csak egy karakter LSTR MSG_HEATING = _UxGT("Fütés..."); LSTR MSG_COOLING = _UxGT("Hütés..."); LSTR MSG_BED_HEATING = _UxGT("Ágy fütés..."); @@ -534,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"); @@ -590,7 +579,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."); @@ -629,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"); @@ -671,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..."); @@ -696,12 +668,40 @@ namespace Language_hu { LSTR MSG_SD_CARD = _UxGT("SD Kártya"); LSTR MSG_USB_DISK = _UxGT("USB Lemez"); + + LSTR MSG_SHORT_DAY = _UxGT("n"); // Csak egy karakter + LSTR MSG_SHORT_HOUR = _UxGT("ó"); // Csak egy karakter + LSTR MSG_SHORT_MINUTE = _UxGT("p"); // Csak egy karakter } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 ee8d51203c..9c78918fcf 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 @@ -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; @@ -62,15 +62,15 @@ 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."); LSTR MSG_CONFIGURATION = _UxGT("Configurazione"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Esegui files auto"); 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 @"); @@ -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"); @@ -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"); @@ -293,7 +284,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à"); @@ -326,7 +317,7 @@ namespace Language_it { LSTR MSG_MOVE_1IN = _UxGT("Muovi di 1\""); LSTR MSG_LIVE_MOVE = _UxGT("Modalità Live"); LSTR MSG_SPEED = _UxGT("Velocità"); - LSTR MSG_BED_Z = _UxGT("Piatto Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Piatto Z"); LSTR MSG_NOZZLE = _UxGT("Ugello"); LSTR MSG_NOZZLE_N = _UxGT("Ugello ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Ugello parcheggiato"); @@ -338,11 +329,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."); @@ -364,14 +355,14 @@ 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."); LSTR MSG_MPC_MEASURING_AMBIENT = _UxGT("Verif.perdita calore"); LSTR MSG_MPC_HEATING_PAST_200 = _UxGT("Riscalda a >200C"); LSTR MSG_MPC_COOLING_TO_AMBIENT = _UxGT("Raffredda a amb."); - LSTR MSG_MPC_AUTOTUNE = _UxGT("MPC Autotune"); + LSTR MSG_MPC_AUTOTUNE = _UxGT("Calibra MPC"); LSTR MSG_MPC_EDIT = _UxGT("Modif.MPC *"); LSTR MSG_MPC_POWER = _UxGT("Potenza riscald."); LSTR MSG_MPC_POWER_E = _UxGT("Potenza *"); @@ -427,6 +418,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 *"); @@ -440,6 +432,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"); @@ -451,8 +444,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_INDEX = _UxGT("Err: Indice 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"); @@ -498,7 +492,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"); @@ -577,6 +571,8 @@ namespace Language_it { LSTR MSG_TOUCHMI_SAVE = _UxGT("Memorizzare"); LSTR MSG_MANUAL_DEPLOY_TOUCHMI = _UxGT("Estendi TouchMI"); LSTR MSG_MANUAL_DEPLOY = _UxGT("Estendi Sonda-Z"); + LSTR MSG_MANUAL_PENUP = _UxGT("Penna su"); + LSTR MSG_MANUAL_PENDOWN = _UxGT("Penna giù"); LSTR MSG_BLTOUCH_STOW = _UxGT("Ritrai BLTouch"); LSTR MSG_MANUAL_STOW = _UxGT("Ritrai Sonda-Z"); LSTR MSG_HOME_FIRST = _UxGT("Home %s prima"); @@ -595,7 +591,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"); @@ -608,9 +604,9 @@ namespace Language_it { LSTR MSG_HALTED = _UxGT("STAMPANTE FERMATA"); LSTR MSG_PLEASE_WAIT = _UxGT("Attendere prego..."); LSTR MSG_PLEASE_RESET = _UxGT("Riavviare prego"); - LSTR MSG_PREHEATING = _UxGT("Preriscaldam..."); + LSTR MSG_PREHEATING = _UxGT("Preriscaldamento..."); LSTR MSG_HEATING = _UxGT("Riscaldamento..."); - LSTR MSG_COOLING = _UxGT("Raffreddamento.."); + LSTR MSG_COOLING = _UxGT("Raffreddamento..."); LSTR MSG_BED_HEATING = _UxGT("Risc. piatto..."); LSTR MSG_BED_COOLING = _UxGT("Raffr. piatto..."); LSTR MSG_PROBE_HEATING = _UxGT("Risc. sonda..."); @@ -619,6 +615,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"); @@ -666,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"); @@ -700,13 +687,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"); @@ -729,10 +716,11 @@ 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 ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente {"); LSTR MSG_MIXER = _UxGT("Miscelatore"); LSTR MSG_GRADIENT = _UxGT("Gradiente"); LSTR MSG_FULL_GRADIENT = _UxGT("Gradiente pieno"); @@ -771,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("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"); @@ -813,13 +786,26 @@ 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) - 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"); @@ -847,4 +833,63 @@ namespace Language_it { LSTR MSG_USB_DISK = _UxGT("Disco USB"); LSTR MSG_HOST_SHUTDOWN = _UxGT("Arresta host"); + +// DGUS-Specific message strings, not used elsewhere + LSTR DGUS_MSG_NOT_WHILE_PRINTING = _UxGT("Non ammesso durante la stampa"); + LSTR DGUS_MSG_NOT_WHILE_IDLE = _UxGT("Non ammesso mentre è in riposo"); + LSTR DGUS_MSG_NO_FILE_SELECTED = _UxGT("Nessun file selezionato"); + LSTR DGUS_MSG_TEMP_TOO_LOW = _UxGT("Temperatura troppo bassa"); + LSTR DGUS_MSG_EXECUTING_COMMAND = _UxGT("Esecuzione del comando..."); + LSTR DGUS_MSG_BED_PID_DISABLED = _UxGT("PID letto disabilitato"); + LSTR DGUS_MSG_PID_DISABLED = _UxGT("PID disabilitato"); + LSTR DGUS_MSG_PID_AUTOTUNING = _UxGT("Calibrazione PID..."); + LSTR DGUS_MSG_INVALID_RECOVERY_DATA = _UxGT("Dati di recupero non validi"); + + LSTR DGUS_MSG_HOMING_REQUIRED = _UxGT("Azzeramento richiesto"); + LSTR DGUS_MSG_BUSY = _UxGT("Occupato"); + LSTR DGUS_MSG_HOMING = _UxGT("Azzeramento..."); + LSTR DGUS_MSG_FW_OUTDATED = _UxGT("Richiesto aggiornamento DWIN GUI/OS"); + LSTR DGUS_MSG_ABL_REQUIRED = _UxGT("Richiesto autolivellamento letto"); + LSTR DGUS_MSG_PROBING_FAILED = _UxGT("Sondaggio fallito"); + LSTR DGUS_MSG_PROBING_SUCCESS = _UxGT("Sondaggio effettuato"); + LSTR DGUS_MSG_RESET_EEPROM = _UxGT("Reset EEPROM"); + LSTR DGUS_MSG_WRITE_EEPROM_FAILED = _UxGT("Scrittura EEPROM fallita"); + LSTR DGUS_MSG_READ_EEPROM_FAILED = _UxGT("Lettura EEPROM fallita"); + 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 335d4533da..d40b972427 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; @@ -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 = _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_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_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_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_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_BED_Z = _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_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" + 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_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("ショウサイセッテイ"); @@ -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 50c73f69e9..ee53819741 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; @@ -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("자동 시작"); @@ -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("스위치 전원 켜기"); @@ -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("일시정지"); @@ -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 9ad16bcd8c..85b484a100 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; @@ -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 @@ -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"); @@ -93,7 +93,7 @@ namespace Language_nl { LSTR MSG_MOVE_10MM = _UxGT("Verplaats 10mm"); LSTR MSG_MOVE_100MM = _UxGT("Verplaats 100mm"); LSTR MSG_SPEED = _UxGT("Snelheid"); - LSTR MSG_BED_Z = _UxGT("Bed Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bed Z"); LSTR MSG_NOZZLE = _UxGT("Nozzle"); LSTR MSG_NOZZLE_N = _UxGT("Nozzle ~"); LSTR MSG_BED = _UxGT("Bed"); @@ -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"); @@ -180,23 +180,15 @@ 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"); - 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"); @@ -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 b39c084ec8..4efc1720db 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 @@ -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; @@ -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"); @@ -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"); @@ -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"); @@ -248,7 +248,7 @@ namespace Language_pl { LSTR MSG_MOVE_001IN = _UxGT("Przesuń co 0.01 cala"); LSTR MSG_MOVE_01IN = _UxGT("Przesuń co 0.1 cala"); LSTR MSG_SPEED = _UxGT("Predkość"); - LSTR MSG_BED_Z = _UxGT("Stół Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Stół Z"); LSTR MSG_NOZZLE = _UxGT("Dysza"); LSTR MSG_NOZZLE_N = _UxGT("Dysza ~"); LSTR MSG_NOZZLE_STANDBY = _UxGT("Dysza w oczekiwaniu"); @@ -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"); @@ -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"); @@ -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"); @@ -474,7 +466,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"); @@ -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"); @@ -539,10 +517,34 @@ namespace Language_pl { } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 55d9c1d7c5..e339c8afd4 100644 --- a/Marlin/src/lcd/language/language_pt.h +++ b/Marlin/src/lcd/language/language_pt.h @@ -29,9 +29,9 @@ * See also https://marlinfw.org/docs/development/lcd_language.html */ - #define DISPLAY_CHARSET_ISO10646_1 +#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; @@ -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"); @@ -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"); @@ -87,7 +87,7 @@ namespace Language_pt { LSTR MSG_MOVE_10MM = _UxGT("Mover 10mm"); LSTR MSG_MOVE_100MM = _UxGT("Mover 100mm"); LSTR MSG_SPEED = _UxGT("Velocidade"); - LSTR MSG_BED_Z = _UxGT("Base Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Base Z"); LSTR MSG_NOZZLE = " " LCD_STR_THERMOMETER _UxGT(" Bico"); LSTR MSG_NOZZLE_N = " " LCD_STR_THERMOMETER _UxGT(" Bico ~"); LSTR MSG_BED = " " LCD_STR_THERMOMETER _UxGT(" Base"); @@ -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 d52728d107..14b057d980 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; @@ -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"); @@ -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"); @@ -219,7 +217,7 @@ namespace Language_pt_br { LSTR MSG_MOVE_10MM = _UxGT("Mover 10mm"); LSTR MSG_MOVE_100MM = _UxGT("Mover 100mm"); LSTR MSG_SPEED = _UxGT("Velocidade"); - LSTR MSG_BED_Z = _UxGT("Base Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Base Z"); LSTR MSG_NOZZLE = _UxGT("Bocal"); LSTR MSG_NOZZLE_N = _UxGT("Bocal ~"); LSTR MSG_BED = _UxGT("Mesa"); @@ -274,7 +272,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"); @@ -293,7 +291,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"); @@ -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 c5fdcc786f..579c7eb224 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; @@ -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"); @@ -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"); @@ -232,7 +230,7 @@ namespace Language_ro { LSTR MSG_MOVE_10MM = _UxGT("Move 10mm"); LSTR MSG_MOVE_100MM = _UxGT("Move 100mm"); LSTR MSG_SPEED = _UxGT("Speed"); - LSTR MSG_BED_Z = _UxGT("Bed Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bed Z"); LSTR MSG_NOZZLE = _UxGT("Nozzle"); LSTR MSG_NOZZLE_N = _UxGT("Nozzle ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Nozzle Parked"); @@ -317,13 +315,13 @@ 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"); - 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"); @@ -348,7 +346,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"); @@ -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"); @@ -532,7 +522,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"); @@ -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"); @@ -607,10 +583,34 @@ namespace Language_ro { LSTR MSG_REHEATING = _UxGT("Reincalzire..."); } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 b8a08afc22..46bace2ad9 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,23 +43,15 @@ 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"); - #else - LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Сбой инициализ. SD"); - #endif - LSTR MSG_MEDIA_READ_ERROR = _UxGT("Ошибка считывания"); + 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 диска"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполнение вызова"); - #else - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполн. вызова"); - #endif - LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр. эндстопы"); - LSTR MSG_LCD_ENDSTOPS = _UxGT("Эндстопы"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Основное меню"); - LSTR MSG_ADVANCED_SETTINGS = _UxGT("Другие настройки"); + LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр. концевики"); + LSTR MSG_LCD_ENDSTOPS = _UxGT("Концевик"); // Max length 8 characters + LSTR MSG_MAIN_MENU = _UxGT("Главное меню"); LSTR MSG_CONFIGURATION = _UxGT("Конфигурация"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Автостарт"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Выключить двигатели"); @@ -70,7 +62,7 @@ namespace Language_ru { LSTR MSG_AUTO_HOME_X = _UxGT("Парковка X"); LSTR MSG_AUTO_HOME_Y = _UxGT("Парковка Y"); LSTR MSG_AUTO_HOME_Z = _UxGT("Парковка Z"); - LSTR MSG_AUTO_Z_ALIGN = _UxGT("Авто Z-выравнивание"); + LSTR MSG_AUTO_Z_ALIGN = _UxGT("Авто-выравнивание Z"); LSTR MSG_ITERATION = _UxGT("G34 Итерация: %i"); LSTR MSG_DECREASING_ACCURACY = _UxGT("Уменьшение точности!"); LSTR MSG_ACCURACY_ACHIEVED = _UxGT("Точность достигнута"); @@ -78,65 +70,47 @@ namespace Language_ru { LSTR MSG_LEVEL_BED_WAITING = _UxGT("Нажмите чтобы начать"); 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_Z_FADE_HEIGHT = _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_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_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_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_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("Импульс лазера"); @@ -145,29 +119,19 @@ namespace Language_ru { LSTR MSG_SWITCH_PS_ON = _UxGT("Включить питание"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Выключить питание"); - LSTR MSG_EXTRUDE = _UxGT("Экструзия"); - LSTR MSG_RETRACT = _UxGT("Втягивание"); + LSTR MSG_EXTRUDE = _UxGT("Выдавить"); + LSTR MSG_RETRACT = _UxGT("Втянуть"); LSTR MSG_MOVE_AXIS = _UxGT("Движение по осям"); LSTR MSG_BED_LEVELING = _UxGT("Выравнивание стола"); 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"); @@ -196,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("Двигаемся дальше"); @@ -210,69 +169,41 @@ 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 "C"; - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" стола,") LCD_STR_DEGREE "C"; - LSTR MSG_UBL_SET_TEMP_HOTEND = LCD_STR_THERMOMETER _UxGT(" сопла, ") LCD_STR_DEGREE "C"; - LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" сопла,") LCD_STR_DEGREE "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("Ручная грунтовка"); - LSTR MSG_G26_FIXED_LENGTH = _UxGT("Грунт фикс. длины"); - LSTR MSG_G26_PRIME_DONE = _UxGT("Грунтовка сделана"); + LSTR MSG_G26_MANUAL_PRIME = _UxGT("Ручная прочистка"); + LSTR MSG_G26_FIXED_LENGTH = _UxGT("Прочистка фикс.длины"); + LSTR MSG_G26_PRIME_DONE = _UxGT("Прочистка окончена"); LSTR MSG_G26_CANCELED = _UxGT("G26 завершена"); 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_GRID_MESH_LEVELING = _UxGT("Калибровка растера"); + 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("Крайние точки"); LSTR MSG_UBL_MAP_TYPE = _UxGT("Тип карты"); 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("Заполнить сетку"); @@ -291,7 +222,7 @@ namespace Language_ru { LSTR MSG_UBL_RESTORE_ERROR = _UxGT("Ошибка: Восстан.UBL"); LSTR MSG_UBL_Z_OFFSET = _UxGT("Смещение Z: "); LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Смещение Z останов."); - LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("UBL пошагово"); + LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("Пошаговая настр. 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.Проверить сетку"); @@ -312,13 +243,9 @@ 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 предустановки"); - #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("Уровень красного"); @@ -341,30 +268,29 @@ 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_BED_Z = _UxGT("Z стола"); - LSTR MSG_NOZZLE = _UxGT("Сопло, ") LCD_STR_DEGREE "C"; + LSTR MSG_MESH_Z_OFFSET = _UxGT("Z стола"); + LSTR MSG_NOZZLE = _UxGT("Сопло, ") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_NOZZLE_N = _UxGT("Сопло ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Сопло запарковано"); LSTR MSG_NOZZLE_STANDBY = _UxGT("Сопло ожидает"); - LSTR MSG_BED = _UxGT("Стол, ") LCD_STR_DEGREE "C"; - LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE "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_BED = _UxGT("Стол, ") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE _UxGT("C"); + 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("Кулер ~"); LSTR MSG_STORED_FAN_N = _UxGT("Сохранённый кулер ~"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Дополн. кулер"); LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Дополн. кулер ~"); - LSTR MSG_CONTROLLER_FAN = _UxGT("Контроллер кулера"); + 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("Рабочие обороты"); @@ -375,16 +301,16 @@ namespace Language_ru { LSTR MSG_MIN = " " LCD_STR_THERMOMETER ", " LCD_STR_DEGREE _UxGT("С мин"); LSTR MSG_MAX = " " LCD_STR_THERMOMETER ", " LCD_STR_DEGREE _UxGT("С макс"); LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" Фактор"); - LSTR MSG_AUTOTEMP = _UxGT("Автотемпер."); + LSTR MSG_AUTOTEMP = _UxGT("Автотемпература"); LSTR MSG_LCD_ON = _UxGT("Вкл"); LSTR MSG_LCD_OFF = _UxGT("Выкл"); - LSTR MSG_PID_AUTOTUNE = _UxGT("Автоподбор PID"); - LSTR MSG_PID_AUTOTUNE_E = _UxGT("Автоподбор PID *"); - LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("Подбор PID выполнен"); - LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Сбой автоподбора! Плохой экструдер."); - LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Сбой автоподбора! Температура повышена."); - LSTR MSG_PID_TIMEOUT = _UxGT("Сбой автоподбора! Завершение времени."); + LSTR MSG_PID_AUTOTUNE = _UxGT("Автокалибровка PID"); + LSTR MSG_PID_AUTOTUNE_E = _UxGT("Автокалибр. PID *"); + LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("Калибр.PID выполнена"); + LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Сбой калибровки! Неверный экструдер."); + LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Сбой калибровки! Температура завышена."); + LSTR MSG_PID_TIMEOUT = _UxGT("Сбой калибровки! Таймаут."); LSTR MSG_SELECT_E = _UxGT("Выбор *"); LSTR MSG_ACC = _UxGT("Ускорение"); @@ -394,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; @@ -432,34 +354,25 @@ 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("Kоэф. продвиж."); - LSTR MSG_ADVANCE_K_E = _UxGT("Kоэф. продвиж. *"); + LSTR MSG_ADVANCE_K = _UxGT("К-фактор LA"); + LSTR MSG_ADVANCE_K_E = _UxGT("К-фактор LA *"); 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_INDEX = _UxGT("Сбой EEPROM: индекс"); + 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("Настроить"); @@ -467,7 +380,7 @@ namespace Language_ru { LSTR MSG_CURRENT = _UxGT("Ток"); LSTR MSG_VOLTAGE = _UxGT("Напряжение"); LSTR MSG_POWER = _UxGT("Мощность"); - LSTR MSG_START_PRINT = _UxGT("Начало печати"); + LSTR MSG_START_PRINT = _UxGT("Запустить печать"); LSTR MSG_BUTTON_NEXT = _UxGT("Дальше"); //short text for buttons LSTR MSG_BUTTON_INIT = _UxGT("Иниц-я"); @@ -487,7 +400,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 карты"); @@ -500,117 +413,88 @@ 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_ZHOP = _UxGT("Подскок, мм"); + 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_PURGE_LENGTH = _UxGT("Очистить длину"); + LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("Длина замены"); + 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("Обороти кулера"); + LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Скорость возврата"); + 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("Замена инструмента"); - LSTR MSG_TOOL_MIGRATION_AUTO = _UxGT("Авто замена"); + LSTR MSG_TOOL_MIGRATION = _UxGT("Смена инструмента"); + LSTR MSG_TOOL_MIGRATION_AUTO = _UxGT("Авто смена"); LSTR MSG_TOOL_MIGRATION_END = _UxGT("Последний экструдер"); LSTR MSG_TOOL_MIGRATION_SWAP = _UxGT("Замена на *"); 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 карту"); LSTR MSG_RELEASE_MEDIA = _UxGT("Освободить SD карту"); LSTR MSG_ZPROBE_OUT = _UxGT("Z-зонд вне стола"); - LSTR MSG_SKEW_FACTOR = _UxGT("Фактор наклона"); + LSTR MSG_SKEW_FACTOR = _UxGT("Фактор перекоса"); LSTR MSG_BLTOUCH = _UxGT("Z-зонд BLTouch"); LSTR MSG_BLTOUCH_SELFTEST = _UxGT("Тестирование BLTouch"); LSTR MSG_BLTOUCH_RESET = _UxGT("Сброс BLTouch"); - LSTR MSG_BLTOUCH_STOW = _UxGT("Поднять BLTouch"); - LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Опустить BLTouch"); + LSTR MSG_BLTOUCH_STOW = _UxGT("Втянуть BLTouch"); + LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Выдвинуть BLTouch"); LSTR MSG_BLTOUCH_SW_MODE = _UxGT("Режим SW"); LSTR MSG_BLTOUCH_5V_MODE = _UxGT("Режим 5V"); LSTR MSG_BLTOUCH_OD_MODE = _UxGT("Режим OD"); - LSTR MSG_BLTOUCH_MODE_STORE = _UxGT("Режим сохранения"); - LSTR MSG_BLTOUCH_MODE_STORE_5V = _UxGT("Установить на 5V"); - LSTR MSG_BLTOUCH_MODE_STORE_OD = _UxGT("Установить на OD"); - LSTR MSG_BLTOUCH_MODE_ECHO = _UxGT("Слив отчёта"); + LSTR MSG_BLTOUCH_MODE_STORE = _UxGT("Сохранить режим"); + LSTR MSG_BLTOUCH_MODE_STORE_5V = _UxGT("Установить в 5V"); + LSTR MSG_BLTOUCH_MODE_STORE_OD = _UxGT("Установить в OD"); + LSTR MSG_BLTOUCH_MODE_ECHO = _UxGT("Текущий режим"); LSTR MSG_BLTOUCH_MODE_CHANGE = _UxGT("ОПАСНОСТЬ: Неправильные параметры приводят к повреждениям! Продолжить?"); LSTR MSG_TOUCHMI_PROBE = _UxGT("Z-Зонд TouchMI"); LSTR MSG_TOUCHMI_INIT = _UxGT("Инициализация"); LSTR MSG_TOUCHMI_ZTEST = _UxGT("Тест Z-смещения"); LSTR MSG_TOUCHMI_SAVE = _UxGT("Сохранить"); LSTR MSG_MANUAL_DEPLOY_TOUCHMI = _UxGT("Установить TouchMI"); - LSTR MSG_MANUAL_DEPLOY = _UxGT("Установить зонд"); - LSTR MSG_MANUAL_STOW = _UxGT("Загрузить зонд"); + LSTR MSG_MANUAL_DEPLOY = _UxGT("Выдвинуть зонд"); + LSTR MSG_MANUAL_STOW = _UxGT("Втянуть зонд"); LSTR MSG_HOME_FIRST = _UxGT("Сначала паркуй %s"); - LSTR MSG_ZPROBE_OFFSETS = _UxGT("Смещения Z-зонда"); + LSTR MSG_ZPROBE_OFFSETS = _UxGT("Смещение Z-зонда"); 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"); LSTR MSG_BABYSTEP_N = _UxGT("Микрошаг @"); - LSTR MSG_BABYSTEP_TOTAL = _UxGT("Сумарно"); + LSTR MSG_BABYSTEP_TOTAL = _UxGT("Суммарно"); LSTR MSG_ENDSTOP_ABORT = _UxGT("Сработал концевик"); LSTR MSG_HEATING_FAILED_LCD = _UxGT("Разогрев не удался"); - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Ошибка:Избыточная Т"); - LSTR MSG_THERMAL_RUNAWAY = _UxGT("УТЕЧКА ТЕПЛА"); - LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("УТЕЧКА ТЕПЛА СТОЛА"); - LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("УТЕЧКА ТЕПЛА КАМЕРЫ"); - LSTR MSG_THERMAL_RUNAWAY_COOLER = _UxGT("УТЕЧКА ОХЛАЖДЕНИЯ"); - LSTR MSG_COOLING_FAILED = _UxGT("ОХЛАДИТЬ НЕ УДАЛОСЬ"); + LSTR MSG_THERMAL_RUNAWAY = _UxGT("УТЕЧКА ТЕМПЕРАТУРЫ"); + LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("УТЕЧКА ТЕМП. СТОЛА"); + LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("УТЕЧКА ТЕМП. КАМЕРЫ"); + LSTR MSG_THERMAL_RUNAWAY_COOLER = _UxGT("УТЕЧКА ТЕМП. КУЛЕРА"); + LSTR MSG_COOLING_FAILED = _UxGT("НЕ УДАЛОСЬ ОХЛАДИТЬ"); LSTR MSG_ERR_MAXTEMP = _UxGT("Ошибка: Т макс."); LSTR MSG_ERR_MINTEMP = _UxGT("Ошибка: Т мин."); + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Ошибка: Т контр."); LSTR MSG_HALTED = _UxGT("ПРИНТЕР ОСТАНОВЛЕН"); LSTR MSG_PLEASE_RESET = _UxGT("Сделайте сброс"); - 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_HEATING = _UxGT("Нагрев..."); LSTR MSG_COOLING = _UxGT("Охлаждение..."); LSTR MSG_BED_HEATING = _UxGT("Нагрев стола..."); @@ -620,34 +504,24 @@ namespace Language_ru { LSTR MSG_CHAMBER_HEATING = _UxGT("Нагрев камеры..."); LSTR MSG_CHAMBER_COOLING = _UxGT("Охладжение камеры..."); LSTR MSG_LASER_COOLING = _UxGT("Охлаждение лазера..."); - LSTR MSG_DELTA_CALIBRATE = _UxGT("Калибровка Delta"); + LSTR MSG_DELTA_CALIBRATE = _UxGT("Калибровка дельты"); LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Калибровать X"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Калибровать Y"); LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Калибровать Z"); LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Калибровать центр"); - LSTR MSG_DELTA_SETTINGS = _UxGT("Настройки Delta"); - LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("Авто калибровка"); + LSTR MSG_DELTA_SETTINGS = _UxGT("Настройки дельты"); + LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("Автокалибр. дельты"); LSTR MSG_DELTA_DIAG_ROD = _UxGT("Стержень диаг."); LSTR MSG_DELTA_HEIGHT = _UxGT("Высота"); 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_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_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("Выравнивание сеткой"); + LSTR MSG_MESH_DONE = _UxGT("Зондиров. выполнено"); LSTR MSG_INFO_STATS_MENU = _UxGT("Статистика принтера"); LSTR MSG_INFO_BOARD_MENU = _UxGT("Данные платы"); @@ -655,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("Неверный принтер"); + 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; @@ -696,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("Продолжение..."); @@ -722,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("Филамент ~"); @@ -734,53 +583,34 @@ 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_COMPONENT_N = _UxGT("Компонент ="); + LSTR MSG_MIX = _UxGT("Смешив."); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент {"); LSTR MSG_MIXER = _UxGT("Смеситель"); LSTR MSG_GRADIENT = _UxGT("Градиент"); LSTR MSG_FULL_GRADIENT = _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_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"); LSTR MSG_GAMES = _UxGT("Игры"); - LSTR MSG_BRICKOUT = _UxGT("Кирпичи"); - LSTR MSG_INVADERS = _UxGT("Вторжение"); - LSTR MSG_SNAKE = _UxGT("Змейка"); - LSTR MSG_MAZE = _UxGT("Лабиринт"); + LSTR MSG_BRICKOUT = _UxGT("Brickout"); + LSTR MSG_INVADERS = _UxGT("Invaders"); + 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("Нужен логин"); @@ -790,11 +620,7 @@ namespace Language_ru { 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_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить"); LSTR MSG_PASSWORD_REMOVED = _UxGT("Пароль удалён"); // @@ -802,34 +628,21 @@ namespace Language_ru { // ...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_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_HOMING_THRS = _UxGT("Чувствительность"); LSTR MSG_TMC_STEPPING_MODE = _UxGT("Режим драйвера"); LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("Тихий режим вкл"); @@ -839,24 +652,15 @@ namespace Language_ru { LSTR MSG_BACKLASH_CORRECTION = _UxGT("Исправление"); LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Сглаживание"); - LSTR MSG_LEVEL_X_AXIS = _UxGT("Уровень оси X"); - LSTR MSG_AUTO_CALIBRATE = _UxGT("Авто калибровка"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_HEATER_TIMEOUT = _UxGT("Время нагревателя вышло"); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Время нагрев. вышло"); - #endif + 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_PROBE_WIZARD_PROBING = _UxGT("Зондир.контр.точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движ.к точке зондир."); LSTR MSG_SOUND = _UxGT("Звук"); @@ -867,16 +671,279 @@ namespace Language_ru { LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Калибровка успешна"); LSTR MSG_CALIBRATION_FAILED = _UxGT("Ошибка калибровки"); - LSTR MSG_DRIVER_BACKWARD = _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("Выключить хост"); + + // 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."); } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 +} + +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 +} + +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 4167fc802a..290b0cdcde 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -34,14 +34,14 @@ * 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 */ #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; @@ -65,10 +65,8 @@ 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á"); LSTR MSG_CONFIGURATION = _UxGT("Konfigurácia"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Auto-štart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Uvolniť motory"); @@ -84,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"); @@ -109,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ť"); @@ -294,7 +285,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"); @@ -327,7 +318,7 @@ namespace Language_sk { LSTR MSG_MOVE_1IN = _UxGT("Posunúť o 1,0in"); LSTR MSG_LIVE_MOVE = _UxGT("Živý pohyb"); LSTR MSG_SPEED = _UxGT("Rýchlosť"); - LSTR MSG_BED_Z = _UxGT("Výška podl."); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Výška podl."); LSTR MSG_NOZZLE = _UxGT("Tryska"); LSTR MSG_NOZZLE_N = _UxGT("Tryska ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Tryska zaparkovaná"); @@ -365,7 +356,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."); @@ -452,12 +443,12 @@ 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"); 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"); @@ -496,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..."); @@ -564,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."); @@ -682,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"); @@ -787,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"); @@ -829,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č."); @@ -862,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 e550e877a1..ea3c1c61dd 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; @@ -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"); @@ -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"); @@ -233,7 +231,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"); @@ -262,7 +260,7 @@ namespace Language_sv { LSTR MSG_MOVE_001IN = _UxGT("Flytta 0.01tum"); LSTR MSG_MOVE_01IN = _UxGT("Flytta 0.1tum"); LSTR MSG_SPEED = _UxGT("Hastighet"); - LSTR MSG_BED_Z = _UxGT("Bädd Z"); + LSTR MSG_MESH_Z_OFFSET = _UxGT("Bädd Z"); LSTR MSG_NOZZLE = _UxGT("Munstycke"); LSTR MSG_NOZZLE_N = _UxGT("Munstycke ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Munstycke Parkerad"); @@ -348,7 +346,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"); @@ -381,7 +379,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"); @@ -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"); @@ -569,7 +559,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"); @@ -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_test.h b/Marlin/src/lcd/language/language_test.h index 20b5a7e686..657e4e2e48 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 5ff8ab7b48..a6a75a2ace 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -26,95 +26,147 @@ * * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html - * - * Bu çeviri dosyasındaki sorunlar ve düzeltmeler için iletişim; - * Contact for issues and corrections in this translation file; - * Yücel Temel - (info@elektromanyetix.com) - https://elektromanyetix.com/ */ #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; LSTR LANGUAGE = _UxGT("Turkish"); + // These strings should be translated LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" hazır."); LSTR MSG_YES = _UxGT("EVET"); LSTR MSG_NO = _UxGT("HAYIR"); + LSTR MSG_HIGH = _UxGT("YÜKSEK"); + LSTR MSG_LOW = _UxGT("DÜŞÜK"); LSTR MSG_BACK = _UxGT("Geri"); + LSTR MSG_ERROR = _UxGT("Hata"); LSTR MSG_MEDIA_ABORTING = _UxGT("Durduruluyor..."); LSTR MSG_MEDIA_INSERTED = _UxGT("SD K. Yerleştirildi."); LSTR MSG_MEDIA_REMOVED = _UxGT("SD Kart Çıkarıldı."); LSTR MSG_MEDIA_WAITING = _UxGT("SD Kart Bekleniyor"); + LSTR MSG_MEDIA_INIT_FAIL = MEDIA_TYPE_EN _UxGT(" Başlatma Başarısız"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("Kart Okuma Hatası"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB Çıkarıldı"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB Başlat. Hatası"); - LSTR MSG_LCD_ENDSTOPS = _UxGT("Enstops"); // Max length 8 characters + 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_CONFIGURATION = _UxGT("Yapılandırma"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Oto. Başlat"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Motorları Durdur"); LSTR MSG_DEBUG_MENU = _UxGT("Hata Ayıklama"); LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Durum Çubuğu Testi"); + LSTR MSG_HOMING = _UxGT("Sıfırlanıyor"); LSTR MSG_AUTO_HOME = _UxGT("Eksenleri Sıfırla"); + LSTR MSG_AUTO_HOME_A = _UxGT("@ Sıfırla"); LSTR MSG_AUTO_HOME_X = _UxGT("X Sıfırla"); LSTR MSG_AUTO_HOME_Y = _UxGT("Y Sıfırla"); LSTR MSG_AUTO_HOME_Z = _UxGT("Z Sıfırla"); + LSTR MSG_FILAMENT_SET = _UxGT("Filament Ayarları"); + LSTR MSG_FILAMENT_MAN = _UxGT("Filament Yönetimi"); + LSTR MSG_MANUAL_LEVELING = _UxGT("Manuel Seviyeleme"); + 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"); + LSTR MSG_ITERATION = _UxGT("G34 Yinelemesi: %i"); + LSTR MSG_DECREASING_ACCURACY = _UxGT("Doğruluk Düşüyor!"); + LSTR MSG_ACCURACY_ACHIEVED = _UxGT("Doğruluk Sağlandı"); LSTR MSG_LEVEL_BED_HOMING = _UxGT("XYZ Sıfırlanıyor"); LSTR MSG_LEVEL_BED_WAITING = _UxGT("Başlatmak için tıkla"); LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("Sonraki Nokta"); - LSTR MSG_LEVEL_BED_DONE = _UxGT("Hizalama Tamam!"); + LSTR MSG_LEVEL_BED_DONE = _UxGT("Seviyeleme Tamam!"); LSTR MSG_Z_FADE_HEIGHT = _UxGT("Kaçınma Yüksekliği"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ofset Ayarla"); + LSTR MSG_HOME_OFFSET_X = _UxGT("X Ofset Sıfırla"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Y Ofset Sıfırla"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Z Ofset Sıfırla"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Ofset Tamam"); - #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"); + LSTR MSG_TRAMMING_WIZARD = _UxGT("Hizalama Sihirbazı"); + LSTR MSG_SELECT_ORIGIN = _UxGT("Başlangıç Seç"); + LSTR MSG_LAST_VALUE_SP = _UxGT("Son değer "); + + 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_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_CUSTOM = _UxGT("Özel Ön Isınma"); LSTR MSG_COOLDOWN = _UxGT("Soğut/(Durdur)"); + + LSTR MSG_CUTTER_FREQUENCY = _UxGT("Frekans"); LSTR MSG_LASER_MENU = _UxGT("Lazer Kontrolü"); - LSTR MSG_LASER_POWER = _UxGT("Lazer Gücü"); LSTR MSG_SPINDLE_MENU = _UxGT("Spindle Kontrolü"); + LSTR MSG_LASER_POWER = _UxGT("Lazer Gücü"); LSTR MSG_SPINDLE_POWER = _UxGT("Spindle Gücü"); - LSTR MSG_SPINDLE_REVERSE = _UxGT("Spindle Ters Yön"); + LSTR MSG_LASER_TOGGLE = _UxGT("Lazer Değiştir"); + LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Üfleyici Değiştir"); + LSTR MSG_LASER_ASSIST_TOGGLE = _UxGT("Hava Desteği"); + LSTR MSG_LASER_PULSE_MS = _UxGT("Test Pulse ms"); + LSTR MSG_LASER_FIRE_PULSE = _UxGT("Fire Pulse"); + LSTR MSG_FLOWMETER_FAULT = _UxGT("Soğutucu Akış Hatası"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Spindle Değiştir"); + LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Vakum Değiştir"); + LSTR MSG_SPINDLE_FORWARD = _UxGT("Spindle İleri Yön"); + LSTR MSG_SPINDLE_REVERSE = _UxGT("Spindle Geri Yön"); LSTR MSG_SWITCH_PS_ON = _UxGT("Gücü Aç"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Gücü Kapat"); LSTR MSG_EXTRUDE = _UxGT("Ekstrüzyon"); LSTR MSG_RETRACT = _UxGT("Geri Çek"); LSTR MSG_MOVE_AXIS = _UxGT("Eksen Hareketleri"); - LSTR MSG_BED_LEVELING = _UxGT("Tabla Hizalama"); - LSTR MSG_LEVEL_BED = _UxGT("Tabla Hizası"); - LSTR MSG_BED_TRAMMING = _UxGT("Hizalama Köşeleri"); + LSTR MSG_BED_LEVELING = _UxGT("Tabla Seviyeleme"); + LSTR MSG_LEVEL_BED = _UxGT("Tabla Seviyesi"); + LSTR MSG_BED_TRAMMING = _UxGT("Tabla Hizalama"); + LSTR MSG_BED_TRAMMING_MANUAL = _UxGT("Manuel Hizalama"); + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Prob tetiklenene kadar tablayı ayarlayın."); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Köşeler tolerans dahilinde. Tabla hizalandı."); + LSTR MSG_BED_TRAMMING_GOOD_POINTS = _UxGT("İyi Noktalar: "); + LSTR MSG_BED_TRAMMING_LAST_Z = _UxGT("Son Z: "); LSTR MSG_NEXT_CORNER = _UxGT("Sonraki Köşe"); LSTR MSG_MESH_EDITOR = _UxGT("Mesh Editörü"); + LSTR MSG_MESH_VIEWER = _UxGT("Mesh görüntüleyici"); LSTR MSG_EDIT_MESH = _UxGT("Mesh Düzenle"); + LSTR MSG_MESH_VIEW = _UxGT("Mesh Göster"); LSTR MSG_EDITING_STOPPED = _UxGT("Mesh Düzenleme Durdu"); + LSTR MSG_NO_VALID_MESH = _UxGT("Geçerli Mesh yok"); + LSTR MSG_ACTIVATE_MESH = _UxGT("Seviyeleme Aç"); LSTR MSG_PROBING_POINT = _UxGT("Prop Noktası"); LSTR MSG_MESH_X = _UxGT("İndeks X"); LSTR MSG_MESH_Y = _UxGT("İndeks Y"); + LSTR MSG_MESH_INSET = _UxGT("Mesh Inset"); + LSTR MSG_MESH_MIN_X = _UxGT("Mesh X Minimum"); + LSTR MSG_MESH_MAX_X = _UxGT("Mesh X Maximum"); + LSTR MSG_MESH_MIN_Y = _UxGT("Mesh Y Minimum"); + LSTR MSG_MESH_MAX_Y = _UxGT("Mesh Y Maximum"); + LSTR MSG_MESH_AMAX = _UxGT("Alanı Büyüt"); + LSTR MSG_MESH_CENTER = _UxGT("Merkez Alan"); LSTR MSG_MESH_EDIT_Z = _UxGT("Z Değeri"); + LSTR MSG_MESH_CANCEL = _UxGT("Mesh iptal edildi"); LSTR MSG_CUSTOM_COMMANDS = _UxGT("Özel Komutlar"); LSTR MSG_M48_TEST = _UxGT("M48 Prob Testi"); LSTR MSG_M48_POINT = _UxGT("M48 Nokta"); + LSTR MSG_M48_OUT_OF_BOUNDS = _UxGT("Sınır dışı araştırma"); LSTR MSG_M48_DEVIATION = _UxGT("Sapma"); LSTR MSG_IDEX_MENU = _UxGT("IDEX Modu"); LSTR MSG_OFFSETS_MENU = _UxGT("Takım Ofsetleri"); @@ -122,21 +174,26 @@ namespace Language_tr { LSTR MSG_IDEX_MODE_DUPLICATE = _UxGT("Kopyala"); LSTR MSG_IDEX_MODE_MIRRORED_COPY = _UxGT("Yansıtılmış kopya"); LSTR MSG_IDEX_MODE_FULL_CTRL = _UxGT("Tam Kontrol"); + LSTR MSG_IDEX_DUPE_GAP = _UxGT("Yinelenen X-Boşluğu"); LSTR MSG_HOTEND_OFFSET_Z = _UxGT("2. nozul Z"); LSTR MSG_HOTEND_OFFSET_A = _UxGT("2. nozul @"); LSTR MSG_UBL_DOING_G29 = _UxGT("G29 Çalışıyor"); LSTR MSG_UBL_TOOLS = _UxGT("UBL Araçları"); - LSTR MSG_UBL_LEVEL_BED = _UxGT("UBL Yatak Hizalama"); + LSTR MSG_UBL_LEVEL_BED = _UxGT("UBL Tabla Seviyeleme"); LSTR MSG_LCD_TILTING_MESH = _UxGT("Eğim Noktası"); + LSTR MSG_UBL_TILT_MESH = _UxGT("Eğimli Mesh"); + LSTR MSG_UBL_TILTING_GRID = _UxGT("Eğimli Izgara Boyutu"); + LSTR MSG_UBL_MESH_TILTED = _UxGT("Mesh Eğildi"); LSTR MSG_UBL_MANUAL_MESH = _UxGT("Elle Mesh Oluştur"); + LSTR MSG_UBL_MESH_WIZARD = _UxGT("UBL Mesh Sihirbazı"); LSTR MSG_UBL_BC_INSERT = _UxGT("Altlık & Ölçü Ver"); - LSTR MSG_UBL_BC_INSERT2 = _UxGT("Ölçü"); - LSTR MSG_UBL_BC_REMOVE = _UxGT("Yataktan Ölçü Kaldır"); + LSTR MSG_UBL_BC_INSERT2 = _UxGT("Ölçüm"); + LSTR MSG_UBL_BC_REMOVE = _UxGT("Tablayı Kaldır & Ölç"); LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Sonrakine Git"); LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("UBL'yi Etkinleştir"); LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("UBL'yi Etkisizleştir"); - LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Yatak Sıcaklığı"); - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Yatak Sıcaklığı"); + LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Tabla Sıcaklığı"); + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Tabla Sıcaklığı"); LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("Nozul Sıcaklığı"); LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Nozul Sıcaklığı"); LSTR MSG_UBL_MESH_EDIT = _UxGT("Mesh Düzenleme"); @@ -145,14 +202,12 @@ namespace Language_tr { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Mesh Düzenleme Tamam"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Özel Mesh Oluştur"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Mesh Oluştur"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Mesh Oluştur ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Doğrulama Mesh ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Mesh Oluştur ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Soğuk Mesh Oluştur"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Mesh Yükseklik Ayarı"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Yükseklik miktarı"); LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("Doğrulama Mesh"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Doğrulama Mesh ($)"); LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Özel Mesh Doğrulama"); LSTR MSG_G26_HEATING_BED = _UxGT("G26 Isıtma Tablası"); LSTR MSG_G26_HEATING_NOZZLE = _UxGT("G26 Isıtma Memesi"); @@ -162,29 +217,32 @@ namespace Language_tr { LSTR MSG_G26_CANCELED = _UxGT("G26 İptal edildi"); LSTR MSG_G26_LEAVING = _UxGT("Çıkış G26"); LSTR MSG_UBL_CONTINUE_MESH = _UxGT("Tabla Mesh Devam et"); - LSTR MSG_UBL_MESH_LEVELING = _UxGT("Mesh Hizalama"); - LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-Nokta Hizalama"); - LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Kafes Mesh Hizalama"); + LSTR MSG_UBL_MESH_LEVELING = _UxGT("Mesh Seviyeleme"); + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-Nokta Seviyeleme"); + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Kafes Mesh Seviyeleme"); LSTR MSG_UBL_MESH_LEVEL = _UxGT("Mesh Seviyesi"); LSTR MSG_UBL_SIDE_POINTS = _UxGT("Yan Noktalar"); LSTR MSG_UBL_MAP_TYPE = _UxGT("Haritalama Türü"); LSTR MSG_UBL_OUTPUT_MAP = _UxGT("Mesh Çıkış Haritası"); LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("Host için Çıktı"); LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("CSV için Çıktı"); - LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Yazıcıda Yedek Kpalı"); + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Yedekleme Kapalı"); LSTR MSG_UBL_INFO_UBL = _UxGT("UBL Çıkış Bilgisi"); LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Dolgu Miktarı"); LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("Manuel Dolgu"); LSTR MSG_UBL_SMART_FILLIN = _UxGT("Akıllı Dogu"); LSTR MSG_UBL_FILLIN_MESH = _UxGT("Mesh Dolgu"); + LSTR MSG_UBL_MESH_FILLED = _UxGT("Eksikler Dolduruldu"); + LSTR MSG_UBL_MESH_INVALID = _UxGT("Geçersiz Mesh"); LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("Tümünü Geçersiz Kıl"); LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("Yakını Geçersiz Kıl"); LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Tümünü İnce Ayarla"); LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Yakını İnce Ayarla"); LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("Mesh Depolama"); LSTR MSG_UBL_STORAGE_SLOT = _UxGT("Bellek Yuvası"); - LSTR MSG_UBL_LOAD_MESH = _UxGT("Yatak Mesh Yükle"); - LSTR MSG_UBL_SAVE_MESH = _UxGT("Yatak Mesh Kayıt Et"); + LSTR MSG_UBL_LOAD_MESH = _UxGT("Tabla Mesh Yükle"); + LSTR MSG_UBL_SAVE_MESH = _UxGT("Tabla Mesh Kayıt Et"); + LSTR MSG_UBL_INVALID_SLOT = _UxGT("Önce Mesh Yuvası Seç"); LSTR MSG_MESH_LOADED = _UxGT("Mesh %i yüklendi"); LSTR MSG_MESH_SAVED = _UxGT("Mesh %i kayıtlandı"); LSTR MSG_UBL_NO_STORAGE = _UxGT("Depolama Yok"); @@ -199,7 +257,7 @@ namespace Language_tr { LSTR MSG_UBL_4_FINE_TUNE_ALL = _UxGT("4.Tümünü İnce Ayarla"); LSTR MSG_UBL_5_VALIDATE_MESH_MENU = _UxGT("5.Doğrulama Mesh"); LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6.Tümünü İnce Ayarla"); - LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7.Yatak Mesh Kayıt Et"); + LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7.Tabla Mesh Kaydet"); LSTR MSG_LED_CONTROL = _UxGT("LED Kontrolü"); LSTR MSG_LEDS = _UxGT("LEDler"); @@ -213,6 +271,10 @@ 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_LEDS2 = _UxGT("Işıklar #2"); + LSTR MSG_NEO2_PRESETS = _UxGT("Işık #2 Ön Ayarları"); + LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Parlaklık"); LSTR MSG_CUSTOM_LEDS = _UxGT("Özel Işıklar"); LSTR MSG_INTENSITY_R = _UxGT("Kırmızı Şiddeti"); LSTR MSG_INTENSITY_G = _UxGT("Yeşil Şiddeti"); @@ -222,7 +284,7 @@ namespace Language_tr { LSTR MSG_MOVING = _UxGT("Hareket Ediyor.."); LSTR MSG_FREE_XY = _UxGT("Durdur XY"); - LSTR MSG_MOVE_X = _UxGT("X Hareketi"); + LSTR MSG_MOVE_X = _UxGT("X Hareketi"); // Used by draw_edit_screen LSTR MSG_MOVE_Y = _UxGT("Y Hareketi"); LSTR MSG_MOVE_Z = _UxGT("Z Hareketi"); LSTR MSG_MOVE_N = _UxGT("@ Hareketi"); @@ -233,18 +295,36 @@ namespace Language_tr { LSTR MSG_MOVE_01MM = _UxGT("0.1mm"); LSTR MSG_MOVE_1MM = _UxGT("1mm"); LSTR MSG_MOVE_10MM = _UxGT("10mm"); + LSTR MSG_MOVE_50MM = _UxGT("50mm"); 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("Hız"); LSTR MSG_BED_Z = _UxGT("Z Mesafesi"); LSTR MSG_NOZZLE = _UxGT("Nozul"); LSTR MSG_NOZZLE_N = _UxGT("Nozul ~"); + LSTR MSG_NOZZLE_PARKED = _UxGT("Nozul Park Edildi"); + LSTR MSG_NOZZLE_STANDBY = _UxGT("Nozul Beklemede"); LSTR MSG_BED = _UxGT("Tabla"); - LSTR MSG_CHAMBER = _UxGT("Çevirme"); + LSTR MSG_CHAMBER = _UxGT("Kabin"); + LSTR MSG_COOLER = _UxGT("Lazer Soğutucu"); + LSTR MSG_COOLER_TOGGLE = _UxGT("Soğutucuyu Değiştir"); + LSTR MSG_FLOWMETER_SAFETY = _UxGT("Akış Güvenliği"); + LSTR MSG_CUTTER = _UxGT("Kesici"); + LSTR MSG_LASER = _UxGT("Lazer"); LSTR MSG_FAN_SPEED = _UxGT("Fan Hızı"); LSTR MSG_FAN_SPEED_N = _UxGT("Fan Hızı ~"); LSTR MSG_STORED_FAN_N = _UxGT("Depolanan Fan ~"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Ekstra Fan Hızı"); LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Ekstra Fan Hızı ~"); + LSTR MSG_CONTROLLER_FAN = _UxGT("Kontrolör Fanı"); + LSTR MSG_CONTROLLER_FAN_IDLE_SPEED = _UxGT("Rölanti Hızı"); + LSTR MSG_CONTROLLER_FAN_AUTO_ON = _UxGT("Otomatik Mod"); + LSTR MSG_CONTROLLER_FAN_SPEED = _UxGT("Aktif Hız"); + LSTR MSG_CONTROLLER_FAN_DURATION = _UxGT("Rölanti Periyodu"); LSTR MSG_FLOW = _UxGT("Akış"); LSTR MSG_FLOW_N = _UxGT("Akış ~"); LSTR MSG_CONTROL = _UxGT("Kontrol"); @@ -256,34 +336,58 @@ namespace Language_tr { LSTR MSG_LCD_OFF = _UxGT("Kapalı"); LSTR MSG_PID_AUTOTUNE = _UxGT("PID Kalibrasyon"); LSTR MSG_PID_AUTOTUNE_E = _UxGT("PID Kalibrasyon *"); + LSTR MSG_PID_CYCLE = _UxGT("PID Döngüleri"); + LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("PID ayarı yapıldı"); + LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("PID Autotune başarısız!"); + LSTR MSG_BAD_EXTRUDER_NUM = _UxGT("Kötü ekstruder."); + LSTR MSG_TEMP_TOO_HIGH = _UxGT("Sıcaklık çok yüksek."); + LSTR MSG_TIMEOUT = _UxGT("Zaman aşımı."); + LSTR MSG_PID_BAD_EXTRUDER_NUM = _UxGT("Otomatik ayar başarısız! Kötü ekstruder."); + LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Otomatik ayar başarısız! Sıcaklık çok yüksek."); + LSTR MSG_PID_TIMEOUT = _UxGT("Otomatik ayar başarısız! Zaman aşımı."); + LSTR MSG_MPC_MEASURING_AMBIENT = _UxGT("Isı kaybı test ediliyor"); + LSTR MSG_MPC_AUTOTUNE = _UxGT("MPC Otomatik Ayarı"); + LSTR MSG_MPC_EDIT = _UxGT("Düzenle * MPC"); + LSTR MSG_MPC_POWER_E = _UxGT("Güç *"); + LSTR MSG_MPC_BLOCK_HEAT_CAPACITY_E = _UxGT("Blok C *"); + LSTR MSG_SENSOR_RESPONSIVENESS_E = _UxGT("Sensör çözünürlüğü *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_E = _UxGT("Ortam h *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN_E = _UxGT("Amb. h fan *"); + LSTR MSG_SELECT = _UxGT("Seç"); LSTR MSG_SELECT_E = _UxGT("Seç *"); LSTR MSG_ACC = _UxGT("İvme"); - - LSTR MSG_JERK = _UxGT("Sarsım"); - LSTR MSG_VA_JERK = _UxGT("V") STR_A _UxGT("-Sarsım"); - LSTR MSG_VB_JERK = _UxGT("V") STR_B _UxGT("-Sarsım"); - LSTR MSG_VC_JERK = _UxGT("V") STR_C _UxGT("-Sarsım"); - LSTR MSG_VN_JERK = _UxGT("V@-Sarsım"); - LSTR MSG_VE_JERK = _UxGT("Ve-Sarsım"); + LSTR MSG_JERK = _UxGT("Sarsma"); + LSTR MSG_VA_JERK = _UxGT("V") STR_A _UxGT(" Sarsma"); + LSTR MSG_VB_JERK = _UxGT("V") STR_B _UxGT(" Sarsma"); + LSTR MSG_VC_JERK = _UxGT("V") STR_C _UxGT(" Sarsma"); + LSTR MSG_VN_JERK = _UxGT("Max @ Sarsma"); + LSTR MSG_VE_JERK = _UxGT("Max E Sarsma"); LSTR MSG_JUNCTION_DEVIATION = _UxGT("Jonksiyon Sapması"); LSTR MSG_MAX_SPEED = _UxGT("Hız Vektörü"); - LSTR MSG_VMAX_A = _UxGT("HızVektör.max ") STR_A; - LSTR MSG_VMAX_B = _UxGT("HızVektör.max ") STR_B; - LSTR MSG_VMAX_C = _UxGT("HızVektör.max ") STR_C; - LSTR MSG_VMAX_N = _UxGT("HızVektör.max @"); - LSTR MSG_VMAX_E = _UxGT("HızVektör.max E"); - LSTR MSG_VMAX_EN = _UxGT("HızVektör.max *"); - LSTR MSG_VMIN = _UxGT("HızVektör.min"); - LSTR MSG_VTRAV_MIN = _UxGT("HV.gezinme min"); + LSTR MSG_VMAX_A = _UxGT("Max ") STR_A _UxGT(" Hız"); + LSTR MSG_VMAX_B = _UxGT("Max ") STR_B _UxGT(" Hız"); + LSTR MSG_VMAX_C = _UxGT("Max ") STR_C _UxGT(" Hız"); + LSTR MSG_VMAX_N = _UxGT("Max @ Hız"); + LSTR MSG_VMAX_E = _UxGT("Max E Hız"); + LSTR MSG_VMAX_EN = _UxGT("Max * Hız"); + LSTR MSG_VMIN = _UxGT("Min Hız"); + LSTR MSG_VTRAV_MIN = _UxGT("Min Gezme Hızı"); LSTR MSG_ACCELERATION = _UxGT("Ivme"); - LSTR MSG_AMAX_A = _UxGT("Max. ivme ") STR_A; - LSTR MSG_AMAX_B = _UxGT("Max. ivme ") STR_B; - LSTR MSG_AMAX_C = _UxGT("Max. ivme ") STR_C; - LSTR MSG_AMAX_N = _UxGT("Max. ivme @"); - LSTR MSG_AMAX_E = _UxGT("Max. ivme E"); - LSTR MSG_AMAX_EN = _UxGT("Max. ivme *"); - LSTR MSG_A_RETRACT = _UxGT("Ivme-geri çekme"); - LSTR MSG_A_TRAVEL = _UxGT("Ivme-gezinme"); + LSTR MSG_AMAX_A = _UxGT("Max ") STR_A _UxGT(" İvme"); + LSTR MSG_AMAX_B = _UxGT("Max ") STR_B _UxGT(" İvme"); + LSTR MSG_AMAX_C = _UxGT("Max ") STR_C _UxGT(" İvme"); + LSTR MSG_AMAX_N = _UxGT("Max @ İvme"); + LSTR MSG_AMAX_E = _UxGT("Max E İvme"); + LSTR MSG_AMAX_EN = _UxGT("Max * İvme"); + LSTR MSG_A_RETRACT = _UxGT("G.Çekme Hızı"); + LSTR MSG_A_TRAVEL = _UxGT("Gezinme Hızı"); + LSTR MSG_INPUT_SHAPING = _UxGT("Girdi Şekillendirme"); + LSTR MSG_SHAPING_ENABLE = _UxGT("Biçimleme @ aktif"); + LSTR MSG_SHAPING_DISABLE = _UxGT("Biçimleme @ pasif"); + LSTR MSG_SHAPING_FREQ = _UxGT("@ frekans"); + LSTR MSG_SHAPING_ZETA = _UxGT("@ sönümleme"); + LSTR MSG_XY_FREQUENCY_LIMIT = _UxGT("XY Frek. Sınırı"); + LSTR MSG_XY_FREQUENCY_FEEDRATE = _UxGT("Min FR Factor"); LSTR MSG_STEPS_PER_MM = _UxGT("Adım/mm"); LSTR MSG_A_STEPS = STR_A _UxGT(" adım/mm"); LSTR MSG_B_STEPS = STR_B _UxGT(" adım/mm"); @@ -295,69 +399,124 @@ namespace Language_tr { LSTR MSG_MOTION = _UxGT("Hareket"); LSTR MSG_FILAMENT = _UxGT("Filaman"); LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("Ekstrüzyon/mm") SUPERSCRIPT_THREE; + LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("E Limit in mm") SUPERSCRIPT_THREE; + LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("E Limit *"); LSTR MSG_FILAMENT_DIAM = _UxGT("Filaman Çapı"); LSTR MSG_FILAMENT_DIAM_E = _UxGT("Filaman Çapı *"); LSTR MSG_FILAMENT_UNLOAD = _UxGT("Çıkart mm"); LSTR MSG_FILAMENT_LOAD = _UxGT("Yükle mm"); + LSTR MSG_SEGMENTS_PER_SECOND = _UxGT("Segment/Sn"); + LSTR MSG_DRAW_MIN_X = _UxGT("Draw Min X"); + LSTR MSG_DRAW_MAX_X = _UxGT("Draw Max X"); + 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 Kayış Boyu"); LSTR MSG_ADVANCE_K = _UxGT("K İlerlet"); LSTR MSG_ADVANCE_K_E = _UxGT("K İlerlet *"); LSTR MSG_CONTRAST = _UxGT("LCD Kontrast"); + LSTR MSG_BRIGHTNESS = _UxGT("LCD Parlaklığı"); + LSTR MSG_SCREEN_TIMEOUT = _UxGT("LCD Zaman Aşımı (m)"); + LSTR MSG_BRIGHTNESS_OFF = _UxGT("Arka Işık Kapalı"); LSTR MSG_STORE_EEPROM = _UxGT("Hafızaya Al"); LSTR MSG_LOAD_EEPROM = _UxGT("Hafızadan Yükle"); 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_VERSION = _UxGT("Hata: EEPROM Versiyonu"); + 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"); 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"); + LSTR MSG_INFO_FWVERSION = _UxGT("Yazılım Sürümü"); + LSTR MSG_INFO_BUILD = _UxGT("Tarih & Saat Oluştur"); LSTR MSG_PREPARE = _UxGT("Hazırlık"); LSTR MSG_TUNE = _UxGT("Ayar"); + LSTR MSG_POWER_MONITOR = _UxGT("Güç monitörü"); + LSTR MSG_CURRENT = _UxGT("Akım"); + LSTR MSG_VOLTAGE = _UxGT("Voltaj"); + LSTR MSG_POWER = _UxGT("Güç"); LSTR MSG_START_PRINT = _UxGT("Yaz. Başlat"); LSTR MSG_BUTTON_NEXT = _UxGT("İleri"); - LSTR MSG_BUTTON_INIT = _UxGT("İçinde"); + LSTR MSG_BUTTON_INIT = _UxGT("Başlat"); LSTR MSG_BUTTON_STOP = _UxGT("Durdur"); LSTR MSG_BUTTON_PRINT = _UxGT("Yazdır"); LSTR MSG_BUTTON_RESET = _UxGT("Resetle"); + LSTR MSG_BUTTON_IGNORE = _UxGT("Yoksay"); LSTR MSG_BUTTON_CANCEL = _UxGT("İptal"); + LSTR MSG_BUTTON_CONFIRM = _UxGT("Onayla"); + LSTR MSG_BUTTON_CONTINUE = _UxGT("Sürdür"); LSTR MSG_BUTTON_DONE = _UxGT("Tamamlandı"); LSTR MSG_BUTTON_BACK = _UxGT("Geri"); - LSTR MSG_BUTTON_PROCEED = _UxGT("Devam ediyor"); + LSTR MSG_BUTTON_PROCEED = _UxGT("Devam Et"); + LSTR MSG_BUTTON_SKIP = _UxGT("Atla"); + LSTR MSG_BUTTON_INFO = _UxGT("Bilgi"); + LSTR MSG_BUTTON_LEVEL = _UxGT("Seviye"); + LSTR MSG_BUTTON_PAUSE = _UxGT("Duraklat"); + LSTR MSG_BUTTON_RESUME = _UxGT("Devam Et"); + LSTR MSG_BUTTON_ADVANCED = _UxGT("Gelişmiş"); + LSTR MSG_BUTTON_SAVE = _UxGT("Kaydet"); + LSTR MSG_BUTTON_PURGE = _UxGT("Temizle"); + LSTR MSG_PAUSING = _UxGT("Duraklatılıyor..."); LSTR MSG_PAUSE_PRINT = _UxGT("Duraklat"); - LSTR MSG_RESUME_PRINT = _UxGT("Sürdür"); - LSTR MSG_STOP_PRINT = _UxGT("Durdur"); - 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_ADVANCED_PAUSE = _UxGT("Gelişmiş Duraklatma"); + 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"); - LSTR MSG_MEDIA_MENU = _UxGT("SD Karttan Yazdır"); + + 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("Operatör bekleniyor."); + LSTR MSG_USERWAIT = _UxGT("Devam için tıkla..."); LSTR MSG_PRINT_PAUSED = _UxGT("Baskı Duraklatıldı"); LSTR MSG_PRINTING = _UxGT("Baskı Yapılıyor..."); + LSTR MSG_STOPPING = _UxGT("Durduruluyor..."); + LSTR MSG_REMAINING_TIME = _UxGT("Kalan"); LSTR MSG_PRINT_ABORTED = _UxGT("Baskı Durduruldu!"); + LSTR MSG_PRINT_DONE = _UxGT("Yazdırma Bitti"); + LSTR MSG_PRINTER_KILLED = _UxGT("Yazıcı çöktü!"); LSTR MSG_NO_MOVE = _UxGT("İşlem yok."); - LSTR MSG_KILLED = _UxGT("Kilitlendi. "); - LSTR MSG_STOPPED = _UxGT("Durdu. "); + LSTR MSG_KILLED = _UxGT("ÇÖKTÜ. "); + LSTR MSG_STOPPED = _UxGT("DURDURULDU. "); + LSTR MSG_FWRETRACT = _UxGT("Yazılım Geri Çekme"); LSTR MSG_CONTROL_RETRACT = _UxGT("Geri Çek mm"); LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Swap Re.mm"); LSTR MSG_CONTROL_RETRACTF = _UxGT("Geri Çekme V"); LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Atlama mm"); - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Unretr. mm"); + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Geri Çek. mm"); LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("S Unretr. mm"); LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("Unretract V"); LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("S UnRet V"); LSTR MSG_AUTORETRACT = _UxGT("Oto. Geri Çekme"); LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("G.Çekme Boyu"); + LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Ekstra Değiştir"); LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("Tasfiye uzunluğu"); LSTR MSG_TOOL_CHANGE = _UxGT("Takım Değişimi"); LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Z Yükselt"); LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Birincil Hız"); + LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Geri Çekme Sil"); LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Geri Çekme Hızı"); - LSTR MSG_NOZZLE_STANDBY = _UxGT("Nozul Beklemede"); + LSTR MSG_FILAMENT_PARK_ENABLED = _UxGT("Kafa Park"); + LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Kurtarma Hızı"); + LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Fan Hızı"); + LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Fan Süresi"); + LSTR MSG_TOOL_MIGRATION_ON = _UxGT("Otomatik AÇIK"); + LSTR MSG_TOOL_MIGRATION_OFF = _UxGT("Otomatik KAPALI"); + LSTR MSG_TOOL_MIGRATION = _UxGT("Takım Taşıma"); + LSTR MSG_TOOL_MIGRATION_AUTO = _UxGT("Otomatik-taşıma"); + LSTR MSG_TOOL_MIGRATION_END = _UxGT("Son Ekstruder"); + LSTR MSG_TOOL_MIGRATION_SWAP = _UxGT("* konumuna taşı"); LSTR MSG_FILAMENTCHANGE = _UxGT("Filaman Değiştir"); LSTR MSG_FILAMENTCHANGE_E = _UxGT("Filaman Değiştir *"); LSTR MSG_FILAMENTLOAD = _UxGT("Filaman Yükle"); @@ -365,36 +524,42 @@ namespace Language_tr { LSTR MSG_FILAMENTUNLOAD = _UxGT("Filaman Çıkart"); LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Filaman Çıkart *"); LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Tümünü Çıkart"); - LSTR MSG_ATTACH_MEDIA = _UxGT("SD Kart Başlatılıyor"); - LSTR MSG_CHANGE_MEDIA = _UxGT("SD Kart Değiştir"); - LSTR MSG_RELEASE_MEDIA = _UxGT("SD Kart Çıkart"); - LSTR MSG_ZPROBE_OUT = _UxGT("Z Prob Açık. Tabla"); + LSTR MSG_ATTACH_MEDIA = _UxGT("Ekle ") MEDIA_TYPE_EN; + LSTR MSG_CHANGE_MEDIA = _UxGT("Değiştir ") MEDIA_TYPE_EN; + LSTR MSG_RELEASE_MEDIA = _UxGT("Çıkart ") MEDIA_TYPE_EN; + LSTR MSG_ZPROBE_OUT = _UxGT("Z Prob Tablayı Geçti"); LSTR MSG_SKEW_FACTOR = _UxGT("Çarpıklık Faktörü"); LSTR MSG_BLTOUCH = _UxGT("BLTouch"); LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch K. Test"); - LSTR MSG_BLTOUCH_RESET = _UxGT("Reset"); + LSTR MSG_BLTOUCH_RESET = _UxGT("Sıfırla"); LSTR MSG_BLTOUCH_STOW = _UxGT("Kapat"); LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Aç"); LSTR MSG_BLTOUCH_SW_MODE = _UxGT("SW-Modu"); + LSTR MSG_BLTOUCH_SPEED_MODE = _UxGT("Yüksek Hız"); LSTR MSG_BLTOUCH_5V_MODE = _UxGT("5V-Modu"); LSTR MSG_BLTOUCH_OD_MODE = _UxGT("OD-Modu"); LSTR MSG_BLTOUCH_MODE_STORE = _UxGT("Mode-Store"); LSTR MSG_BLTOUCH_MODE_STORE_5V = _UxGT("BLTouch 5V Ayarla"); LSTR MSG_BLTOUCH_MODE_STORE_OD = _UxGT("BLTouch OD Ayarla"); LSTR MSG_BLTOUCH_MODE_ECHO = _UxGT("Drenaj Raporu"); - LSTR MSG_BLTOUCH_MODE_CHANGE = _UxGT("TEHLIKE: Kötü ayarlar hasara neden olabilir! Yine de devam edilsin mi?"); + LSTR MSG_BLTOUCH_MODE_CHANGE = _UxGT("TEHLIKE: Kötü ayarlar zarar verebilir! Yine de devam edilsin mi?"); LSTR MSG_TOUCHMI_PROBE = _UxGT("TouchMI"); - LSTR MSG_TOUCHMI_INIT = _UxGT("Init TouchMI"); + LSTR MSG_TOUCHMI_INIT = _UxGT("TouchMI'yi Başlat"); LSTR MSG_TOUCHMI_ZTEST = _UxGT("Z Ofset Testi"); LSTR MSG_TOUCHMI_SAVE = _UxGT("Kaydet"); LSTR MSG_MANUAL_DEPLOY_TOUCHMI = _UxGT("TouchMI Aç"); LSTR MSG_MANUAL_DEPLOY = _UxGT("Z-Probe Aç"); LSTR MSG_MANUAL_STOW = _UxGT("Z-Probe Kapat"); - LSTR MSG_HOME_FIRST = _UxGT("Önce %s Sıfırla"); + LSTR MSG_HOME_FIRST = _UxGT("Önce %s%s%s Sıfırla"); + LSTR MSG_ZPROBE_SETTINGS = _UxGT("Prob Ayarları"); LSTR MSG_ZPROBE_OFFSETS = _UxGT("Prob Ofsetleri"); LSTR MSG_ZPROBE_XOFFSET = _UxGT("X Prob Ofset"); LSTR MSG_ZPROBE_YOFFSET = _UxGT("Y Prob Ofset"); LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Z Prob Ofset"); + LSTR MSG_ZPROBE_MARGIN = _UxGT("Prob Payı"); + LSTR MSG_Z_FEED_RATE = _UxGT("Z İlerleme Hızı"); + LSTR MSG_ENABLE_HS_MODE = _UxGT("HS modunu aç"); + LSTR MSG_MOVE_NOZZLE_TO_BED = _UxGT("Nozülü Tablaya Taşı"); LSTR MSG_BABYSTEP_X = _UxGT("Miniadım X"); LSTR MSG_BABYSTEP_Y = _UxGT("Miniadım Y"); LSTR MSG_BABYSTEP_Z = _UxGT("Miniadım Z"); @@ -402,23 +567,28 @@ namespace Language_tr { LSTR MSG_BABYSTEP_TOTAL = _UxGT("Toplam"); LSTR MSG_ENDSTOP_ABORT = _UxGT("Endstop iptal"); LSTR MSG_HEATING_FAILED_LCD = _UxGT("Isınma başarısız"); - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Hata: Sıcaklık Aşımı"); - LSTR MSG_THERMAL_RUNAWAY = _UxGT("TERMAL PROBLEM"); - LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("TABLA TERMAL PROBLEM"); - LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("ODA TERMAL PROBLEM"); + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Hata: ISI AŞIMI"); + LSTR MSG_THERMAL_RUNAWAY = _UxGT("ISI SORUNU"); + LSTR MSG_TEMP_MALFUNCTION = _UxGT("SICAKLIK ARIZASI"); + LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("TABLA ISI SORUNU"); + LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("KABİN ISI SORUNU"); + LSTR MSG_THERMAL_RUNAWAY_COOLER = _UxGT("Soğutucu Isı Sorunu"); + LSTR MSG_COOLING_FAILED = _UxGT("Soğutma Başarısız"); LSTR MSG_ERR_MAXTEMP = _UxGT("Hata: MAX.SICAKLIK"); LSTR MSG_ERR_MINTEMP = _UxGT("Hata: MIN.SICAKLIK"); LSTR MSG_HALTED = _UxGT("YAZICI DURDURULDU"); + LSTR MSG_PLEASE_WAIT = _UxGT("Lütfen bekleyin..."); LSTR MSG_PLEASE_RESET = _UxGT("Lütfen Resetleyin"); - LSTR MSG_SHORT_DAY = _UxGT("G"); // One character only - LSTR MSG_SHORT_HOUR = _UxGT("S"); // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("D"); // One character only + LSTR MSG_PREHEATING = _UxGT("ön ısıtma..."); LSTR MSG_HEATING = _UxGT("Isınıyor..."); LSTR MSG_COOLING = _UxGT("Soğuyor..."); LSTR MSG_BED_HEATING = _UxGT("Tabla Isınıyor..."); LSTR MSG_BED_COOLING = _UxGT("Tabla Soğuyor..."); - LSTR MSG_CHAMBER_HEATING = _UxGT("Oda Isınıyor..."); - LSTR MSG_CHAMBER_COOLING = _UxGT("Oda Soğuyor..."); + LSTR MSG_PROBE_HEATING = _UxGT("Prob ısınıyor..."); + LSTR MSG_PROBE_COOLING = _UxGT("Prob Soğuyor..."); + LSTR MSG_CHAMBER_HEATING = _UxGT("Kabin Isınıyor..."); + LSTR MSG_CHAMBER_COOLING = _UxGT("Kabin Soğuyor..."); + LSTR MSG_LASER_COOLING = _UxGT("Lazer Soğuyor..."); LSTR MSG_DELTA_CALIBRATE = _UxGT("Delta Kalibrasyonu"); LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Ayarla X"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Ayarla Y"); @@ -431,35 +601,49 @@ namespace Language_tr { LSTR MSG_DELTA_RADIUS = _UxGT("Yarıçap"); LSTR MSG_INFO_MENU = _UxGT("Yazıcı Hakkında"); LSTR MSG_INFO_PRINTER_MENU = _UxGT("Yazıcı Bilgisi"); - LSTR MSG_3POINT_LEVELING = _UxGT("3-Nokta Hizalama"); - LSTR MSG_LINEAR_LEVELING = _UxGT("Doğrusal Hizalama"); + LSTR MSG_3POINT_LEVELING = _UxGT("3-Nokta Seviyeleme"); + LSTR MSG_LINEAR_LEVELING = _UxGT("Doğrusal Seviyeleme"); LSTR MSG_BILINEAR_LEVELING = _UxGT("İki Yönlü Doğ. Hiza."); LSTR MSG_UBL_LEVELING = _UxGT("Birleşik Tabla Hiza."); - LSTR MSG_MESH_LEVELING = _UxGT("Mesh Hizalama"); + LSTR MSG_MESH_LEVELING = _UxGT("Mesh Seviyeleme"); + LSTR MSG_MESH_DONE = _UxGT("Mesh sondalama tamam"); LSTR MSG_INFO_STATS_MENU = _UxGT("İstatistikler"); LSTR MSG_INFO_BOARD_MENU = _UxGT("Kontrolcü Bilgisi"); LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("Termistörler"); LSTR MSG_INFO_EXTRUDERS = _UxGT("Ekstruderler"); LSTR MSG_INFO_BAUDRATE = _UxGT("İletişim Hızı"); LSTR MSG_INFO_PROTOCOL = _UxGT("Protokol"); + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Kaçak İzleme: KAPALI"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Kaçak İzleme: AÇIK"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Hotend Boşta Zamn Aş"); + LSTR MSG_FAN_SPEED_FAULT = _UxGT("Fan hızı hatası"); + LSTR MSG_CASE_LIGHT = _UxGT("Aydınlatmayı Aç"); - LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Aydınlatma Parlaklğı"); + LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Işık Parlaklğı"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Yanlış Yazıcı"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Baskı Sayısı"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Tamamlanan"); - 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_INFO_PRINT_COUNT = _UxGT("Baskı"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Tamamlanan"); - 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_COLORS_GET = _UxGT("Renk Al"); + LSTR MSG_COLORS_SELECT = _UxGT("Renkleri Seç"); + LSTR MSG_COLORS_APPLIED = _UxGT("Uygulanan renkler"); + LSTR MSG_COLORS_RED = _UxGT("Kırmızı"); + LSTR MSG_COLORS_GREEN = _UxGT("Yeşil"); + LSTR MSG_COLORS_BLUE = _UxGT("Mavi"); + LSTR MSG_COLORS_WHITE = _UxGT("Beyaz"); + LSTR MSG_UI_LANGUAGE = _UxGT("UI Dili"); + LSTR MSG_SOUND_ENABLE = _UxGT("Sesi etkinleştir"); + LSTR MSG_LOCKSCREEN = _UxGT("Kilit Ekranı"); + LSTR MSG_LOCKSCREEN_LOCKED = _UxGT("Yazıcı Kilitlendi,"); + LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Açmak için kaydırın."); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Y.Başlatma bekleyin."); + 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."); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max Sıc."); LSTR MSG_INFO_PSU = _UxGT("Güç Kaynağı"); @@ -474,9 +658,15 @@ namespace Language_tr { LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("Seçenekler:"); LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Daha Fazla Tasviye"); LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Baskıyı sürdür"); + LSTR MSG_FILAMENT_CHANGE_PURGE_CONTINUE = _UxGT("Temizle veya Devam?"); LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Nozul: "); LSTR MSG_RUNOUT_SENSOR = _UxGT("Runout Sensörü"); LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("Aşınma Farkı mm"); + LSTR MSG_RUNOUT_ENABLE = _UxGT("Fil. Sens. Aç"); + LSTR MSG_RUNOUT_ACTIVE = _UxGT("Fil. Sens. Aktif"); + LSTR MSG_INVERT_EXTRUDER = _UxGT("Ekstruder Ters Çevir"); + LSTR MSG_EXTRUDER_MIN_TEMP = _UxGT("Ekstruder Min Isı"); + LSTR MSG_FANCHECK = _UxGT("Fan Takosu Kontrolü"); LSTR MSG_KILL_HOMING_FAILED = _UxGT("Sıfırlama Başarısız"); LSTR MSG_LCD_PROBING_FAILED = _UxGT("Probing Başarısız"); @@ -502,7 +692,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"); @@ -526,36 +716,35 @@ namespace Language_tr { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Maze"); - // - // Filament Değişim ekranları 4 satırlı ekranda 3 satıra kadar gösterilir - // ...veya 3 satırlı ekranda 2 satıra kadar - // - #if LCD_HEIGHT >= 4 + LSTR MSG_BAD_PAGE = _UxGT("Hatalı sayfa dizini"); + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Kötü sayfa hızı"); + + LSTR MSG_EDIT_PASSWORD = _UxGT("Şifreyi Düzenle"); + LSTR MSG_LOGIN_REQUIRED = _UxGT("Giriş Gerekli"); + LSTR MSG_PASSWORD_SETTINGS = _UxGT("Şifre Ayarları"); + LSTR MSG_ENTER_DIGIT = _UxGT("Rakam girin"); + LSTR MSG_CHANGE_PASSWORD = _UxGT("Şifre Belirle/Düzenle"); + LSTR MSG_REMOVE_PASSWORD = _UxGT("Şifre Kaldır"); + LSTR MSG_PASSWORD_SET = _UxGT("Şifre "); + LSTR MSG_START_OVER = _UxGT("Yeniden Başla"); + LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Kaydetmeyi Unutma!"); + LSTR MSG_PASSWORD_REMOVED = _UxGT("Şifre Kaldırıldı"); + + // + // Filament Değişim ekranları 3 satırlı ekranda 2 satıra kadar + // + 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"); @@ -567,12 +756,83 @@ namespace Language_tr { LSTR MSG_BACKLASH = _UxGT("Ters Tepki"); LSTR MSG_BACKLASH_CORRECTION = _UxGT("Düzeltme"); LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Yumuşatma"); + + LSTR MSG_LEVEL_X_AXIS = _UxGT("Seviye X Ekseni"); + LSTR MSG_AUTO_CALIBRATE = _UxGT("Otomatik Kalibre Et"); + 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"); + + LSTR MSG_PROBE_WIZARD = _UxGT("Z Prob Sihirbazı"); + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Z Referansını Tarama"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Prob Konumuna Geçme"); + + LSTR MSG_XATC = _UxGT("X-Twist Sihirbazı"); + LSTR MSG_XATC_DONE = _UxGT("X-Twist Sihirbazı Bitti!"); + LSTR MSG_XATC_UPDATE_Z_OFFSET = _UxGT("Prob Z-Offset güncelle "); + + LSTR MSG_SOUND = _UxGT("Ses"); + + LSTR MSG_TOP_LEFT = _UxGT("Üst Sol"); + LSTR MSG_BOTTOM_LEFT = _UxGT("Alt Sol"); + LSTR MSG_TOP_RIGHT = _UxGT("Üst Sağ"); + LSTR MSG_BOTTOM_RIGHT = _UxGT("Alt Sağ"); + LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Kalibrasyon Tamamlandı"); + LSTR MSG_CALIBRATION_FAILED = _UxGT("Kalibrasyon Başarısız"); + + LSTR MSG_DRIVER_BACKWARD = _UxGT(" driver backward"); + + LSTR MSG_SD_CARD = _UxGT("SD Kart"); + LSTR MSG_USB_DISK = _UxGT("USB Disk"); + + LSTR MSG_HOST_SHUTDOWN = _UxGT("Host'u Kapat"); + + LSTR MSG_SHORT_DAY = _UxGT("g"); // One character only + LSTR MSG_SHORT_HOUR = _UxGT("s"); // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("d"); // One character only } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 16f3c95278..78e91b0484 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,23 +44,14 @@ 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 = _UxGT("Основне меню"); + LSTR MSG_MAIN_MENU = _UxGT("Основне меню"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Інші налаштування"); LSTR MSG_CONFIGURATION = _UxGT("Конфігурація"); LSTR MSG_RUN_AUTO_FILES = _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_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_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_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,36 +157,21 @@ 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"); - LSTR MSG_UBL_SET_TEMP_BED = LCD_STR_THERMOMETER _UxGT(" столу, ") LCD_STR_DEGREE "C"; - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" столу,") LCD_STR_DEGREE "C"; - LSTR MSG_UBL_SET_TEMP_HOTEND = LCD_STR_THERMOMETER _UxGT(" сопла, ") LCD_STR_DEGREE "C"; - LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" сопла,") LCD_STR_DEGREE "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_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_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("Жовтий"); @@ -313,13 +242,9 @@ 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"); - #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("Рівень червоного"); @@ -343,31 +268,21 @@ namespace Language_uk { LSTR MSG_MOVE_10MM = _UxGT("Рух 10мм"); LSTR MSG_MOVE_100MM = _UxGT("Рух 100mm"); LSTR MSG_SPEED = _UxGT("Швидкість"); - LSTR MSG_BED_Z = _UxGT("Z Столу"); - LSTR MSG_NOZZLE = _UxGT("Сопло, ") LCD_STR_DEGREE "C"; + LSTR MSG_MESH_Z_OFFSET = _UxGT("Z Столу"); + LSTR MSG_NOZZLE = _UxGT("Сопло, ") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_NOZZLE_N = _UxGT("Сопло ~"); LSTR MSG_NOZZLE_PARKED = _UxGT("Сопло запарковане"); LSTR MSG_NOZZLE_STANDBY = _UxGT("Сопло очікує"); - LSTR MSG_BED = _UxGT("Стіл, ") LCD_STR_DEGREE "C"; - LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE "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_BED = _UxGT("Стіл, ") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE _UxGT("C"); + 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,25 +354,16 @@ 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_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-картку"); @@ -480,7 +378,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("Друк"); @@ -507,7 +405,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-картки немає"); @@ -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,34 +496,20 @@ 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("ПРИНТЕР ЗУПИНЕНО"); LSTR MSG_PLEASE_RESET = _UxGT("Перезавантажте"); - 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_HEATING = _UxGT("Нагрівання..."); LSTR MSG_COOLING = _UxGT("Охолодження..."); 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"); @@ -658,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("Про плату"); @@ -681,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("Яскравість світла"); @@ -699,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("Синій"); @@ -735,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("Помилка зондування"); @@ -761,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 Вивантажити"); @@ -778,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_COMPONENT_N = _UxGT("Компонент ="); + 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("Змішати В-інструменти"); @@ -819,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("Потрібен логін"); @@ -838,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("Струм драйвера"); @@ -883,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("Звук"); @@ -913,12 +697,114 @@ namespace Language_uk { 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 } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 575191f50b..d37358219d 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; @@ -43,8 +43,8 @@ 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_MAIN = _UxGT("Chính"); // Main + 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 LSTR MSG_RUN_AUTO_FILES = _UxGT("Khởi chạy tự động"); // Autostart @@ -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 @@ -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 @@ -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 @@ -125,15 +125,13 @@ 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 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 @@ -207,23 +205,23 @@ namespace Language_vi { LSTR MSG_MOVE_10MM = _UxGT("Di chuyển 10mm"); // Move 10mm LSTR MSG_MOVE_100MM = _UxGT("Di chuyển 100mm"); // Move 100mm LSTR MSG_SPEED = _UxGT("Tốc độ"); // Speed - LSTR MSG_BED_Z = _UxGT("Z Bàn"); + 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 +231,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,165 +241,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_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_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 @@ -409,32 +404,53 @@ 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 +} + +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 6e2864ce6f..7f4d5af374 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -27,89 +27,89 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_zh_CN { - using namespace Language_en; // Inherit undefined strings from English +namespace LanguageNarrow_zh_CN { + 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 = _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" - #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_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_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,34 @@ 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" - #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_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_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_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" + 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 +156,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 +196,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_BED_Z = _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,68 +263,68 @@ 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_ERR_EEPROM_CRC = _UxGT("EEPROM CRC 错误"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index 错误"); - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version 错误"); + 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 版本 错误"); LSTR MSG_SETTINGS_STORED = _UxGT("设置已保存"); 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 +341,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_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 +385,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,99 +417,88 @@ 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_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_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" - #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" - 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"); @@ -535,7 +522,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("全梯度"); @@ -563,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("混合阈值"); @@ -608,12 +581,41 @@ namespace Language_zh_CN { LSTR MSG_HEATER_TIMEOUT = _UxGT("加热器超时"); 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 } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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 79d4ba75a7..b22a3cd1ac 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -27,88 +27,88 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_zh_TW { - using namespace Language_en; // Inherit undefined strings from English +namespace LanguageNarrow_zh_TW { + 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 = _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_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_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_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" + 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,73 @@ 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" - #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_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_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_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" + 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,308 +192,311 @@ 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_BED_Z = _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_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_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_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_INDEX = _UxGT("錯誤: EEPROM Index"); // "Err: EEPROM Index" - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("錯誤: EEPROM Version"); // "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_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_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" - #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" - 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 - // ...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("按下按鈕", "恢復列印")); //"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_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 + 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 } -#if FAN_COUNT == 1 - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED -#else - #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N - #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N -#endif +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" + 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" + #endif +} + +namespace Language_zh_TW { + using namespace LanguageTall_zh_TW; +} diff --git a/Marlin/src/lcd/lcdprint.cpp b/Marlin/src/lcd/lcdprint.cpp index 650824e553..912344c14f 100644 --- a/Marlin/src/lcd/lcdprint.cpp +++ b/Marlin/src/lcd/lcdprint.cpp @@ -37,10 +37,12 @@ * 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 + * + * 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; @@ -50,11 +52,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 bcf85cb693..9ba5147918 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" @@ -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/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 7ced3beddc..c1df6dbecd 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) +#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 @@ -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) @@ -68,10 +68,10 @@ 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]; + MString MarlinUI::status_message; uint8_t MarlinUI::alert_level; // = 0 #if HAS_STATUS_MESSAGE_TIMEOUT millis_t MarlinUI::status_message_expire_ms; // = 0 @@ -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 @@ -149,12 +149,12 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; const preheat_t &pre = material_preset[m]; TERN_(HAS_HOTEND, if (TEST(pmask, PT_HOTEND)) thermalManager.setTargetHotend(pre.hotend_temp, e)); TERN_(HAS_HEATED_BED, if (TEST(pmask, PT_BED)) thermalManager.setTargetBed(pre.bed_temp)); - //TERN_(HAS_HEATED_CHAMBER, if (TEST(pmask, PT_CHAMBER)) thermalManager.setTargetBed(pre.chamber_temp)); + //TERN_(HAS_HEATED_CHAMBER, if (TEST(pmask, PT_CHAMBER)) thermalManager.setTargetChamber(pre.chamber_temp)); TERN_(HAS_FAN, if (TEST(pmask, PT_FAN)) thermalManager.set_fan_speed(0, pre.fan_speed)); } #endif -#if EITHER(HAS_MARLINUI_MENU, EXTENSIBLE_UI) +#if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI) bool MarlinUI::lcd_clicked; #endif @@ -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 @@ -186,12 +186,17 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; #if LCD_BACKLIGHT_TIMEOUT_MINS constexpr uint8_t MarlinUI::backlight_timeout_min, MarlinUI::backlight_timeout_max; - uint8_t MarlinUI::backlight_timeout_minutes; // Initialized by settings.load() millis_t MarlinUI::backlight_off_ms = 0; + void MarlinUI::refresh_backlight_timeout() { backlight_off_ms = backlight_timeout_minutes ? millis() + backlight_timeout_minutes * 60UL * 1000UL : 0; - WRITE(LCD_BACKLIGHT_PIN, HIGH); + #ifdef NEOPIXEL_BKGD_INDEX_FIRST + neo.reset_background_color(); + neo.show(); + #elif PIN_EXISTS(LCD_BACKLIGHT) + WRITE(LCD_BACKLIGHT_PIN, HIGH); + #endif } #elif HAS_DISPLAY_SLEEP @@ -265,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 @@ -334,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 ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) millis_t MarlinUI::next_filament_display; // = 0 #endif @@ -346,10 +351,9 @@ void MarlinUI::init() { #if IS_DWIN_MARLINUI bool MarlinUI::did_first_redraw; - bool MarlinUI::old_is_printing; #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if MARLINUI_SCROLL_NAME uint8_t MarlinUI::filename_scroll_pos, MarlinUI::filename_scroll_max; @@ -398,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 @@ -407,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 @@ -420,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; @@ -488,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; @@ -502,7 +502,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); @@ -570,7 +570,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); @@ -637,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; } } @@ -666,8 +666,8 @@ 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 + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + pause_filament_display(); #endif goto_screen(menu_main); reinit_lcd(); // Revive a noisy shared SPI LCD @@ -698,7 +698,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(); @@ -772,10 +772,6 @@ void MarlinUI::init() { #endif } - //////////////////////////////////////////// - /////////////// Manual Move //////////////// - //////////////////////////////////////////// - #if HAS_MARLINUI_MENU ManualMove MarlinUI::manual_move{}; @@ -833,7 +829,7 @@ void MarlinUI::init() { // Apply a linear offset to a single axis if (axis == ALL_AXES_ENUM) destination = all_axes_destination; - else if (axis <= XYZE) { + else if (axis <= LOGICAL_AXES) { destination = current_position; destination[axis] += offset; } @@ -1042,7 +1038,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; @@ -1110,7 +1106,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--) { @@ -1177,7 +1173,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 @@ -1198,8 +1194,14 @@ void MarlinUI::init() { #endif #if LCD_BACKLIGHT_TIMEOUT_MINS + if (backlight_off_ms && ELAPSED(ms, backlight_off_ms)) { - WRITE(LCD_BACKLIGHT_PIN, LOW); // Backlight off + #ifdef NEOPIXEL_BKGD_INDEX_FIRST + neo.set_background_off(); + neo.show(); + #elif PIN_EXIST(LCD_BACKLIGHT) + WRITE(LCD_BACKLIGHT_PIN, LOW); // Backlight off + #endif backlight_off_ms = 0; } #elif HAS_DISPLAY_SLEEP @@ -1281,7 +1283,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); @@ -1345,7 +1347,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 ); @@ -1372,7 +1374,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); @@ -1405,7 +1407,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; @@ -1416,51 +1418,33 @@ 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 +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)); +} - //////////////////////////////////////////// - ////////////// 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 "!"); @@ -1475,9 +1459,9 @@ 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); + return set_status_no_expire(card.longest_filename()); #endif else if (print_job_timer.isRunning()) msg = GET_TEXT_F(MSG_PRINTING); @@ -1499,65 +1483,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; - - PGM_P const pstr = FTOP(fstr); - - // Since the message is encoded in UTF8 it must - // only be cut on a character boundary. - - // Get a pointer to the null terminator - PGM_P pend = pstr + strlen_P(pstr); - - // 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; - }; - - // 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'; - - TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(fstr)); - - finish_status(level > 0); + return false; } - void MarlinUI::set_alert_status(FSTR_P const fstr) { - set_status(fstr, 1); + /** + * @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 ? host_notify_P(ustr) : host_notify(ustr); + + MString<30> msg; + pgm ? msg.set_P(ustr) : msg.set(ustr); + status_message.set(&msg).utrunc(MAX_MESSAGE_LENGTH); + + finish_status(level > 0); // Persist if the status has a level + } + + /** + * @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; + + pgm ? host_notify_P(ustr) : host_notify(ustr); + + // Remove the last partial Unicode glyph, if any + (pgm ? status_message.set_P(ustr) : status_message.set(ustr)).utrunc(MAX_MESSAGE_LENGTH); + + finish_status(persist); + } + + /** + * @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_notify(status_message); finish_status(level > 0); } @@ -1572,7 +1576,7 @@ void MarlinUI::init() { #if HAS_WIRED_LCD - #if BASIC_PROGRESS_BAR || BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BASIC_PROGRESS_BAR || ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) const millis_t ms = millis(); #endif @@ -1583,34 +1587,34 @@ void MarlinUI::init() { #endif #endif - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - next_filament_display = ms + 5000UL; // Show status message for 5s + #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 TERN_(EXTENSIBLE_UI, ExtUI::onStatusChanged(status_message)); - TERN_(DWIN_CREALITY_LCD, DWIN_StatusChanged(status_message)); - TERN_(DWIN_LCD_PROUI, DWIN_CheckStatusMessage()); - TERN_(DWIN_CREALITY_LCD_JYERSUI, CrealityDWIN.Update_Status(status_message)); + TERN_(DWIN_CREALITY_LCD, dwinStatusChanged(status_message)); + TERN_(DWIN_LCD_PROUI, dwinCheckStatusMessage()); + TERN_(DWIN_CREALITY_LCD_JYERSUI, jyersDWIN.updateStatus(status_message)); } #if ENABLED(STATUS_MESSAGE_SCROLLING) 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; } @@ -1622,26 +1626,36 @@ 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_status(FSTR_P const fstr, const int8_t) { - TERN(HOST_PROMPT_SUPPORT, hostui.notify(fstr), UNUSED(fstr)); + void MarlinUI::_set_alert(const char * const cstr, const int8_t, const bool pgm) { + host_notify(cstr); } - void MarlinUI::status_printf(int8_t, FSTR_P const fstr, ...) { - 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_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_notify(msg); } #endif // !HAS_STATUS_MESSAGE #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 @@ -1652,10 +1666,10 @@ 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 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"))); @@ -1664,11 +1678,13 @@ void MarlinUI::init() { #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 @@ -1684,7 +1700,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(); @@ -1694,7 +1710,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 @@ -1703,13 +1719,13 @@ void MarlinUI::init() { #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; @@ -1739,7 +1755,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 ); @@ -1769,7 +1785,7 @@ void MarlinUI::init() { #endif // HAS_PRINT_PROGRESS -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #if ENABLED(EXTENSIBLE_UI) #include "extui/ui_api.h" @@ -1822,7 +1838,7 @@ void MarlinUI::init() { #endif } -#endif // SDSUPPORT +#endif // HAS_MEDIA #if HAS_MARLINUI_MENU void MarlinUI::reset_settings() { @@ -1833,7 +1849,7 @@ void MarlinUI::init() { #endif } - #if EITHER(BABYSTEP_ZPROBE_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; @@ -1848,7 +1864,8 @@ 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, const PauseMode mode/*=PAUSE_MODE_SAME*/, @@ -1898,18 +1915,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]; @@ -1917,11 +1938,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 827a71a29d..9c301e03f6 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 @@ -49,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 @@ -84,7 +86,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 @@ -228,7 +230,7 @@ public: #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() { @@ -242,13 +244,13 @@ public: // 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; } #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 @@ -293,23 +295,24 @@ public: } #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)); } 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(); @@ -355,9 +358,13 @@ public: 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); + #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 @@ -367,7 +374,7 @@ public: #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 @@ -380,24 +387,115 @@ public: 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 @@ -406,9 +504,12 @@ public: static void abort_print(); static void pause_print(); static void resume_print(); - static void flow_fault(); - #if BOTH(HAS_MARLINUI_MENU, PSU_CONTROL) + #if ENABLED(FLOWMETER_SAFETY) + static void flow_fault(); + #endif + + #if ALL(HAS_MARLINUI_MENU, PSU_CONTROL) static void poweroff(); #endif @@ -467,8 +568,9 @@ public: FORCE_INLINE static void refresh_contrast() { set_contrast(contrast); } #endif - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #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 #if HAS_TOUCH_SLEEP @@ -503,10 +605,9 @@ public: #if IS_DWIN_MARLINUI static bool did_first_redraw; - static bool old_is_printing; #endif - #if EITHER(BABYSTEP_ZPROBE_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 @@ -524,8 +625,13 @@ public: #endif - #if ENABLED(SDSUPPORT) - #if BOTH(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) + #if !HAS_WIRED_LCD + static void quick_feedback(const bool=true) {} + static void completion_feedback(const bool=true) {} + #endif + + #if HAS_MEDIA + #if ALL(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) #define MARLINUI_SCROLL_NAME 1 #endif #if MARLINUI_SCROLL_NAME @@ -637,7 +743,7 @@ public: #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; @@ -669,18 +775,13 @@ public: 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 // // 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 @@ -690,7 +791,7 @@ public: // // 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; } @@ -723,7 +824,7 @@ public: * 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); } @@ -733,7 +834,7 @@ public: 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 @@ -741,14 +842,14 @@ public: #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 } @@ -804,5 +905,7 @@ private: #define LCD_MESSAGE_F(S) ui.set_status(F(S)) #define LCD_MESSAGE(M) ui.set_status(GET_TEXT_F(M)) -#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/game/brickout.cpp b/Marlin/src/lcd/menu/game/brickout.cpp index d738250b60..078cbbccee 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() { @@ -117,13 +117,11 @@ void BrickoutGame::game_screen() { } else if (diff <= 3) { bdat.ballh += fixed_t(random(-64, 0)); - NOLESS(bdat.ballh, BTOF(-2)); - NOMORE(bdat.ballh, BTOF(2)); + LIMIT(bdat.ballh, BTOF(-2), BTOF(2)); } else if (diff >= PADDLE_W-1 - 3) { bdat.ballh += fixed_t(random( 0, 64)); - NOLESS(bdat.ballh, BTOF(-2)); - NOMORE(bdat.ballh, BTOF(2)); + LIMIT(bdat.ballh, BTOF(-2), BTOF(2)); } // Paddle hit after clearing the board? Reset the board. @@ -140,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 56e4c224dd..1cb3e5bf3f 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 85f752ee7d..0c77f69e1e 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 c88893a6e6..2a78c089cf 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.cpp b/Marlin/src/lcd/menu/menu.cpp index 6389383d28..a9574dd4d9 100644 --- a/Marlin/src/lcd/menu/menu.cpp +++ b/Marlin/src/lcd/menu/menu.cpp @@ -48,7 +48,7 @@ //////////////////////////////////////////// #if HAS_LEVELING && ANY(LCD_BED_TRAMMING, PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) - bool leveling_was_active; // = false + bool menu_leveling_was_active; // = false #endif #if ANY(PROBE_MANUALLY, MESH_BED_LEVELING, X_AXIS_TWIST_COMPENSATION) uint8_t manual_probe_index; // = 0 @@ -117,8 +117,7 @@ void MenuEditItemBase::edit_screen(strfunc_t strfunc, loadfunc_t loadfunc) { // Reset repeat_delay for Touch Buttons TERN_(HAS_TOUCH_BUTTONS, ui.repeat_delay = BUTTON_DELAY_EDIT); // Constrain ui.encoderPosition to 0 ... maxEditValue (calculated in encoder steps) - if (int32_t(ui.encoderPosition) < 0) ui.encoderPosition = 0; - if (int32_t(ui.encoderPosition) > maxEditValue) ui.encoderPosition = maxEditValue; + ui.encoderPosition = constrain(int32_t(ui.encoderPosition), 0, maxEditValue); // If drawing is flagged then redraw the (whole) edit screen if (ui.should_draw()) draw_edit_screen(strfunc(ui.encoderPosition + minEditValue)); @@ -139,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 @@ -177,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. @@ -272,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) { @@ -321,7 +313,7 @@ void scroll_screen(const uint8_t limit, const bool is_menu) { if (ui.should_draw()) { if (do_probe) { MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_ZPROBE_ZOFFSET), BABYSTEP_TO_STR(probe.offset.z)); - TERN_(BABYSTEP_ZPROBE_GFX_OVERLAY, ui.zoffset_overlay(probe.offset.z)); + TERN_(BABYSTEP_GFX_OVERLAY, ui.zoffset_overlay(probe.offset.z)); } else { #if ENABLED(BABYSTEP_HOTEND_Z_OFFSET) diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index befffe5f72..d4cbfd7a73 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) @@ -167,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 @@ -190,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: @@ -206,7 +207,7 @@ class MenuEditItemBase : public MenuItemBase { void menu_main(); void menu_move(); -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void menu_media(); #endif @@ -241,30 +242,23 @@ 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) 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; } #define STICKY_SCREEN(S) []{ ui.defer_status_screen(); ui.goto_screen(S); } #if HAS_LEVELING && ANY(LCD_BED_TRAMMING, PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) - extern bool leveling_was_active; + extern bool menu_leveling_was_active; #endif #if ANY(PROBE_MANUALLY, MESH_BED_LEVELING, X_AXIS_TWIST_COMPENSATION) diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 573cc94022..7edba3c4ee 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -313,7 +313,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 @@ -322,7 +322,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(...) @@ -339,7 +339,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); @@ -354,7 +354,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(); \ @@ -387,7 +387,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(); \ @@ -415,6 +415,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); \ @@ -422,7 +423,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); \ @@ -505,7 +505,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 @@ -520,9 +520,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 = @@ -563,7 +577,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(); @@ -599,7 +613,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); @@ -610,7 +624,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(); @@ -642,7 +656,7 @@ void menu_backlash(); ; LOOP_LOGICAL_AXES(a) { - if (a == C_AXIS || TERN0(HAS_EXTRUDERS, a == E_AXIS)) + if (TERN0(HAS_C_AXIS, a == C_AXIS) || TERN0(HAS_EXTRUDERS, a == E_AXIS)) EDIT_ITEM_FAST_N(float52sign, a, MSG_VN_JERK, &planner.max_jerk[a], 0.1f, max_jerk_edit[a]); else EDIT_ITEM_FAST_N(float3, a, MSG_VN_JERK, &planner.max_jerk[a], 1.0f, max_jerk_edit[a]); @@ -687,7 +701,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) @@ -726,7 +740,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/lcd/menu/menu_backlash.cpp b/Marlin/src/lcd/menu/menu_backlash.cpp index e71606fc12..a5f1f3746b 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" @@ -34,12 +34,12 @@ 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); }); - #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 @@ -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_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index 9505a82dd7..beb9342fb9 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" @@ -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. @@ -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); @@ -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 @@ -283,7 +283,7 @@ void menu_bed_leveling() { #else #define LCD_Z_OFFSET_TYPE float42_52 // Values from -99.99 to 99.99 #endif - EDIT_ITEM(LCD_Z_OFFSET_TYPE, MSG_BED_Z, &bedlevel.z_offset, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX); + EDIT_ITEM(LCD_Z_OFFSET_TYPE, MSG_MESH_Z_OFFSET, &bedlevel.z_offset, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX); #endif #if ENABLED(BABYSTEP_ZPROBE_OFFSET) @@ -292,8 +292,12 @@ 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_level_bed_corners); + SUBMENU(MSG_BED_TRAMMING, _lcd_bed_tramming); #endif #if ENABLED(EEPROM_SETTINGS) diff --git a/Marlin/src/lcd/menu/menu_bed_corners.cpp b/Marlin/src/lcd/menu/menu_bed_tramming.cpp similarity index 66% rename from Marlin/src/lcd/menu/menu_bed_corners.cpp rename to Marlin/src/lcd/menu/menu_bed_tramming.cpp index 0e0051e65d..b6b3e72124 100644 --- a/Marlin/src/lcd/menu/menu_bed_corners.cpp +++ b/Marlin/src/lcd/menu/menu_bed_tramming.cpp @@ -21,12 +21,12 @@ */ // -// Level Bed Corners menu +// Bed Tramming menu // #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,6 +43,10 @@ #define BED_TRAMMING_HEIGHT 0.0 #endif +#if ALL(HAS_STOWABLE_PROBE, BED_TRAMMING_USE_PROBE) && DISABLED(BLTOUCH) + #define NEEDS_PROBE_DEPLOY 1 +#endif + #if ENABLED(BED_TRAMMING_USE_PROBE) #include "../../module/probe.h" #include "../../module/endstops.h" @@ -54,7 +58,7 @@ #endif float last_z; int good_points; - bool corner_probing_done, wait_for_probe; + bool tramming_done, wait_for_probe; #if HAS_MARLINUI_U8GLIB #include "../dogm/marlinui_DOGM.h" @@ -66,6 +70,11 @@ static_assert(BED_TRAMMING_Z_HOP >= 0, "BED_TRAMMING_Z_HOP must be >= 0. Please update your configuration."); +#define LF 1 +#define RF 2 +#define RB 3 +#define LB 4 + #ifndef BED_TRAMMING_LEVELING_ORDER #define BED_TRAMMING_LEVELING_ORDER { LF, RF, LB, RB } // Default //#define BED_TRAMMING_LEVELING_ORDER { LF, LB, RF } // 3 hard-coded points @@ -75,18 +84,14 @@ static_assert(BED_TRAMMING_Z_HOP >= 0, "BED_TRAMMING_Z_HOP must be >= 0. Please //#define BED_TRAMMING_LEVELING_ORDER { LB, RB } // 3-Point tramming - Front #endif -#define LF 1 -#define RF 2 -#define RB 3 -#define LB 4 constexpr int lco[] = BED_TRAMMING_LEVELING_ORDER; -constexpr bool level_corners_3_points = COUNT(lco) == 2; -static_assert(level_corners_3_points || COUNT(lco) == 4, "BED_TRAMMING_LEVELING_ORDER must have exactly 2 or 4 corners."); +constexpr bool tramming_3_points = COUNT(lco) == 2; +static_assert(tramming_3_points || COUNT(lco) == 4, "BED_TRAMMING_LEVELING_ORDER must have exactly 2 or 4 corners."); constexpr int lcodiff = ABS(lco[0] - lco[1]); static_assert(COUNT(lco) == 4 || lcodiff == 1 || lcodiff == 3, "The first two BED_TRAMMING_LEVELING_ORDER corners must be on the same edge."); -constexpr int nr_edge_points = level_corners_3_points ? 3 : 4; +constexpr int nr_edge_points = tramming_3_points ? 3 : 4; constexpr int available_points = nr_edge_points + ENABLED(BED_TRAMMING_INCLUDE_CENTER); constexpr int center_index = TERN(BED_TRAMMING_INCLUDE_CENTER, available_points - 1, -1); constexpr float inset_lfrb[4] = BED_TRAMMING_INSET_LFRB; @@ -96,38 +101,38 @@ constexpr xy_pos_t lf { (X_MIN_BED) + inset_lfrb[0], (Y_MIN_BED) + inset_lfrb[1] static int8_t bed_corner; /** - * Select next corner coordinates + * Move to the next corner coordinates */ -static void _lcd_level_bed_corners_get_next_position() { +static void _lcd_goto_next_corner() { + xy_pos_t corner_point = lf; // Left front - if (level_corners_3_points) { + if (tramming_3_points) { if (bed_corner >= available_points) bed_corner = 0; // Above max position -> move back to first corner switch (bed_corner) { case 0 ... 1: // First two corners set explicitly by the configuration - current_position = lf; // Left front switch (lco[bed_corner]) { - case RF: current_position.x = rb.x; break; // Right Front - case RB: current_position = rb; break; // Right Back - case LB: current_position.y = rb.y; break; // Left Back + case RF: corner_point.x = rb.x; break; // Right Front + case RB: corner_point = rb; break; // Right Back + case LB: corner_point.y = rb.y; break; // Left Back } break; case 2: // Determine which edge to probe for 3rd point - current_position.set(lf.x + (rb.x - lf.x) / 2, lf.y + (rb.y - lf.y) / 2); - if ((lco[0] == LB && lco[1] == RB) || (lco[0] == RB && lco[1] == LB)) current_position.y = lf.y; // Front Center - if ((lco[0] == LF && lco[1] == LB) || (lco[0] == LB && lco[1] == LF)) current_position.x = rb.x; // Center Right - if ((lco[0] == RF && lco[1] == RB) || (lco[0] == RB && lco[1] == RF)) current_position.x = lf.x; // Left Center - if ((lco[0] == LF && lco[1] == RF) || (lco[0] == RF && lco[1] == LF)) current_position.y = rb.y; // Center Back - #if DISABLED(BED_TRAMMING_INCLUDE_CENTER) && ENABLED(BED_TRAMMING_USE_PROBE) + corner_point.set(lf.x + (rb.x - lf.x) / 2, lf.y + (rb.y - lf.y) / 2); + if ((lco[0] == LB && lco[1] == RB) || (lco[0] == RB && lco[1] == LB)) corner_point.y = lf.y; // Front Center + if ((lco[0] == LF && lco[1] == LB) || (lco[0] == LB && lco[1] == LF)) corner_point.x = rb.x; // Center Right + if ((lco[0] == RF && lco[1] == RB) || (lco[0] == RB && lco[1] == RF)) corner_point.x = lf.x; // Left Center + if ((lco[0] == LF && lco[1] == RF) || (lco[0] == RF && lco[1] == LF)) corner_point.y = rb.y; // Center Back + #if ENABLED(BED_TRAMMING_USE_PROBE) && DISABLED(BED_TRAMMING_INCLUDE_CENTER) bed_corner++; // Must increment the count to ensure it resets the loop if the 3rd point is out of tolerance #endif break; #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) case 3: - current_position.set(X_CENTER, Y_CENTER); + corner_point.set(X_CENTER, Y_CENTER); break; #endif } @@ -135,23 +140,29 @@ static void _lcd_level_bed_corners_get_next_position() { else { // Four-Corner Bed Tramming with optional center if (TERN0(BED_TRAMMING_INCLUDE_CENTER, bed_corner == center_index)) { - current_position.set(X_CENTER, Y_CENTER); - TERN_(BED_TRAMMING_USE_PROBE, good_points--); // Decrement to allow one additional probe point + corner_point.set(X_CENTER, Y_CENTER); } else { - current_position = lf; // Left front switch (lco[bed_corner]) { - case RF: current_position.x = rb.x; break; // Right front - case RB: current_position = rb; break; // Right rear - case LB: current_position.y = rb.y; break; // Left rear + case RF: corner_point.x = rb.x; break; // Right Front + case RB: corner_point = rb; break; // Right Back + case LB: corner_point.y = rb.y; break; // Left Back } } } + + float z = BED_TRAMMING_Z_HOP; + #if ALL(BED_TRAMMING_USE_PROBE, BLTOUCH) + z += bltouch.z_extra_clearance(); + #endif + line_to_z(z); + do_blocking_move_to_xy(DIFF_TERN(BED_TRAMMING_USE_PROBE, corner_point, probe.offset_xy), manual_feedrate_mm_s.x); + #if DISABLED(BED_TRAMMING_USE_PROBE) + line_to_z(BED_TRAMMING_HEIGHT); + if (++bed_corner >= available_points) bed_corner = 0; + #endif } -/** - * Level corners, starting in the front-left corner. - */ #if ENABLED(BED_TRAMMING_USE_PROBE) #define VALIDATE_POINT(X, Y, STR) static_assert(Probe::build_time::can_reach((X), (Y)), \ @@ -176,7 +187,7 @@ static void _lcd_level_bed_corners_get_next_position() { 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)); @@ -189,7 +200,7 @@ static void _lcd_level_bed_corners_get_next_position() { 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)); } } @@ -198,7 +209,7 @@ static void _lcd_level_bed_corners_get_next_position() { if (!ui.should_draw()) return; MenuItem_confirm::select_screen( GET_TEXT_F(MSG_BUTTON_DONE), GET_TEXT_F(MSG_BUTTON_SKIP) - , []{ corner_probing_done = true; wait_for_probe = false; } + , []{ tramming_done = true; wait_for_probe = false; } , []{ wait_for_probe = false; } , GET_TEXT_F(MSG_BED_TRAMMING_RAISE) ); @@ -207,37 +218,52 @@ static void _lcd_level_bed_corners_get_next_position() { void _lcd_draw_level_prompt() { if (!ui.should_draw()) return; MenuItem_confirm::select_screen( - GET_TEXT_F(TERN(HAS_LEVELING, MSG_BUTTON_LEVEL, MSG_BUTTON_DONE)), - TERN(HAS_LEVELING, GET_TEXT_F(MSG_BUTTON_BACK), nullptr) - , []{ queue.inject(TERN(HAS_LEVELING, F("G29N"), FPSTR(G28_STR))); ui.return_to_status(); } - , TERN(HAS_LEVELING, ui.goto_previous_screen_no_defer, []{}) + GET_TEXT_F(TERN(HAS_LEVELING, MSG_BUTTON_LEVEL, MSG_BUTTON_DONE)) + , TERN(HAS_LEVELING, GET_TEXT_F(MSG_BUTTON_BACK), nullptr) + , []{ + tramming_done = true; + queue.inject(TERN(HAS_LEVELING, F("G29N"), FPSTR(G28_STR))); + ui.goto_previous_screen_no_defer(); + } + , []{ + tramming_done = true; + TERN_(HAS_LEVELING, ui.goto_previous_screen_no_defer()); + TERN_(NEEDS_PROBE_DEPLOY, probe.stow(true)); + } , GET_TEXT_F(MSG_BED_TRAMMING_IN_RANGE) ); } - bool _lcd_level_bed_corners_probe(bool verify=false) { - if (verify) do_blocking_move_to_z(current_position.z + BED_TRAMMING_Z_HOP); // do clearance if needed + bool _lcd_bed_tramming_probe(const bool verify=false) { + if (verify) line_to_z(BED_TRAMMING_Z_HOP); // do clearance if needed TERN_(BLTOUCH, if (!bltouch.high_speed_mode) bltouch.deploy()); // Deploy in LOW SPEED MODE on every probe action do_blocking_move_to_z(last_z - BED_TRAMMING_PROBE_TOLERANCE, MMM_TO_MMS(Z_PROBE_FEEDRATE_SLOW)); // Move down to lower tolerance if (TEST(endstops.trigger_state(), Z_MIN_PROBE)) { // check if probe triggered endstops.hit_on_purpose(); set_current_from_steppers_for_axis(Z_AXIS); sync_plan_position(); + TERN_(BLTOUCH, if (!bltouch.high_speed_mode) bltouch.stow()); // Stow in LOW SPEED MODE on every trigger + // Triggered outside tolerance range? if (ABS(current_position.z - last_z) > BED_TRAMMING_PROBE_TOLERANCE) { last_z = current_position.z; // Above tolerance. Set a new Z for subsequent corners. good_points = 0; // ...and start over } + + // Raise the probe after the last point to give clearance for stow + if (TERN0(NEEDS_PROBE_DEPLOY, good_points == nr_edge_points - 1)) + line_to_z(BED_TRAMMING_Z_HOP); + return true; // probe triggered } - do_blocking_move_to_z(last_z); // go back to tolerance middle point before raise + line_to_z(last_z); // go back to tolerance middle point before raise return false; // probe not triggered } - bool _lcd_level_bed_corners_raise() { + bool _lcd_bed_tramming_raise() { bool probe_triggered = false; - corner_probing_done = false; + tramming_done = false; wait_for_probe = true; ui.goto_screen(_lcd_draw_raise); // show raise screen ui.set_selection(true); @@ -264,25 +290,21 @@ static void _lcd_level_bed_corners_get_next_position() { ui.refresh(LCDVIEW_REDRAW_NOW); _lcd_draw_probing(); // update screen with # of good points - do_blocking_move_to_z(current_position.z + BED_TRAMMING_Z_HOP + TERN0(BLTOUCH, bltouch.z_extra_clearance())); // clearance - - _lcd_level_bed_corners_get_next_position(); // Select next corner coordinates - current_position -= probe.offset_xy; // Account for probe offsets - do_blocking_move_to_xy(current_position); // Goto corner + _lcd_goto_next_corner(); // Goto corner TERN_(BLTOUCH, if (bltouch.high_speed_mode) bltouch.deploy()); // Deploy in HIGH SPEED MODE - if (!_lcd_level_bed_corners_probe()) { // Probe down to tolerance - if (_lcd_level_bed_corners_raise()) { // Prompt user to raise bed if needed - #if ENABLED(BED_TRAMMING_VERIFY_RAISED) // Verify - while (!_lcd_level_bed_corners_probe(true)) { // Loop while corner verified - if (!_lcd_level_bed_corners_raise()) { // Prompt user to raise bed if needed - if (corner_probing_done) return; // Done was selected + if (!_lcd_bed_tramming_probe()) { // Probe down to tolerance + if (_lcd_bed_tramming_raise()) { // Prompt user to raise bed if needed + #if ENABLED(BED_TRAMMING_VERIFY_RAISED) // Verify + while (!_lcd_bed_tramming_probe(true)) { // Loop while corner verified + if (!_lcd_bed_tramming_raise()) { // Prompt user to raise bed if needed + if (tramming_done) return; // Done was selected break; // Skip was selected } } #endif } - else if (corner_probing_done) // Done was selected + else if (tramming_done) // Done was selected return; } @@ -293,9 +315,9 @@ static void _lcd_level_bed_corners_get_next_position() { #if ENABLED(BLTOUCH) if (bltouch.high_speed_mode) { - // In HIGH SPEED MODE do clearance and stow at the very end - do_blocking_move_to_z(current_position.z + BED_TRAMMING_Z_HOP); + // In HIGH SPEED MODE do stow and clearance at the very end bltouch.stow(); + do_z_clearance(BED_TRAMMING_Z_HOP); } #endif @@ -303,30 +325,29 @@ static void _lcd_level_bed_corners_get_next_position() { ui.set_selection(true); } -#else // !BED_TRAMMING_USE_PROBE +#endif // BED_TRAMMING_USE_PROBE - static void _lcd_goto_next_corner() { - line_to_z(BED_TRAMMING_Z_HOP); +void _lcd_bed_tramming_homing() { + if (!all_axes_homed() && TERN1(NEEDS_PROBE_DEPLOY, probe.deploy())) return; - // Select next corner coordinates - _lcd_level_bed_corners_get_next_position(); + #if HAS_LEVELING // Disable leveling so the planner won't mess with us + menu_leveling_was_active = planner.leveling_active; + set_bed_leveling_enabled(false); + #endif - line_to_current_position(manual_feedrate_mm_s.x); - line_to_z(BED_TRAMMING_HEIGHT); - if (++bed_corner >= available_points) bed_corner = 0; - } - -#endif // !BED_TRAMMING_USE_PROBE - -static void _lcd_level_bed_corners_homing() { - _lcd_draw_homing(); - if (!all_axes_homed()) return; #if ENABLED(BED_TRAMMING_USE_PROBE) - _lcd_test_corners(); - if (corner_probing_done) ui.goto_previous_screen_no_defer(); - TERN_(HAS_LEVELING, set_bed_leveling_enabled(leveling_was_active)); - endstops.enable_z_probe(false); - #else + + if (!tramming_done) _lcd_test_corners(); // May set tramming_done + if (tramming_done) { + ui.goto_previous_screen_no_defer(); + TERN_(NEEDS_PROBE_DEPLOY, probe.stow(true)); + } + tramming_done = true; + TERN_(HAS_LEVELING, set_bed_leveling_enabled(menu_leveling_was_active)); + TERN_(BLTOUCH, endstops.enable_z_probe(false)); + + #else // !BED_TRAMMING_USE_PROBE + bed_corner = 0; ui.goto_screen([]{ MenuItem_confirm::select_screen( @@ -334,7 +355,7 @@ static void _lcd_level_bed_corners_homing() { , _lcd_goto_next_corner , []{ line_to_z(BED_TRAMMING_Z_HOP); // Raise Z off the bed when done - TERN_(HAS_LEVELING, set_bed_leveling_enabled(leveling_was_active)); + TERN_(HAS_LEVELING, set_bed_leveling_enabled(menu_leveling_was_active)); ui.goto_previous_screen_no_defer(); } , GET_TEXT_F(TERN(BED_TRAMMING_INCLUDE_CENTER, MSG_LEVEL_BED_NEXT_POINT, MSG_NEXT_CORNER)) @@ -343,23 +364,32 @@ static void _lcd_level_bed_corners_homing() { }); ui.set_selection(true); _lcd_goto_next_corner(); - #endif + + #endif // !BED_TRAMMING_USE_PROBE } -void _lcd_level_bed_corners() { - ui.defer_status_screen(); - if (!all_axes_trusted()) { - set_all_unhomed(); - queue.inject_P(G28_STR); +#if NEEDS_PROBE_DEPLOY + + void deploy_probe() { + if (!tramming_done) probe.deploy(true); + ui.goto_screen([]{ + if (ui.should_draw()) MenuItem_static::draw((LCD_HEIGHT - 1) / 2, GET_TEXT_F(MSG_MANUAL_DEPLOY)); + if (!probe.deploy() && !tramming_done) _lcd_bed_tramming_homing(); + }); } - // Disable leveling so the planner won't mess with us - #if HAS_LEVELING - leveling_was_active = planner.leveling_active; - set_bed_leveling_enabled(false); - #endif +#endif // NEEDS_PROBE_DEPLOY - ui.goto_screen(_lcd_level_bed_corners_homing); +void _lcd_bed_tramming() { + TERN_(BED_TRAMMING_USE_PROBE, tramming_done = false); + ui.defer_status_screen(); + set_all_unhomed(); + queue.inject(TERN(CAN_SET_LEVELING_AFTER_G28, F("G28L0"), FPSTR(G28_STR))); + ui.goto_screen([]{ + _lcd_draw_homing(); + if (!all_axes_homed()) return; + TERN(NEEDS_PROBE_DEPLOY, deploy_probe(), ui.goto_screen(_lcd_bed_tramming_homing)); + }); } #endif // HAS_MARLINUI_MENU && LCD_BED_TRAMMING diff --git a/Marlin/src/lcd/menu/menu_cancelobject.cpp b/Marlin/src/lcd/menu/menu_cancelobject.cpp index b2d36bf8c3..bcbd90ee3a 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" @@ -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 943870dfac..fc62518663 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 @@ -55,19 +59,25 @@ #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 +#endif + +//#define DEBUG_OUT 1 #include "../../core/debug_out.h" -#define HAS_DEBUG_MENU ENABLED(LCD_PROGRESS_BAR_TEST) - 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 #if ENABLED(LCD_PROGRESS_BAR_TEST) - #include "../lcdprint.h" - static void progress_bar_test() { static int8_t bar_percent = 0; if (ui.use_click()) { @@ -90,6 +100,46 @@ void menu_advanced_settings(); #endif // LCD_PROGRESS_BAR_TEST +#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(L,S) __STOP_ITEM(F(L), S) + #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() { + 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); + + 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 + #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 +151,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 +215,7 @@ void menu_advanced_settings(); } #endif -#endif +#endif // HAS_MULTI_EXTRUDER #if HAS_HOTEND_OFFSET #include "../../module/motion.h" @@ -192,6 +246,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() { @@ -222,15 +294,9 @@ 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") ")"); - char mess[21]; - strcpy_P(mess, PSTR("BLTouch Mode: ")); - strcpy_P(&mess[15], bltouch.od_5v_mode ? mode1 : mode0); - ui.set_status(mess); + 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), ")"); + ui.set_status(MString<18>(F("BLTouch Mode: "), bltouch.od_5v_mode ? mode1 : mode0)); ui.return_to_status(); } #endif @@ -243,7 +309,7 @@ void menu_advanced_settings(); ACTION_ITEM(MSG_BLTOUCH_DEPLOY, bltouch._deploy); ACTION_ITEM(MSG_BLTOUCH_STOW, bltouch._stow); ACTION_ITEM(MSG_BLTOUCH_SW_MODE, bltouch._set_SW_mode); - #ifdef BLTOUCH_HS_MODE + #if HAS_BLTOUCH_HS_MODE EDIT_ITEM(bool, MSG_BLTOUCH_SPEED_MODE, &bltouch.high_speed_mode); #endif #if ENABLED(BLTOUCH_LCD_VOLTAGE_MENU) @@ -360,7 +426,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 +538,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 @@ -507,7 +573,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 @@ -528,6 +594,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 // @@ -572,7 +642,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_delta_calibrate.cpp b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp index 94663744ea..c7da12a61e 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" @@ -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.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(); return current_position.z; @@ -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 c6436bafc3..37041e26ae 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" @@ -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, @@ -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 @@ -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_game.cpp b/Marlin/src/lcd/menu/menu_game.cpp index fa56d7eee2..750c3c7e82 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 101861074d..59ed52e6f1 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" @@ -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(); @@ -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_item.h b/Marlin/src/lcd/menu/menu_item.h index 5cc5f11142..ecc1ac4047 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 @@ -368,19 +369,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. +// PSTRING_ITEM is like STATIC_ITEM +// but also takes a PSTR and style. -#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); \ +#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) @@ -537,7 +548,7 @@ class MenuItem_bool : public MenuEditItemBase { #define YESNO_ITEM_N(N,LABEL, V...) YESNO_ITEM_N_F(N, GET_TEXT_F(LABEL), ##V) #if ENABLED(LCD_BED_TRAMMING) - void _lcd_level_bed_corners(); + void _lcd_bed_tramming(); #endif #if HAS_FAN @@ -555,6 +566,14 @@ class MenuItem_bool : public MenuEditItemBase { #define EDIT_EXTRA_FAN_SPEED(...) #endif + #if FAN_COUNT == 1 + #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED + #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED + #else + #define MSG_FIRST_FAN_SPEED MSG_FAN_SPEED_N + #define MSG_EXTRA_FIRST_FAN_SPEED MSG_EXTRA_FAN_SPEED_N + #endif + #define _FAN_EDIT_ITEMS(F,L) do{ \ editable.uint8 = thermalManager.fan_speed[F]; \ EDIT_ITEM_FAST_N(percent, F, MSG_##L, &editable.uint8, 0, 255, on_fan_update); \ @@ -562,10 +581,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_job_recovery.cpp b/Marlin/src/lcd/menu/menu_job_recovery.cpp index 6329c58397..b2276aeb0c 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_language.cpp b/Marlin/src/lcd/menu/menu_language.cpp index 2ea4359c6b..c92b860950 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" @@ -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); }); @@ -56,4 +56,4 @@ void menu_language() { END_MENU(); } -#endif // HAS_MULTI_LANGUAGE +#endif // HAS_MENU_MULTI_LANGUAGE diff --git a/Marlin/src/lcd/menu/menu_led.cpp b/Marlin/src/lcd/menu/menu_led.cpp index 867e4dafa9..c7390b98cb 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" @@ -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 81b36d2b01..1bf380e360 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 ANY(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 @@ -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 @@ -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 @@ -114,7 +118,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)) @@ -234,7 +238,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 +247,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 +277,7 @@ void menu_main() { #endif } else { - #if BOTH(SDSUPPORT, 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 @@ -303,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 } @@ -326,7 +332,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 +372,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 @@ -388,7 +394,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 @@ -418,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/Marlin/src/lcd/menu/menu_media.cpp b/Marlin/src/lcd/menu/menu_media.cpp index 20ef6e3d19..26f7a0517d 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 ALL(HAS_MARLINUI_MENU, HAS_MEDIA) #include "menu_item.h" #include "../../sd/cardreader.h" @@ -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 @@ -109,17 +106,17 @@ void menu_media_filelist() { ui.encoder_direction_menus(); #if HAS_MARLINUI_U8GLIB - static uint16_t fileCnt; - if (ui.first_page) fileCnt = card.get_num_Files(); + static int16_t fileCnt; + if (ui.first_page) fileCnt = card.get_num_items(); #else - const uint16_t fileCnt = card.get_num_Files(); + const int16_t fileCnt = card.get_num_items(); #endif START_MENU(); #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 @@ -129,9 +126,9 @@ void menu_media_filelist() { else if (card.isMounted()) ACTION_ITEM_F(F(LCD_STR_FOLDER " .."), lcd_sd_updir); - if (ui.should_draw()) for (uint16_t i = 0; i < fileCnt; i++) { + if (ui.should_draw()) for (int16_t i = 0; i < fileCnt; i++) { if (_menuLineNr == _thisItemNr) { - card.getfilename_sorted(SD_ORDER(i, fileCnt)); + card.selectFileByIndexSorted(i); if (card.flag.filenameIsDir) MENU_ITEM(sdfolder, MSG_MEDIA_MENU, card); else @@ -146,7 +143,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 @@ -161,4 +158,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/menu/menu_mixer.cpp b/Marlin/src/lcd/menu/menu_mixer.cpp index feb4c59f18..21c18c8209 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" @@ -50,8 +50,7 @@ if (ui.encoderPosition) { zvar += float(int32_t(ui.encoderPosition)) * 0.1; ui.encoderPosition = 0; - NOLESS(zvar, 0); - NOMORE(zvar, Z_MAX_POS); + LIMIT(zvar, 0, Z_MAX_POS); } if (ui.should_draw()) { @@ -113,7 +112,7 @@ static uint8_t v_index; #if HAS_DUAL_MIXING void _lcd_draw_mix(const uint8_t y) { char tmp[20]; // "100%_100%" - sprintf_P(tmp, PSTR("%3d%% %3d%%"), int(mixer.mix[0]), int(mixer.mix[1])); + sprintf_P(tmp, PSTR("%3d%% %3d%% "), int(mixer.mix[0]), int(mixer.mix[1])); SETCURSOR(2, y); lcd_put_u8str(GET_TEXT_F(MSG_MIX)); SETCURSOR_RJ(10, y); lcd_put_u8str(tmp); } @@ -171,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); @@ -226,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 a2412b0f6a..c9d163357b 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" @@ -33,22 +33,21 @@ // 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); + EXTRUDER_LOOP() _mmu2_load_to_feeder(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(); } @@ -104,7 +103,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); @@ -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/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index 6ce75d59ae..67fcbdd851 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) @@ -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,14 +207,16 @@ 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 // 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 @@ -232,7 +234,7 @@ void menu_move() { else GCODES_ITEM(MSG_AUTO_HOME, FPSTR(G28_STR)); - #if ANY(SWITCHING_EXTRUDER, SWITCHING_NOZZLE, MAGNETIC_SWITCHING_TOOLHEAD) + #if ANY(HAS_SWITCHING_EXTRUDER, HAS_SWITCHING_NOZZLE, MAGNETIC_SWITCHING_TOOLHEAD) #if EXTRUDERS >= 4 switch (active_extruder) { @@ -265,7 +267,7 @@ void menu_move() { #define SUBMENU_MOVE_E(N) SUBMENU_N(N, MSG_MOVE_EN, []{ _menu_move_distance(E_AXIS, []{ lcd_move_e(N); }, N); }); - #if EITHER(SWITCHING_EXTRUDER, SWITCHING_NOZZLE) + #if HAS_SWITCHING_EXTRUDER || HAS_SWITCHING_NOZZLE // ...and the non-switching #if E_MANUAL == 7 || E_MANUAL == 5 || E_MANUAL == 3 @@ -311,13 +313,142 @@ 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(); // // ^ Main // - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Move Axis @@ -338,25 +469,10 @@ void menu_motion() { #endif // - // Auto-calibration + // M493 - Fixed-Time Motion // - #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")); + #if ENABLED(FT_MOTION_MENU) + if (!is_busy) SUBMENU(MSG_FIXED_TIME_MOTION, menu_ft_motion); #endif // @@ -367,19 +483,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 +513,49 @@ void menu_motion() { #endif - #if ENABLED(LCD_BED_TRAMMING) && DISABLED(LCD_BED_LEVELING) - SUBMENU(MSG_BED_TRAMMING, _lcd_level_bed_corners); + // + // 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 ANY(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 // 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 0000000000..f1ed92d0d5 --- /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/lcd/menu/menu_password.cpp b/Marlin/src/lcd/menu/menu_password.cpp index b50194d60d..33d4231cd5 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" @@ -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_power_monitor.cpp b/Marlin/src/lcd/menu/menu_power_monitor.cpp index 3cd9909e5c..3d718c108a 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_probe_offset.cpp b/Marlin/src/lcd/menu/menu_probe_offset.cpp index c7cbebaade..82bf23ca84 100644 --- a/Marlin/src/lcd/menu/menu_probe_offset.cpp +++ b/Marlin/src/lcd/menu/menu_probe_offset.cpp @@ -44,14 +44,10 @@ 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); - TERN_(HAS_LEVELING, set_bed_leveling_enabled(leveling_was_active)); + TERN_(HAS_LEVELING, set_bed_leveling_enabled(menu_leveling_was_active)); ui.goto_previous_screen_no_defer(); } @@ -63,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); }); @@ -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 }); @@ -106,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 @@ -119,7 +115,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; @@ -143,7 +139,7 @@ void goto_probe_offset_wizard() { // Store Bed-Leveling-State and disable #if HAS_LEVELING - leveling_was_active = planner.leveling_active; + menu_leveling_was_active = planner.leveling_active; set_bed_leveling_enabled(false); #endif diff --git a/Marlin/src/lcd/menu/menu_spindle_laser.cpp b/Marlin/src/lcd/menu/menu_spindle_laser.cpp index de16316987..e053361fb0 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 2e5b8f1e54..710cef6468 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 @@ -162,7 +162,7 @@ void menu_temperature() { #endif START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Nozzle: @@ -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 @@ -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); @@ -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); @@ -291,9 +291,9 @@ void menu_temperature() { void menu_preheat_only() { START_MENU(); - BACK_ITEM(MSG_MAIN); + 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_touch_screen.cpp b/Marlin/src/lcd/menu/menu_touch_screen.cpp index 130308dadf..93380cb0e0 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.cpp b/Marlin/src/lcd/menu/menu_tramming_wizard.cpp similarity index 90% rename from Marlin/src/lcd/menu/menu_tramming.cpp rename to Marlin/src/lcd/menu/menu_tramming_wizard.cpp index 1dd8a1cab6..e0f88ea1bb 100644 --- a/Marlin/src/lcd/menu/menu_tramming.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" @@ -53,9 +53,7 @@ static int8_t reference_index; // = 0 #endif static bool probe_single_point() { - do_blocking_move_to_z(TERN(BLTOUCH, Z_CLEARANCE_DEPLOY_PROBE, Z_CLEARANCE_BETWEEN_PROBES)); - // Stow after each point with BLTouch "HIGH SPEED" mode for push-pin safety - const float z_probed_height = probe.probe_at_point(tramming_points[tram_index], TERN0(BLTOUCH, bltouch.high_speed_mode) ? PROBE_PT_STOW : 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/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 423af4e5a1..c36ac013b8 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: @@ -119,8 +119,8 @@ void menu_tune() { // // Manual bed leveling, Bed Z: // - #if BOTH(MESH_BED_LEVELING, LCD_BED_LEVELING) - EDIT_ITEM(float43, MSG_BED_Z, &bedlevel.z_offset, -1, 1); + #if ALL(MESH_BED_LEVELING, LCD_BED_LEVELING) + EDIT_ITEM(float43, MSG_MESH_Z_OFFSET, &bedlevel.z_offset, -1, 1); #endif // @@ -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 @@ -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 + #if FAN_IS_M106ABLE(1) FAN_EDIT_ITEMS(1); #elif SNFAN(1) singlenozzle_item(1); #endif - #if HAS_FAN2 + #if FAN_IS_M106ABLE(2) FAN_EDIT_ITEMS(2); #elif SNFAN(2) singlenozzle_item(2); #endif - #if HAS_FAN3 + #if FAN_IS_M106ABLE(3) FAN_EDIT_ITEMS(3); #elif SNFAN(3) singlenozzle_item(3); #endif - #if HAS_FAN4 + #if FAN_IS_M106ABLE(4) FAN_EDIT_ITEMS(4); #elif SNFAN(4) singlenozzle_item(4); #endif - #if HAS_FAN5 + #if FAN_IS_M106ABLE(5) FAN_EDIT_ITEMS(5); #elif SNFAN(5) singlenozzle_item(5); #endif - #if HAS_FAN6 + #if FAN_IS_M106ABLE(6) FAN_EDIT_ITEMS(6); #elif SNFAN(6) singlenozzle_item(6); #endif - #if HAS_FAN7 + #if FAN_IS_M106ABLE(7) FAN_EDIT_ITEMS(7); #elif SNFAN(7) singlenozzle_item(7); diff --git a/Marlin/src/lcd/menu/menu_ubl.cpp b/Marlin/src/lcd/menu/menu_ubl.cpp index d6f42faa55..c8fd33d26d 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 a069b427c6..6162a5e30d 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -46,7 +46,7 @@ float measured_z, z_offset; void xatc_wizard_done() { if (!ui.wait_for_move) { xatc.print_points(); - set_bed_leveling_enabled(leveling_was_active); + set_bed_leveling_enabled(menu_leveling_was_active); SET_SOFT_ENDSTOP_LOOSE(false); ui.goto_screen(menu_advanced_settings); } @@ -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); @@ -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 @@ -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); } @@ -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 } @@ -199,7 +199,7 @@ void xatc_wizard_homing() { void xatc_wizard_continue() { // Store Bed-Leveling-State and disable #if HAS_LEVELING - leveling_was_active = planner.leveling_active; + menu_leveling_was_active = planner.leveling_active; set_bed_leveling_enabled(false); #endif 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 0000000000..6bb4b1a439 Binary files /dev/null and b/Marlin/src/lcd/tft/bitmaps/time_elapsed.bmp differ 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 0000000000..da2d37b56b --- /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 0000000000..36e40c9c57 Binary files /dev/null and b/Marlin/src/lcd/tft/bitmaps/time_remaining.bmp differ 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 0000000000..ff4cdb8e24 --- /dev/null +++ b/Marlin/src/lcd/tft/bitmaps/time_remaining.svg @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index 64cb29ade6..4bded72251 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -26,31 +26,33 @@ #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; +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; +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; + // 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::Continue() { +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() { +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,59 +69,119 @@ 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) { + 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 *)pGlyph) + sizeof(glyph_t), &color); break; case FONT_MARLIN_GLYPHS_2BPP: - for (uint8_t i = 0; i < 3; i++) - colors[i] = gradient(color, background_color, ((i+1) << 8) / 3); - 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 *)pGlyph) + 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) { - uint16_t *data = (uint16_t *)Images[image].data; +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; - colorMode_t color_mode = Images[image].colorMode; + 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) { +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; @@ -134,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++) { @@ -143,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); } @@ -157,12 +219,12 @@ 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++) { - 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; @@ -176,18 +238,18 @@ 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++) { - 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; } } } -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 1c9c7bb13a..e97da2f23b 100644 --- a/Marlin/src/lcd/tft/canvas.h +++ b/Marlin/src/lcd/tft/canvas.h @@ -21,39 +21,38 @@ */ #pragma once -#include "tft_color.h" #include "tft_string.h" #include "tft_image.h" #include "tft.h" #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/fontdata/Helvetica/helvetica_14.cpp b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp similarity index 96% rename from Marlin/src/lcd/tft/fontdata/Helvetica/helvetica_14.cpp rename to Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp index 44e7d40a27..fef4d9b9fa 100644 --- a/Marlin/src/lcd/tft/fontdata/Helvetica/helvetica_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp @@ -20,25 +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" -#if HAS_GRAPHICAL_TFT +#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 🌡 @@ -47,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 5b4570d010..40012d7501 100644 --- a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp @@ -20,25 +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" -#if HAS_GRAPHICAL_TFT +#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 🌡 @@ -48,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 9a54351762..924033db51 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 3db57d8ebe..38960aae7d 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 f02086646c..ddda8029a5 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 cbb789870d..e8ebafb2b3 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 ae167c2c08..c2d932784a 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 7d69f85f4a..c9cee89c78 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 4ff175700f..e2480d02e2 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 01c7638e37..d40ed58a96 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 07f3359dc4..1dd62b795f 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,20 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 63ea2fc74b..4b63aebf18 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 dd6603f682..42e50e1814 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 1369901338..95441c443c 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 0da231be38..0c96bd8857 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 36ca1df547..628dc214f6 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 ff3ef3f843..1f2b966c8f 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 a159a26947..8da7297cd9 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 26e6799a89..bf9698000d 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 0617ee2758..23fb2b27c6 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 cd9c617c75..a720bf0a3f 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 ef20a4bcc6..9a2c2eb9b4 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,20 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 177e741825..7aa67765d8 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 16cee9a7a2..099a5b7fcb 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 c04f1c6d2d..407fc3b5e2 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 417db3946f..fd4fa1a659 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 413141c3b1..707963c946 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 f4dcd225c8..155e93684f 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 3f8d4f761a..d833702914 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 7f030d656d..436989afc8 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 00d90611fd..eba3fb1e08 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 b5999beb72..a4accd8307 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 5d27793082..9aa12ceb07 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,20 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 e5fd6077cc..3f5ee91514 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 1f77fbe874..354e7bd29d 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 0000000000..fd49cf1d29 --- /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 0000000000..dcf12a3935 --- /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 0000000000..312da738b8 --- /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 0000000000..fcb06f5a10 --- /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 0000000000..8683316b67 --- /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 0000000000..d0b9e1fa8c --- /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 0000000000..fe1b4bdc12 --- /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 0000000000..607d9118ae --- /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 0000000000..cd343edcdb --- /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 0000000000..b2d1dd9e99 --- /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 0000000000..d291f24576 --- /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 0000000000..f94284c758 --- /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 0000000000..384408c9d3 --- /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 0000000000..c621bdfc9e --- /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 0000000000..4767eed15a --- /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 0000000000..7fd80a5ebf --- /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 0000000000..02cce9dcca --- /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 0000000000..16b5e7a8f9 --- /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 0000000000..7228cff311 --- /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 0000000000..e07f03b5aa --- /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 0000000000..e43aee93f3 --- /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 0000000000..6896d15444 --- /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 0000000000..e2e797a26b --- /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 0000000000..246f9fb60f --- /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 0000000000..00448f3064 --- /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 0000000000..015ed9f794 --- /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 0000000000..b04da12e00 --- /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 0000000000..462639e540 --- /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 0000000000..d3e85b6375 --- /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 0000000000..844852751e --- /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 0000000000..8bbd87b0b5 --- /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 0000000000..a88c195cbf --- /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 0000000000..8ebd4d7e83 --- /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 0000000000..ff7b51c9ee --- /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 0000000000..fddcecf829 --- /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 0000000000..68aa80e8b7 --- /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 0000000000..ffdd5c0b83 --- /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 0000000000..5ecf0161d9 --- /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 0000000000..75fec1e45f --- /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 0000000000..24b1d05c0e --- /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 0000000000..9d035f2454 --- /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 0000000000..de4a74bba2 --- /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 0000000000..a19d230e23 --- /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 0000000000..1de6186228 --- /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 d22ee15a5f..7f04f045f6 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp @@ -20,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 d4965cc061..6c8d86ae2c 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 013a015cca..f9128dc84b 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 1febf8b5b3..06552be372 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 ae2819dba1..67f81299c7 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 e4516acac2..0b226b2034 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 6059c6ccdd..6283914108 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 b971dc92a0..7b0ef1630a 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 9f804f7d69..b6569f644a 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,20 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 5f820cf8fc..14521a4196 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 66ee7f01f6..dfc0bfd1b7 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 9d6847722f..92a32bf2b1 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp @@ -20,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 1e5d228053..47a072cfc0 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 751b60c43c..67dd5da875 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 fee79c3fae..4116f99c4a 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 f809a20259..22dafdc2dd 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 7f750e7fa2..ada872e9f7 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 49b8001826..06d5132fc2 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 970d30bec7..7108e485f4 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 5f663efc56..76c763b746 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,20 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 70359bbc71..567049f4ee 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 21fbc29d81..e1aad183d2 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,13 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#if HAS_GRAPHICAL_TFT +#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 0000000000..8db077638d --- /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 0000000000..50744e283c --- /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 0000000000..0a4b254b43 --- /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 0000000000..f2c55f99a7 --- /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 0000000000..f443e717aa --- /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 0000000000..be59f22fb8 --- /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 0000000000..5801b894dd --- /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 0000000000..799e9a435f --- /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 0000000000..58600e54a7 --- /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 0000000000..a3b16c4eca --- /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 0000000000..c5a54a797d --- /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 0000000000..9508656a8d --- /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 84a6e3aba6..d858956c97 100644 --- a/Marlin/src/lcd/tft/images/back_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/back_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t back_32x32x4[512] = { +#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, 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, @@ -59,4 +61,6 @@ extern 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 49c4a84a0c..9e2916a3e5 100644 --- a/Marlin/src/lcd/tft/images/background_320x30x16.cpp +++ b/Marlin/src/lcd/tft/images/background_320x30x16.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint16_t background_320x30x16[9600] = { +#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, 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, @@ -57,4 +59,6 @@ extern 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 0000000000..fb97dc8e52 --- /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 2308917b13..8407899d27 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp @@ -22,11 +22,12 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -#include "../../../inc/MarlinConfig.h" +#include "../tft_image.h" +#include "../../../inc/MarlinConfig.h" // for binary defines -extern const uint8_t marlin_logo_112x38x1[532] = { +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, @@ -67,4 +68,6 @@ extern 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 2545f845a8..e9290c5a66 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp @@ -22,17 +22,19 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern 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, +#include "../tft_image.h" + +const uint16_t marlin_logo_195x59x16[11505] = { + 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, @@ -75,15 +77,70 @@ extern 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 0899407153..e6ee7535bf 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp @@ -22,9 +22,11 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint8_t marlin_logo_228x255x2[14535] = { +#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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, @@ -282,4 +284,6 @@ extern 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 3ed61a1b20..3400271ca0 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp @@ -22,9 +22,11 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint8_t marlin_logo_228x255x4[29070] = { +#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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, @@ -282,4 +284,6 @@ extern 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 0000000000..3e31d9cd11 --- /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 cad6f1fef1..7254426fd1 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp @@ -22,9 +22,11 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint16_t marlin_logo_320x240x16[76800] = { +#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, 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, @@ -267,4 +269,270 @@ extern 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 b90228af03..cf150e949f 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp @@ -22,9 +22,11 @@ #include "../../../inc/MarlinConfigPre.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint16_t marlin_logo_480x320x16[153600] = { +#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, 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, @@ -347,4 +349,447 @@ extern 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 bd7b9220eb..758ba1b0ea 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_42x39x4[819] = { +#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, 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, @@ -66,4 +68,6 @@ extern 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 4768f7e5fc..20ca0ed16a 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_64x52x4[1664] = { +#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, 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, @@ -79,4 +81,6 @@ extern 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 a315e2df1c..0188bb416d 100644 --- a/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t cancel_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 23722f616d..33fe14db1f 100644 --- a/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t chamber_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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 +93,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, @@ -158,4 +160,7 @@ extern 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 ff623ed349..3cfa44d4eb 100644 --- a/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t confirm_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 b586700986..d810fd55a8 100644 --- a/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t decrease_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 5fa55c8468..9bf2ca44c4 100644 --- a/Marlin/src/lcd/tft/images/directory_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/directory_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t directory_32x32x4[512] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -59,4 +61,6 @@ extern 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 eabf6f97fe..44582e9928 100644 --- a/Marlin/src/lcd/tft/images/down_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/down_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t down_32x32x4[512] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -59,4 +61,6 @@ extern 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 1a154a6ea4..71384332e5 100644 --- a/Marlin/src/lcd/tft/images/fan_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t fan0_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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 +93,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, @@ -158,4 +160,7 @@ extern 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 4586954ccf..7d17f49b57 100644 --- a/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_fast0_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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 +93,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, @@ -158,4 +160,7 @@ extern 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 7bbd149ae7..d5c071eb18 100644 --- a/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_slow0_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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 +93,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, @@ -158,4 +160,7 @@ extern 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 52f9124fdb..d60667a427 100644 --- a/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t feedrate_32x32x4[512] = { +#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, 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, @@ -59,4 +61,6 @@ extern 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 2259472f79..21e5a95805 100644 --- a/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t flowrate_32x32x4[512] = { +#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, 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, @@ -59,4 +61,6 @@ extern 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 5382ff7558..aeeb064350 100644 --- a/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t bed_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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 +93,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, @@ -158,4 +160,7 @@ extern 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 27384c99c0..7fe62d4bd9 100644 --- a/Marlin/src/lcd/tft/images/home_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/home_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t home_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 7b068aa7e4..536932eed2 100644 --- a/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t hotend_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 710fe8e78e..b2b27495f6 100644 --- a/Marlin/src/lcd/tft/images/increase_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/increase_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t increase_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 486518d508..f8f05a2ed3 100644 --- a/Marlin/src/lcd/tft/images/left_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/left_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t left_32x32x4[512] = { +#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, 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, @@ -59,4 +61,6 @@ extern 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 3243d7f27f..079f5acbf5 100644 --- a/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t leveling_32x32x4[512] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -59,4 +61,6 @@ extern 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 bbbe66ab1b..7e40f8543f 100644 --- a/Marlin/src/lcd/tft/images/menu_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/menu_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t menu_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 3079b22a17..8ab0e509c1 100644 --- a/Marlin/src/lcd/tft/images/pause_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/pause_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t pause_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 f8548d2837..df513022e0 100644 --- a/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t refresh_32x32x4[512] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -59,4 +61,6 @@ extern 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 ab9c36eae0..e08f02a1e6 100644 --- a/Marlin/src/lcd/tft/images/right_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/right_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t right_32x32x4[512] = { +#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, 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, @@ -59,4 +61,6 @@ extern 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 3f786f46ca..c855019d08 100644 --- a/Marlin/src/lcd/tft/images/sd_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/sd_64x64x4.cpp @@ -24,6 +24,8 @@ #if HAS_GRAPHICAL_TFT +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,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 093e7ff61e..a55b258a56 100644 --- a/Marlin/src/lcd/tft/images/settings_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/settings_64x64x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t settings_64x64x4[2048] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 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,4 +93,6 @@ extern 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 2839cd9806..2a88f931b2 100644 --- a/Marlin/src/lcd/tft/images/slider_8x16x4.cpp +++ b/Marlin/src/lcd/tft/images/slider_8x16x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t slider_8x16x4[64] = { +#include "../tft_image.h" + +const uint8_t slider_8x16x4[64] = { 0x88, 0xFF, 0xFF, 0x88, 0x8F, 0xFF, 0xFF, 0xF8, 0x8F, 0xFF, 0xFF, 0xF8, @@ -43,4 +45,6 @@ extern 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 new file mode 100644 index 0000000000..b5d35e1dbc --- /dev/null +++ b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp @@ -0,0 +1,62 @@ +/** + * 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 + +#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, + 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, +}; + +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 new file mode 100644 index 0000000000..8b433cfbe8 --- /dev/null +++ b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp @@ -0,0 +1,62 @@ +/** + * 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 + +#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, + 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, +}; + +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 b36a028cc9..658730667c 100644 --- a/Marlin/src/lcd/tft/images/up_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/up_32x32x4.cpp @@ -24,7 +24,9 @@ #if HAS_GRAPHICAL_TFT -extern const uint8_t up_32x32x4[512] = { +#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, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -59,4 +61,6 @@ extern 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.cpp b/Marlin/src/lcd/tft/tft.cpp index fa3c2c241f..868a89d2dc 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 7dc3996148..1c81585650 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" @@ -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,17 +62,17 @@ 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); } 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 set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax) { io.set_window(Xmin, Ymin, Xmax, Ymax); } + 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); } 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/tft_color.h b/Marlin/src/lcd/tft/tft_color.h index 07518028aa..cd03224615 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 @@ -67,127 +67,3 @@ #define COLOR_VIVID_GREEN 0x7FE0 // #7FFF00 #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 -#endif -#ifndef COLOR_SELECTION_BG - #define COLOR_SELECTION_BG 0x9930 // #992380 -#endif -#ifndef COLOR_WEBSITE_URL - #define COLOR_WEBSITE_URL 0x03B7 // #0075BD -#endif - -#ifndef COLOR_INACTIVE - #define COLOR_INACTIVE COLOR_GREY -#endif -#ifndef COLOR_COLD - #define COLOR_COLD COLOR_AQUA -#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_AQUA -#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_AQUA -#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 6c8838ed7c..114c1b735e 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 3651899dd7..1a5851948d 100644 --- a/Marlin/src/lcd/tft/tft_image.cpp +++ b/Marlin/src/lcd/tft/tft_image.cpp @@ -27,56 +27,10 @@ #include "tft_image.h" #include "ui_common.h" -const tImage NoLogo = { nullptr, 0, 0, NOCOLORS }; +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 Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; - -const tImage Images[imgCount] = { - TERN(SHOW_BOOTSCREEN, TERN(BOOT_MARLIN_LOGO_SMALL, MarlinLogo195x59x16, MARLIN_LOGO_FULL_SIZE), NoLogo), +const tImage images[imgCount] = { + TERN(SHOW_BOOTSCREEN, BOOTSCREEN_LOGO, NoLogo), HotEnd_64x64x4, Bed_64x64x4, Bed_Heated_64x64x4, @@ -108,6 +62,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 aeb1ca2bf5..06887ff8a6 100644 --- a/Marlin/src/lcd/tft/tft_image.h +++ b/Marlin/src/lcd/tft/tft_image.h @@ -23,46 +23,11 @@ #include "../../inc/MarlinConfigPre.h" -#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 slider_8x16x4[]; +#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, @@ -97,6 +62,9 @@ enum MarlinImage : uint8_t { imgHome, imgBtn52Rounded, imgBtn39Rounded, + imgTimeElapsed, + imgTimeRemaining, + // Special values - must be at the end! imgCount, noImage = imgCount, imgPageUp = imgLeft, @@ -110,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; @@ -134,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; @@ -172,7 +145,9 @@ 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; -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 1cec4a7159..06de651287 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; @@ -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; @@ -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) { @@ -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 ed929166cb..59a13dd43a 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/lcd/tft/tft_string.cpp b/Marlin/src/lcd/tft/tft_string.cpp index 1b65f226d9..6ee1bab6d3 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 @@ -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 @@ -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); @@ -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 8596667047..008064f692 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -23,13 +23,13 @@ #include -#include "../fontutils.h" +#include "../utf8.h" #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). + * Number of glyphs (fontEndEncoding - fontStartEncoding) can not exceed 256 (TBD). * Some glyphs may be left undefined with NO_GLYPH */ #define FONT_MARLIN_GLYPHS 0x80 @@ -37,131 +37,40 @@ #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. * * 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 #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__)) { - 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 +103,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 +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/themes/theme_ANET_BLACK.h b/Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h new file mode 100644 index 0000000000..8db729a04b --- /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 0000000000..4af483b492 --- /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 0000000000..9e0a518bad --- /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 0000000000..4af483b492 --- /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 0000000000..c2e1770904 --- /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 6c81ebefcd..3de0f4f42a 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -27,7 +27,7 @@ #include "touch.h" #include "../marlinui.h" // for ui methods -#include "../menu/menu_item.h" // for touch_screen_calibration +#include "../menu/menu_item.h" // for MSG_FIRST_FAN_SPEED #include "../../module/temperature.h" #include "../../module/planner.h" @@ -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(); } @@ -113,10 +113,8 @@ void Touch::idle() { if (x != 0 && y != 0) { if (current_control) { if (WITHIN(x, current_control->x - FREE_MOVE_RANGE, current_control->x + current_control->width + FREE_MOVE_RANGE) && WITHIN(y, current_control->y - FREE_MOVE_RANGE, current_control->y + current_control->height + FREE_MOVE_RANGE)) { - NOLESS(x, current_control->x); - NOMORE(x, current_control->x + current_control->width); - NOLESS(y, current_control->y); - NOMORE(y, current_control->y + current_control->height); + LIMIT(x, current_control->x, current_control->x + current_control->width); + LIMIT(y, current_control->y, current_control->y + current_control->height); touch(current_control); } else @@ -154,7 +152,7 @@ void Touch::touch(touch_control_t *control) { case CALIBRATE: if (touch_calibration.handleTouch(x, y)) ui.refresh(); break; - #endif // TOUCH_SCREEN_CALIBRATION + #endif case MENU_SCREEN: ui.goto_screen((screenFunc_t)control->data); break; case BACK: ui.goto_previous_screen(); break; @@ -224,24 +222,31 @@ 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 + + #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), + GET_TEXT_F(MSG_BACK), ui.abort_print, ui.goto_previous_screen, + GET_TEXT_F(MSG_STOP_PRINT), FSTR_P(nullptr), FPSTR("?")); + }); break; #if ENABLED(AUTO_BED_LEVELING_UBL) 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; @@ -261,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) @@ -315,13 +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) { - uint16_t width = Images[image].width; - uint16_t 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 fd5d9fd737..16f51bfaaa 100644 --- a/Marlin/src/lcd/tft/touch.h +++ b/Marlin/src/lcd/tft/touch.h @@ -23,18 +23,15 @@ #include "../../inc/MarlinConfigPre.h" -#include "tft_color.h" -#include "tft_image.h" - #if ENABLED(TOUCH_SCREEN_CALIBRATION) #include "../tft_io/touch_calibration.h" #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." @@ -64,16 +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; @@ -108,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(); @@ -130,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 771f12d898..0000000000 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ /dev/null @@ -1,932 +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) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - #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; - uint16_t Color; - celsius_t currentTemperature, targetTemperature; - - if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); - } - #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); - - 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()); - - // 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); - switch (i) { - #ifdef ITEM_E0 - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #ifdef ITEM_E1 - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #ifdef ITEM_E2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #ifdef ITEM_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #ifdef ITEM_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #ifdef ITEM_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #ifdef ITEM_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 { - 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); - - 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); - } - 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); - TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); - - y += 100; - // 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; - 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)); - - // 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)); - - #if ENABLED(TOUCH_SCREEN) - add_control(900, y, menu_main, imgSettings); - #if ENABLED(SDSUPPORT) - const bool cm = card.isMounted(), pa = printingIsActive(); - add_control(12, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, cm && pa ? COLOR_BUSY : COLOR_CONTROL_DISABLED); - #endif - #endif - - y += 100; - // print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); - - 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); - - 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); - - y += 50; - // status message - tft.canvas(0, y, TFT_WIDTH, FONT_LINE_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); -} - -// 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 MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; - float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; - bool blocked = false; - char message[32]; -}; - -MotionAxisState 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 BOTH(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); -} - -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); - } -} - -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)); -} - -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) { - 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; - 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 (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - - 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(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 - - drawAxisValue(axis); - #endif - return; - } - - 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 && 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); -} - -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 ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - - 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); - } - - static void step_size() { - motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; - if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; - quick_feedback(); - drawCurStepValue(); - } -#endif - -#if BOTH(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(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; - - 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 (busy && ENABLED(BABYSTEP_ZPROBE_OFFSET)) - 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); - - 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 - x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - 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 - - // 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; - - 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)); - - 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_(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; - 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; - 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 - - // 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; - - 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); - - // 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); - - 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 - - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); - - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; // - x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.x = x; - motionAxisState.stepValuePos.y = 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 // HAS_UI_480x320 diff --git a/Marlin/src/lcd/tft/ui_1024x600.h b/Marlin/src/lcd/tft/ui_1024x600.h index c6b5d9f85e..05f3fed1ec 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.h +++ b/Marlin/src/lcd/tft/ui_1024x600.h @@ -19,31 +19,289 @@ * 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 FONT_LINE_HEIGHT 34 -#include "tft_font.h" +// --------------------------------------------------------------------------------- + +#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 + #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 + +#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 + +#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 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 0000000000..7e41c05a96 --- /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 MarlinLogo240x250x16 + #define BOOTSCREEN_LOGO_W 240 + #define BOOTSCREEN_LOGO_H 250 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 40) + #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 76cce4dad1..0000000000 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ /dev/null @@ -1,1120 +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) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - #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; - uint16_t Color; - celsius_t currentTemperature, targetTemperature; - - if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); - } - #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); - - 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()); - - // 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); - switch (i) { - #ifdef ITEM_E0 - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #ifdef ITEM_E1 - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #ifdef ITEM_E2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #ifdef ITEM_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #ifdef ITEM_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #ifdef ITEM_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #ifdef ITEM_FAN - case ITEM_FAN: draw_fan_status(x, y, blink); break; - #endif - } - } - - // coordinates - tft.canvas(4, 103, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 232, FONT_LINE_HEIGHT * 2 - #else - 312, FONT_LINE_HEIGHT - #endif - ); - 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 - ); - - 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 { - 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 - ); - - 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 - ); - } - - 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) - 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 - #else - 312, FONT_LINE_HEIGHT - #endif - )); - - // feed rate - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 30, 172, 80 - #else - 70, 136, 84 - #endif - , 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(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 - )); - - // 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 - )); - - // print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); - - 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); - - // 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 - ); - 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 - ); - if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 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 - ); - 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( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 176, 210 - #else - 256, 130 - #endif - , menu_main, imgSettings - ); - #if ENABLED(SDSUPPORT) - const bool cm = card.isMounted(), pa = printingIsActive(); - add_control(0, TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, cm && pa ? COLOR_BUSY : COLOR_CONTROL_DISABLED); - #endif - } // (sublime) - #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 MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; - float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; - bool blocked = false; - char message[32]; -}; - -MotionAxisState 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 BOTH(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); -} - -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); - } -} - -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)); -} - -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) { - 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; - 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 (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - - 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 - 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; - } - - 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 && 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); -} - -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 ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - - 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); - } - - 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(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; - - 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_(HAS_TFT_XPT2046, 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()); - - ui.clear_lcd(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - 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(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); - - 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); - - 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 - - // ROW 2 -> "Ex" CurY "Z" - x = X_MARGIN; - y += BTN_HEIGHT + 2; - - 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)); - - motionAxisState.yValuePos.x = yplus_x; - motionAxisState.yValuePos.y = y; - drawAxisValue(Y_AXIS); - - motionAxisState.zTypePos.x = zplus_x; - motionAxisState.zTypePos.y = y; - drawCurZSelection(); - - // 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_(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)); - - drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); - - #if BOTH(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; - - motionAxisState.xValuePos.x = x; - motionAxisState.xValuePos.y = y; - drawAxisValue(X_AXIS); - - // ROW 5 -> E- CurX Y- Z- - 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); - - // Cur E - motionAxisState.eValuePos.x = x; - motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - 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 - - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); - - // ROW 6 -> step_size disable steppers back - 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; - - 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)); - } - - // 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; - - 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); - - // Cur Y - x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - 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 - - // 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; - - 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)); - - 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)); - - x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; - 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; - 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 - - // 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; - - 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); - - // 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); - - 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 - - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); - - // ROW 4 -> step_size disable steppers back - 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; - 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)); - } - - // aligned with x+ - drawBtn(xplus_x, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - #endif // !TFT_COLOR_UI_PORTRAIT - - TERN_(HAS_TFT_XPT2046, 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 555ca3616a..5725a8ed2d 100644 --- a/Marlin/src/lcd/tft/ui_320x240.h +++ b/Marlin/src/lcd/tft/ui_320x240.h @@ -19,31 +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) - -#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 FONT_LINE_HEIGHT 24 -#include "tft_font.h" +// --------------------------------------------------------------------------------- + +#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 + +#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 + + // 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 0000000000..87f6b4ebe4 --- /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 0000000000..83f9e5c21a --- /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 c4395460d5..0000000000 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ /dev/null @@ -1,913 +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) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - #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(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); - 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; - uint16_t Color; - celsius_t currentTemperature, targetTemperature; - - if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); - } - #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); - - 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()); - - // 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); - switch (i) { - #ifdef ITEM_E0 - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #ifdef ITEM_E1 - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #ifdef ITEM_E2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #ifdef ITEM_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #ifdef ITEM_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #ifdef ITEM_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #ifdef ITEM_FAN - case ITEM_FAN: draw_fan_status(x, y, blink); break; - #endif - } - } - - y += TERN(HAS_UI_480x272, 120, 128); - - // 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( 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 { - tft.add_text( 16, 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(102 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : 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.add_text(330, tft_string.vcenter(FONT_LINE_HEIGHT), 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(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); - 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, 96, y, 128, 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); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(36, tft_string.vcenter(30), color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 284, y, 128, 32, active_extruder)); - - #if ENABLED(TOUCH_SCREEN) - add_control(404, y, menu_main, imgSettings); - #if ENABLED(SDSUPPORT) - const bool cm = card.isMounted(), pa = printingIsActive(); - add_control(12, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, cm && pa ? COLOR_BUSY : COLOR_CONTROL_DISABLED); - #endif - #endif - - y += TERN(HAS_UI_480x272, 39, 44); - // print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); - - 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); - - y += TERN(HAS_UI_480x272, 29, 36); - // 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); - - y += 15; - // status message - tft.canvas(0, y, TFT_WIDTH, FONT_LINE_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 336 - #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(64, TFT_HEIGHT - 64, DECREASE, imgDecrease); - add_control(352, TFT_HEIGHT - 64, INCREASE, imgIncrease); - add_control(208, 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( 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)); - #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 MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; - float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; - bool blocked = false; - char message[32]; -}; - -MotionAxisState 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 BOTH(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); -} - -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); - } -} - -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)); -} - -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) { - 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; - 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 (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - - 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 - 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; - } - - 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 && 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); -} - -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 ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - - 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); - } - - static void step_size() { - motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; - if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; - quick_feedback(); - drawCurStepValue(); - } -#endif - -#if BOTH(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(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; - - 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_(HAS_TFT_XPT2046, 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()); - - ui.clear_lcd(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - 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; - - // 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); - - 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 - x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - 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 - - // 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; - - 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)); - - 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)); - - x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; - 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; - 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 - - // 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; - - 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); - - // 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); - - 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 - - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); - - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; // - x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.x = x; - 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)); - } - - // 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)); -} - -#endif // HAS_UI_480x320 diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index d63ae02c09..a16ed8ad22 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -19,48 +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 - - #define MENU_ITEM_HEIGHT 43 - #define FONT_LINE_HEIGHT 34 - - #if (TFT_FONT == NOTOSANS) || (TFT_FONT == HELVETICA) - #define FONT_SIZE 19 - #elif TFT_FONT == UNIFONT - #define FONT_SIZE 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 - #endif - - #define MENU_ITEM_HEIGHT 36 +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 19 +#elif TFT_FONT == UNIFONT + #define FONT_SIZE 20 #endif -#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define FONT_LINE_HEIGHT 34 -#include "tft_font.h" +// --------------------------------------------------------------------------------- + +#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 - 36) + #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 + +#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 + + #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 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 ELAPSED_TIME_H 29 + #define ELAPSED_TIME_Y 224 +#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 224 +#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 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 0000000000..a14f268d86 --- /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); + 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 705438e95b..5f426294dc 100644 --- a/Marlin/src/lcd/tft/ui_common.cpp +++ b/Marlin/src/lcd/tft/ui_common.cpp @@ -28,13 +28,164 @@ #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" + +#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(); -static xy_uint_t cursor; +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) - bool draw_menu_navigation = false; + + 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 @@ -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,28 +343,45 @@ 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); } } // 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, COLOR_MENU_TEXT, 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, 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, COLOR_MENU_TEXT, 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); 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 @@ -228,33 +432,33 @@ void MarlinUI::clear_lcd() { void MarlinUI::touch_calibration_screen() { uint16_t x, y; - calibrationState calibration_stage = touch_calibration.get_calibration_state(); + calibrationState stage = touch_calibration.get_calibration_state(); - if (calibration_stage == CALIBRATION_NONE) { + if (stage == CALIBRATION_NONE) { defer_status_screen(true); clear_lcd(); - calibration_stage = touch_calibration.calibration_start(); + stage = touch_calibration.calibration_start(); } else { - x = touch_calibration.calibration_points[_MIN(calibration_stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(calibration_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); } touch.clear(); - if (calibration_stage < CALIBRATION_SUCCESS) { - switch (calibration_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; + if (stage < CALIBRATION_SUCCESS) { + switch (stage) { + 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; } - x = touch_calibration.calibration_points[calibration_stage].x; - y = touch_calibration.calibration_points[calibration_stage].y; + x = touch_calibration.calibration_points[stage].x; + y = touch_calibration.calibration_points[stage].y; tft.canvas(x - 15, y - 15, 31, 31); tft.set_background(COLOR_BACKGROUND); @@ -264,7 +468,7 @@ void MarlinUI::clear_lcd() { touch.add_control(CALIBRATE, 0, 0, TFT_WIDTH, TFT_HEIGHT, uint32_t(x) << 16 | uint32_t(y)); } else { - tft_string.set(calibration_stage == CALIBRATION_SUCCESS ? GET_TEXT(MSG_CALIBRATION_COMPLETED) : GET_TEXT(MSG_CALIBRATION_FAILED)); + tft_string.set(stage == CALIBRATION_SUCCESS ? GET_TEXT(MSG_CALIBRATION_COMPLETED) : GET_TEXT(MSG_CALIBRATION_FAILED)); defer_status_screen(false); touch_calibration.calibration_end(); touch.add_control(BACK, 0, 0, TFT_WIDTH, TFT_HEIGHT); diff --git a/Marlin/src/lcd/tft/ui_common.h b/Marlin/src/lcd/tft/ui_common.h index 7329c31a52..8229ab36ab 100644 --- a/Marlin/src/lcd/tft/ui_common.h +++ b/Marlin/src/lcd/tft/ui_common.h @@ -33,56 +33,143 @@ #if ENABLED(TOUCH_SCREEN) #include "touch.h" extern bool draw_menu_navigation; -#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!" + // add_control() function is used to display encoder-controlled elements + enum TouchControlType : uint16_t { + NONE = 0x0000, + }; #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); +#define UI_INCL_(W, H) STRINGIFY_(ui_##W##x##H.h) +#define UI_INCL(W, H) UI_INCL_(W, H) -void menu_line(const uint8_t row, uint16_t color=COLOR_BACKGROUND); -void menu_item(const uint8_t row, bool sel = false); +#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); + +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 -#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 +#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 0000000000..a68752c9dd --- /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 0000000000..54a65c17bf --- /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 0000000000..e311c7e8ec --- /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 0000000000..1925cdc071 --- /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/ili9328.h b/Marlin/src/lcd/tft_io/ili9328.h index b50517adfe..823835f448 100644 --- a/Marlin/src/lcd/tft_io/ili9328.h +++ b/Marlin/src/lcd/tft_io/ili9328.h @@ -39,7 +39,7 @@ #define ILI9328_ETMOD_ID0 0x0010 // 0 - Horizontal Decrement / 1 - Horizontal Increment #define ILI9328_ETMOD_AM 0x0008 // 0 - Horizontal / 1 - Vertical -// MKS Robin TFT v1.1 - 320x240 ; Cable on the left side +// MKS Robin TFT v1.1 - 320x240 ; FPC cable on the left side #if TFT_ROTATION == TFT_ROTATE_180 #define ILI9328_DRVCTL_DATA 0x0000 diff --git a/Marlin/src/lcd/tft_io/ili9341.h b/Marlin/src/lcd/tft_io/ili9341.h index dda326df6d..4488287430 100644 --- a/Marlin/src/lcd/tft_io/ili9341.h +++ b/Marlin/src/lcd/tft_io/ili9341.h @@ -33,10 +33,10 @@ #define ILI9341_MADCTL_RGB 0x00 #define ILI9341_MADCTL_MH 0x04 // Horizontal Refresh Order -#define ILI9341_ORIENTATION_UP ILI9341_MADCTL_MY // 240x320 ; Cable on the upper side -#define ILI9341_ORIENTATION_RIGHT ILI9341_MADCTL_MV // 320x240 ; Cable on the right side -#define ILI9341_ORIENTATION_LEFT ILI9341_MADCTL_MY | ILI9341_MADCTL_MX | ILI9341_MADCTL_MV // 320x240 ; Cable on the left side -#define ILI9341_ORIENTATION_DOWN ILI9341_MADCTL_MX // 240x320 ; Cable on the upper side +#define ILI9341_ORIENTATION_TOP ILI9341_MADCTL_MY // 240x320 ; FPC cable on the top side +#define ILI9341_ORIENTATION_RIGHT ILI9341_MADCTL_MV // 320x240 ; FPC cable on the right side +#define ILI9341_ORIENTATION_LEFT ILI9341_MADCTL_MY | ILI9341_MADCTL_MX | ILI9341_MADCTL_MV // 320x240 ; FPC cable on the left side +#define ILI9341_ORIENTATION_BOTTOM ILI9341_MADCTL_MX // 240x320 ; FPC cable on the bottom side #define ILI9341_ORIENTATION IF_0((TFT_ORIENTATION) & TFT_EXCHANGE_XY, ILI9341_MADCTL_MV) | \ IF_0((TFT_ORIENTATION) & TFT_INVERT_X, ILI9341_MADCTL_MX) | \ @@ -52,7 +52,7 @@ #define ILI9341_NOP 0x00 // No Operation #define ILI9341_SWRESET 0x01 // Software Reset -#define ILI9341_RDDIDIF 0x04 // Read display identification information +#define ILI9341_RDDIDIF 0x04 // Read Display Identification Information #define ILI9341_RDDST 0x09 // Read Display Status #define ILI9341_RDDPM 0x0A // Read Display Power Mode #define ILI9341_RDDMADCTL 0x0B // Read Display MADCTL @@ -141,20 +141,21 @@ static const uint16_t ili9341_init[] = { DATASIZE_8BIT, ESC_REG(ILI9341_SWRESET), ESC_DELAY(100), ESC_REG(ILI9341_SLPOUT), ESC_DELAY(20), -/* - ESC_REG(ILI9341_PWCTRLA), 0x0039, 0x002C, 0x0000, 0x0034, 0x0002, // Power control A - ESC_REG(ILI9341_PWCTRLB), 0x0000, 0x00C1, 0x0030, // Power control B - ESC_REG(ILI9341_DRVTCTLA1), 0x0085, 0x0000, 0x0078, // Driver timing control A - ESC_REG(ILI9341_DRVTCTLB), 0x0000, 0x0000, // Driver timing control B - ESC_REG(ILI9341_PONSEQCTL), 0x0064, 0x0003, 0x0012, 0x0081, // Power on sequence control - ESC_REG(ILI9341_DISCTRL), 0x0008, 0x0082, 0x0027, // Display Function Control - ESC_REG(ILI9341_PUMPRCTL), 0x0020, // Pump ratio control - ESC_REG(ILI9341_VMCTRL1), 0x003E, 0x0028, // VCOM Control 1 - ESC_REG(ILI9341_VMCTRL2), 0x0086, // VCOM Control 2 - ESC_REG(ILI9341_FRMCTR1), 0x0000, 0x0018, // Frame Rate Control (In Normal Mode/Full Colors) - ESC_REG(ILI9341_PWCTRL1), 0x0023, // Power Control 1 - ESC_REG(ILI9341_PWCTRL2), 0x0010, // Power Control 2 -*/ + + ESC_REG(ILI9341_PWCTRLA), 0x0039, 0x002C, 0x0000, 0x0034, 0x0002, + ESC_REG(ILI9341_PWCTRLB), 0x0000, 0x00C1, 0x0030, + ESC_REG(ILI9341_DRVTCTLA1), 0x0085, 0x0000, 0x0078, + ESC_REG(ILI9341_DRVTCTLB), 0x0000, 0x0000, + ESC_REG(ILI9341_PONSEQCTL), 0x0064, 0x0003, 0x0012, 0x0081, + ESC_REG(ILI9341_DISCTRL), 0x0008, 0x0082, 0x0027, // Source Output Scan Direction: 0, Gate Output Scan Direction: 0 + ESC_REG(ILI9341_DINVOFF), + ESC_REG(ILI9341_PUMPRCTL), 0x0020, + ESC_REG(ILI9341_VMCTRL1), 0x003E, 0x0028, + ESC_REG(ILI9341_VMCTRL2), 0x0086, + ESC_REG(ILI9341_FRMCTR1), 0x0000, 0x0018, + ESC_REG(ILI9341_PWCTRL1), 0x0023, + ESC_REG(ILI9341_PWCTRL2), 0x0010, + ESC_REG(ILI9341_MADCTL), ILI9341_MADCTL_DATA, ESC_REG(ILI9341_PIXSET), 0x0055, diff --git a/Marlin/src/lcd/tft_io/ili9488.h b/Marlin/src/lcd/tft_io/ili9488.h index e71c0d16d7..f28d411bbd 100644 --- a/Marlin/src/lcd/tft_io/ili9488.h +++ b/Marlin/src/lcd/tft_io/ili9488.h @@ -25,18 +25,18 @@ #include "../../inc/MarlinConfig.h" -#define ILI9488_MADCTL_MY 0x80 // Row Address Order -#define ILI9488_MADCTL_MX 0x40 // Column Address Order -#define ILI9488_MADCTL_MV 0x20 // Row/Column Exchange -#define ILI9488_MADCTL_ML 0x10 // Vertical Refresh Order -#define ILI9488_MADCTL_BGR 0x08 // RGB-BGR ORDER -#define ILI9488_MADCTL_RGB 0x00 -#define ILI9488_MADCTL_MH 0x04 // Horizontal Refresh Order +#define ILI9488_MADCTL_MY 0x80 // Row Address Order +#define ILI9488_MADCTL_MX 0x40 // Column Address Order +#define ILI9488_MADCTL_MV 0x20 // Row/Column Exchange +#define ILI9488_MADCTL_ML 0x10 // Vertical Refresh Order +#define ILI9488_MADCTL_BGR 0x08 // RGB-BGR ORDER +#define ILI9488_MADCTL_RGB 0x00 +#define ILI9488_MADCTL_MH 0x04 // Horizontal Refresh Order -#define ILI9488_ORIENTATION_UP ILI9488_MADCTL_MY // 320x480 ; Cable on the upper side -#define ILI9488_ORIENTATION_RIGHT ILI9488_MADCTL_MV // 480x320 ; Cable on the right side -#define ILI9488_ORIENTATION_LEFT ILI9488_MADCTL_MY | ILI9488_MADCTL_MX | ILI9488_MADCTL_MV // 480x320 ; Cable on the left side -#define ILI9488_ORIENTATION_DOWN ILI9488_MADCTL_MX // 320x480 ; Cable on the upper side +#define ILI9488_ORIENTATION_TOP ILI9488_MADCTL_MY // 320x480 ; FPC cable on the top side +#define ILI9488_ORIENTATION_RIGHT ILI9488_MADCTL_MV // 480x320 ; FPC cable on the right side +#define ILI9488_ORIENTATION_LEFT ILI9488_MADCTL_MY | ILI9488_MADCTL_MX | ILI9488_MADCTL_MV // 480x320 ; FPC cable on the left side +#define ILI9488_ORIENTATION_BOTTOM ILI9488_MADCTL_MX // 320x480 ; FPC cable on the bottom side #define ILI9488_ORIENTATION IF_0((TFT_ORIENTATION) & TFT_EXCHANGE_XY, ILI9488_MADCTL_MV) | \ IF_0((TFT_ORIENTATION) & TFT_INVERT_X, ILI9488_MADCTL_MX) | \ @@ -48,103 +48,103 @@ #define ILI9488_COLOR ILI9488_MADCTL_RGB #endif -#define ILI9488_MADCTL_DATA (ILI9488_ORIENTATION) | (ILI9488_COLOR) +#define ILI9488_MADCTL_DATA (ILI9488_ORIENTATION) | (ILI9488_COLOR) -#define ILI9488_NOP 0x00 // No Operation -#define ILI9488_SWRESET 0x01 // Software Reset -#define ILI9488_RDDIDIF 0x04 // Read Display Identification Information -#define ILI9488_RDNUMED 0x05 // Read Number of the Errors on DSI -#define ILI9488_RDDST 0x09 // Read Display Status -#define ILI9488_RDDPM 0x0A // Read Display Power Mode -#define ILI9488_RDDMADCTL 0x0B // Read Display MADCTL -#define ILI9488_RDDCOLMOD 0x0C // Read Display COLMOD -#define ILI9488_RDDIM 0x0D // Read Display Image Mode -#define ILI9488_RDDSM 0x0E // Read Display Signal Mode -#define ILI9488_RDDSDR 0x0F // Read Display Self-Diagnostic Result -#define ILI9488_SLPIN 0x10 // Sleep IN -#define ILI9488_SLPOUT 0x11 // Sleep OUT -#define ILI9488_PTLON 0x12 // Partial Mode ON -#define ILI9488_NORON 0x13 // Normal Display Mode ON -#define ILI9488_INVOFF 0x20 // Display Inversion OFF -#define ILI9488_INVON 0x21 // Display Inversion ON -#define ILI9488_ALLPOFF 0x22 // All Pixels OFF -#define ILI9488_ALLPON 0x23 // All Pixels ON -#define ILI9488_DISOFF 0x28 // Display OFF -#define ILI9488_DISON 0x29 // Display ON -#define ILI9488_CASET 0x2A // Column Address Set -#define ILI9488_PASET 0x2B // Page Address Set -#define ILI9488_RAMWR 0x2C // Memory Write -#define ILI9488_RAMRD 0x2E // Memory Read -#define ILI9488_PLTAR 0x30 // Partial Area -#define ILI9488_VSCRDEF 0x33 // Vertical Scrolling Definition -#define ILI9488_TEOFF 0x34 // Tearing Effect Line OFF -#define ILI9488_TEON 0x35 // Tearing Effect Line ON -#define ILI9488_MADCTL 0x36 // Memory Access Control -#define ILI9488_VSCRSADD 0x37 // Vertical Scrolling Start Address -#define ILI9488_IDMOFF 0x38 // Idle Mode OFF -#define ILI9488_IDMON 0x39 // Idle Mode ON -#define ILI9488_COLMOD 0x3A // Interface Pixel Format -#define ILI9488_RAMWRC 0x3C // Memory Write Continue -#define ILI9488_RAMRDRC 0x3E // Memory Read Continue -#define ILI9488_TESLWR 0x44 // Write Tear Scan Line -#define ILI9488_TESLRD 0x45 // Read Scan Line -#define ILI9488_WRDISBV 0x51 // Write Display Brightness Value -#define ILI9488_RDDISBV 0x52 // Read Display Brightness Value -#define ILI9488_WRCTRLD 0x53 // Write Control Display Value -#define ILI9488_RDCTRLD 0x54 // Read Control Display Value -#define ILI9488_WRCABC 0x55 // Write Content Adaptive Brightness Control Value -#define ILI9488_RDCABC 0x56 // Read Content Adaptive Brightness Control Value -#define ILI9488_WRCABCMB 0x5E // Write CABC Minimum Brightness -#define ILI9488_RDCABCMB 0x5F // Read CABC Minimum Brightness -#define ILI9488_RDABCSDR 0x68 // Read Automatic Brightness Control Self-diagnostic Result -#define ILI9488_RDID1 0xDA // Read ID1 -#define ILI9488_RDID2 0xDB // Read ID2 -#define ILI9488_RDID3 0xDC // Read ID3 +#define ILI9488_NOP 0x00 // No Operation +#define ILI9488_SWRESET 0x01 // Software Reset +#define ILI9488_RDDIDIF 0x04 // Read Display Identification Information +#define ILI9488_RDNUMED 0x05 // Read Number of the Errors on DSI +#define ILI9488_RDDST 0x09 // Read Display Status +#define ILI9488_RDDPM 0x0A // Read Display Power Mode +#define ILI9488_RDDMADCTL 0x0B // Read Display MADCTL +#define ILI9488_RDDCOLMOD 0x0C // Read Display COLMOD +#define ILI9488_RDDIM 0x0D // Read Display Image Mode +#define ILI9488_RDDSM 0x0E // Read Display Signal Mode +#define ILI9488_RDDSDR 0x0F // Read Display Self-Diagnostic Result +#define ILI9488_SLPIN 0x10 // Sleep IN +#define ILI9488_SLPOUT 0x11 // Sleep OUT +#define ILI9488_PTLON 0x12 // Partial Mode ON +#define ILI9488_NORON 0x13 // Normal Display Mode ON +#define ILI9488_INVOFF 0x20 // Display Inversion OFF +#define ILI9488_INVON 0x21 // Display Inversion ON +#define ILI9488_ALLPOFF 0x22 // All Pixels OFF +#define ILI9488_ALLPON 0x23 // All Pixels ON +#define ILI9488_DISOFF 0x28 // Display OFF +#define ILI9488_DISON 0x29 // Display ON +#define ILI9488_CASET 0x2A // Column Address Set +#define ILI9488_PASET 0x2B // Page Address Set +#define ILI9488_RAMWR 0x2C // Memory Write +#define ILI9488_RAMRD 0x2E // Memory Read +#define ILI9488_PLTAR 0x30 // Partial Area +#define ILI9488_VSCRDEF 0x33 // Vertical Scrolling Definition +#define ILI9488_TEOFF 0x34 // Tearing Effect Line OFF +#define ILI9488_TEON 0x35 // Tearing Effect Line ON +#define ILI9488_MADCTL 0x36 // Memory Access Control +#define ILI9488_VSCRSADD 0x37 // Vertical Scrolling Start Address +#define ILI9488_IDMOFF 0x38 // Idle Mode OFF +#define ILI9488_IDMON 0x39 // Idle Mode ON +#define ILI9488_COLMOD 0x3A // Interface Pixel Format +#define ILI9488_RAMWRC 0x3C // Memory Write Continue +#define ILI9488_RAMRDRC 0x3E // Memory Read Continue +#define ILI9488_TESLWR 0x44 // Write Tear Scan Line +#define ILI9488_TESLRD 0x45 // Read Scan Line +#define ILI9488_WRDISBV 0x51 // Write Display Brightness Value +#define ILI9488_RDDISBV 0x52 // Read Display Brightness Value +#define ILI9488_WRCTRLD 0x53 // Write Control Display Value +#define ILI9488_RDCTRLD 0x54 // Read Control Display Value +#define ILI9488_WRCABC 0x55 // Write Content Adaptive Brightness Control Value +#define ILI9488_RDCABC 0x56 // Read Content Adaptive Brightness Control Value +#define ILI9488_WRCABCMB 0x5E // Write CABC Minimum Brightness +#define ILI9488_RDCABCMB 0x5F // Read CABC Minimum Brightness +#define ILI9488_RDABCSDR 0x68 // Read Automatic Brightness Control Self-diagnostic Result +#define ILI9488_RDID1 0xDA // Read ID1 +#define ILI9488_RDID2 0xDB // Read ID2 +#define ILI9488_RDID3 0xDC // Read ID3 -#define ILI9488_IFMODE 0xB0 // Interface Mode Control -#define ILI9488_FRMCTR1 0xB1 // Frame Rate Control (In Normal Mode/Full Colors) -#define ILI9488_FRMCTR2 0xB2 // Frame Rate Control (In Idle Mode/8 Colors) -#define ILI9488_FRMCTR3 0xB3 // Frame Rate Control (In Partial Mode/Full Colors) -#define ILI9488_INVTR 0xB4 // Display Inversion Control -#define ILI9488_PRCTR 0xB5 // Blanking Porch Control -#define ILI9488_DISCTRL 0xB6 // Display Function Control -#define ILI9488_ETMOD 0xB7 // Entry Mode Set -#define ILI9488_CECTRL1 0xB9 // Color Enhancement Control 1 -#define ILI9488_CECTRL2 0xBA // Color Enhancement Control 2 -#define ILI9488_HSLCTRL 0xBE // HS Lanes Control -#define ILI9488_PWCTRL1 0xC0 // Power Control 1 -#define ILI9488_PWCTRL2 0xC1 // Power Control 2 -#define ILI9488_PWCTRL3 0xC2 // Power Control 3 (For Normal Mode) -#define ILI9488_PWCTRL4 0xC3 // Power Control 4 (For Idle Mode) -#define ILI9488_PWCTRL5 0xC4 // Power Control 5 (For Partial Mode) -#define ILI9488_VMCTRL 0xC5 // VCOM Control -#define ILI9488_CABCCTRL1 0xC6 // CABC Control 1 -#define ILI9488_CABCCTRL2 0xC8 // CABC Control 2 -#define ILI9488_CABCCTRL3 0xC9 // CABC Control 3 -#define ILI9488_CABCCTRL4 0xCA // CABC Control 4 -#define ILI9488_CABCCTRL5 0xCB // CABC Control 5 -#define ILI9488_CABCCTRL6 0xCC // CABC Control 6 -#define ILI9488_CABCCTRL7 0xCD // CABC Control 7 -#define ILI9488_CABCCTRL8 0xCE // CABC Control 8 -#define ILI9488_CABCCTRL9 0xCF // CABC Control 9 -#define ILI9488_NVMWR 0xD0 // NV Memory Write -#define ILI9488_NVMPKEY 0xD1 // NV Memory Protection Key -#define ILI9488_RDNVM 0xD2 // NV Memory Status Read -#define ILI9488_RDID4 0xD3 // Read ID4 - 0x009488 -#define ILI9488_ADJCTL1 0xD7 // Adjust Control 1 -#define ILI9488_RDIDV 0xD8 // Read ID Version -#define ILI9488_PGAMCTRL 0xE0 // Positive Gamma Control -#define ILI9488_NGAMCTRL 0xE1 // Negative Gamma Control -#define ILI9488_DGAMCTRL1 0xE2 // Ditigal Gamma Control 1 -#define ILI9488_DGAMCTRL2 0xE3 // Ditigal Gamma Control 2 -#define ILI9488_SETIMAGE 0xE9 // Set Image Function -#define ILI9488_ADJCTL2 0xF2 // Adjust Control 2 -#define ILI9488_ADJCTL3 0xF7 // Adjust Control 3 -#define ILI9488_ADJCTL4 0xF8 // Adjust Control 4 -#define ILI9488_ADJCTL5 0xF9 // Adjust Control 5 -#define ILI9488_RDEXTC 0xFB // Read EXTC command is SPI mode -#define ILI9488_ADJCTL6 0xFC // Adjust Control 6 -#define ILI9488_ADJCTL7 0xFF // Adjust Control 7 +#define ILI9488_IFMODE 0xB0 // Interface Mode Control +#define ILI9488_FRMCTR1 0xB1 // Frame Rate Control (In Normal Mode/Full Colors) +#define ILI9488_FRMCTR2 0xB2 // Frame Rate Control (In Idle Mode/8 Colors) +#define ILI9488_FRMCTR3 0xB3 // Frame Rate Control (In Partial Mode/Full Colors) +#define ILI9488_INVTR 0xB4 // Display Inversion Control +#define ILI9488_PRCTR 0xB5 // Blanking Porch Control +#define ILI9488_DISCTRL 0xB6 // Display Function Control +#define ILI9488_ETMOD 0xB7 // Entry Mode Set +#define ILI9488_CECTRL1 0xB9 // Color Enhancement Control 1 +#define ILI9488_CECTRL2 0xBA // Color Enhancement Control 2 +#define ILI9488_HSLCTRL 0xBE // HS Lanes Control +#define ILI9488_PWCTRL1 0xC0 // Power Control 1 +#define ILI9488_PWCTRL2 0xC1 // Power Control 2 +#define ILI9488_PWCTRL3 0xC2 // Power Control 3 (For Normal Mode) +#define ILI9488_PWCTRL4 0xC3 // Power Control 4 (For Idle Mode) +#define ILI9488_PWCTRL5 0xC4 // Power Control 5 (For Partial Mode) +#define ILI9488_VMCTRL 0xC5 // VCOM Control +#define ILI9488_CABCCTRL1 0xC6 // CABC Control 1 +#define ILI9488_CABCCTRL2 0xC8 // CABC Control 2 +#define ILI9488_CABCCTRL3 0xC9 // CABC Control 3 +#define ILI9488_CABCCTRL4 0xCA // CABC Control 4 +#define ILI9488_CABCCTRL5 0xCB // CABC Control 5 +#define ILI9488_CABCCTRL6 0xCC // CABC Control 6 +#define ILI9488_CABCCTRL7 0xCD // CABC Control 7 +#define ILI9488_CABCCTRL8 0xCE // CABC Control 8 +#define ILI9488_CABCCTRL9 0xCF // CABC Control 9 +#define ILI9488_NVMWR 0xD0 // NV Memory Write +#define ILI9488_NVMPKEY 0xD1 // NV Memory Protection Key +#define ILI9488_RDNVM 0xD2 // NV Memory Status Read +#define ILI9488_RDID4 0xD3 // Read ID4 - 0x009488 +#define ILI9488_ADJCTL1 0xD7 // Adjust Control 1 +#define ILI9488_RDIDV 0xD8 // Read ID Version +#define ILI9488_PGAMCTRL 0xE0 // Positive Gamma Control +#define ILI9488_NGAMCTRL 0xE1 // Negative Gamma Control +#define ILI9488_DGAMCTRL1 0xE2 // Ditigal Gamma Control 1 +#define ILI9488_DGAMCTRL2 0xE3 // Ditigal Gamma Control 2 +#define ILI9488_SETIMAGE 0xE9 // Set Image Function +#define ILI9488_ADJCTL2 0xF2 // Adjust Control 2 +#define ILI9488_ADJCTL3 0xF7 // Adjust Control 3 +#define ILI9488_ADJCTL4 0xF8 // Adjust Control 4 +#define ILI9488_ADJCTL5 0xF9 // Adjust Control 5 +#define ILI9488_RDEXTC 0xFB // Read EXTC command is SPI mode +#define ILI9488_ADJCTL6 0xFC // Adjust Control 6 +#define ILI9488_ADJCTL7 0xFF // Adjust Control 7 static const uint16_t ili9488_init[] = { DATASIZE_8BIT, @@ -154,10 +154,20 @@ static const uint16_t ili9488_init[] = { ESC_REG(ILI9488_MADCTL), ILI9488_MADCTL_DATA, ESC_REG(ILI9488_COLMOD), 0x0055, + ESC_REG(ILI9488_FRMCTR1), 0x00A0, + ESC_REG(ILI9488_INVTR), 0x0002, + ESC_REG(ILI9488_DISCTRL), 0x0002, 0x0002, // Gate Scan sequence: 0, Source Scan sequence: 0 + ESC_REG(ILI9488_PWCTRL1), 0x0015, 0x0017, + ESC_REG(ILI9488_PWCTRL2), 0x0041, + ESC_REG(ILI9488_VMCTRL), 0x0000, 0x0012, 0x0080, + ESC_REG(ILI9488_SETIMAGE), 0x0000, + ESC_REG(ILI9488_ADJCTL3), 0x00A9, 0x0051, 0x002C, 0x0082, + /* Gamma Correction. */ ESC_REG(ILI9488_PGAMCTRL), 0x0000, 0x0003, 0x0009, 0x0008, 0x0016, 0x000A, 0x003F, 0x0078, 0x004C, 0x0009, 0x000A, 0x0008, 0x0016, 0x001A, 0x000F, ESC_REG(ILI9488_NGAMCTRL), 0x0000, 0x0016, 0x0019, 0x0003, 0x000F, 0x0005, 0x0032, 0x0045, 0x0046, 0x0004, 0x000E, 0x000D, 0x0035, 0x0037, 0x000F, + ESC_REG(TERN(ILI9488_INVERTED, ILI9488_INVON, ILI9488_INVOFF)), // Display inversion ESC_REG(ILI9488_NORON), ESC_REG(ILI9488_DISON), ESC_END diff --git a/Marlin/src/lcd/tft_io/r65105.h b/Marlin/src/lcd/tft_io/r65105.h index 8be2afe442..4cc8c99942 100644 --- a/Marlin/src/lcd/tft_io/r65105.h +++ b/Marlin/src/lcd/tft_io/r65105.h @@ -41,7 +41,7 @@ #define R61505_DRVCTRL_GS 0x8000 // Gate Scan direction -// MKS Robin TFT v1.1 - 320x240 ; Cable on the left side +// MKS Robin TFT v1.1 - 320x240 ; FPC cable on the left side #if TFT_ROTATION == TFT_ROTATE_180 #define R61505_DRVCTL_DATA 0x0000 diff --git a/Marlin/src/lcd/tft_io/st7789v.h b/Marlin/src/lcd/tft_io/st7789v.h index d0cf969c66..690e530717 100644 --- a/Marlin/src/lcd/tft_io/st7789v.h +++ b/Marlin/src/lcd/tft_io/st7789v.h @@ -33,10 +33,11 @@ #define ST7789V_MADCTL_RGB 0x00 #define ST7789V_MADCTL_MH 0x04 // Horizontal Refresh Order -#define ST7789V_ORIENTATION_UP ST7789V_MADCTL_MX | ST7789V_MADCTL_MY // 240x320 ; Cable on the upper side -#define ST7789V_ORIENTATION_RIGHT ST7789V_MADCTL_MX | ST7789V_MADCTL_MV // 320x240 ; Cable on the right side -#define ST7789V_ORIENTATION_LEFT ST7789V_MADCTL_MY | ST7789V_MADCTL_MV // 320x240 ; Cable on the left side -#define ST7789V_ORIENTATION_DOWN 0 // 240x320 ; Cable on the lower side +// ST7789V-specific: "MX Inversion" is enabled by default in LCM Control register. +#define ST7789V_ORIENTATION_TOP ST7789V_MADCTL_MX | ST7789V_MADCTL_MY // 240x320 ; PFC cable on the top side +#define ST7789V_ORIENTATION_RIGHT ST7789V_MADCTL_MX | ST7789V_MADCTL_MV // 320x240 ; PFC cable on the right side +#define ST7789V_ORIENTATION_LEFT ST7789V_MADCTL_MY | ST7789V_MADCTL_MV // 320x240 ; PFC cable on the left side +#define ST7789V_ORIENTATION_BOTTOM 0 // 240x320 ; PFC cable on the bottom side #define ST7789V_ORIENTATION IF_0((TFT_ORIENTATION) & TFT_EXCHANGE_XY, ST7789V_MADCTL_MV) | \ IF_0((TFT_ORIENTATION) & TFT_INVERT_X, ST7789V_MADCTL_MX) | \ @@ -141,7 +142,22 @@ static const uint16_t st7789v_init[] = { ESC_REG(ST7789V_PORCTRL), 0x000C, 0x000C, 0x0000, 0x0033, 0x0033, ESC_REG(ST7789V_GCTRL), 0x0035, ESC_REG(ST7789V_VCOMS), 0x001F, - ESC_REG(ST7789V_LCMCTRL), 0x002C, + + /** + * LCM Control + * + * Default Power-on Value: 0x2C / 00101100b + * MY Inversion: 0 + * RGB/BGR Inversion: 1 + * Display Inversion: 0 + * MX Inversion: 1 + * MH (Source Output) Inversion: 1 + * MV Inversion: 0 + * Gate Scan Inversion: 0 + */ + ESC_REG(ST7789V_LCMCTRL), 0x002C, // Default Power-on Value + ESC_REG(ST7789V_GATECTRL), 0x0027, 0x0000, 0x0010, // Gate Scan Direction: 0 + ESC_REG(ST7789V_VDVVRHEN), 0x0001, 0x00C3, ESC_REG(ST7789V_VDVS), 0x0020, ESC_REG(ST7789V_FRCTRL2), 0x000F, diff --git a/Marlin/src/lcd/tft_io/st7796s.h b/Marlin/src/lcd/tft_io/st7796s.h index 6d79dd882a..bca8d602ef 100644 --- a/Marlin/src/lcd/tft_io/st7796s.h +++ b/Marlin/src/lcd/tft_io/st7796s.h @@ -33,6 +33,11 @@ #define ST7796S_MADCTL_RGB 0x00 #define ST7796S_MADCTL_MH 0x04 // Horizontal Refresh Order +#define ST7796S_ORIENTATION_TOP ST7796S_MADCTL_MX // 320x480 ; FPC cable on the top side +#define ST7796S_ORIENTATION_RIGHT ST7796S_MADCTL_MV // 480x320 ; FPC cable on the right side +#define ST7796S_ORIENTATION_LEFT ST7796S_MADCTL_MY | ST7796S_MADCTL_MX | ST7796S_MADCTL_MV // 480x320 ; FPC cable on the left side +#define ST7796S_ORIENTATION_BOTTOM ST7796S_MADCTL_MY // 320x480 ; FPC cable on the bottom side + #define ST7796S_ORIENTATION IF_0((TFT_ORIENTATION) & TFT_EXCHANGE_XY, ST7796S_MADCTL_MV) | \ IF_0((TFT_ORIENTATION) & TFT_INVERT_X, ST7796S_MADCTL_MX) | \ IF_0((TFT_ORIENTATION) & TFT_INVERT_Y, ST7796S_MADCTL_MY) @@ -132,6 +137,7 @@ static const uint16_t st7796s_init[] = { ESC_REG(ST7796S_COLMOD), 0x0055, ESC_REG(ST7796S_DIC), 0x0001, // 1-dot inversion + ESC_REG(ST7796S_DFC), 0x0080, 0x0002, 0x003B, // Source Output Scan Direction: 0, Gate Output Scan Direction: 0 ESC_REG(ST7796S_EM), 0x00C6, ESC_REG(ST7796S_PWR2), 0x0015, @@ -144,11 +150,7 @@ static const uint16_t st7796s_init[] = { ESC_REG(ST7796S_PGC), 0x00F0, 0x0004, 0x0008, 0x0009, 0x0008, 0x0015, 0x002F, 0x0042, 0x0046, 0x0028, 0x0015, 0x0016, 0x0029, 0x002D, ESC_REG(ST7796S_NGC), 0x00F0, 0x0004, 0x0009, 0x0009, 0x0008, 0x0015, 0x002E, 0x0046, 0x0046, 0x0028, 0x0015, 0x0015, 0x0029, 0x002D, - #if ENABLED(ST7796S_INVERTED) - ESC_REG(ST7796S_INVON), // Display inversion ON - #else - ESC_REG(ST7796S_NORON), - #endif + ESC_REG(TERN(ST7796S_INVERTED, ST7796S_INVON, ST7796S_NORON)), // Display inversion ESC_REG(ST7796S_WRCTRLD), 0x0024, ESC_REG(ST7796S_CSCON), 0x003C, // disable command 2 part I ESC_REG(ST7796S_CSCON), 0x0069, // disable command 2 part II diff --git a/Marlin/src/lcd/tft_io/tft_io.cpp b/Marlin/src/lcd/tft_io/tft_io.cpp index 294c146d5c..d46c2de418 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_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_HASET); + io.writeData(yMin); + io.writeReg(ILI9328_VASET); + io.writeData(xMin); - io.WriteReg(ILI9328_RAMWR); + 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 9cfb2137df..98ce740726 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -24,21 +24,19 @@ #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 -#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 -#include "tft_orientation.h" - #ifndef TFT_DRIVER #define TFT_DRIVER AUTO #endif @@ -52,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(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 - 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/tft_io/tft_orientation.h b/Marlin/src/lcd/tft_io/tft_orientation.h index 7822fc6b04..5315615799 100644 --- a/Marlin/src/lcd/tft_io/tft_orientation.h +++ b/Marlin/src/lcd/tft_io/tft_orientation.h @@ -52,34 +52,12 @@ // 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) #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 - -#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.cpp b/Marlin/src/lcd/tft_io/touch_calibration.cpp index 44ebc73d71..3cd73fe620 100644 --- a/Marlin/src/lcd/tft_io/touch_calibration.cpp +++ b/Marlin/src/lcd/tft_io/touch_calibration.cpp @@ -41,6 +41,7 @@ touch_calibration_t TouchCalibration::calibration; calibrationState TouchCalibration::calibration_state = CALIBRATION_NONE; touch_calibration_point_t TouchCalibration::calibration_points[4]; uint8_t TouchCalibration::failed_count; +millis_t TouchCalibration::next_touch_update_ms; // = 0; void TouchCalibration::validate_calibration() { #define VALIDATE_PRECISION(XY, A, B) validate_precision_##XY(CALIBRATION_##A, CALIBRATION_##B) @@ -74,7 +75,7 @@ void TouchCalibration::validate_calibration() { else { calibration_state = CALIBRATION_FAIL; calibration_reset(); - if (need_calibration() && failed_count++ < TOUCH_CALIBRATION_MAX_RETRIES) calibration_state = CALIBRATION_TOP_LEFT; + if (need_calibration() && failed_count++ < TOUCH_CALIBRATION_MAX_RETRIES) calibration_state = CALIBRATION_NONE; } #undef CAL_PTS @@ -89,11 +90,11 @@ void TouchCalibration::validate_calibration() { } } -bool TouchCalibration::handleTouch(uint16_t x, uint16_t y) { - static millis_t next_button_update_ms = 0; +bool TouchCalibration::handleTouch(const uint16_t x, const uint16_t y) { const millis_t now = millis(); - if (PENDING(now, next_button_update_ms)) return false; - next_button_update_ms = now + BUTTON_DELAY_MENU; + + if (next_touch_update_ms && PENDING(now, next_touch_update_ms)) return false; + next_touch_update_ms = now + BUTTON_DELAY_MENU; if (calibration_state < CALIBRATION_SUCCESS) { calibration_points[calibration_state].raw_x = x; @@ -102,10 +103,10 @@ bool TouchCalibration::handleTouch(uint16_t x, 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 abd5667700..2dd8a81ab7 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 @@ -45,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, @@ -57,6 +55,7 @@ class TouchCalibration { public: static calibrationState calibration_state; static touch_calibration_point_t calibration_points[4]; + static millis_t next_touch_update_ms; static bool validate_precision(int32_t a, int32_t b) { return (a > b ? (100 * b) / a : (100 * a) / b) > TOUCH_SCREEN_CALIBRATION_PRECISION; } static bool validate_precision_x(uint8_t a, uint8_t b) { return validate_precision(calibration_points[a].raw_x, calibration_points[b].raw_x); } @@ -64,21 +63,22 @@ public: static void validate_calibration(); static touch_calibration_t calibration; - static uint8_t failed_count; + static uint8_t failed_count; static void calibration_reset() { calibration = { TOUCH_CALIBRATION_X, TOUCH_CALIBRATION_Y, TOUCH_OFFSET_X, TOUCH_OFFSET_Y, TOUCH_ORIENTATION }; } static bool need_calibration() { return !calibration.offset_x && !calibration.offset_y && !calibration.x && !calibration.y; } static calibrationState calibration_start() { + next_touch_update_ms = millis() + 750UL; calibration = { 0, 0, 0, 0, TOUCH_ORIENTATION_NONE }; 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; } @@ -89,7 +89,7 @@ public: return !need_calibration(); } - static bool handleTouch(uint16_t x, uint16_t y); + static bool handleTouch(const uint16_t x, const uint16_t y); }; extern TouchCalibration touch_calibration; diff --git a/Marlin/src/lcd/touch/touch_buttons.cpp b/Marlin/src/lcd/touch/touch_buttons.cpp index d641dd3b1c..1ae5397b2e 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." @@ -60,12 +60,12 @@ 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)); } uint8_t TouchButtons::read_buttons() { - #ifdef HAS_WIRED_LCD + #if HAS_WIRED_LCD int16_t x, y; #if ENABLED(TFT_TOUCH_DEVICE_XPT2046) @@ -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; } @@ -91,7 +91,7 @@ uint8_t TouchButtons::read_buttons() { 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 ? touchIO.getPoint(&y, &x) : touchIO.getPoint(&x, &y)); + const bool is_touched = (TOUCH_ORIENTATION == TOUCH_PORTRAIT ? touchIO.getPoint(&y, &x) : touchIO.getPoint(&x, &y)); if (!is_touched) return 0; #endif diff --git a/Marlin/src/lcd/fontutils.cpp b/Marlin/src/lcd/utf8.cpp similarity index 94% rename from Marlin/src/lcd/fontutils.cpp rename to Marlin/src/lcd/utf8.cpp index 46329fd4be..6957fffc64 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); } @@ -173,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; @@ -203,3 +202,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 69edf1a0c8..6031818571 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/libs/BL24CXX.cpp b/Marlin/src/libs/BL24CXX.cpp index 4b5a23e4c5..adfdc1387c 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/BL24CXX.h b/Marlin/src/libs/BL24CXX.h index b069c196c0..654ceffc3e 100644 --- a/Marlin/src/libs/BL24CXX.h +++ b/Marlin/src/libs/BL24CXX.h @@ -23,7 +23,7 @@ /******************************************************************************** * @file BL24CXX.h - * @brief i2c EEPROM for Ender 3 v2 board (4.2.2) + * @brief i2c EEPROM for Ender-3 v2 board (4.2.2) ********************************************************************************/ /******************** IIC ********************/ diff --git a/Marlin/src/libs/MAX31865.h b/Marlin/src/libs/MAX31865.h index 95bde756ce..3e9b0c139f 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.cpp b/Marlin/src/libs/W25Qxx.cpp index 591d0d0693..558d604ea5 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) { diff --git a/Marlin/src/libs/W25Qxx.h b/Marlin/src/libs/W25Qxx.h index 778463477d..55490b0252 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/libs/buzzer.h b/Marlin/src/libs/buzzer.h index cd8e17d004..f6d5b49d73 100644 --- a/Marlin/src/libs/buzzer.h +++ b/Marlin/src/libs/buzzer.h @@ -27,7 +27,9 @@ #include "circularqueue.h" - #define TONE_QUEUE_LENGTH 4 + #ifndef TONE_QUEUE_LENGTH + #define TONE_QUEUE_LENGTH 4 + #endif /** * @brief Tone structure @@ -115,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/libs/duration_t.h b/Marlin/src/libs/duration_t.h index 69a648441f..d648924dc9 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,11 +112,12 @@ 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 * (21 for the string, 1 more for the terminating nul) + * @param dense Whether to skip spaces in the resulting string * * Output examples: * 123456789012345678901 (strlen) @@ -142,10 +143,42 @@ struct duration_t { } /** - * @brief Formats the duration as a string + * @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) diff --git a/Marlin/src/libs/nozzle.cpp b/Marlin/src/libs/nozzle.cpp index 575e74a814..10ebd71efd 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" @@ -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 + + // Start the stroke pattern + 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); + #else + do_blocking_move_to_xy(end); + do_blocking_move_to_xy(start); + #endif + } + + TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(oldpos)); } + #endif - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(oldpos)); - } + #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; - /** - * @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_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 - #if ENABLED(NOZZLE_CLEAN_NO_Z) + 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; + for (uint8_t j = 0; j < strokes; ++j) { + 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); + } + } + + 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); + + 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 + ); + + // Let's be safe 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); - } + TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); } - - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); - } - - /** - * @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 - ); - - // Let's be safe - do_blocking_move_to_xy(start); - - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); - } + #endif /** * @brief Clean the nozzle @@ -158,10 +164,25 @@ 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) { - xyz_pos_t start[HOTENDS] = NOZZLE_CLEAN_START_POINT, end[HOTENDS] = NOZZLE_CLEAN_END_POINT, middle[HOTENDS] = NOZZLE_CLEAN_CIRCLE_MIDDLE; + 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; + #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) + 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) { @@ -179,45 +200,46 @@ 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); + switch (pattern) { // no default clause as pattern is already validated + #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) + 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; + #endif + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + case 2: circle(start[arrPos], middle[arrPos], strokes, radius); break; + #endif } } @@ -225,38 +247,43 @@ Nozzle nozzle; #if ENABLED(NOZZLE_PARK_FEATURE) - float Nozzle::park_mode_0_height(const_float_t park_z) { - // Apply a minimum raise, if specified. Use park.z as a minimum height instead. - return _MAX(park_z, // Minimum height over 0 based on input - _MIN(Z_MAX_POS, // Maximum height is fixed - #ifdef NOZZLE_PARK_Z_RAISE_MIN - NOZZLE_PARK_Z_RAISE_MIN + // Minimum raise... - #endif - current_position.z // ...over current position - ) - ); - } + #if HAS_Z_AXIS + float Nozzle::park_mode_0_height(const_float_t park_z) { + // Apply a minimum raise, if specified. Use park.z as a minimum height instead. + return _MAX(park_z, // Minimum height over 0 based on input + _MIN(Z_MAX_POS, // Maximum height is fixed + #ifdef NOZZLE_PARK_Z_RAISE_MIN + NOZZLE_PARK_Z_RAISE_MIN + // Minimum raise... + #endif + current_position.z // ...over current position + ) + ); + } + #endif // HAS_Z_AXIS void Nozzle::park(const uint8_t z_action, const xyz_pos_t &park/*=NOZZLE_PARK_POINT*/) { - constexpr feedRate_t fr_xy = NOZZLE_PARK_XY_FEEDRATE, fr_z = NOZZLE_PARK_Z_FEEDRATE; + #if HAS_Z_AXIS + constexpr feedRate_t fr_z = NOZZLE_PARK_Z_FEEDRATE; - switch (z_action) { - case 1: // Go to Z-park height - do_blocking_move_to_z(park.z, fr_z); - break; + switch (z_action) { + case 1: // Go to Z-park height + do_blocking_move_to_z(park.z, fr_z); + break; - case 2: // Raise by Z-park height - do_blocking_move_to_z(_MIN(current_position.z + park.z, Z_MAX_POS), fr_z); - break; + case 2: // Raise by Z-park height + do_blocking_move_to_z(_MIN(current_position.z + park.z, Z_MAX_POS), fr_z); + break; - default: // Raise by NOZZLE_PARK_Z_RAISE_MIN, use park.z as a minimum height - do_blocking_move_to_z(park_mode_0_height(park.z), fr_z); - break; - } + default: // Raise by NOZZLE_PARK_Z_RAISE_MIN, use park.z as a minimum height + do_blocking_move_to_z(park_mode_0_height(park.z), fr_z); + break; + } + #endif // HAS_Z_AXIS #ifndef NOZZLE_PARK_MOVE #define NOZZLE_PARK_MOVE 0 #endif + constexpr feedRate_t fr_xy = NOZZLE_PARK_XY_FEEDRATE; switch (NOZZLE_PARK_MOVE) { case 0: do_blocking_move_to_xy(park, fr_xy); break; case 1: do_blocking_move_to_x(park.x, fr_xy); break; diff --git a/Marlin/src/libs/nozzle.h b/Marlin/src/libs/nozzle.h index 69790f5a67..fb47c867f2 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 diff --git a/Marlin/src/libs/numtostr.cpp b/Marlin/src/libs/numtostr.cpp index c28d1246d6..e273732635 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; } -#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) +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 >= (T1)f ? DIGIMOD(n, f) : ' '); } + +template +constexpr char MINUSOR(T &n, const char alt) { return (n >= 0) ? alt : (n = -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) { @@ -423,3 +434,34 @@ const char* ftostr52sp(const_float_t f) { } return &conv[1]; } + +// Convert unsigned 16bit int to string 1, 12, 123 format, capped at 999 +const char* utostr3(const uint16_t x) { + return i16tostr3left(_MIN(x, 999U)); +} + +// Convert signed float to space-padded string with 1.23, 12.34, 123.45 format +const char* ftostr52sprj(const_float_t f) { + long i = INTFLOAT(f, 2); + LIMIT(i, -99999, 99999); // cap to -999.99 - 999.99 range + if (WITHIN(i, -999, 999)) { // -9.99 - 9.99 range + conv[1] = conv[2] = ' '; // default to ' ' for smaller numbers + conv[3] = MINUSOR(i, ' '); + } + else if (WITHIN(i, -9999, 9999)) { // -99.99 - 99.99 range + conv[1] = ' '; + conv[2] = MINUSOR(i, ' '); + conv[3] = DIGIMOD(i, 1000); + } + else { // -999.99 - 999.99 range + conv[1] = MINUSOR(i, ' '); + conv[2] = DIGIMOD(i, 10000); + conv[3] = DIGIMOD(i, 1000); + } + conv[4] = DIGIMOD(i, 100); // always convert last 3 digits + conv[5] = '.'; + conv[6] = DIGIMOD(i, 10); + conv[7] = DIGIMOD(i, 1); + + return &conv[1]; +} diff --git a/Marlin/src/libs/numtostr.h b/Marlin/src/libs/numtostr.h index 047b22cd17..f8af09ebee 100644 --- a/Marlin/src/libs/numtostr.h +++ b/Marlin/src/libs/numtostr.h @@ -56,7 +56,7 @@ const char* ui16tostr3rj(const uint16_t x); // Convert int16_t to string with 123 format const char* i16tostr3rj(const int16_t x); -// Convert unsigned int to lj string with 123 format +// Convert signed int to lj string with 123 format const char* i16tostr3left(const int16_t xx); // Convert signed int to rj string with _123, -123, _-12, or __-1 format @@ -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 @@ -129,3 +129,9 @@ FORCE_INLINE const char* ftostr3(const_float_t x) { return i16tostr3rj(int16_t(x // Convert float to rj string with 1234, _123, -123, __12, _-12, ___1, or __-1 format FORCE_INLINE const char* ftostr4sign(const_float_t x) { return i16tostr4signrj(int16_t(x + (x < 0 ? -0.5f : 0.5f))); } #endif + +// Convert unsigned int to string 1, 12, 123 format, capped at 999 +const char* utostr3(const uint16_t x); + +// Convert signed float to space-padded string with 1.23, 12.34, 123.45 format +const char* ftostr52sprj(const_float_t f); diff --git a/Marlin/src/libs/vector_3.cpp b/Marlin/src/libs/vector_3.cpp index 02945fe687..5668d2f392 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) + ); } /** @@ -93,8 +94,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 +132,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) { + 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); SERIAL_CHAR(' '); } diff --git a/Marlin/src/libs/vector_3.h b/Marlin/src/libs/vector_3.h index 58bdb43c7b..ab719c6a7f 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/delta.cpp b/Marlin/src/module/delta.cpp index 58dc13972c..cfa134860b 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 0a0c6124ee..041094fd7f 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/endstops.cpp b/Marlin/src/module/endstops.cpp index b558df446a..93e6851a4a 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -31,14 +31,14 @@ #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) - #include HAL_PATH(../HAL, endstop_interrupts.h) + #include HAL_PATH(.., endstop_interrupts.h) #endif -#if BOTH(SD_ABORT_ON_ENDSTOP_HIT, SDSUPPORT) +#if ENABLED(SD_ABORT_ON_ENDSTOP_HIT) #include "printcounter.h" // for print_job_timer #endif @@ -69,7 +69,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 @@ -113,284 +117,90 @@ Endstops::endstop_mask_t Endstops::live_state = 0; void Endstops::init() { - #if HAS_X_MIN - #if ENABLED(ENDSTOPPULLUP_XMIN) - SET_INPUT_PULLUP(X_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_XMIN) - SET_INPUT_PULLDOWN(X_MIN_PIN); - #else - SET_INPUT(X_MIN_PIN); - #endif + #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 USE_X_MIN + _INIT_ENDSTOP(MIN,X,); #endif - - #if HAS_X2_MIN - #if ENABLED(ENDSTOPPULLUP_XMIN) - SET_INPUT_PULLUP(X2_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_XMIN) - SET_INPUT_PULLDOWN(X2_MIN_PIN); - #else - SET_INPUT(X2_MIN_PIN); - #endif + #if USE_X_MAX + _INIT_ENDSTOP(MAX,X,); #endif - - #if HAS_Y_MIN - #if ENABLED(ENDSTOPPULLUP_YMIN) - SET_INPUT_PULLUP(Y_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_YMIN) - SET_INPUT_PULLDOWN(Y_MIN_PIN); - #else - SET_INPUT(Y_MIN_PIN); - #endif + #if USE_X2_MIN + _INIT_ENDSTOP(MIN,X,2); #endif - - #if HAS_Y2_MIN - #if ENABLED(ENDSTOPPULLUP_YMIN) - SET_INPUT_PULLUP(Y2_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_YMIN) - SET_INPUT_PULLDOWN(Y2_MIN_PIN); - #else - SET_INPUT(Y2_MIN_PIN); - #endif + #if USE_X2_MAX + _INIT_ENDSTOP(MAX,X,2); #endif - - #if HAS_Z_MIN - #if ENABLED(ENDSTOPPULLUP_ZMIN) - SET_INPUT_PULLUP(Z_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMIN) - SET_INPUT_PULLDOWN(Z_MIN_PIN); - #else - SET_INPUT(Z_MIN_PIN); - #endif + #if USE_Y_MIN + _INIT_ENDSTOP(MIN,Y,); #endif - - #if HAS_Z2_MIN - #if ENABLED(ENDSTOPPULLUP_ZMIN) - SET_INPUT_PULLUP(Z2_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMIN) - SET_INPUT_PULLDOWN(Z2_MIN_PIN); - #else - SET_INPUT(Z2_MIN_PIN); - #endif + #if USE_Y_MAX + _INIT_ENDSTOP(MAX,Y,); #endif - - #if HAS_Z3_MIN - #if ENABLED(ENDSTOPPULLUP_ZMIN) - SET_INPUT_PULLUP(Z3_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMIN) - SET_INPUT_PULLDOWN(Z3_MIN_PIN); - #else - SET_INPUT(Z3_MIN_PIN); - #endif + #if USE_Y2_MIN + _INIT_ENDSTOP(MIN,Y,2); #endif - - #if HAS_Z4_MIN - #if ENABLED(ENDSTOPPULLUP_ZMIN) - SET_INPUT_PULLUP(Z4_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMIN) - SET_INPUT_PULLDOWN(Z4_MIN_PIN); - #else - SET_INPUT(Z4_MIN_PIN); - #endif + #if USE_Y2_MAX + _INIT_ENDSTOP(MAX,Y,2); #endif - - #if HAS_X_MAX - #if ENABLED(ENDSTOPPULLUP_XMAX) - SET_INPUT_PULLUP(X_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_XMAX) - SET_INPUT_PULLDOWN(X_MAX_PIN); - #else - SET_INPUT(X_MAX_PIN); - #endif + #if USE_Z_MIN + _INIT_ENDSTOP(MIN,Z,); #endif - - #if HAS_X2_MAX - #if ENABLED(ENDSTOPPULLUP_XMAX) - SET_INPUT_PULLUP(X2_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_XMAX) - SET_INPUT_PULLDOWN(X2_MAX_PIN); - #else - SET_INPUT(X2_MAX_PIN); - #endif + #if USE_Z_MAX + _INIT_ENDSTOP(MAX,Z,); #endif - - #if HAS_Y_MAX - #if ENABLED(ENDSTOPPULLUP_YMAX) - SET_INPUT_PULLUP(Y_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_YMAX) - SET_INPUT_PULLDOWN(Y_MAX_PIN); - #else - SET_INPUT(Y_MAX_PIN); - #endif + #if USE_Z2_MIN + _INIT_ENDSTOP(MIN,Z,2); #endif - - #if HAS_Y2_MAX - #if ENABLED(ENDSTOPPULLUP_YMAX) - SET_INPUT_PULLUP(Y2_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_YMAX) - SET_INPUT_PULLDOWN(Y2_MAX_PIN); - #else - SET_INPUT(Y2_MAX_PIN); - #endif + #if USE_Z2_MAX + _INIT_ENDSTOP(MAX,Z,2); #endif - - #if HAS_Z_MAX - #if ENABLED(ENDSTOPPULLUP_ZMAX) - SET_INPUT_PULLUP(Z_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMAX) - SET_INPUT_PULLDOWN(Z_MAX_PIN); - #else - SET_INPUT(Z_MAX_PIN); - #endif + #if USE_Z3_MIN + _INIT_ENDSTOP(MIN,Z,3); #endif - - #if HAS_Z2_MAX - #if ENABLED(ENDSTOPPULLUP_ZMAX) - SET_INPUT_PULLUP(Z2_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMAX) - SET_INPUT_PULLDOWN(Z2_MAX_PIN); - #else - SET_INPUT(Z2_MAX_PIN); - #endif + #if USE_Z3_MAX + _INIT_ENDSTOP(MAX,Z,3); #endif - - #if HAS_Z3_MAX - #if ENABLED(ENDSTOPPULLUP_ZMAX) - SET_INPUT_PULLUP(Z3_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMAX) - SET_INPUT_PULLDOWN(Z3_MAX_PIN); - #else - SET_INPUT(Z3_MAX_PIN); - #endif + #if USE_Z4_MIN + _INIT_ENDSTOP(MIN,Z,4); #endif - - #if HAS_Z4_MAX - #if ENABLED(ENDSTOPPULLUP_ZMAX) - SET_INPUT_PULLUP(Z4_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_ZMAX) - SET_INPUT_PULLDOWN(Z4_MAX_PIN); - #else - SET_INPUT(Z4_MAX_PIN); - #endif + #if USE_Z4_MAX + _INIT_ENDSTOP(MAX,Z,4); #endif - - #if HAS_I_MIN - #if ENABLED(ENDSTOPPULLUP_IMIN) - SET_INPUT_PULLUP(I_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_IMIN) - SET_INPUT_PULLDOWN(I_MIN_PIN); - #else - SET_INPUT(I_MIN_PIN); - #endif + #if USE_I_MIN + _INIT_ENDSTOP(MIN,I,); #endif - - #if HAS_I_MAX - #if ENABLED(ENDSTOPPULLUP_IMAX) - SET_INPUT_PULLUP(I_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_IMAX) - SET_INPUT_PULLDOWN(I_MAX_PIN); - #else - SET_INPUT(I_MAX_PIN); - #endif + #if USE_I_MAX + _INIT_ENDSTOP(MAX,I,); #endif - - #if HAS_J_MIN - #if ENABLED(ENDSTOPPULLUP_JMIN) - SET_INPUT_PULLUP(J_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_IMIN) - SET_INPUT_PULLDOWN(J_MIN_PIN); - #else - SET_INPUT(J_MIN_PIN); - #endif + #if USE_J_MIN + _INIT_ENDSTOP(MIN,J,); #endif - - #if HAS_J_MAX - #if ENABLED(ENDSTOPPULLUP_JMAX) - SET_INPUT_PULLUP(J_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_JMAX) - SET_INPUT_PULLDOWN(J_MAX_PIN); - #else - SET_INPUT(J_MAX_PIN); - #endif + #if USE_J_MAX + _INIT_ENDSTOP(MAX,J,); #endif - - #if HAS_K_MIN - #if ENABLED(ENDSTOPPULLUP_KMIN) - SET_INPUT_PULLUP(K_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_KMIN) - SET_INPUT_PULLDOWN(K_MIN_PIN); - #else - SET_INPUT(K_MIN_PIN); - #endif + #if USE_K_MIN + _INIT_ENDSTOP(MIN,K,); #endif - - #if HAS_K_MAX - #if ENABLED(ENDSTOPPULLUP_KMAX) - SET_INPUT_PULLUP(K_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_KMIN) - SET_INPUT_PULLDOWN(K_MAX_PIN); - #else - SET_INPUT(K_MAX_PIN); - #endif + #if USE_K_MAX + _INIT_ENDSTOP(MAX,K,); #endif - - #if HAS_U_MIN - #if ENABLED(ENDSTOPPULLUP_UMIN) - SET_INPUT_PULLUP(U_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_UMIN) - SET_INPUT_PULLDOWN(U_MIN_PIN); - #else - SET_INPUT(U_MIN_PIN); - #endif + #if USE_U_MIN + _INIT_ENDSTOP(MIN,U,); #endif - - #if HAS_U_MAX - #if ENABLED(ENDSTOPPULLUP_UMAX) - SET_INPUT_PULLUP(U_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_UMIN) - SET_INPUT_PULLDOWN(U_MAX_PIN); - #else - SET_INPUT(U_MAX_PIN); - #endif + #if USE_U_MAX + _INIT_ENDSTOP(MAX,U,); #endif - - #if HAS_V_MIN - #if ENABLED(ENDSTOPPULLUP_VMIN) - SET_INPUT_PULLUP(V_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_VMIN) - SET_INPUT_PULLDOWN(V_MIN_PIN); - #else - SET_INPUT(V_MIN_PIN); - #endif + #if USE_V_MIN + _INIT_ENDSTOP(MIN,V,); #endif - - #if HAS_V_MAX - #if ENABLED(ENDSTOPPULLUP_VMAX) - SET_INPUT_PULLUP(V_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_VMIN) - SET_INPUT_PULLDOWN(V_MAX_PIN); - #else - SET_INPUT(V_MAX_PIN); - #endif + #if USE_V_MAX + _INIT_ENDSTOP(MAX,V,); #endif - - #if HAS_W_MIN - #if ENABLED(ENDSTOPPULLUP_WMIN) - SET_INPUT_PULLUP(W_MIN_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_WMIN) - SET_INPUT_PULLDOWN(W_MIN_PIN); - #else - SET_INPUT(W_MIN_PIN); - #endif + #if USE_W_MIN + _INIT_ENDSTOP(MIN,W,); #endif - - #if HAS_W_MAX - #if ENABLED(ENDSTOPPULLUP_WMAX) - SET_INPUT_PULLUP(W_MAX_PIN); - #elif ENABLED(ENDSTOPPULLDOWN_WMIN) - SET_INPUT_PULLDOWN(W_MAX_PIN); - #else - SET_INPUT(W_MAX_PIN); - #endif + #if USE_W_MAX + _INIT_ENDSTOP(MAX,W,); #endif #if PIN_EXISTS(CALIBRATION) @@ -403,7 +213,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) @@ -498,7 +308,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 @@ -509,7 +319,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(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') @@ -536,7 +346,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 @@ -546,11 +356,11 @@ 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 ) ); - #if BOTH(SD_ABORT_ON_ENDSTOP_HIT, SDSUPPORT) + #if ENABLED(SD_ABORT_ON_ENDSTOP_HIT) if (planner.abort_on_endstop_hit) { card.abortFilePrintNow(); quickstop_stepper(); @@ -565,115 +375,118 @@ void Endstops::event_handler() { } } -#pragma GCC diagnostic push -#if GCC_VERSION <= 50000 - #pragma GCC diagnostic ignored "-Wunused-function" +#if NUM_AXES + + #pragma GCC diagnostic push + #if GCC_VERSION <= 50000 + #pragma GCC diagnostic ignored "-Wunused-function" + #endif + + static void print_es_state(const bool is_hit, FSTR_P const flabel=nullptr) { + if (flabel) SERIAL_ECHO(flabel); + SERIAL_ECHOLN(F(": "), is_hit ? F(STR_ENDSTOP_HIT) : F(STR_ENDSTOP_OPEN)); + } + + #pragma GCC diagnostic pop + #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)); -} - -#pragma GCC diagnostic pop - 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_INVERTING, F(STR_##S)) - #if HAS_X_MIN + #define ES_REPORT(S) print_es_state(READ_ENDSTOP(S##_PIN) == S##_ENDSTOP_HIT_STATE, F(STR_##S)) + #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 HAS_FILAMENT_SENSOR - LOOP_S_LE_N(i, 1, NUM_RUNOUT_SENSORS) { + for(int i = 1; i= 3 - #if HAS_Z3_MIN - UPDATE_ENDSTOP_BIT(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); - #else - COPY_LIVE_STATE(Z_MIN, Z4_MIN); - #endif - #endif - #endif + #if USE_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) + 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_ENDSTOP_BIT(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 - // Check both Z dual endstops - #if ENABLED(Z_MULTI_ENDSTOPS) - UPDATE_ENDSTOP_BIT(Z, MAX); - #if HAS_Z2_MAX - UPDATE_ENDSTOP_BIT(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); - #else - COPY_LIVE_STATE(Z_MAX, Z3_MAX); - #endif - #endif - #if NUM_Z_STEPPERS >= 4 - #if HAS_Z4_MAX - UPDATE_ENDSTOP_BIT(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); - #endif + #if USE_Z_MAX + UPDATE_LIVE_STATE(Z, MAX); + #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_Z3_MAX + UPDATE_LIVE_STATE(Z3, MAX); + #elif HAS_Z3_MAX_STATE + COPY_LIVE_STATE(Z_MAX, Z3_MAX); + #endif + #if USE_Z4_MAX + UPDATE_LIVE_STATE(Z4, MAX); + #elif HAS_Z4_MAX_STATE + COPY_LIVE_STATE(Z_MAX, Z4_MAX); #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 - #else - UPDATE_ENDSTOP_BIT(I, MIN); - #endif + #if USE_I_MIN + UPDATE_LIVE_STATE(I, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(I, MAX); - #endif + #if USE_I_MAX + UPDATE_LIVE_STATE(I, MAX); #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 - #else - UPDATE_ENDSTOP_BIT(J, MIN); - #endif + #if USE_J_MIN + UPDATE_LIVE_STATE(J, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(J, MAX); - #endif + #if USE_J_MAX + UPDATE_LIVE_STATE(J, MAX); #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 - #else - UPDATE_ENDSTOP_BIT(K, MIN); - #endif + #if USE_K_MIN + UPDATE_LIVE_STATE(K, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(K, MAX); - #endif + #if USE_K_MAX + UPDATE_LIVE_STATE(K, MAX); #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 - #else - UPDATE_ENDSTOP_BIT(U, MIN); - #endif + #if USE_U_MIN + UPDATE_LIVE_STATE(U, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(U, MAX); - #endif + #if USE_U_MAX + UPDATE_LIVE_STATE(U, MAX); #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 - #else - UPDATE_ENDSTOP_BIT(V, MIN); - #endif + #if USE_V_MIN + UPDATE_LIVE_STATE(V, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(V, MAX); - #endif + #if USE_V_MAX + UPDATE_LIVE_STATE(V, MAX); #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 - #else - UPDATE_ENDSTOP_BIT(W, MIN); - #endif + #if USE_W_MIN + UPDATE_LIVE_STATE(W, MIN); #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 - #else - UPDATE_ENDSTOP_BIT(W, MAX); - #endif + #if USE_W_MAX + UPDATE_LIVE_STATE(W, MAX); #endif #if ENDSTOP_NOISE_THRESHOLD @@ -1052,20 +722,20 @@ 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)); \ } \ }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))) { \ + if (TEST_ENDSTOP(ES_ENUM(A1,M1))) { \ _ENDSTOP_HIT(A2,M2); \ planner.endstop_triggered(_AXIS(A2)); \ } \ @@ -1073,7 +743,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... */ \ @@ -1083,7 +753,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... */ \ @@ -1093,7 +763,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... */ \ @@ -1124,58 +794,56 @@ 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 - #define _G38_OPEN_STATE TERN(G38_PROBE_AWAY, (G38_move >= 4), LOW) + #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))) != _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(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)); } + const Flags moving = { value_t(NUM_AXES)(0 MAIN_AXIS_MAP(_G38_SET)) }; + MAIN_AXIS_MAP(_G38_RESP); } #endif // 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_STATE + 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_STATE + 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)) { - if (stepper.motor_direction(Y_AXIS_HEAD)) { // -direction - #if HAS_Y_MIN || (Y_SPI_SENSORLESS && Y_HOME_TO_MIN) + if (!stepper.motor_direction(Y_AXIS_HEAD)) { // -direction + #if HAS_Y_MIN_STATE PROCESS_ENDSTOP_Y(MIN); #if CORE_DIAG(XY, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Y,MIN); @@ -1189,7 +857,7 @@ void Endstops::update() { #endif } else { // +direction - #if HAS_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); @@ -1203,39 +871,39 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_Y_AXIS #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 HAS_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) - ) 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 (!stepper.motor_direction(Z_AXIS_HEAD)) { // Z -direction. Gantry down, bed up. + #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 - #if USES_Z_MIN_PROBE_PIN + // 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 HAS_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 - 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) @@ -1248,97 +916,98 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_Z_AXIS #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 (!stepper.motor_direction(I_AXIS_HEAD)) { // -direction + #if HAS_I_MIN_STATE PROCESS_ENDSTOP(I, MIN); #endif } else { // +direction - #if HAS_I_MAX || (I_SPI_SENSORLESS && I_HOME_TO_MAX) + #if HAS_I_MAX_STATE PROCESS_ENDSTOP(I, MAX); #endif } } - #endif + #endif // HAS_I_AXIS #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 (!stepper.motor_direction(J_AXIS_HEAD)) { // -direction + #if HAS_J_MIN_STATE PROCESS_ENDSTOP(J, MIN); #endif } else { // +direction - #if HAS_J_MAX || (J_SPI_SENSORLESS && J_HOME_TO_MAX) + #if HAS_J_MAX_STATE PROCESS_ENDSTOP(J, MAX); #endif } } - #endif + #endif // HAS_J_AXIS #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 (!stepper.motor_direction(K_AXIS_HEAD)) { // -direction + #if HAS_K_MIN_STATE PROCESS_ENDSTOP(K, MIN); #endif } else { // +direction - #if HAS_K_MAX || (K_SPI_SENSORLESS && K_HOME_TO_MAX) + #if HAS_K_MAX_STATE PROCESS_ENDSTOP(K, MAX); #endif } } - #endif + #endif // HAS_K_AXIS #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 (!stepper.motor_direction(U_AXIS_HEAD)) { // -direction + #if HAS_U_MIN_STATE PROCESS_ENDSTOP(U, MIN); #endif } else { // +direction - #if HAS_U_MAX || (U_SPI_SENSORLESS && U_HOME_TO_MAX) + #if HAS_U_MAX_STATE PROCESS_ENDSTOP(U, MAX); #endif } } - #endif + #endif // HAS_U_AXIS #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 (!stepper.motor_direction(V_AXIS_HEAD)) { // -direction + #if HAS_V_MIN_STATE PROCESS_ENDSTOP(V, MIN); #endif } else { // +direction - #if HAS_V_MAX || (V_SPI_SENSORLESS && V_HOME_TO_MAX) + #if HAS_V_MAX_STATE PROCESS_ENDSTOP(V, MAX); #endif } } - #endif + #endif // HAS_V_AXIS #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 (!stepper.motor_direction(W_AXIS_HEAD)) { // -direction + #if HAS_W_MIN_STATE PROCESS_ENDSTOP(W, MIN); #endif } else { // +direction - #if HAS_W_MAX || (W_SPI_SENSORLESS && W_HOME_TO_MAX) + #if HAS_W_MAX_STATE PROCESS_ENDSTOP(W, MAX); #endif } } - #endif + #endif // HAS_W_AXIS + } // Endstops::update() #if ENABLED(SPI_ENDSTOPS) @@ -1346,77 +1015,84 @@ 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 ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && Y_SPI_SENSORLESS - || stepperY.test_stall_status() - #elif CORE_IS_XZ && Z_SPI_SENSORLESS - || stepperZ.test_stall_status() + if (tmc_spi_homing.x) { + #if ENABLED(DUAL_X_CARRIAGE) + const bool ismin = X_MIN_TEST(); + #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 - )) { - SBI(live_state, X_ENDSTOP); - hit = true; } #endif + #if Y_SPI_SENSORLESS - if (tmc_spi_homing.y && (stepperY.test_stall_status() - #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && X_SPI_SENSORLESS - || stepperX.test_stall_status() - #elif CORE_IS_YZ && Z_SPI_SENSORLESS - || 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; } #endif + #if Z_SPI_SENSORLESS - if (tmc_spi_homing.z && (stepperZ.test_stall_status() - #if CORE_IS_XZ && X_SPI_SENSORLESS - || stepperX.test_stall_status() - #elif CORE_IS_YZ && Y_SPI_SENSORLESS - || 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; - } + if (tmc_spi_homing.i && stepperI.test_stall_status()) { SBI(live_state, I_ENDSTOP); hit = true; } #endif #if J_SPI_SENSORLESS - if (tmc_spi_homing.j && stepperJ.test_stall_status()) { - SBI(live_state, J_ENDSTOP); - hit = true; - } + if (tmc_spi_homing.j && stepperJ.test_stall_status()) { SBI(live_state, J_ENDSTOP); hit = true; } #endif #if K_SPI_SENSORLESS - if (tmc_spi_homing.k && stepperK.test_stall_status()) { - SBI(live_state, K_ENDSTOP); - hit = true; - } + if (tmc_spi_homing.k && stepperK.test_stall_status()) { SBI(live_state, K_ENDSTOP); hit = true; } #endif #if U_SPI_SENSORLESS - if (tmc_spi_homing.u && stepperU.test_stall_status()) { - SBI(live_state, U_ENDSTOP); - hit = true; - } + if (tmc_spi_homing.u && stepperU.test_stall_status()) { SBI(live_state, U_ENDSTOP); hit = true; } #endif #if V_SPI_SENSORLESS - if (tmc_spi_homing.v && stepperV.test_stall_status()) { - SBI(live_state, V_ENDSTOP); - hit = true; - } + if (tmc_spi_homing.v && stepperV.test_stall_status()) { SBI(live_state, V_ENDSTOP); hit = true; } #endif #if W_SPI_SENSORLESS - if (tmc_spi_homing.w && stepperW.test_stall_status()) { - SBI(live_state, W_ENDSTOP); - hit = true; - } + if (tmc_spi_homing.w && stepperW.test_stall_status()) { SBI(live_state, W_ENDSTOP); hit = true; } #endif if (TERN0(ENDSTOP_INTERRUPTS_FEATURE, hit)) update(); @@ -1426,8 +1102,23 @@ void Endstops::update() { void Endstops::clear_endstop_state() { TERN_(X_SPI_SENSORLESS, CBI(live_state, X_ENDSTOP)); + #if ALL(X_SPI_SENSORLESS, X_DUAL_ENDSTOPS) + CBI(live_state, X2_ENDSTOP); + #endif TERN_(Y_SPI_SENSORLESS, CBI(live_state, Y_ENDSTOP)); + #if ALL(Y_SPI_SENSORLESS, Y_DUAL_ENDSTOPS) + 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)); @@ -1459,183 +1150,183 @@ 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 + #if USE_Z_MIN 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 - 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) { - #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 @@ -1652,52 +1343,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); - #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); - #endif + TERN_(HAS_DELTA_X_CURRENT, _SAVE_SET_CURRENT(X)); + TERN_(HAS_DELTA_Y_CURRENT, _SAVE_SET_CURRENT(Y)); #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); + _SAVE_SET_CURRENT(Z); + #endif + #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 } else { - #if HAS_DELTA_X_CURRENT - stepperX.rms_current(saved_current_x); - debug_current_on(PSTR("X"), X_CURRENT_HOME, saved_current_x); - #endif - #if HAS_DELTA_Y_CURRENT - stepperY.rms_current(saved_current_y); - debug_current_on(PSTR("Y"), Y_CURRENT_HOME, saved_current_y); - #endif + TERN_(HAS_DELTA_X_CURRENT, _RESTORE_CURRENT(X)); + TERN_(HAS_DELTA_Y_CURRENT, _RESTORE_CURRENT(Y)); #if HAS_CURRENT_HOME(Z) - stepperZ.rms_current(saved_current_z); - debug_current_on(PSTR("Z"), Z_CURRENT_HOME, saved_current_z); + _RESTORE_CURRENT(Z); + #endif + #if HAS_CURRENT_HOME(Z2) + _RESTORE_CURRENT(Z2); + #endif + #if HAS_CURRENT_HOME(Z3) + _RESTORE_CURRENT(Z3); + #endif + #if HAS_CURRENT_HOME(Z4) + _RESTORE_CURRENT(Z4); #endif } @@ -1707,6 +1426,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 bffa7fdc39..bbdb0bc77b 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -28,88 +28,107 @@ #include "../inc/MarlinConfig.h" #include -#define __ES_ITEM(N) N, -#define _ES_ITEM(K,N) TERN_(K,DEFER4(__ES_ITEM)(N)) +#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,_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: + * - 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.) + * - 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_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_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(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) - #endif - #if ENABLED(Z_MULTI_ENDSTOPS) - _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) - #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(USES_Z_MIN_PROBE_PIN, = 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 - // Endstops can be either MIN or MAX but not both - #if HAS_X_MIN || HAS_X_MAX + // Endstop aliases + #if HAS_X_STATE , X_ENDSTOP = TERN(X_HOME_TO_MAX, X_MAX, X_MIN) #endif - #if HAS_Y_MIN || HAS_Y_MAX + #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) #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)) + #if HAS_Y2_STATE + , Y2_ENDSTOP = TERN(Y_HOME_TO_MAX, Y2_MAX, Y2_MIN) #endif - #if HAS_I_MIN || HAS_I_MAX + + #if HOMING_Z_WITH_PROBE + , 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) + #endif + #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_MIN || HAS_J_MAX + #if HAS_J_STATE , J_ENDSTOP = TERN(J_HOME_TO_MAX, J_MAX, J_MIN) #endif - #if HAS_K_MIN || HAS_K_MAX + #if HAS_K_STATE , K_ENDSTOP = TERN(K_HOME_TO_MAX, K_MAX, K_MIN) #endif + #if HAS_U_STATE + , U_ENDSTOP = TERN(U_HOME_TO_MAX, U_MAX, U_MIN) + #endif + #if HAS_V_STATE + , V_ENDSTOP = TERN(V_HOME_TO_MAX, V_MAX, V_MIN) + #endif + #if HAS_W_STATE + , W_ENDSTOP = TERN(W_HOME_TO_MAX, W_MAX, W_MIN) + #endif }; -#undef __ES_ITEM #undef _ES_ITEM +#undef ES_ITEM +#undef _ESN_ITEM +#undef ES_MINMAX class Endstops { public: - typedef IF<(NUM_ENDSTOP_STATES > 8), uint16_t, uint8_t>::type endstop_mask_t; + typedef bits_t(NUM_ENDSTOP_STATES) endstop_mask_t; #if ENABLED(X_DUAL_ENDSTOPS) static float x2_endstop_adj; @@ -255,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/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp new file mode 100644 index 0000000000..6fe8e936e0 --- /dev/null +++ b/Marlin/src/module/ft_motion.cpp @@ -0,0 +1,812 @@ +/** + * 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(FT_MOTION) + +#include "ft_motion.h" +#include "stepper.h" // Access stepper block queue function and abort status. + +FxdTiCtrl fxdTiCtrl; + +#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 +#if !HAS_DYNAMIC_FREQ_MM + static_assert(FTM_DEFAULT_DYNFREQ_MODE != dynFreqMode_Z_BASED, "dynFreqMode_Z_BASED requires a Z axis."); +#endif +#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 + +//-----------------------------------------------------------------// +// 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. +uint32_t FxdTiCtrl::stepperCmdBuff_produceIdx = 0, // Index of next stepper command write to the buffer. + FxdTiCtrl::stepperCmdBuff_consumeIdx = 0; // Index of next stepper command read from the buffer. + +bool FxdTiCtrl::sts_stepperBusy = false; // The stepper buffer has items and is in use. + +// Private variables. +// NOTE: These are sized for Ulendo FBS use. +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. +bool FxdTiCtrl::runout = false; // Indicates if runout is in progress. + +// Trapezoid data variables. +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] + FxdTiCtrl::f_s, // Starting feedrate of block. [mm/sec] + FxdTiCtrl::s_1e, // Position after acceleration phase of block. + FxdTiCtrl::s_2e; // Position after acceleration and coasting phase of block. + +uint32_t FxdTiCtrl::N1, // Number of data points in the acceleration phase. + FxdTiCtrl::N2, // Number of data points in the coasting phase. + FxdTiCtrl::N3; // Number of data points in the deceleration phase. + +uint32_t FxdTiCtrl::max_intervals; // Total number of data points that will be generated from block. + +// Make vector variables. +uint32_t FxdTiCtrl::makeVector_idx = 0, // Index of fixed time trajectory generation of the overall block. + FxdTiCtrl::makeVector_idx_z1 = 0, // Storage for the previously calculated index above. + FxdTiCtrl::makeVector_batchIdx = FTM_BATCH_SIZE; // Index of fixed time trajectory generation within the batch. + +// Interpolation variables. +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. +hal_timer_t FxdTiCtrl::nextStepTicks = FTM_MIN_TICKS; // Accumulator for the next step time (in ticks). + +// Shaping variables. +#if HAS_X_AXIS + 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 + // Linear advance variables. + float FxdTiCtrl::e_raw_z1 = 0.0f; // (ms) Unit delay of raw extruder position. + 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. +//-----------------------------------------------------------------// + +// Public functions. + +// Sets controller states to begin processing a block. +void FxdTiCtrl::startBlockProc(block_t * const current_block) { + current_block_cpy = current_block; + blockProcRdy = true; + blockProcDn = false; + runoutEna = true; +} + +// Moves any free data points to the stepper buffer even if a full batch isn't ready. +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 > 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], + 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 = last_batchIdx; + batchRdy = true; + runout = true; + } + runoutEna = false; +} + +// Controller main, to be invoked from non-isr task. +void FxdTiCtrl::loop() { + + if (!cfg.mode) return; + + // 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. + // 3. Reset all the states / memory. + // 4. Signal ready for new block. + if (stepper.abort_current_block) { + if (sts_stepperBusy) return; // Wait until motion buffers are emptied + reset(); + blockProcDn = true; // Set queueing to look for next block. + runoutEna = false; // Disabling running out this block, since we want to halt the motion. + stepper.abort_current_block = false; // Abort finished. + } + + // Planner processing and block conversion. + if (!blockProcRdy && !runout) stepper.fxdTiCtrl_BlockQueueUpdate(); + + if (blockProcRdy) { + if (!blockProcRdy_z1) loadBlockData(current_block_cpy); // One-shot. + while (!blockProcDn && !batchRdy && (makeVector_idx - makeVector_idx_z1 < (FTM_POINTS_PER_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) { + + // Call Ulendo FBS here. + + // 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. + + } // if (batchRdy && !batchRdyForInterp) + + // Interpolation. + while ( batchRdyForInterp + && ( stepperCmdBuffItems() < ((FTM_STEPPERCMD_BUFF_SIZE) - (FTM_STEPS_PER_UNIT_TIME)) ) + && ( (interpIdx - interpIdx_z1) < (FTM_STEPS_PER_LOOP) ) + ) { + convertToSteps(interpIdx); + + if (++interpIdx == FTM_BATCH_SIZE) { + batchRdyForInterp = false; + interpIdx = 0; + } + } + + // Report busy status to planner. + planner.fxdTiCtrl_busy = (sts_stepperBusy || ((!blockProcDn && blockProcRdy) || batchRdy || batchRdyForInterp || runoutEna)); + + blockProcRdy_z1 = blockProcRdy; + makeVector_idx_z1 = makeVector_idx; + interpIdx_z1 = interpIdx; +} + +#if HAS_X_AXIS + + // 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*/) { + + const float K = exp(-zeta * M_PI / sqrt(1.0f - sq(zeta))), + K2 = sq(K); + + switch (cfg.mode) { + + case ftMotionMode_ZV: + max_i = 1U; + x.Ai[0] = 1.0f / (1.0f + K); + x.Ai[1] = x.Ai[0] * K; + break; + + case ftMotionMode_ZVD: + 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: { + 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: { + 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; } + } break; + + case ftMotionMode_3HEI: { + 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: { + 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; + } break; + + default: + 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. + #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::AxisShaping::updateShapingN(const_float_t f, const_float_t df) { + // Protections omitted for DBZ and for index exceeding array length. + switch (cfg.mode) { + case ftMotionMode_ZV: + Ni[1] = round((0.5f / f / df) * (FTM_FS)); + break; + case ftMotionMode_ZVD: + case ftMotionMode_EI: + Ni[1] = round((0.5f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; + break; + case ftMotionMode_2HEI: + 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: + 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: + Ni[1] = round((0.375f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; + break; + 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. +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(); + + makeVector_idx = makeVector_idx_z1 = 0; + makeVector_batchIdx = FTM_BATCH_SIZE; + + steps.reset(); + interpIdx = interpIdx_z1 = 0; + 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++) + 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); +} + +// Private functions. +// Auxiliary function to get number of step commands in the buffer. +uint32_t FxdTiCtrl::stepperCmdBuffItems() { + const uint32_t udiff = stepperCmdBuff_produceIdx - stepperCmdBuff_consumeIdx; + return stepperCmdBuff_produceIdx < stepperCmdBuff_consumeIdx ? (FTM_STEPPERCMD_BUFF_SIZE) + udiff : udiff; +} + +// Initializes storage variables before startup. +void FxdTiCtrl::init() { + #if HAS_X_AXIS + refreshShapingN(); + updateShapingA(); + #endif + reset(); // Precautionary. +} + +// Loads / converts block data from planner to fixed-time control variables. +void FxdTiCtrl::loadBlockData(block_t * const current_block) { + + const float totalLength = current_block->millimeters, + oneOverLength = 1.0f / totalLength; + + const AxisBits direction = current_block->direction_bits; + + 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] + ); + + 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 + ); + + 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 + const float f_e = spm * current_block->final_rate; // (steps/s) End feedrate + + const float a = current_block->acceleration, // (mm/s^2) Same magnitude for acceleration or deceleration + oneby2a = 1.0f / (2.0f * a), // (s/mm) Time to accelerate or decelerate one mm (i.e., oneby2a * 2 + oneby2d = -oneby2a; // (s/mm) Time to accelerate or decelerate one mm (i.e., oneby2a * 2 + const float fsSqByTwoA = sq(f_s) * oneby2a, // (mm) Distance to accelerate from start speed to nominal speed + feSqByTwoD = sq(f_e) * oneby2d; // (mm) Distance to decelerate from nominal speed to end speed + + float F_n = current_block->nominal_speed; // (mm/s) Speed we hope to achieve, if possible + const float fdiff = feSqByTwoD - fsSqByTwoA, // (mm) Coasting distance if nominal speed is reached + 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) { + T2 = 0.0f; + F_n = SQRT(ldiff / odiff); // Clip by intersection if nominal speed can't be reached. + } + + const float T1 = (F_n - f_s) / a, // (s) Accel Time = difference in feedrate over acceleration + T3 = (F_n - f_e) / a; // (s) Decel Time = difference in feedrate over acceleration + + N1 = ceil(T1 * (FTM_FS)); // Accel datapoints based on Hz frequency + N2 = ceil(T2 * (FTM_FS)); // Coast + N3 = ceil(T3 * (FTM_FS)); // Decel + + const float T1_P = N1 * (FTM_TS), // (s) Accel datapoints x timestep resolution + T2_P = N2 * (FTM_TS), // (s) Coast + T3_P = N3 * (FTM_TS); // (s) Decel + + // Calculate the reachable feedrate at the end of the accel phase + // totalLength is the total distance to travel in mm + // f_s is the starting feedrate in mm/s + // f_e is the ending feedrate in mm/s + // T1_P is the time spent accelerating in seconds + // T2_P is the time spent coasting in seconds + // T3_P is the time spent decelerating in seconds + // f_s * T1_P is the distance traveled during the accel phase + // f_e * T3_P is the distance traveled during the decel phase + // + F_P = (2.0f * totalLength - f_s * T1_P - f_e * T3_P) / (T1_P + 2.0f * T2_P + T3_P); // (mm/s) Feedrate at the end of the accel phase + + // Calculate the acceleration and deceleration rates + accel_P = N1 ? ((F_P - f_s) / T1_P) : 0.0f; + + decel_P = (f_e - F_P) / T3_P; + + // Calculate the distance traveled during the accel phase + s_1e = f_s * T1_P + 0.5f * accel_P * sq(T1_P); + + // Calculate the distance traveled during the decel phase + s_2e = s_1e + F_P * T2_P; + + // One less than (Accel + Coasting + Decel) datapoints + max_intervals = N1 + N2 + N3 - 1U; + + endPosn_prevBlock += moveDist; +} + +// 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 + + 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 + } + 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 + //accel_k = 0.0f; + } + else { + // Deceleration 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 + } + + 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 = startPosn.e + ratio.e * dist; + if (cfg.linearAdvEna) { + float dedt_adj = (new_raw_z1 - e_raw_z1) * (FTM_FS); + if (ratio.e > 0.0f) dedt_adj += accel_k * cfg.linearAdvK; + + e_advanced_z1 += dedt_adj * (FTM_TS); + traj.e[makeVector_batchIdx] = e_advanced_z1; + + e_raw_z1 = new_raw_z1; + } + else { + traj.e[makeVector_batchIdx] = new_raw_z1; + // Alternatively: ed[makeVector_batchIdx] = startPosn.e + (ratio.e * dist) / (N1 + N2 + N3); + } + #endif + + // Update shaping parameters if needed. + #if HAS_DYNAMIC_FREQ_MM + static float zd_z1 = 0.0f; + #endif + switch (cfg.dynFreqMode) { + + #if HAS_DYNAMIC_FREQ_MM + case dynFreqMode_Z_BASED: + 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 = traj.z[makeVector_batchIdx]; + } + break; + #endif + + #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[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 + + default: break; + } + + // Apply shaping if in mode. + #if HAS_X_AXIS + 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 + 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 <= 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 = 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 (++shaping.zi_idx == (FTM_ZMAX)) shaping.zi_idx = 0; + } + #endif + + // Filled up the queue with regular and shaped steps + if (++makeVector_batchIdx == (FTM_WINDOW_SIZE)) { + makeVector_batchIdx = last_batchIdx; + batchRdy = true; + } + + if (makeVector_idx == max_intervals) { + blockProcDn = true; + blockProcRdy = false; + makeVector_idx = 0; + } + else + makeVector_idx++; +} + +// Interpolates single data point to stepper commands. +void FxdTiCtrl::convertToSteps(const uint32_t idx) { + xyze_long_t err_P = { 0 }; + + //#define STEPS_ROUNDING + #if ENABLED(STEPS_ROUNDING) + 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 + 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 + 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++) { + + // TODO: (?) Since the *delta variables will not change, + // the comparison may be done once before iterating at + // expense of storage and lines of code. + + bool anyStep = false; + + // 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 { + s++; + b |= bd | bs; + e += d - (FTM_STEPS_PER_UNIT_TIME); + anyStep = true; + } + } + else { + if ((e + d) > -(FTM_CTS_COMPARE_VAL)) { + e += d; + } + else { + s--; + b |= bs; + e += d + (FTM_STEPS_PER_UNIT_TIME); + anyStep = true; + } + } + }; + + // Init all step/dir bits to 0 (defaulting to reverse/negative motion) + stepperCmdBuff[stepperCmdBuff_produceIdx] = 0; + + // 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); + } + else { + stepperCmdBuff_StepRelativeTi[stepperCmdBuff_produceIdx] = nextStepTicks; + + const uint8_t dir_index = stepperCmdBuff_produceIdx >> 3, + dir_bit = stepperCmdBuff_produceIdx & 0x7; + if (any_dirChange) { + + SBI(stepperCmdBuff_ApplyDir[dir_index], dir_bit); + + 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; + } + else { // ...no direction change. + CBI(stepperCmdBuff_ApplyDir[dir_index], dir_bit); + } + + if (stepperCmdBuff_produceIdx == (FTM_STEPPERCMD_BUFF_SIZE) - 1) + stepperCmdBuff_produceIdx = 0; + else + stepperCmdBuff_produceIdx++; + + nextStepTicks = FTM_MIN_TICKS; + } + } // FTM_STEPS_PER_UNIT_TIME loop +} + +#endif // FT_MOTION diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h new file mode 100644 index 0000000000..2186ecb710 --- /dev/null +++ b/Marlin/src/module/ft_motion.h @@ -0,0 +1,205 @@ +/** + * 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" // Access the top level configurations. +#include "../module/planner.h" // Access block type from planner. + +#include "ft_types.h" + +#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 ft_config_t cfg; + + 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. + static uint8_t stepperCmdBuff_ApplyDir[FTM_STEPPERCMD_DIR_SIZE]; // Buffer of whether DIR needs to be updated. + static uint32_t stepperCmdBuff_produceIdx, // Index of next stepper command write to the buffer. + stepperCmdBuff_consumeIdx; // Index of next stepper command read from the buffer. + + static bool sts_stepperBusy; // The stepper buffer has items and is in use. + + + // 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. + static void loop(); // Controller main, to be invoked from non-isr task. + + + #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); + + // 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. + + private: + + static xyze_trajectory_t traj; + static xyze_trajectoryMod_t trajMod; + + static block_t *current_block_cpy; + 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 + 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, + s_1e, + s_2e; + + static uint32_t N1, N2, N3; + static uint32_t max_intervals; + + // Make vector variables. + static uint32_t makeVector_idx, + makeVector_idx_z1, + makeVector_batchIdx; + + // Interpolation variables. + static uint32_t interpIdx, + interpIdx_z1; + + static xyze_long_t steps; + static xyze_stepDir_t dirState; + + static hal_timer_t nextStepTicks; + + #if HAS_X_AXIS + + 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 + static float e_raw_z1, e_advanced_z1; + #endif + + // Private methods + static uint32_t stepperCmdBuffItems(); + static void loadBlockData(block_t * const current_block); + static void makeVector(); + static void convertToSteps(const uint32_t idx); + +}; // class fxdTiCtrl + +extern FxdTiCtrl fxdTiCtrl; diff --git a/Marlin/src/module/ft_types.h b/Marlin/src/module/ft_types.h new file mode 100644 index 0000000000..a7228d32d6 --- /dev/null +++ b/Marlin/src/module/ft_types.h @@ -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 . + * + */ +#pragma once + +#include "../core/types.h" + +typedef enum FXDTICtrlMode : uint8_t { + ftMotionMode_DISABLED = 0U, + ftMotionMode_ENABLED = 1U, + //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_t; + +enum dynFreqMode_t : uint8_t { + dynFreqMode_DISABLED = 0U, + dynFreqMode_Z_BASED = 1U, + dynFreqMode_MASS_BASED = 2U +}; + +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 { + 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 +}; + +typedef bits_t(FT_BIT_COUNT) ft_command_t; diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 7c90ae7159..80729df759 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" @@ -73,6 +77,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; @@ -132,7 +141,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: @@ -165,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 @@ -196,22 +204,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. @@ -252,7 +262,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; @@ -360,7 +370,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) @@ -368,7 +378,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 } @@ -525,27 +536,32 @@ 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; + 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; - - 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 - 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); } +#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. @@ -555,23 +571,17 @@ 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), 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); #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. @@ -614,6 +624,10 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const float), 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 @@ -621,6 +635,10 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const float), 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); } @@ -630,25 +648,10 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const float), 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 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 @@ -662,28 +665,33 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const float), 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*/) { - 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 ); } @@ -691,6 +699,7 @@ 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_z(const_float_t rz, const_feedRate_t fr_mm_s/*=0.0*/) { + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_blocking_move_to_z(", rz, ", ", fr_mm_s, ")"); do_blocking_move_to_xy_z(current_position, rz, fr_mm_s); } #endif @@ -701,7 +710,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 +722,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 +734,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 +746,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 +758,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 +770,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 ); } @@ -769,9 +778,10 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { #if HAS_Y_AXIS 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 ); } @@ -783,15 +793,31 @@ 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 ); } - void do_z_clearance(const_float_t zclear, const bool lower_allowed/*=false*/) { + void do_z_clearance(const_float_t zclear, const bool with_probe/*=true*/, const bool lower_allowed/*=false*/) { + UNUSED(with_probe); float zdest = zclear; - if (!lower_allowed) NOLESS(zdest, current_position.z); - do_blocking_move_to_z(_MIN(zdest, Z_MAX_POS), TERN(HAS_BED_PROBE, z_probe_fast_mm_s, homing_feedrate(Z_AXIS))); + TERN_(HAS_BED_PROBE, if (with_probe && probe.offset.z < 0) zdest -= probe.offset.z); + NOMORE(zdest, Z_MAX_POS); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_z_clearance(", zclear, " [", current_position.z, " to ", zdest, "], ", lower_allowed, ")"); + if ((!lower_allowed && zdest < current_position.z) || zdest == current_position.z) return; + do_blocking_move_to_z(zdest, TERN(HAS_BED_PROBE, z_probe_fast_mm_s, homing_feedrate(Z_AXIS))); + } + void do_z_clearance_by(const_float_t zclear) { + 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 @@ -801,17 +827,16 @@ 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() { +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() { feedrate_mm_s = saved_feedrate_mm_s; feedrate_percentage = saved_feedrate_percentage; + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("restore_feedrate_and_scaling: fr=", feedrate_mm_s, " ", feedrate_percentage, "%"); } #if HAS_SOFTWARE_ENDSTOPS @@ -923,7 +948,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) @@ -950,14 +975,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)) { @@ -1059,6 +1086,96 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { thermalManager.task(); // Returns immediately on most calls } +/** + * 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_AXES + + 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 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) + + 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 + + #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 + + #endif + + return SQRT(distance_sqr); + + #else + + return 0; + + #endif +} + #if IS_KINEMATIC #if IS_SCARA @@ -1109,7 +1226,10 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { if (!position_is_reachable(destination)) return true; // Get the linear distance in XYZ - float cartesian_mm = xyz_float_t(diff).magnitude(); + #if HAS_ROTATIONAL_AXES + bool cartes_move = true; + #endif + float cartesian_mm = get_move_distance(diff OPTARG(HAS_ROTATIONAL_AXES, cartes_move)); // If the move is very short, check the E move distance TERN_(HAS_EXTRUDERS, if (UNEAR_ZERO(cartesian_mm)) cartesian_mm = ABS(diff.e)); @@ -1118,7 +1238,13 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { if (UNEAR_ZERO(cartesian_mm)) return true; // Minimum number of seconds to move the given distance - const float seconds = cartesian_mm / scaled_fr_mm_s; + const float seconds = cartesian_mm / ( + #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 + #endif + ); // The number of segments-per-second times the duration // gives the number of segments @@ -1140,6 +1266,7 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { // Add hints to help optimize the move PlannerHints hints(cartesian_mm * inv_segments); + TERN_(HAS_ROTATIONAL_AXES, hints.cartesian_move = cartes_move); TERN_(FEEDRATE_SCALING, hints.inv_duration = scaled_fr_mm_s / hints.millimeters); /* @@ -1190,9 +1317,13 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { } // Get the linear distance in XYZ + #if HAS_ROTATIONAL_AXES + bool cartes_move = true; + #endif + float cartesian_mm = get_move_distance(diff OPTARG(HAS_ROTATIONAL_AXES, cartes_move)); + // If the move is very short, check the E move distance // No E move either? Game over. - float cartesian_mm = diff.magnitude(); TERN_(HAS_EXTRUDERS, if (UNEAR_ZERO(cartesian_mm)) cartesian_mm = ABS(diff.e)); if (UNEAR_ZERO(cartesian_mm)) return; @@ -1207,6 +1338,7 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { // Add hints to help optimize the move PlannerHints hints(cartesian_mm * inv_segments); + TERN_(HAS_ROTATIONAL_AXES, hints.cartesian_move = cartes_move); TERN_(FEEDRATE_SCALING, hints.inv_duration = scaled_fr_mm_s / hints.millimeters); //SERIAL_ECHOPGM("mm=", cartesian_mm); @@ -1309,13 +1441,13 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { 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*/) { @@ -1361,7 +1493,7 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { 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)"); @@ -1417,7 +1549,7 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { 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); @@ -1489,22 +1621,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'; + if (!(axis_bits &= axes_should_home(axis_bits))) return false; - char msg[30]; - sprintf_P(msg, GET_EN_TEXT(MSG_HOME_FIRST), need); - SERIAL_ECHO_START(); - SERIAL_ECHOLN(msg); + 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'; - sprintf_P(msg, GET_TEXT(MSG_HOME_FIRST), need); - ui.set_status(msg); - return true; - } - return false; + 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; } /** @@ -1587,36 +1718,36 @@ void prepare_line_to_destination() { #endif } - #if ENABLED(SPI_ENDSTOPS) - switch (axis) { - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = true; break; - #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); @@ -1681,36 +1812,36 @@ void prepare_line_to_destination() { #endif } - #if ENABLED(SPI_ENDSTOPS) - switch (axis) { - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = false; break; - #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 @@ -1744,12 +1875,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 @@ -1766,7 +1897,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(); @@ -1850,72 +1981,72 @@ void prepare_line_to_destination() { case X_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(X); phaseCurrent = stepperX.get_microstep_counter(); - effectorBackoutDir = -X_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_X_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(X_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_X_DIR, -)(-effectorBackoutDir); break; #endif #ifdef Y_MICROSTEPS case Y_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(Y); phaseCurrent = stepperY.get_microstep_counter(); - effectorBackoutDir = -Y_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_Y_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(Y_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_Y_DIR, -)(-effectorBackoutDir); break; #endif #ifdef Z_MICROSTEPS case Z_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(Z); phaseCurrent = stepperZ.get_microstep_counter(); - effectorBackoutDir = -Z_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_Z_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(Z_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_Z_DIR, -)(-effectorBackoutDir); break; #endif #ifdef I_MICROSTEPS case I_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(I); phaseCurrent = stepperI.get_microstep_counter(); - effectorBackoutDir = -I_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_I_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(I_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_I_DIR, -)(-effectorBackoutDir); break; #endif #ifdef J_MICROSTEPS case J_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(J); phaseCurrent = stepperJ.get_microstep_counter(); - effectorBackoutDir = -J_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_J_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(J_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_J_DIR, -)(-effectorBackoutDir); break; #endif #ifdef K_MICROSTEPS case K_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(K); phaseCurrent = stepperK.get_microstep_counter(); - effectorBackoutDir = -K_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_K_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(K_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_K_DIR, -)(-effectorBackoutDir); break; #endif #ifdef U_MICROSTEPS case U_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(U); phaseCurrent = stepperU.get_microstep_counter(); - effectorBackoutDir = -U_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_U_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(U_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_U_DIR, -)(-effectorBackoutDir); break; #endif #ifdef V_MICROSTEPS case V_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(V); phaseCurrent = stepperV.get_microstep_counter(); - effectorBackoutDir = -V_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_V_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(V_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_V_DIR, -)(-effectorBackoutDir); break; #endif #ifdef W_MICROSTEPS case W_AXIS: phasePerUStep = PHASE_PER_MICROSTEP(W); phaseCurrent = stepperW.get_microstep_counter(); - effectorBackoutDir = -W_HOME_DIR; - stepperBackoutDir = IF_DISABLED(INVERT_W_DIR, -)effectorBackoutDir; + effectorBackoutDir = -(W_HOME_DIR); + stepperBackoutDir = TERN_(INVERT_W_DIR, -)(-effectorBackoutDir); break; #endif default: return; @@ -1964,16 +2095,26 @@ void prepare_line_to_destination() { void homeaxis(const AxisEnum axis) { - #if EITHER(MORGAN_SCARA, MP_SCARA) + #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; } #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) && (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 @@ -2007,6 +2148,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 @@ -2047,12 +2189,12 @@ void prepare_line_to_destination() { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Home Fast: ", move_length, "mm"); do_homing_move(axis, move_length, 0.0, !use_probe_bump); - #if BOTH(HOMING_Z_WITH_PROBE, BLTOUCH) - if (axis == Z_AXIS && !bltouch.high_speed_mode) bltouch.stow(); // Intermediate STOW (in LOW SPEED MODE) - #endif - // If a second homing move is configured... if (bump) { + #if ALL(HOMING_Z_WITH_PROBE, BLTOUCH) + if (axis == Z_AXIS && !bltouch.high_speed_mode) bltouch.stow(); // Intermediate STOW (in LOW SPEED MODE) + #endif + // Move away from the endstop by the axis HOMING_BUMP_MM if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Move Away: ", -bump, "mm"); do_homing_move(axis, -bump, TERN(HOMING_Z_WITH_PROBE, (axis == Z_AXIS ? z_probe_fast_mm_s : 0), 0), false); @@ -2061,32 +2203,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?"); @@ -2094,7 +2213,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 @@ -2103,12 +2222,12 @@ void prepare_line_to_destination() { const float rebump = bump * 2; if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Re-bump: ", rebump, "mm"); do_homing_move(axis, rebump, get_homing_bump_feedrate(axis), true); - - #if BOTH(HOMING_Z_WITH_PROBE, BLTOUCH) - if (axis == Z_AXIS) bltouch.stow(); // The final STOW - #endif } + #if ALL(HOMING_Z_WITH_PROBE, BLTOUCH) + if (axis == Z_AXIS) bltouch.stow(); // The final STOW + #endif + #if HAS_EXTRA_ENDSTOPS const bool pos_dir = axis_home_dir > 0; #if ENABLED(X_DUAL_ENDSTOPS) @@ -2280,26 +2399,23 @@ void prepare_line_to_destination() { #endif - // Put away the Z probe - #if HOMING_Z_WITH_PROBE - if (axis == Z_AXIS && probe.stow()) return; + #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; + #if DISABLED(DELTA) && defined(HOMING_BACKOFF_POST_MM) const xyz_float_t endstop_backoff = HOMING_BACKOFF_POST_MM; if (endstop_backoff[axis]) { current_position[axis] -= ABS(endstop_backoff[axis]) * axis_home_dir; - line_to_current_position( - #if HOMING_Z_WITH_PROBE - (axis == Z_AXIS) ? z_probe_fast_mm_s : - #endif - homing_feedrate(axis) - ); + line_to_current_position(TERN_(HOMING_Z_WITH_PROBE, (axis == Z_AXIS) ? z_probe_fast_mm_s :) homing_feedrate(axis)); #if ENABLED(SENSORLESS_HOMING) planner.synchronize(); if (false - #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) + #ifdef NORMAL_AXIS || axis != NORMAL_AXIS #endif ) safe_delay(200); // Short delay to allow belts to spring back @@ -2344,17 +2460,17 @@ 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 - #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); #else - current_position[axis] = base_home_pos(axis); + current_position[axis] = SUM_TERN(HAS_HOME_OFFSET, base_home_pos(axis), home_offset[axis]); #endif /** @@ -2363,15 +2479,10 @@ 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 (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 @@ -2380,10 +2491,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 @@ -2394,20 +2502,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 v) { + 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 8950cf6f22..fceeffa707 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) @@ -143,19 +147,13 @@ 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(); #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 +167,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); @@ -259,11 +259,13 @@ 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 -#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 @@ -302,6 +304,8 @@ void report_current_position_projected(); #endif #endif +float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool &is_cartesian_move)); + void get_cartesian_from_steppers(); void set_current_from_steppers_for_axis(const AxisEnum axis); @@ -346,12 +350,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), 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 @@ -396,25 +402,32 @@ 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 - void do_z_clearance(const_float_t zclear, const bool lower_allowed=false); + #if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #define Z_POST_CLEARANCE hmiData.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=false) {} + inline void do_z_clearance(float, bool=true, bool=false) {} + inline void do_z_clearance_by(float) {} #endif /** * Homing and Trusted Axes */ -typedef IF<(NUM_AXES > 8), uint16_t, uint8_t>::type main_axes_bits_t; +typedef bits_t(NUM_AXES) main_axes_bits_t; constexpr main_axes_bits_t main_axes_mask = _BV(NUM_AXES) - 1; -typedef IF<(NUM_AXES + EXTRUDERS > 8), uint16_t, uint8_t>::type 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 @@ -432,26 +445,21 @@ void set_axis_is_at_home(const AxisEnum axis); void set_axis_never_homed(const AxisEnum axis); main_axes_bits_t axes_should_home(main_axes_bits_t axes_mask=main_axes_mask); bool homing_needed_error(main_axes_bits_t axes_mask=main_axes_mask); - inline void set_axis_unhomed(const AxisEnum axis) { CBI(axes_homed, axis); } - inline void set_axis_untrusted(const AxisEnum axis) { CBI(axes_trusted, axis); } - inline void set_all_unhomed() { axes_homed = axes_trusted = 0; } - inline void set_axis_homed(const AxisEnum axis) { SBI(axes_homed, axis); } - inline void set_axis_trusted(const AxisEnum axis) { SBI(axes_trusted, axis); } - inline void set_all_homed() { axes_homed = axes_trusted = main_axes_mask; } #else constexpr main_axes_bits_t axes_homed = main_axes_mask, axes_trusted = main_axes_mask; // Zero-endstop machines are always homed and trusted inline void homeaxis(const AxisEnum axis) {} inline void set_axis_never_homed(const AxisEnum) {} inline main_axes_bits_t axes_should_home(main_axes_bits_t=main_axes_mask) { return 0; } inline bool homing_needed_error(main_axes_bits_t=main_axes_mask) { return false; } - inline void set_axis_unhomed(const AxisEnum axis) {} - inline void set_axis_untrusted(const AxisEnum axis) {} - inline void set_all_unhomed() {} - inline void set_axis_homed(const AxisEnum axis) {} - inline void set_axis_trusted(const AxisEnum axis) {} - inline void set_all_homed() {} #endif +inline void set_axis_unhomed(const AxisEnum axis) { TERN_(HAS_ENDSTOPS, CBI(axes_homed, axis)); } +inline void set_axis_untrusted(const AxisEnum axis) { TERN_(HAS_ENDSTOPS, CBI(axes_trusted, axis)); } +inline void set_all_unhomed() { TERN_(HAS_ENDSTOPS, axes_homed = axes_trusted = 0); } +inline void set_axis_homed(const AxisEnum axis) { TERN_(HAS_ENDSTOPS, SBI(axes_homed, axis)); } +inline void set_axis_trusted(const AxisEnum axis) { TERN_(HAS_ENDSTOPS, SBI(axes_trusted, axis)); } +inline void set_all_homed() { TERN_(HAS_ENDSTOPS, axes_homed = axes_trusted = main_axes_mask); } + inline bool axis_was_homed(const AxisEnum axis) { return TEST(axes_homed, axis); } inline bool axis_is_trusted(const AxisEnum axis) { return TEST(axes_trusted, axis); } inline bool axis_should_home(const AxisEnum axis) { return (axes_should_home() & _BV(axis)) != 0; } @@ -470,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) @@ -506,8 +505,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) @@ -560,9 +561,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 @@ -599,7 +600,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); @@ -617,8 +618,8 @@ void home_if_needed(const bool keeplev=false); #endif -#if HAS_M206_COMMAND - void set_home_offset(const AxisEnum axis, const float v); +#if HAS_HOME_OFFSET + void set_home_offset(const AxisEnum axis, const_float_t v); #endif #if USE_SENSORLESS diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index aceaf8a253..6b645fa133 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -69,6 +69,9 @@ #include "stepper.h" #include "motion.h" #include "temperature.h" +#if ENABLED(FT_MOTION) + #include "ft_motion.h" +#endif #include "../lcd/marlinui.h" #include "../gcode/parser.h" @@ -112,7 +115,8 @@ // Delay for delivery of first block to the stepper ISR, if the queue contains 2 or // fewer movements. The delay is measured in milliseconds, and must be less than 250ms -#define BLOCK_DELAY_FOR_1ST_MOVE 100 +#define BLOCK_DELAY_NONE 0U +#define BLOCK_DELAY_FOR_1ST_MOVE 100U Planner planner; @@ -127,7 +131,7 @@ volatile uint8_t Planner::block_buffer_head, // Index of the next block to be Planner::block_buffer_planned, // Index of the optimally planned block Planner::block_buffer_tail; // Index of the busy block, if any uint16_t Planner::cleaning_buffer_counter; // A counter to disable queuing of blocks -uint8_t Planner::delay_before_delivering; // This counter delays delivery of blocks when queue becomes empty to allow the opportunity of merging blocks +uint8_t Planner::delay_before_delivering; // Delay block delivery so initial blocks in an empty queue may merge planner_settings_t Planner::settings; // Initialized by settings.load() @@ -165,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 @@ -215,8 +219,8 @@ uint32_t Planner::acceleration_long_cutoff; xyze_float_t Planner::previous_speed; float Planner::previous_nominal_speed; -#if ENABLED(DISABLE_INACTIVE_EXTRUDER) - last_move_t Planner::g_uc_extruder_last_move[E_STEPPERS] = { 0 }; +#if ENABLED(DISABLE_OTHER_EXTRUDERS) + last_move_t Planner::extruder_last_move[E_STEPPERS] = { 0 }; #endif #ifdef XY_FREQUENCY_LIMIT @@ -225,6 +229,10 @@ float Planner::previous_nominal_speed; int32_t Planner::xy_freq_min_interval_us = LROUND(1000000.0f / (XY_FREQUENCY_LIMIT)); #endif +#if ENABLED(FT_MOTION) + bool Planner::fxdTiCtrl_busy = false; +#endif + #if ENABLED(LIN_ADVANCE) float Planner::extruder_advance_K[DISTINCT_E]; // Initialized by settings.load() #endif @@ -787,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 @@ -821,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 @@ -1320,7 +1328,7 @@ void Planner::recalculate(TERN_(HINTS_SAFE_EXIT_SPEED, const_float_t safe_exit_s */ void Planner::check_axes_activity() { - #if ANY(DISABLE_X, DISABLE_Y, DISABLE_Z, DISABLE_I, DISABLE_J, DISABLE_K, DISABLE_U, DISABLE_V, DISABLE_W, DISABLE_E) + #if HAS_DISABLE_AXES xyze_bool_t axis_active = { false }; #endif @@ -1341,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 @@ -1360,7 +1368,7 @@ void Planner::check_axes_activity() { TERN_(HAS_HEATER_2, tail_e_to_p_pressure = block->e_to_p_pressure); #endif - #if ANY(DISABLE_X, DISABLE_Y, DISABLE_Z, DISABLE_I, DISABLE_J, DISABLE_K, DISABLE_E) + #if HAS_DISABLE_AXES for (uint8_t b = block_buffer_tail; b != block_buffer_head; b = next_block_index(b)) { block_t * const bnext = &block_buffer[b]; LOGICAL_AXIS_CODE( @@ -1401,18 +1409,20 @@ void Planner::check_axes_activity() { // // Disable inactive axes // - LOGICAL_AXIS_CODE( - if (TERN0(DISABLE_E, !axis_active.e)) stepper.disable_e_steppers(), - if (TERN0(DISABLE_X, !axis_active.x)) stepper.disable_axis(X_AXIS), - if (TERN0(DISABLE_Y, !axis_active.y)) stepper.disable_axis(Y_AXIS), - if (TERN0(DISABLE_Z, !axis_active.z)) stepper.disable_axis(Z_AXIS), - if (TERN0(DISABLE_I, !axis_active.i)) stepper.disable_axis(I_AXIS), - if (TERN0(DISABLE_J, !axis_active.j)) stepper.disable_axis(J_AXIS), - if (TERN0(DISABLE_K, !axis_active.k)) stepper.disable_axis(K_AXIS), - if (TERN0(DISABLE_U, !axis_active.u)) stepper.disable_axis(U_AXIS), - if (TERN0(DISABLE_V, !axis_active.v)) stepper.disable_axis(V_AXIS), - if (TERN0(DISABLE_W, !axis_active.w)) stepper.disable_axis(W_AXIS) - ); + #if HAS_DISABLE_AXES + LOGICAL_AXIS_CODE( + if (TERN0(DISABLE_E, !axis_active.e)) stepper.disable_e_steppers(), + if (TERN0(DISABLE_X, !axis_active.x)) stepper.disable_axis(X_AXIS), + if (TERN0(DISABLE_Y, !axis_active.y)) stepper.disable_axis(Y_AXIS), + if (TERN0(DISABLE_Z, !axis_active.z)) stepper.disable_axis(Z_AXIS), + if (TERN0(DISABLE_I, !axis_active.i)) stepper.disable_axis(I_AXIS), + if (TERN0(DISABLE_J, !axis_active.j)) stepper.disable_axis(J_AXIS), + if (TERN0(DISABLE_K, !axis_active.k)) stepper.disable_axis(K_AXIS), + if (TERN0(DISABLE_U, !axis_active.u)) stepper.disable_axis(U_AXIS), + if (TERN0(DISABLE_V, !axis_active.v)) stepper.disable_axis(V_AXIS), + if (TERN0(DISABLE_W, !axis_active.w)) stepper.disable_axis(W_AXIS) + ); + #endif // // Update Fan speeds @@ -1492,7 +1502,7 @@ void Planner::check_axes_activity() { thermalManager.setTargetHotend(t, active_extruder); } -#endif +#endif // AUTOTEMP #if DISABLED(NO_VOLUMETRICS) @@ -1510,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); } @@ -1681,7 +1691,8 @@ 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 = 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 @@ -1726,7 +1737,8 @@ float Planner::triggered_position_mm(const AxisEnum axis) { bool Planner::busy() { return (has_blocks_queued() || cleaning_buffer_counter || TERN0(EXTERNAL_CLOSED_LOOP_CONTROLLER, CLOSED_LOOP_WAITING()) - || TERN0(HAS_SHAPING, stepper.input_shaping_busy()) + || TERN0(HAS_ZV_SHAPING, stepper.input_shaping_busy()) + || TERN0(FT_MOTION, fxdTiCtrl_busy) ); } @@ -1761,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) { @@ -1839,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 = 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 @@ -1875,64 +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, - " A:", target.a, " (", da, " steps)" + #if HAS_X_AXIS + " 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 ANY(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) + 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) @@ -1947,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); } } @@ -1956,55 +1960,51 @@ 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 - if (dc < 0) SBI(dm, Z_AXIS); + 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 - 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 = (dist.a + dist.b > 0); // Motor A direction + dm.b = (CORESIGN(dist.a - dist.b) > 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 = (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 - 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 = (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) - if (da + db < 0) SBI(dm, A_AXIS); // Motor A direction - if (db < 0) SBI(dm, B_AXIS); // 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) - if (da < 0) SBI(dm, A_AXIS); // Motor A direction - if (db + da < 0) SBI(dm, B_AXIS); // Motor B direction + dm.a = (dist.a > 0); // Motor A direction + dm.b = (dist.b + dist.a > 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 = (dist.a > 0), + dm.y = (dist.b > 0), + dm.z = (dist.c > 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 = (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 - if (de < 0) SBI(dm, E_AXIS); - 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; @@ -2050,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) )); /** @@ -2079,144 +2079,85 @@ 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]; - 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 BOTH(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) - bool cartesian_move = true; + #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 { - /** - * Distance for interpretation of feedrate in accordance with LinuxCNC (the successor of NIST - * RS274NGC interpreter - version 3) and its default CANON_XYZ feed reference mode. - * Assume that X, Y, Z are the primary linear axes and U, V, W are secondary linear axes and A, B, C are - * rotational axes. Then dX, dY, dZ are the displacements of the primary linear axes and dU, dV, dW are the displacements of linear axes and - * dA, dB, dC are the displacements of rotational axes. - * The time it takes to execute move command with feedrate F is t = D/F, where 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 = ( - #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. - NUM_AXIS_GANG( - sq(steps_dist_mm.x), + sq(steps_dist_mm.y), + sq(steps_dist_mm.z), - + sq(steps_dist_mm.i), + sq(steps_dist_mm.j), + sq(steps_dist_mm.k), - + sq(steps_dist_mm.u), + sq(steps_dist_mm.v), + sq(steps_dist_mm.w) - ) - #elif ENABLED(FOAMCUTTER_XYUV) - #if HAS_J_AXIS - // Special 5 axis kinematics. Return the largest distance move from either X/Y or I/J plane - _MAX(sq(steps_dist_mm.x) + sq(steps_dist_mm.y), sq(steps_dist_mm.i) + sq(steps_dist_mm.j)) - #else // Foamcutter with only two axes (XY) - sq(steps_dist_mm.x) + sq(steps_dist_mm.y) - #endif - #elif ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - XYZ_GANG(sq(steps_dist_mm.head.x), + sq(steps_dist_mm.head.y), + sq(steps_dist_mm.z)) + const xyze_pos_t displacement = LOGICAL_AXIS_ARRAY( + dist_mm.e, + #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) + dist_mm.head.x, dist_mm.head.y, dist_mm.z, #elif CORE_IS_XZ - XYZ_GANG(sq(steps_dist_mm.head.x), + sq(steps_dist_mm.y), + sq(steps_dist_mm.head.z)) + dist_mm.head.x, dist_mm.y, dist_mm.head.z, #elif CORE_IS_YZ - XYZ_GANG(sq(steps_dist_mm.x), + sq(steps_dist_mm.head.y), + sq(steps_dist_mm.head.z)) + dist_mm.x, dist_mm.head.y, dist_mm.head.z, #else - XYZ_GANG(sq(steps_dist_mm.x), + sq(steps_dist_mm.y), + sq(steps_dist_mm.z)) + dist_mm.x, dist_mm.y, dist_mm.z, #endif + dist_mm.i, dist_mm.j, dist_mm.k, + dist_mm.u, dist_mm.v, dist_mm.w ); - #if SECONDARY_LINEAR_AXES >= 1 && NONE(FOAMCUTTER_XYUV, ARTICULATED_ROBOT_ARM) - if (UNEAR_ZERO(distance_sqr)) { - // Move does not involve any primary linear axes (xyz) but might involve secondary linear axes - distance_sqr = (0.0f - SECONDARY_AXIS_GANG( - IF_DISABLED(AXIS4_ROTATES, + sq(steps_dist_mm.i)), - IF_DISABLED(AXIS5_ROTATES, + sq(steps_dist_mm.j)), - IF_DISABLED(AXIS6_ROTATES, + sq(steps_dist_mm.k)), - IF_DISABLED(AXIS7_ROTATES, + sq(steps_dist_mm.u)), - IF_DISABLED(AXIS8_ROTATES, + sq(steps_dist_mm.v)), - IF_DISABLED(AXIS9_ROTATES, + sq(steps_dist_mm.w)) - ) - ); - } - #endif - - #if HAS_ROTATIONAL_AXES && NONE(FOAMCUTTER_XYUV, ARTICULATED_ROBOT_ARM) - if (UNEAR_ZERO(distance_sqr)) { - // Move involves only rotational axes. Calculate angular distance in accordance with LinuxCNC - TERN_(INCH_MODE_SUPPORT, cartesian_move = false); - distance_sqr = ROTATIONAL_AXIS_GANG(sq(steps_dist_mm.i), + sq(steps_dist_mm.j), + sq(steps_dist_mm.k), + sq(steps_dist_mm.u), + sq(steps_dist_mm.v), + sq(steps_dist_mm.w)); - } - #endif - - block->millimeters = SQRT(distance_sqr); + block->millimeters = get_move_distance(displacement OPTARG(HAS_ROTATIONAL_AXES, cartesian_move)); } /** @@ -2228,16 +2169,22 @@ 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); - 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; @@ -2269,7 +2216,7 @@ bool Planner::_populate_block( stepper.enable_axis(X_AXIS); stepper.enable_axis(Y_AXIS); } - #if DISABLED(Z_LATE_ENABLE) + #if HAS_Z_AXIS && DISABLED(Z_LATE_ENABLE) if (block->steps.z) stepper.enable_axis(Z_AXIS); #endif #elif CORE_IS_XZ @@ -2299,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 @@ -2313,25 +2257,25 @@ bool Planner::_populate_block( if (esteps) { TERN_(AUTO_POWER_CONTROL, powerManager.power_on()); - #if ENABLED(DISABLE_INACTIVE_EXTRUDER) // Enable only the selected extruder + #if ENABLED(DISABLE_OTHER_EXTRUDERS) // Enable only the selected extruder // Count down all steppers that were recently moved - LOOP_L_N(i, E_STEPPERS) - if (g_uc_extruder_last_move[i]) g_uc_extruder_last_move[i]--; + 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 - #define E_STEPPER_INDEX(E) TERN(SWITCHING_EXTRUDER, (E) / 2, E) + #define E_STEPPER_INDEX(E) TERN(HAS_SWITCHING_EXTRUDER, (E) / 2, E) // Enable all (i.e., both) E steppers for IDEX-style duplication, but only active E steppers for multi-nozzle (i.e., single wide X carriage) duplication #define _IS_DUPE(N) TERN0(HAS_DUPLICATION_MODE, (extruder_duplication_enabled && TERN1(MULTI_NOZZLE_DUPLICATION, TEST(duplication_e_mask, N)))) #define ENABLE_ONE_E(N) do{ \ - if (N == E_STEPPER_INDEX(extruder) || _IS_DUPE(N)) { /* N is 'extruder', or N is duplicating */ \ - stepper.ENABLE_EXTRUDER(N); /* Enable the relevant E stepper... */ \ - g_uc_extruder_last_move[N] = (BLOCK_BUFFER_SIZE) * 2; /* ...and reset its counter */ \ + if (N == E_STEPPER_INDEX(extruder) || _IS_DUPE(N)) { /* N is 'extruder', or N is duplicating */ \ + stepper.ENABLE_EXTRUDER(N); /* Enable the relevant E stepper... */ \ + extruder_last_move[N] = (BLOCK_BUFFER_SIZE) * 2; /* ...and reset its counter */ \ } \ - else if (!g_uc_extruder_last_move[N]) /* Counter expired since last E stepper enable */ \ - stepper.DISABLE_EXTRUDER(N); /* Disable the E stepper */ \ + else if (!extruder_last_move[N]) /* Counter expired since last E stepper enable */ \ + stepper.DISABLE_EXTRUDER(N); /* Disable the E stepper */ \ }while(0); #else @@ -2354,18 +2298,19 @@ bool Planner::_populate_block( // Calculate inverse time for this move. No divide by zero due to previous checks. // 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; - #if BOTH(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) - inverse_secs = inverse_millimeters * (cartesian_move ? fr_mm_s : LINEAR_UNIT(fr_mm_s)); - #else - inverse_secs = fr_mm_s * inverse_millimeters; - #endif + float inverse_secs = inverse_millimeters * ( + #if ALL(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) + cartesian_move ? fr_mm_s : LINEAR_UNIT(fr_mm_s) + #else + fr_mm_s + #endif + ); // Get the number of non busy movements in queue (non busy means that they can be altered) 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 @@ -2402,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) @@ -2412,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); @@ -2421,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) @@ -2459,11 +2404,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); @@ -2474,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)); @@ -2502,8 +2447,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? @@ -2538,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) / @@ -2651,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 ; @@ -2823,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) { @@ -2962,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 @@ -2979,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 = 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; @@ -3157,9 +3102,7 @@ bool Planner::buffer_line(const xyze_pos_t &cart, const_feedRate_t fr_mm_s PlannerHints ph = hints; if (!hints.millimeters) - ph.millimeters = (cart_dist_mm.x || cart_dist_mm.y) - ? xyz_pos_t(cart_dist_mm).magnitude() - : TERN0(HAS_Z_AXIS, ABS(cart_dist_mm.z)); + ph.millimeters = get_move_distance(xyze_pos_t(cart_dist_mm) OPTARG(HAS_ROTATIONAL_AXES, ph.cartesian_move)); #if DISABLED(FEEDRATE_SCALING) @@ -3203,14 +3146,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 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); + // 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; @@ -3260,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. @@ -3279,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 = 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 @@ -3491,8 +3429,7 @@ void Planner::set_max_feedrate(const AxisEnum axis, float inMaxFeedrateMMS) { // Doesn't matter because block_buffer_runtime_us is already too small an estimation. bbru >>= 10; // limit to about a minute. - NOMORE(bbru, 0x0000FFFFUL); - return bbru; + return _MIN(bbru, 0x0000FFFFUL); } void Planner::clear_block_buffer_runtime() { diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index 7cc8bc08e4..c45ff6ad1d 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -80,11 +80,24 @@ // 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 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 @@ -245,7 +258,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) + AxisBits direction_bits; // Direction bits set for this block, where 1 is negative motion // Advance extrusion #if ENABLED(LIN_ADVANCE) @@ -352,8 +365,8 @@ typedef struct { } skew_factor_t; #endif -#if ENABLED(DISABLE_INACTIVE_EXTRUDER) - typedef IF<(BLOCK_BUFFER_SIZE > 64), uint16_t, uint8_t>::type last_move_t; +#if ENABLED(DISABLE_OTHER_EXTRUDERS) + typedef uvalue_t(BLOCK_BUFFER_SIZE * 2) last_move_t; #endif #if ENABLED(ARC_SUPPORT) @@ -377,6 +390,11 @@ struct PlannerHints { // would calculate if it knew the as-yet-unbuffered path #endif + #if HAS_ROTATIONAL_AXES + bool cartesian_move = true; // True if linear motion of the tool centerpoint relative to the workpiece occurs. + // False if no movement of the tool center point relative to the work piece occurs + // (i.e. the tool rotates around the tool centerpoint) + #endif PlannerHints(const_float_t mm=0.0f) : millimeters(mm) {} }; @@ -411,7 +429,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 @@ -507,6 +525,10 @@ class Planner { } #endif + #if ENABLED(FT_MOTION) + static bool fxdTiCtrl_busy; + #endif + private: /** @@ -528,9 +550,9 @@ class Planner { static float last_fade_z; #endif - #if ENABLED(DISABLE_INACTIVE_EXTRUDER) + #if ENABLED(DISABLE_OTHER_EXTRUDERS) // Counters to manage disabling inactive extruder steppers - static last_move_t g_uc_extruder_last_move[E_STEPPERS]; + static last_move_t extruder_last_move[E_STEPPERS]; #endif #if HAS_WIRED_LCD @@ -628,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; } @@ -916,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 @@ -1019,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/polargraph.cpp b/Marlin/src/module/polargraph.cpp index d55d36a6d6..ef6a4c0db4 100644 --- a/Marlin/src/module/polargraph.cpp +++ b/Marlin/src/module/polargraph.cpp @@ -43,7 +43,7 @@ xy_pos_t draw_area_min, draw_area_max; void inverse_kinematics(const xyz_pos_t &raw) { const float x1 = raw.x - draw_area_min.x, x2 = draw_area_max.x - raw.x, y = raw.y - draw_area_max.y; - delta.set(HYPOT(x1, y), HYPOT(x2, y), raw.z); + delta.set(HYPOT(x1, y), HYPOT(x2, y) OPTARG(HAS_Z_AXIS, raw.z)); } #endif // POLARGRAPH diff --git a/Marlin/src/module/printcounter.cpp b/Marlin/src/module/printcounter.cpp index 3b6239c667..f3d9ec8a9d 100644 --- a/Marlin/src/module/printcounter.cpp +++ b/Marlin/src/module/printcounter.cpp @@ -41,7 +41,7 @@ Stopwatch print_job_timer; // Global Print Job Timer instance #include "../libs/buzzer.h" #endif -#if PRINTCOUNTER_SYNC +#if ENABLED(PRINTCOUNTER_SYNC) #include "../module/planner.h" #endif diff --git a/Marlin/src/module/printcounter.h b/Marlin/src/module/printcounter.h index 63cc1da158..ebf61a3a1c 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 fa92ae1fb5..68fcfd00e0 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 @@ -147,12 +147,12 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() WRITE(MAGLEV_TRIGGER_PIN, LOW); } - inline void maglev_idle() { do_blocking_move_to_z(10); } + inline void maglev_idle() { do_z_clearance(10); } #elif ENABLED(TOUCH_MI_PROBE) // Move to the magnet to unlock the probe - inline void run_deploy_moves_script() { + inline void run_deploy_moves() { #ifndef TOUCH_MI_DEPLOY_XPOS #define TOUCH_MI_DEPLOY_XPOS X_MIN_POS #elif TOUCH_MI_DEPLOY_XPOS > X_MAX_BED @@ -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); @@ -183,85 +183,86 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() } // Move down to the bed to stow the probe - inline void run_stow_moves_script() { - const xyz_pos_t oldpos = current_position; + // TODO: Handle cases where it would be a bad idea to move down. + inline void run_stow_moves() { + const float oldz = current_position.z; endstops.enable_z_probe(false); do_blocking_move_to_z(TOUCH_MI_RETRACT_Z, homing_feedrate(Z_AXIS)); - do_blocking_move_to(oldpos, homing_feedrate(Z_AXIS)); + do_blocking_move_to_z(oldz, homing_feedrate(Z_AXIS)); } #elif ENABLED(Z_PROBE_ALLEN_KEY) - inline void run_deploy_moves_script() { + inline void run_deploy_moves() { #ifdef Z_PROBE_ALLEN_KEY_DEPLOY_1 #ifndef Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE - #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE 0.0f #endif constexpr xyz_pos_t deploy_1 = Z_PROBE_ALLEN_KEY_DEPLOY_1; do_blocking_move_to(deploy_1, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_DEPLOY_2 #ifndef Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE - #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE 0.0f #endif constexpr xyz_pos_t deploy_2 = Z_PROBE_ALLEN_KEY_DEPLOY_2; do_blocking_move_to(deploy_2, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_DEPLOY_3 #ifndef Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE - #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE 0.0f #endif constexpr xyz_pos_t deploy_3 = Z_PROBE_ALLEN_KEY_DEPLOY_3; do_blocking_move_to(deploy_3, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_DEPLOY_4 #ifndef Z_PROBE_ALLEN_KEY_DEPLOY_4_FEEDRATE - #define Z_PROBE_ALLEN_KEY_DEPLOY_4_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_DEPLOY_4_FEEDRATE 0.0f #endif constexpr xyz_pos_t deploy_4 = Z_PROBE_ALLEN_KEY_DEPLOY_4; do_blocking_move_to(deploy_4, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_DEPLOY_4_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_DEPLOY_5 #ifndef Z_PROBE_ALLEN_KEY_DEPLOY_5_FEEDRATE - #define Z_PROBE_ALLEN_KEY_DEPLOY_5_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_DEPLOY_5_FEEDRATE 0.0f #endif constexpr xyz_pos_t deploy_5 = Z_PROBE_ALLEN_KEY_DEPLOY_5; do_blocking_move_to(deploy_5, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_DEPLOY_5_FEEDRATE)); #endif } - inline void run_stow_moves_script() { + inline void run_stow_moves() { #ifdef Z_PROBE_ALLEN_KEY_STOW_1 #ifndef Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE - #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE 0.0f #endif constexpr xyz_pos_t stow_1 = Z_PROBE_ALLEN_KEY_STOW_1; do_blocking_move_to(stow_1, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_STOW_2 #ifndef Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE - #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE 0.0f #endif constexpr xyz_pos_t stow_2 = Z_PROBE_ALLEN_KEY_STOW_2; do_blocking_move_to(stow_2, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_STOW_3 #ifndef Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE - #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE 0.0f #endif constexpr xyz_pos_t stow_3 = Z_PROBE_ALLEN_KEY_STOW_3; do_blocking_move_to(stow_3, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_STOW_4 #ifndef Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE - #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE 0.0f #endif constexpr xyz_pos_t stow_4 = Z_PROBE_ALLEN_KEY_STOW_4; do_blocking_move_to(stow_4, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE)); #endif #ifdef Z_PROBE_ALLEN_KEY_STOW_5 #ifndef Z_PROBE_ALLEN_KEY_STOW_5_FEEDRATE - #define Z_PROBE_ALLEN_KEY_STOW_5_FEEDRATE 0.0 + #define Z_PROBE_ALLEN_KEY_STOW_5_FEEDRATE 0.0f #endif constexpr xyz_pos_t stow_5 = Z_PROBE_ALLEN_KEY_STOW_5; do_blocking_move_to(stow_5, MMM_TO_MMS(Z_PROBE_ALLEN_KEY_STOW_5_FEEDRATE)); @@ -272,7 +273,7 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() typedef struct { float fr_mm_min; xyz_pos_t where; } mag_probe_move_t; - inline void run_deploy_moves_script() { + inline void run_deploy_moves() { #ifdef MAG_MOUNTED_DEPLOY_1 constexpr mag_probe_move_t deploy_1 = MAG_MOUNTED_DEPLOY_1; do_blocking_move_to(deploy_1.where, MMM_TO_MMS(deploy_1.fr_mm_min)); @@ -295,7 +296,7 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() #endif } - inline void run_stow_moves_script() { + inline void run_stow_moves() { #ifdef MAG_MOUNTED_STOW_1 constexpr mag_probe_move_t stow_1 = MAG_MOUNTED_STOW_1; do_blocking_move_to(stow_1.where, MMM_TO_MMS(stow_1.fr_mm_min)); @@ -348,37 +349,38 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() #endif // HAS_QUIET_PROBING -/** - * Raise Z to a minimum height to make room for a probe to move - */ -void Probe::do_z_raise(const float z_raise) { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Probe::do_z_raise(", z_raise, ")"); - float z_dest = z_raise; - if (offset.z < 0) z_dest -= offset.z; - do_z_clearance(z_dest); -} - 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)); + 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_max_status(ds_str); + SERIAL_ECHOLN(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_(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(); + OKAY_BUZZ(); - } while (ENABLED(PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED)); + #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 + + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(ds_str)); + TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(ds_str)); + TERN_(DWIN_LCD_PROUI, dwinPopupConfirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); + TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); + + ui.reset_status(); #endif // PAUSE_BEFORE_DEPLOY_STOW @@ -402,11 +404,19 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { #elif HAS_Z_SERVO_PROBE + // i.e., deploy ? DEPLOY_Z_SERVO() : STOW_Z_SERVO(); servo[Z_PROBE_SERVO_NR].move(servo_angles[Z_PROBE_SERVO_NR][deploy ? 0 : 1]); + #ifdef Z_SERVO_MEASURE_ANGLE + // After deploy move back to the measure angle... + if (deploy) servo[Z_PROBE_SERVO_NR].move(Z_SERVO_MEASURE_ANGLE); + #endif + + if (TERN0(Z_SERVO_DEACTIVATE_AFTER_STOW, !deploy)) servo[Z_PROBE_SERVO_NR].detach(); + #elif ANY(TOUCH_MI_PROBE, Z_PROBE_ALLEN_KEY, MAG_MOUNTED_PROBE) - deploy ? run_deploy_moves_script() : run_stow_moves_script(); + deploy ? run_deploy_moves() : run_stow_moves(); #elif ENABLED(RACK_AND_PINION_PROBE) @@ -419,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 @@ -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 @@ -480,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); @@ -494,11 +504,10 @@ void Probe::probe_error_stop() { * * Return TRUE if the probe could not be deployed/stowed */ -bool Probe::set_deployed(const bool deploy) { - +bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { if (DEBUGGING(LEVELING)) { DEBUG_POS("Probe::set_deployed", current_position); - DEBUG_ECHOLNPGM("deploy: ", deploy); + DEBUG_ECHOLNPGM("deploy=", deploy, " no_return=", no_return); } if (endstops.z_probe_enabled == deploy) return false; @@ -506,23 +515,26 @@ bool Probe::set_deployed(const bool deploy) { // 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; #endif - if (z_raise_wanted) - do_z_raise(_MAX(Z_CLEARANCE_BETWEEN_PROBES, Z_CLEARANCE_DEPLOY_PROBE)); + if (z_raise_wanted) { + 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); + } - #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; } #endif - const xy_pos_t old_xy = current_position; + const xy_pos_t old_xy = current_position; // Remember location before probe deployment #if ENABLED(PROBE_TRIGGERED_WHEN_STOWED_TEST) @@ -549,9 +561,11 @@ bool Probe::set_deployed(const bool deploy) { #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)); - do_blocking_move_to(old_xy); + if (!no_return) do_blocking_move_to(old_xy); // Return to the original location unless handled externally + endstops.enable_z_probe(deploy); return false; } @@ -574,16 +588,19 @@ bool Probe::set_deployed(const bool deploy) { 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 - #if ENABLED(BLTOUCH) - if (!bltouch.high_speed_mode && bltouch.deploy()) - return true; // Deploy in LOW SPEED MODE on every probe action + + // 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 #endif // Disable stealthChop if used. Enable diag1 pin on driver. @@ -593,10 +610,21 @@ 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 + #endif // SENSORLESS_PROBING TERN_(HAS_QUIET_PROBING, set_probing_paused(true)); @@ -604,17 +632,17 @@ 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 - if (probe_triggered) probe.refresh_largest_sensorless_adj(); + if (probe_triggered) refresh_largest_sensorless_adj(); #endif TERN_(HAS_QUIET_PROBING, set_probing_paused(false)); @@ -626,15 +654,30 @@ 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()) return true; // Stow in LOW SPEED MODE on every trigger #endif + #if ALL(HAS_Z_SERVO_PROBE, Z_SERVO_INTERMEDIATE_STOW) + probe_specific_action(false); // Always stow + #endif + // Clear endstop flags endstops.hit_on_purpose(); @@ -666,14 +709,14 @@ 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()) { - SERIAL_ECHOLNPGM("Cannot tare an active probe"); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Cannot tare an active probe"); return true; } #endif - SERIAL_ECHOLNPGM("Taring probe"); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Taring probe"); WRITE(PROBE_TARE_PIN, PROBE_TARE_STATE); delay(PROBE_TARE_TIME); WRITE(PROBE_TARE_PIN, !PROBE_TARE_STATE); @@ -690,25 +733,37 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { * @details Used by probe_at_point to get the bed Z height at the current XY. * Leaves current_position.z at the height where the probe triggered. * + * @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)); - auto try_to_probe = [&](PGM_P const plbl, const_float_t z_probe_low_point, const feedRate_t fr_mm_s, const bool scheck, const float clearance) -> bool { + const float zoffs = SUM_TERN(HAS_HOTEND_OFFSET, -offset.z, hotend_offset[active_extruder].z); + + auto try_to_probe = [&](PGM_P const plbl, const_float_t z_probe_low_point, const feedRate_t fr_mm_s, const bool scheck) -> bool { + constexpr float error_tolerance = 2.0f; + if (DEBUGGING(LEVELING)) { + DEBUG_ECHOPGM_P(plbl); + DEBUG_ECHOLNPGM("> try_to_probe(..., ", z_probe_low_point, ", ", fr_mm_s, ", ...)"); + } + // Tare the probe, if supported if (TERN0(PROBE_TARE, tare())) return true; // Do a first probe at the fast speed - const bool probe_fail = probe_down_to_z(z_probe_low_point, fr_mm_s), // No probe trigger? - early_fail = (scheck && current_position.z > -offset.z + clearance); // Probe triggered too high? + const bool probe_fail = probe_down_to_z(z_probe_low_point, fr_mm_s), // No probe trigger? + early_fail = (scheck && current_position.z > zoffs + error_tolerance); // Probe triggered too high? #if ENABLED(DEBUG_LEVELING_FEATURE) if (DEBUGGING(LEVELING) && (probe_fail || early_fail)) { - DEBUG_ECHOPGM_P(plbl); - DEBUG_ECHOPGM(" Probe fail! -"); - if (probe_fail) DEBUG_ECHOPGM(" No trigger."); - if (early_fail) DEBUG_ECHOPGM(" Triggered early."); - DEBUG_EOL(); + DEBUG_ECHOPGM(" Probe fail! - "); + if (probe_fail) DEBUG_ECHOLNPGM("No trigger."); + if (early_fail) DEBUG_ECHOLNPGM("Triggered early (above ", zoffs + error_tolerance, "mm)"); } #else UNUSED(plbl); @@ -717,8 +772,9 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { }; // Stop the probe before it goes too low to prevent damage. - // If Z isn't known then probe to -10mm. - const float z_probe_low_point = axis_is_trusted(Z_AXIS) ? -offset.z + Z_PROBE_LOW_POINT : -10.0; + // 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 #if TOTAL_PROBING == 2 @@ -727,24 +783,23 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { if (TERN0(PROBE_TARE, tare())) return NAN; // Do a first probe at the fast speed - if (try_to_probe(PSTR("FAST"), z_probe_low_point, z_probe_fast_mm_s, - sanity_check, Z_CLEARANCE_BETWEEN_PROBES) ) return NAN; + if (try_to_probe(PSTR("FAST"), z_probe_low_point, z_probe_fast_mm_s, sanity_check)) return NAN; - const float first_probe_z = DIFF_TERN(HAS_DELTA_SENSORLESS_PROBING, current_position.z, largest_sensorless_adj); - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("1st Probe Z:", first_probe_z); + const float z1 = DIFF_TERN(HAS_DELTA_SENSORLESS_PROBING, current_position.z, largest_sensorless_adj); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("1st Probe Z:", z1); // Raise to give the probe clearance - do_blocking_move_to_z(current_position.z + Z_CLEARANCE_MULTI_PROBE, z_probe_fast_mm_s); + do_z_clearance(z1 + (Z_CLEARANCE_MULTI_PROBE), false); #elif Z_PROBE_FEEDRATE_FAST != Z_PROBE_FEEDRATE_SLOW // If the nozzle is well over the travel height then // move down quickly before doing the slow probe - const float z = Z_CLEARANCE_DEPLOY_PROBE + 5.0 + (offset.z < 0 ? -offset.z : 0); + const float z = (Z_CLEARANCE_DEPLOY_PROBE) + 5.0f + _MAX(zoffs, 0.0f); 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_blocking_move_to_z(current_position.z + Z_CLEARANCE_BETWEEN_PROBES, z_probe_fast_mm_s); + do_z_clearance(z_clearance); } #endif @@ -767,8 +822,8 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { if (TERN0(PROBE_TARE, tare())) return true; // Probe downward slowly to find the bed - if (try_to_probe(PSTR("SLOW"), z_probe_low_point, MMM_TO_MMS(Z_PROBE_FEEDRATE_SLOW), - sanity_check, Z_CLEARANCE_MULTI_PROBE) ) return NAN; + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Slow Probe:"); + if (try_to_probe(PSTR("SLOW"), z_probe_low_point, MMM_TO_MMS(Z_PROBE_FEEDRATE_SLOW), sanity_check)) return NAN; TERN_(MEASURE_BACKLASH_WHEN_PROBING, backlash.measure_with_probe()); @@ -776,7 +831,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { #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 @@ -795,7 +850,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { #if EXTRA_PROBING > 0 < TOTAL_PROBING - 1 #endif - ) do_blocking_move_to_z(z + Z_CLEARANCE_MULTI_PROBE, z_probe_fast_mm_s); + ) do_z_clearance(z + (Z_CLEARANCE_MULTI_PROBE), false); #endif } @@ -814,7 +869,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { 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 @@ -825,10 +880,10 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { const float z2 = DIFF_TERN(HAS_DELTA_SENSORLESS_PROBING, current_position.z, largest_sensorless_adj); - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("2nd Probe Z:", z2, " Discrepancy:", first_probe_z - z2); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("2nd Probe Z:", z2, " Discrepancy:", z1 - z2); // Return a weighted average of the fast and slow probes - const float measured_z = (z2 * 3.0 + first_probe_z * 2.0) * 0.2; + const float measured_z = (z2 * 3.0f + z1 * 2.0f) * 0.2f; #else @@ -837,9 +892,31 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { #endif - return measured_z; + return DIFF_TERN(HAS_HOTEND_OFFSET, measured_z, hotend_offset[active_extruder].z); } +#if DO_TOOLCHANGE_FOR_PROBING + + #include "tool_change.h" + + /** + * Switches to the appropriate tool (PROBING_TOOL) for probing (probing = true), and switches + * back to the old tool when probing = false. Uses statics to avoid unnecessary checks and to + * cache the previous tool, so always call with false after calling with true. + */ + void Probe::use_probing_tool(const bool probing/*=true*/) { + static uint8_t old_tool; + static bool old_state = false; + if (probing == old_state) return; + old_state = probing; + if (probing) old_tool = active_extruder; + const uint8_t tool = probing ? PROBING_TOOL : old_tool; + if (tool != active_extruder) + tool_change(tool, ENABLED(PROBE_TOOLCHANGE_NO_MOVE)); + } + +#endif + /** * - Move to the given XY * - Deploy the probe, if not already deployed @@ -848,8 +925,18 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { * - Stow the probe, or * - Raise to the BETWEEN height * - Return the probed Z position + * - Revert to previous tool + * + * A batch of multiple probing operations should always be preceded by use_probing_tool() invocation + * and succeeded by use_probing_tool(false), in order to avoid multiple tool changes and to end up + * 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)) { @@ -863,55 +950,77 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai } #if ENABLED(BLTOUCH) - if (bltouch.high_speed_mode && bltouch.triggered()) - bltouch._reset(); + // Reset a BLTouch in HS mode if already triggered + if (bltouch.high_speed_mode && bltouch.triggered()) bltouch._reset(); #endif + // Use a safe Z height for the XY move + 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( - rx, ry, TERN(DELTA, _MIN(delta_clip_start_height, current_position.z), current_position.z), + rx, ry, TERN(DELTA, _MIN(delta_clip_start_height, safe_z), safe_z), current_position.i, current_position.j, current_position.k, current_position.u, current_position.v, current_position.w ); if (!can_reach(npos, probe_relative)) { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Position Not Reachable"); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Not Reachable"); return NAN; } - if (probe_relative) npos -= offset_xy; // Get the nozzle position + + if (DEBUGGING(LEVELING)) DEBUG_ECHOPGM("Move to probe"); + if (probe_relative) { // Get the nozzle position, adjust for active hotend if not 0 + if (DEBUGGING(LEVELING)) DEBUG_ECHOPGM("-relative"); + npos -= DIFF_TERN(HAS_HOTEND_OFFSET, offset_xy, xy_pos_t(hotend_offset[active_extruder])); + } + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM(" point"); // Move the probe to the starting XYZ do_blocking_move_to(npos, feedRate_t(XY_PROBE_FEEDRATE_MM_S)); #if ENABLED(BD_SENSOR) + return current_position.z - bdl.read(); // Difference between Z-home-relative Z and sensor reading - #endif - float measured_z = NAN; - if (!deploy()) { - measured_z = run_z_probe(sanity_check) + offset.z; - TERN_(HAS_PTC, ptc.apply_compensation(measured_z)); - TERN_(X_AXIS_TWIST_COMPENSATION, measured_z += xatc.compensation(npos + offset_xy)); - } - if (!isnan(measured_z)) { - const bool big_raise = raise_after == PROBE_PT_BIG_RAISE; - if (big_raise || raise_after == PROBE_PT_RAISE) - do_blocking_move_to_z(current_position.z + (big_raise ? 25 : Z_CLEARANCE_BETWEEN_PROBES), z_probe_fast_mm_s); - else if (raise_after == PROBE_PT_STOW || raise_after == PROBE_PT_LAST_STOW) - if (stow()) measured_z = NAN; // Error on stow? + #else // !BD_SENSOR - if (verbose_level > 2) - SERIAL_ECHOLNPGM("Bed X: ", LOGICAL_X_POSITION(rx), " Y: ", LOGICAL_Y_POSITION(ry), " Z: ", measured_z); - } + float measured_z = deploy() ? NAN : run_z_probe(sanity_check, z_min_point, z_clearance) + offset.z; - if (isnan(measured_z)) { - stow(); - LCD_MESSAGE(MSG_LCD_PROBING_FAILED); - #if DISABLED(G29_RETRY_AND_RECOVER) - SERIAL_ERROR_MSG(STR_ERR_PROBING_FAILED); - #endif - } - DEBUG_ECHOLNPGM("measured_z: ", measured_z); - return measured_z; + // Deploy succeeded and a successful measurement was done. + // Raise and/or stow the probe depending on 'raise_after' and settings. + if (!isnan(measured_z)) { + switch (raise_after) { + default: break; + case PROBE_PT_RAISE: + 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? + break; + } + } + + // If any error occurred stow the probe and set an alert + if (isnan(measured_z)) { + stow(); + LCD_MESSAGE(MSG_LCD_PROBING_FAILED); + #if DISABLED(G29_RETRY_AND_RECOVER) + SERIAL_ERROR_MSG(STR_ERR_PROBING_FAILED); + #endif + } + else { + TERN_(HAS_PTC, ptc.apply_compensation(measured_z)); + TERN_(X_AXIS_TWIST_COMPENSATION, measured_z += xatc.compensation(npos + offset_xy)); + if (verbose_level > 2 || DEBUGGING(LEVELING)) + SERIAL_ECHOLNPGM("Bed X: ", LOGICAL_X_POSITION(rx), " Y: ", LOGICAL_Y_POSITION(ry), " Z: ", measured_z); + } + + return measured_z; + + #endif // !BD_SENSOR } #if HAS_Z_SERVO_PROBE @@ -926,6 +1035,8 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai * homing has been done - no homing with z-probe without init! */ STOW_Z_SERVO(); + + TERN_(Z_SERVO_DEACTIVATE_AFTER_STOW, servo[Z_PROBE_SERVO_NR].detach()); } #endif // HAS_Z_SERVO_PROBE @@ -948,15 +1059,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/module/probe.h b/Marlin/src/module/probe.h index 961ba41144..028a7589cc 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -29,35 +29,38 @@ #include "motion.h" -#if ENABLED(DWIN_LCD_PROUI) - #include "../lcd/e3v2/proui/dwin.h" +#if ENABLED(BLTOUCH) + #include "../feature/bltouch.h" #endif +#define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) +#include "../core/debug_out.h" + #if HAS_BED_PROBE enum ProbePtRaise : uint8_t { PROBE_PT_NONE, // No raise or stow after run_z_probe PROBE_PT_STOW, // Do a complete stow after run_z_probe PROBE_PT_LAST_STOW, // Stow for sure, even in BLTouch HS mode - PROBE_PT_RAISE, // Raise to "between" clearance after run_z_probe - PROBE_PT_BIG_RAISE // Raise to big clearance after run_z_probe + PROBE_PT_RAISE // Raise to "between" clearance after run_z_probe }; #endif -#if USES_Z_MIN_PROBE_PIN - #define PROBE_TRIGGERED() (READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING) +#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_TRIGGERED() (READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING) + #define PROBE_READ() READ(Z_MIN_PIN) #endif +#if USE_Z_MIN_PROBE + #define PROBE_HIT_STATE Z_MIN_PROBE_ENDSTOP_HIT_STATE +#else + #define PROBE_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE +#endif +#define PROBE_TRIGGERED() (PROBE_READ() == PROBE_HIT_STATE) -#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_TWEEN_SAFE_CLEARANCE SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()) #if ENABLED(PREHEAT_BEFORE_LEVELING) #ifndef LEVELING_NOZZLE_TEMP @@ -76,9 +79,7 @@ class Probe { public: #if ENABLED(SENSORLESS_PROBING) - typedef struct { - bool x:1, y:1, z:1; - } sense_bool_t; + typedef struct { bool x:1, y:1, z:1; } sense_bool_t; static sense_bool_t test_sensitivity; #endif @@ -86,13 +87,13 @@ public: 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); + #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 static void probe_error_stop(); - static bool set_deployed(const bool deploy); + static bool set_deployed(const bool deploy, const bool no_return=false); #if IS_KINEMATIC @@ -116,7 +117,33 @@ public: } #endif - #else + #else // !IS_KINEMATIC + + static bool obstacle_check(const_float_t rx, const_float_t ry) { + #if ENABLED(AVOID_OBSTACLES) + #ifdef OBSTACLE1 + constexpr float obst1[] = OBSTACLE1; + static_assert(COUNT(obst1) == 4, "OBSTACLE1 must define a rectangle in the form { X1, Y1, X2, Y2 }."); + if (WITHIN(rx, obst1[0], obst1[2]) && WITHIN(ry, obst1[1], obst1[3])) return false; + #endif + #ifdef OBSTACLE2 + constexpr float obst2[] = OBSTACLE2; + static_assert(COUNT(obst2) == 4, "OBSTACLE2 must define a rectangle in the form { X1, Y1, X2, Y2 }."); + if (WITHIN(rx, obst2[0], obst2[2]) && WITHIN(ry, obst2[1], obst2[3])) return false; + #endif + #ifdef OBSTACLE3 + constexpr float obst3[] = OBSTACLE3; + static_assert(COUNT(obst3) == 4, "OBSTACLE3 must define a rectangle in the form { X1, Y1, X2, Y2 }."); + if (WITHIN(rx, obst3[0], obst3[2]) && WITHIN(ry, obst3[1], obst3[3])) return false; + #endif + #ifdef OBSTACLE4 + constexpr float obst4[] = OBSTACLE4; + static_assert(COUNT(obst4) == 4, "OBSTACLE4 must define a rectangle in the form { X1, Y1, X2, Y2 }."); + if (WITHIN(rx, obst4[0], obst4[2]) && WITHIN(ry, obst4[1], obst4[3])) return false; + #endif + #endif + return true; + } /** * Return whether the given position is within the bed, and whether the nozzle @@ -129,42 +156,50 @@ public: if (probe_relative) { return position_is_reachable(rx - offset_xy.x, ry - offset_xy.y) && COORDINATE_OKAY(rx, min_x() - fslop, max_x() + fslop) - && COORDINATE_OKAY(ry, min_y() - fslop, max_y() + fslop); + && COORDINATE_OKAY(ry, min_y() - fslop, max_y() + fslop) + && obstacle_check(rx, ry) + && obstacle_check(rx - offset_xy.x, ry - offset_xy.y); } else { return position_is_reachable(rx, ry) && COORDINATE_OKAY(rx + offset_xy.x, min_x() - fslop, max_x() + fslop) - && COORDINATE_OKAY(ry + offset_xy.y, min_y() - fslop, max_y() + fslop); + && COORDINATE_OKAY(ry + offset_xy.y, min_y() - fslop, max_y() + fslop) + && obstacle_check(rx, ry) + && obstacle_check(rx + offset_xy.x, ry + offset_xy.y); } } - #endif + #endif // !IS_KINEMATIC - static void move_z_after_probing() { - #ifdef Z_AFTER_PROBING - do_z_clearance(Z_AFTER_PROBING, true); // Move down still permitted - #endif - } - 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 + #else // !HAS_BED_PROBE static constexpr xyz_pos_t offset = xyz_pos_t(NUM_AXIS_ARRAY_1(0)); // See #16767 - static bool set_deployed(const bool) { return false; } + 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 + #endif // !HAS_BED_PROBE - static void move_z_after_homing() { - #if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) || defined(Z_AFTER_HOMING) - do_z_clearance(Z_POST_CLEARANCE, true); - #elif HAS_BED_PROBE - move_z_after_probing(); + static void use_probing_tool(const bool=true) IF_DISABLED(DO_TOOLCHANGE_FOR_PROBING, {}); + + static void move_z_after_probing() { + DEBUG_SECTION(mzah, "move_z_after_probing", DEBUGGING(LEVELING)); + #ifdef Z_AFTER_PROBING + do_z_clearance(Z_AFTER_PROBING, true, true); // Move down still permitted #endif } @@ -188,8 +223,8 @@ public: static constexpr xy_pos_t offset_xy = xy_pos_t({ 0, 0 }); // See #16767 #endif - static bool deploy() { return set_deployed(true); } - static bool stow() { return set_deployed(false); } + static bool deploy(const bool no_return=false) { return set_deployed(true, no_return); } + static bool stow(const bool no_return=false) { return set_deployed(false, no_return); } #if HAS_BED_PROBE || HAS_LEVELING #if IS_KINEMATIC @@ -266,12 +301,12 @@ public: template static void get_three_points(T points[3]) { #if HAS_FIXED_3POINT - #define VALIDATE_PROBE_PT(N) static_assert(Probe::build_time::can_reach(xy_pos_t{PROBE_PT_##N##_X, PROBE_PT_##N##_Y}), \ - "PROBE_PT_" STRINGIFY(N) "_(X|Y) is unreachable using default NOZZLE_TO_PROBE_OFFSET and PROBING_MARGIN"); + #define VALIDATE_PROBE_PT(N) static_assert(Probe::build_time::can_reach(xy_pos_t(PROBE_PT_##N)), \ + "PROBE_PT_" STRINGIFY(N) " is unreachable using default NOZZLE_TO_PROBE_OFFSET and PROBING_MARGIN."); VALIDATE_PROBE_PT(1); VALIDATE_PROBE_PT(2); VALIDATE_PROBE_PT(3); - points[0] = xy_float_t({ PROBE_PT_1_X, PROBE_PT_1_Y }); - points[1] = xy_float_t({ PROBE_PT_2_X, PROBE_PT_2_Y }); - points[2] = xy_float_t({ PROBE_PT_3_X, PROBE_PT_3_Y }); + points[0] = xy_float_t(PROBE_PT_1); + points[1] = xy_float_t(PROBE_PT_2); + points[2] = xy_float_t(PROBE_PT_3); #else #if IS_KINEMATIC constexpr float SIN0 = 0.0, SIN120 = 0.866025, SIN240 = -0.866025, @@ -279,6 +314,10 @@ public: points[0] = xy_float_t({ (X_CENTER) + probe_radius() * COS0, (Y_CENTER) + probe_radius() * SIN0 }); points[1] = xy_float_t({ (X_CENTER) + probe_radius() * COS120, (Y_CENTER) + probe_radius() * SIN120 }); points[2] = xy_float_t({ (X_CENTER) + probe_radius() * COS240, (Y_CENTER) + probe_radius() * SIN240 }); + #elif ENABLED(AUTO_BED_LEVELING_UBL) + points[0] = xy_float_t({ _MAX(float(MESH_MIN_X), min_x()), _MAX(float(MESH_MIN_Y), min_y()) }); + points[1] = xy_float_t({ _MIN(float(MESH_MAX_X), max_x()), _MAX(float(MESH_MIN_Y), min_y()) }); + points[2] = xy_float_t({ (_MAX(float(MESH_MIN_X), min_x()) + _MIN(float(MESH_MAX_X), max_x())) / 2, _MIN(float(MESH_MAX_Y), max_y()) }); #else points[0] = xy_float_t({ min_x(), min_y() }); points[1] = xy_float_t({ max_x(), min_y() }); @@ -311,8 +350,7 @@ public: private: static bool probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s); - static void do_z_raise(const float z_raise); - 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; diff --git a/Marlin/src/module/scara.cpp b/Marlin/src/module/scara.cpp index 4c42ace884..9c149670e9 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 2973ec05a2..1e9e57528a 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_READWRITE +#define DEBUG_EEPROM_OBSERVE #include "settings.h" @@ -55,11 +56,13 @@ #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 -#include "probe.h" +#if HAS_BED_PROBE + #include "probe.h" +#endif #if HAS_LEVELING #include "../feature/bedlevel/bedlevel.h" @@ -111,6 +114,10 @@ #include "../feature/backlash.h" #endif +#if ENABLED(FT_MOTION) + #include "../module/ft_motion.h" +#endif + #if HAS_FILAMENT_SENSOR #include "../feature/runout.h" #endif @@ -168,6 +175,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 @@ -178,10 +189,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 @@ -204,7 +215,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 @@ -222,7 +234,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 @@ -258,14 +272,16 @@ 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)]; // // 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 @@ -276,6 +292,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 @@ -322,7 +339,7 @@ typedef struct SettingsDataStruct { // BLTOUCH // bool bltouch_od_5v_mode; - #ifdef BLTOUCH_HS_MODE + #if HAS_BLTOUCH_HS_MODE bool bltouch_high_speed_mode; // M401 S #endif @@ -475,7 +492,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 +520,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 @@ -518,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 // @@ -587,16 +608,30 @@ 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 + + // + // HOTEND_IDLE_TIMEOUT + // + #if ENABLED(HOTEND_IDLE_TIMEOUT) + hotend_idle_settings_t hotend_idle_config; // M86 S T E B #endif } SettingsData; @@ -635,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 @@ -673,7 +705,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)) && @@ -717,19 +749,22 @@ 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 #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." \ @@ -738,6 +773,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) @@ -747,20 +790,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; } /** @@ -768,22 +811,29 @@ void MarlinSettings::postprocess() { */ bool MarlinSettings::save() { float dummyf = 0; - char ver[4] = "ERR"; + MString<3> ver(F("ERR")); 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); @@ -813,6 +863,7 @@ void MarlinSettings::postprocess() { // // Home Offset // + #if NUM_AXES { _FIELD_TEST(home_offset); @@ -825,15 +876,18 @@ void MarlinSettings::postprocess() { EEPROM_WRITE(home_offset); #endif } + #endif // NUM_AXES // // Hotend Offsets, if any // - #if HAS_HOTEND_OFFSET - // Skip hotend 0 which must be 0 - LOOP_S_L_N(e, 1, HOTENDS) - EEPROM_WRITE(hotend_offset[e]); - #endif + { + #if HAS_HOTEND_OFFSET + // Skip hotend 0 which must be 0 + for (uint8_t e = 1; e < HOTENDS; ++e) + EEPROM_WRITE(hotend_offset[e]); + #endif + } // // Filament Runout Sensor @@ -841,9 +895,9 @@ void MarlinSettings::postprocess() { #if HAS_FILAMENT_SENSOR { _FIELD_TEST(runout_enabled); - LOOP_L_N(e, NUM_RUNOUT_SENSORS) EEPROM_WRITE(runout.enabled[e]); - LOOP_L_N(e, NUM_RUNOUT_SENSORS) EEPROM_WRITE(runout.runout_distance(e)); - LOOP_L_N(e, NUM_RUNOUT_SENSORS) EEPROM_WRITE(runout.mode[e]); + for(uint8_t e=0; e (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(); @@ -1858,6 +1980,7 @@ void MarlinSettings::postprocess() { // // Probe Z Offset // + #if NUM_AXES { _FIELD_TEST(probe_offset); #if HAS_BED_PROBE @@ -1867,6 +1990,7 @@ void MarlinSettings::postprocess() { #endif EEPROM_READ(zpo); } + #endif // // Planar Bed Leveling matrix @@ -1886,6 +2010,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 @@ -1895,6 +2028,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 { @@ -1972,7 +2109,7 @@ void MarlinSettings::postprocess() { #endif EEPROM_READ(bltouch_od_5v_mode); - #ifdef BLTOUCH_HS_MODE + #if HAS_BLTOUCH_HS_MODE _FIELD_TEST(bltouch_high_speed_mode); #if ENABLED(BLTOUCH) const bool &bltouch_high_speed_mode = bltouch.high_speed_mode; @@ -2435,6 +2572,7 @@ void MarlinSettings::postprocess() { // // CNC Coordinate System // + #if NUM_AXES { _FIELD_TEST(coordinate_system); #if ENABLED(CNC_COORDINATE_SYSTEMS) @@ -2445,6 +2583,7 @@ void MarlinSettings::postprocess() { EEPROM_READ(coordinate_system); #endif } + #endif // // Skew correction factors @@ -2490,6 +2629,7 @@ void MarlinSettings::postprocess() { // // Backlash Compensation // + #if NUM_AXES { xyz_float_t backlash_distance_mm; uint8_t backlash_correction; @@ -2508,6 +2648,7 @@ void MarlinSettings::postprocess() { #endif #endif } + #endif // NUM_AXES // // Extensible UI User Data @@ -2529,14 +2670,14 @@ 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) { - 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.Load_Settings(dwin_settings); + if (!validating) jyersDWIN.loadSettings(dwin_settings); } #endif @@ -2621,9 +2762,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 // @@ -2647,43 +2794,45 @@ void MarlinSettings::postprocess() { } #endif + // + // HOTEND_IDLE_TIMEOUT + // + #if ENABLED(HOTEND_IDLE_TIMEOUT) + EEPROM_READ(hotend_idle.cfg); + #endif + // // 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)!"); - TERN_(DWIN_LCD_PROUI, 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(); 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 = true; - #if BOTH(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) + eeprom_error = ERR_EEPROM_CORRUPT; + #if ALL(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) DEBUG_ECHOPGM("?Can't enable "); bedlevel.echo_name(); DEBUG_ECHOLNPGM("."); @@ -2701,6 +2850,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) @@ -2708,9 +2877,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 @@ -2720,26 +2887,30 @@ 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; } 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 @@ -2846,7 +3017,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); @@ -2899,7 +3070,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) @@ -2955,7 +3126,7 @@ void MarlinSettings::reset() { static_assert(COUNT(frd) == NUM_RUNOUT_SENSORS, "FIL_RUNOUT_DISTANCE_MM must have NUM_RUNOUT_SENSORS values."); COPY(runout.enabled, fred); COPY(runout.mode, frm); - LOOP_L_N(e, NUM_RUNOUT_SENSORS) runout.set_runout_distance(frd[e], e); + for(uint8_t e = 0; e < NUM_RUNOUT_SENSORS; ++e) runout.set_runout_distance(frd[e], e); runout.reset(); #endif @@ -3003,7 +3174,7 @@ void MarlinSettings::reset() { #endif #endif - TERN_(DWIN_CREALITY_LCD_JYERSUI, CrealityDWIN.Reset_Settings()); + TERN_(DWIN_CREALITY_LCD_JYERSUI, jyersDWIN.resetSettings()); // // Case Light Brightness @@ -3078,9 +3249,7 @@ void MarlinSettings::reset() { // // BLTouch // - #ifdef BLTOUCH_HS_MODE - bltouch.high_speed_mode = ENABLED(BLTOUCH_HS_MODE); - #endif + TERN_(HAS_BLTOUCH_HS_MODE, bltouch.high_speed_mode = BLTOUCH_HS_MODE); // // Kinematic Settings (Delta, SCARA, TPARA, Polargraph...) @@ -3154,7 +3323,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]); @@ -3295,10 +3464,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 @@ -3329,7 +3498,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 @@ -3339,7 +3508,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 @@ -3392,7 +3561,7 @@ void MarlinSettings::reset() { // // Ender-3 V2 with ProUI // - TERN_(DWIN_LCD_PROUI, DWIN_SetDataDefaults()); + TERN_(DWIN_LCD_PROUI, dwinSetDataDefaults()); // // Model predictive control @@ -3429,10 +3598,15 @@ void MarlinSettings::reset() { } #endif + // + // Fixed-Time Motion + // + TERN_(FT_MOTION, fxdTiCtrl.set_defaults()); + // // Input Shaping // - #if HAS_SHAPING + #if HAS_ZV_SHAPING #if ENABLED(INPUT_SHAPING_X) stepper.set_shaping_frequency(X_AXIS, SHAPING_FREQ_X); stepper.set_shaping_damping_ratio(X_AXIS, SHAPING_ZETA_X); @@ -3443,12 +3617,17 @@ void MarlinSettings::reset() { #endif #endif + // + // Hotend Idle Timeout + // + TERN_(HOTEND_IDLE_TIMEOUT, hotend_idle.cfg.set_defaults()); + 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); + DEBUG_ECHO_START(); DEBUG_ECHOLN(hdsl); #endif TERN_(EXTENSIBLE_UI, ExtUI::onFactoryReset()); @@ -3524,7 +3703,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 @@ -3541,15 +3720,14 @@ 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); + 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) @@ -3567,11 +3745,10 @@ 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); + 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)); } } } @@ -3598,7 +3775,7 @@ void MarlinSettings::reset() { // // M666 Endstops Adjustment // - #if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) + #if ANY(DELTA, HAS_EXTRA_ENDSTOPS) gcode.M666_report(forReplay); #endif @@ -3620,7 +3797,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 @@ -3690,10 +3867,20 @@ void MarlinSettings::reset() { // TERN_(HAS_STEALTHCHOP, gcode.M569_report(forReplay)); + // + // Fixed-Time Motion + // + TERN_(FT_MOTION, gcode.M493_report(forReplay)); + // // Input Shaping // - TERN_(HAS_SHAPING, gcode.M593_report(forReplay)); + TERN_(HAS_ZV_SHAPING, gcode.M593_report(forReplay)); + + // + // Hotend Idle Timeout + // + TERN_(HOTEND_IDLE_TIMEOUT, gcode.M86_report(forReplay)); // // Linear Advance diff --git a/Marlin/src/module/settings.h b/Marlin/src/module/settings.h index a8fca60baa..b7c5210db5 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); } diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 74b6b6adab..5b4c366736 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 @@ -91,6 +92,10 @@ Stepper stepper; // Singleton #include "planner.h" #include "motion.h" +#if ENABLED(FT_MOTION) + #include "ft_motion.h" +#endif + #include "../lcd/marlinui.h" #include "../gcode/queue.h" #include "../sd/cardreader.h" @@ -101,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 @@ -143,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 @@ -161,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; @@ -177,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 @@ -189,7 +194,14 @@ bool Stepper::abort_current_block; #endif uint32_t Stepper::acceleration_time, Stepper::deceleration_time; -uint8_t Stepper::steps_per_isr; + +#if MULTISTEPPING_LIMIT > 1 + uint8_t Stepper::steps_per_isr = 1; // Count of steps to perform per Stepper ISR call +#endif + +#if DISABLED(OLD_ADAPTIVE_MULTISTEPPING) + hal_timer_t Stepper::time_spent_in_isr = 0, Stepper::time_spent_out_isr = 0; +#endif #if ENABLED(FREEZE_FEATURE) bool Stepper::frozen; // = false @@ -206,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; @@ -225,16 +237,23 @@ uint32_t Stepper::advance_divisor = 0, #endif #if ENABLED(LIN_ADVANCE) - uint32_t Stepper::nextAdvanceISR = LA_ADV_NEVER, - Stepper::la_interval = LA_ADV_NEVER; - int32_t Stepper::la_delta_error = 0, - Stepper::la_dividend = 0, - Stepper::la_advance_steps = 0; + hal_timer_t Stepper::nextAdvanceISR = LA_ADV_NEVER, + Stepper::la_interval = LA_ADV_NEVER; + int32_t Stepper::la_delta_error = 0, + Stepper::la_dividend = 0, + Stepper::la_advance_steps = 0; + bool Stepper::la_active = false; #endif -#if HAS_SHAPING +#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; @@ -254,15 +273,15 @@ uint32_t Stepper::advance_divisor = 0, #endif #endif -#if ENABLED(INTEGRATED_BABYSTEPPING) - uint32_t Stepper::nextBabystepISR = BABYSTEP_NEVER; +#if ENABLED(BABYSTEPPING) + hal_timer_t Stepper::nextBabystepISR = BABYSTEP_NEVER; #endif #if ENABLED(DIRECT_STEPPING) page_step_state_t Stepper::page_step_state; #endif -int32_t Stepper::ticks_nominal = -1; +hal_timer_t Stepper::ticks_nominal = 0; #if DISABLED(S_CURVE_ACCELERATION) uint32_t Stepper::acc_step_rate; // needed for deceleration start point #endif @@ -274,7 +293,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) { \ @@ -369,103 +388,115 @@ xyze_int8_t Stepper::count_direction{0}; A##4_STEP_WRITE(V); \ } -#if HAS_DUAL_X_STEPPERS - #define X_APPLY_DIR(v,Q) do{ X_DIR_WRITE(v); X2_DIR_WRITE((v) ^ ENABLED(INVERT_X2_VS_X_DIR)); }while(0) +#if HAS_SYNCED_X_STEPPERS + #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) -#else - #define X_APPLY_DIR(v,Q) X_DIR_WRITE(v) - #define X_APPLY_STEP(v,Q) X_STEP_WRITE(v) +#elif HAS_X_AXIS + #define X_APPLY_DIR(FWD,Q) X_DIR_WRITE(FWD) + #define X_APPLY_STEP(FWD,Q) X_STEP_WRITE(FWD) #endif -#if HAS_DUAL_Y_STEPPERS - #define Y_APPLY_DIR(v,Q) do{ Y_DIR_WRITE(v); Y2_DIR_WRITE((v) ^ ENABLED(INVERT_Y2_VS_Y_DIR)); }while(0) +#if HAS_SYNCED_Y_STEPPERS + #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((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); \ - Z3_DIR_WRITE((v) ^ ENABLED(INVERT_Z3_VS_Z_DIR)); Z4_DIR_WRITE((v) ^ ENABLED(INVERT_Z4_VS_Z_DIR)); \ + #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((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); Z3_DIR_WRITE((v) ^ ENABLED(INVERT_Z3_VS_Z_DIR)); \ + #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((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); }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 -#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)) @@ -579,15 +610,13 @@ 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; \ - } +// Set a single axis direction based on the last set flags. +// 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 @@ -596,41 +625,15 @@ 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(); - 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)); - - #if ENABLED(MIXING_EXTRUDER) - // 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)) { - MIXER_STEPPER_LOOP(j) REV_E_DIR(j); - count_direction.e = -1; - } - else { - MIXER_STEPPER_LOOP(j) NORM_E_DIR(j); - count_direction.e = 1; - } - #elif HAS_EXTRUDERS - if (motor_direction(E_AXIS)) { - REV_E_DIR(stepper_extruder); - count_direction.e = -1; - } - else { - NORM_E_DIR(stepper_extruder); - count_direction.e = 1; - } - #endif + 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) + ); DIR_WAIT_AFTER(); } @@ -1462,7 +1465,7 @@ HAL_STEP_TIMER_ISR() { void Stepper::isr() { - static uint32_t nextMainISR = 0; // Interval until the next main Stepper Pulse phase (0 = Now) + static hal_timer_t nextMainISR = 0; // Interval until the next main Stepper Pulse phase (0 = Now) #ifndef __AVR__ // Disable interrupts, to avoid ISR preemption while we reprogram the period @@ -1481,63 +1484,133 @@ void Stepper::isr() { // Limit the amount of iterations uint8_t max_loops = 10; + #if ENABLED(FT_MOTION) + static bool fxdTiCtrl_stepCmdRdy = false; // Indicates a step command was loaded from the + // buffers and is ready to be output. + static bool fxdTiCtrl_applyDir = false; // Indicates the DIR output should be set. + static ft_command_t fxdTiCtrl_stepCmd = 0U; // Storage for the step command to be output. + static uint32_t fxdTiCtrl_nextAuxISR = 0U; // Storage for the next ISR of the auxilliary tasks. + #endif + // We need this variable here to be able to use it in the following loop hal_timer_t min_ticks; do { // Enable ISRs to reduce USART processing latency hal.isr_on(); - TERN_(HAS_SHAPING, shaping_isr()); // Do Shaper stepping, if needed + hal_timer_t interval; - if (!nextMainISR) pulse_phase_isr(); // 0 = Do coordinated axes Stepper pulses + #if ENABLED(FT_MOTION) - #if ENABLED(LIN_ADVANCE) - if (!nextAdvanceISR) { // 0 = Do Linear Advance E Stepper pulses - advance_isr(); - nextAdvanceISR = la_interval; + // NOTE STEPPER_TIMER_RATE is equal to 2000000, not what VSCode shows + const bool using_fxtictrl = fxdTiCtrl.cfg.mode; + if (using_fxtictrl) { + if (!nextMainISR) { + if (abort_current_block) { + fxdTiCtrl_stepCmdRdy = false; // If a command was ready, cancel it. + fxdTiCtrl.sts_stepperBusy = false; // Set busy false to allow a reset. + nextMainISR = 0.01f * (STEPPER_TIMER_RATE); // Come back in 10 msec. + } + else { // !(abort_current_block) + if (fxdTiCtrl_stepCmdRdy) { + fxdTiCtrl_stepper(fxdTiCtrl_applyDir, fxdTiCtrl_stepCmd); + fxdTiCtrl_stepCmdRdy = false; + } + // Check if there is data in the buffers. + if (fxdTiCtrl.stepperCmdBuff_produceIdx != fxdTiCtrl.stepperCmdBuff_consumeIdx) { + + fxdTiCtrl.sts_stepperBusy = true; + + // "Pop" one command from the command buffer. + fxdTiCtrl_stepCmd = fxdTiCtrl.stepperCmdBuff[fxdTiCtrl.stepperCmdBuff_consumeIdx]; + const uint8_t dir_index = fxdTiCtrl.stepperCmdBuff_consumeIdx >> 3, + dir_bit = fxdTiCtrl.stepperCmdBuff_consumeIdx & 0x7; + fxdTiCtrl_applyDir = TEST(fxdTiCtrl.stepperCmdBuff_ApplyDir[dir_index], dir_bit); + nextMainISR = fxdTiCtrl.stepperCmdBuff_StepRelativeTi[fxdTiCtrl.stepperCmdBuff_consumeIdx]; + fxdTiCtrl_stepCmdRdy = true; + + if (++fxdTiCtrl.stepperCmdBuff_consumeIdx == (FTM_STEPPERCMD_BUFF_SIZE)) + fxdTiCtrl.stepperCmdBuff_consumeIdx = 0; + + } + else { // Buffer empty. + fxdTiCtrl.sts_stepperBusy = false; + nextMainISR = 0.01f * (STEPPER_TIMER_RATE); // Come back in 10 msec. + } + } // !(abort_current_block) + } // if (!nextMainISR) + + // Define 2.5 msec task for auxilliary functions. + if (!fxdTiCtrl_nextAuxISR) { + endstops.update(); + TERN_(BABYSTEPPING, if (babystep.has_steps()) babystepping_isr()); + fxdTiCtrl_refreshAxisDidMove(); + fxdTiCtrl_nextAuxISR = 0.0025f * (STEPPER_TIMER_RATE); + } + + interval = _MIN(nextMainISR, fxdTiCtrl_nextAuxISR); + nextMainISR -= interval; + fxdTiCtrl_nextAuxISR -= interval; } - else if (nextAdvanceISR == LA_ADV_NEVER) // Start LA steps if necessary - nextAdvanceISR = la_interval; + + #else + + constexpr bool using_fxtictrl = false; + #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) - const bool is_babystep = (nextBabystepISR == 0); // 0 = Do Babystepping (XY)Z pulses - if (is_babystep) nextBabystepISR = babystepping_isr(); - #endif + if (!using_fxtictrl) { - // ^== Time critical. NOTHING besides pulse generation should be above here!!! + TERN_(HAS_ZV_SHAPING, shaping_isr()); // Do Shaper stepping, if needed - if (!nextMainISR) nextMainISR = block_phase_isr(); // Manage acc/deceleration, get next block + if (!nextMainISR) pulse_phase_isr(); // 0 = Do coordinated axes Stepper pulses - #if ENABLED(INTEGRATED_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 + #if ENABLED(LIN_ADVANCE) + if (!nextAdvanceISR) { // 0 = Do Linear Advance E Stepper pulses + advance_isr(); + nextAdvanceISR = la_interval; + } + else if (nextAdvanceISR > la_interval) // Start/accelerate LA steps if necessary + nextAdvanceISR = la_interval; + #endif - if (nextBabystepISR != BABYSTEP_NEVER) // Avoid baby-stepping too close to axis Stepping - NOLESS(nextBabystepISR, nextMainISR / 2); // TODO: Only look at axes enabled for baby-stepping - #endif + #if ENABLED(BABYSTEPPING) + const bool is_babystep = (nextBabystepISR == 0); // 0 = Do Babystepping (XY)Z pulses + if (is_babystep) nextBabystepISR = babystepping_isr(); + #endif - // Get the interval to the next ISR call - const uint32_t interval = _MIN( - uint32_t(HAL_TIMER_TYPE_MAX), // Come back in a very long time - nextMainISR // Time until the next Pulse / Block phase - OPTARG(INPUT_SHAPING_X, ShapingQueue::peek_x()) // Time until next input shaping echo for X - OPTARG(INPUT_SHAPING_Y, ShapingQueue::peek_y()) // Time until next input shaping echo for Y - OPTARG(LIN_ADVANCE, nextAdvanceISR) // Come back early for Linear Advance? - OPTARG(INTEGRATED_BABYSTEPPING, nextBabystepISR) // Come back early for Babystepping? - ); + // ^== Time critical. NOTHING besides pulse generation should be above here!!! - // - // Compute remaining time for each ISR phase - // NEVER : The phase is idle - // Zero : The phase will occur on the next ISR call - // Non-zero : The phase will occur on a future ISR call - // + if (!nextMainISR) nextMainISR = block_phase_isr(); // Manage acc/deceleration, get next block - nextMainISR -= interval; - TERN_(HAS_SHAPING, ShapingQueue::decrement_delays(interval)); - TERN_(LIN_ADVANCE, if (nextAdvanceISR != LA_ADV_NEVER) nextAdvanceISR -= interval); - TERN_(INTEGRATED_BABYSTEPPING, if (nextBabystepISR != BABYSTEP_NEVER) nextBabystepISR -= interval); + #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 + + if (nextBabystepISR != BABYSTEP_NEVER) // Avoid baby-stepping too close to axis Stepping + NOLESS(nextBabystepISR, nextMainISR / 2); // TODO: Only look at axes enabled for baby-stepping + #endif + + // Get the interval to the next ISR call + interval = _MIN(nextMainISR, uint32_t(HAL_TIMER_TYPE_MAX)); // Time until the next Pulse / Block phase + 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_(BABYSTEPPING, NOMORE(interval, nextBabystepISR)); // Come back early for Babystepping? + + // + // Compute remaining time for each ISR phase + // NEVER : The phase is idle + // Zero : The phase will occur on the next ISR call + // Non-zero : The phase will occur on a future ISR call + // + + nextMainISR -= interval; + TERN_(HAS_ZV_SHAPING, ShapingQueue::decrement_delays(interval)); + TERN_(LIN_ADVANCE, if (nextAdvanceISR != LA_ADV_NEVER) nextAdvanceISR -= interval); + TERN_(BABYSTEPPING, if (nextBabystepISR != BABYSTEP_NEVER) nextBabystepISR -= interval); + + } // standard motion control /** * This needs to avoid a race-condition caused by interleaving @@ -1583,25 +1656,56 @@ void Stepper::isr() { */ min_ticks = HAL_timer_get_count(MF_TIMER_STEP) + hal_timer_t(TERN(__AVR__, 8, 1) * (STEPPER_TIMER_TICKS_PER_US)); - /** - * NB: If for some reason the stepper monopolizes the MPU, eventually the - * timer will wrap around (and so will 'next_isr_ticks'). So, limit the - * loop to 10 iterations. Beyond that, there's no way to ensure correct pulse - * timing, since the MCU isn't fast enough. - */ - if (!--max_loops) next_isr_ticks = min_ticks; + #if ENABLED(OLD_ADAPTIVE_MULTISTEPPING) + /** + * NB: If for some reason the stepper monopolizes the MPU, eventually the + * timer will wrap around (and so will 'next_isr_ticks'). So, limit the + * loop to 10 iterations. Beyond that, there's no way to ensure correct pulse + * timing, since the MCU isn't fast enough. + */ + if (!--max_loops) next_isr_ticks = min_ticks; + #endif // Advance pulses if not enough time to wait for the next ISR - } while (next_isr_ticks < min_ticks); + } while (TERN(OLD_ADAPTIVE_MULTISTEPPING, true, --max_loops) && next_isr_ticks < min_ticks); + + #if DISABLED(OLD_ADAPTIVE_MULTISTEPPING) + + // Track the time spent in the ISR + const hal_timer_t time_spent = HAL_timer_get_count(MF_TIMER_STEP); + time_spent_in_isr += time_spent; + + if (next_isr_ticks < min_ticks) { + next_isr_ticks = min_ticks; + + // When forced out of the ISR, increase multi-stepping + #if MULTISTEPPING_LIMIT > 1 + if (steps_per_isr < MULTISTEPPING_LIMIT) { + steps_per_isr <<= 1; + // ticks_nominal will need to be recalculated if we are in cruise phase + ticks_nominal = 0; + } + #endif + } + else { + // Track the time spent voluntarily outside the ISR + time_spent_out_isr += next_isr_ticks; + time_spent_out_isr -= time_spent; + } + + #endif // !OLD_ADAPTIVE_MULTISTEPPING // Now 'next_isr_ticks' contains the period to the next Stepper ISR - And we are // sure that the time has not arrived yet - Warrantied by the scheduler // Set the next ISR to fire at the proper time - HAL_timer_set_compare(MF_TIMER_STEP, hal_timer_t(next_isr_ticks)); + HAL_timer_set_compare(MF_TIMER_STEP, next_isr_ticks); - // Don't forget to finally reenable interrupts - hal.isr_on(); + // Don't forget to finally reenable interrupts on non-AVR. + // AVR automatically calls sei() for us on Return-from-Interrupt. + #ifndef __AVR__ + hal.isr_on(); + #endif } #if MINIMUM_STEPPER_PULSE || MAXIMUM_STEPPER_RATE @@ -1625,7 +1729,7 @@ void Stepper::pulse_phase_isr() { abort_current_block = false; if (current_block) { discard_current_block(); - #if HAS_SHAPING + #if HAS_ZV_SHAPING ShapingQueue::purge(); #if ENABLED(INPUT_SHAPING_X) shaping_x.delta_error = 0; @@ -1657,21 +1761,24 @@ void Stepper::pulse_phase_isr() { bool firstStep = true; USING_TIMED_PULSE(); #endif - xyze_bool_t step_needed{0}; // Direct Stepping page? const bool is_page = current_block->is_page(); do { + AxisFlags step_needed{0}; + #define _APPLY_STEP(AXIS, INV, ALWAYS) AXIS ##_APPLY_STEP(INV, ALWAYS) - #define _INVERT_STEP_PIN(AXIS) INVERT_## AXIS ##_STEP_PIN + #define _STEP_STATE(AXIS) STEP_STATE_## AXIS // Determine if a pulse is needed using Bresenham #define PULSE_PREP(AXIS) do{ \ - delta_error[_AXIS(AXIS)] += advance_dividend[_AXIS(AXIS)]; \ - step_needed[_AXIS(AXIS)] = (delta_error[_AXIS(AXIS)] >= 0); \ - if (step_needed[_AXIS(AXIS)]) \ - delta_error[_AXIS(AXIS)] -= advance_divisor; \ + int32_t de = delta_error[_AXIS(AXIS)] + advance_dividend[_AXIS(AXIS)]; \ + if (de >= 0) { \ + step_needed.set(_AXIS(AXIS)); \ + de -= advance_divisor_cached; \ + } \ + delta_error[_AXIS(AXIS)] = de; \ }while(0) // With input shaping, direction changes can happen with almost only @@ -1695,33 +1802,36 @@ void Stepper::pulse_phase_isr() { #define HYSTERESIS(AXIS) _HYSTERESIS(AXIS) #define PULSE_PREP_SHAPING(AXIS, DELTA_ERROR, DIVIDEND) do{ \ - if (step_needed[_AXIS(AXIS)]) { \ - DELTA_ERROR += (DIVIDEND); \ - if ((MAXDIR(AXIS) && DELTA_ERROR <= -(64 + HYSTERESIS(AXIS))) || (MINDIR(AXIS) && DELTA_ERROR >= (64 + HYSTERESIS(AXIS)))) { \ + int16_t de = DELTA_ERROR + (DIVIDEND); \ + const bool step_fwd = de >= (64 + HYSTERESIS(AXIS)), \ + step_bak = de <= -(64 + HYSTERESIS(AXIS)); \ + if (step_fwd || step_bak) { \ + 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(); \ } \ - step_needed[_AXIS(AXIS)] = DELTA_ERROR <= -(64 + HYSTERESIS(AXIS)) || DELTA_ERROR >= (64 + HYSTERESIS(AXIS)); \ - if (step_needed[_AXIS(AXIS)]) \ - DELTA_ERROR += MAXDIR(AXIS) ? -128 : 128; \ } \ + else \ + step_needed.clear(_AXIS(AXIS)); \ + DELTA_ERROR = de; \ }while(0) // Start an active pulse if needed #define PULSE_START(AXIS) do{ \ - if (step_needed[_AXIS(AXIS)]) { \ + if (step_needed.test(_AXIS(AXIS))) { \ count_position[_AXIS(AXIS)] += count_direction[_AXIS(AXIS)]; \ - _APPLY_STEP(AXIS, !_INVERT_STEP_PIN(AXIS), 0); \ + _APPLY_STEP(AXIS, _STEP_STATE(AXIS), 0); \ } \ }while(0) // Stop an active pulse if needed #define PULSE_STOP(AXIS) do { \ - if (step_needed[_AXIS(AXIS)]) { \ - _APPLY_STEP(AXIS, _INVERT_STEP_PIN(AXIS), 0); \ + if (step_needed.test(_AXIS(AXIS))) { \ + _APPLY_STEP(AXIS, !_STEP_STATE(AXIS), 0); \ } \ }while(0) @@ -1731,16 +1841,16 @@ 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)] = 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) #define PAGE_PULSE_PREP(AXIS) do{ \ - step_needed[_AXIS(AXIS)] = \ - pgm_read_byte(&segment_table[page_step_state.sd[_AXIS(AXIS)]][page_step_state.segment_steps & 0x7]); \ + step_needed.set(_AXIS(AXIS), \ + pgm_read_byte(&segment_table[page_step_state.sd[_AXIS(AXIS)]][page_step_state.segment_steps & 0x7])); \ }while(0) switch (page_step_state.segment_steps) { @@ -1751,15 +1861,14 @@ 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); 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; @@ -1780,8 +1889,8 @@ void Stepper::pulse_phase_isr() { page_step_state.bd[_AXIS(AXIS)] += VALUE; #define PAGE_PULSE_PREP(AXIS) do{ \ - step_needed[_AXIS(AXIS)] = \ - pgm_read_byte(&segment_table[page_step_state.sd[_AXIS(AXIS)]][page_step_state.segment_steps & 0x3]); \ + step_needed.set(_AXIS(AXIS), \ + pgm_read_byte(&segment_table[page_step_state.sd[_AXIS(AXIS)]][page_step_state.segment_steps & 0x3])); \ }while(0) switch (page_step_state.segment_steps) { @@ -1808,10 +1917,10 @@ void Stepper::pulse_phase_isr() { #elif STEPPER_PAGE_FORMAT == SP_4x1_512 - #define PAGE_PULSE_PREP(AXIS, BITS) do{ \ - step_needed[_AXIS(AXIS)] = (steps >> BITS) & 0x1; \ - if (step_needed[_AXIS(AXIS)]) \ - page_step_state.bd[_AXIS(AXIS)]++; \ + #define PAGE_PULSE_PREP(AXIS, NBIT) do{ \ + step_needed.set(_AXIS(AXIS), TEST(steps, NBIT)); \ + if (step_needed.test(_AXIS(AXIS))) \ + page_step_state.bd[_AXIS(AXIS)]++; \ }while(0) uint8_t steps = page_step_state.page[page_step_state.segment_idx >> 1]; @@ -1832,6 +1941,9 @@ void Stepper::pulse_phase_isr() { #endif // DIRECT_STEPPING if (!is_page) { + // Give the compiler a clue to store advance_divisor in registers for what follows + const uint32_t advance_divisor_cached = advance_divisor; + // Determine if pulses are needed #if HAS_X_STEP PULSE_PREP(X); @@ -1861,35 +1973,34 @@ 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) - if (step_needed.e && current_block->la_advance_rate) { + if (la_active && step_needed.e) { // don't actually step here, but do subtract movements steps // from the linear advance step count step_needed.e = false; - count_position.e -= count_direction.e; la_advance_steps--; } #endif #endif - #if HAS_SHAPING + #if HAS_ZV_SHAPING // record an echo if a step is needed in the primary bresenham - const bool x_step = TERN0(INPUT_SHAPING_X, shaping_x.enabled && step_needed[X_AXIS]), - y_step = TERN0(INPUT_SHAPING_Y, shaping_y.enabled && step_needed[Y_AXIS]); + const bool x_step = TERN0(INPUT_SHAPING_X, step_needed.x && shaping_x.enabled), + y_step = TERN0(INPUT_SHAPING_Y, step_needed.y && shaping_y.enabled); if (x_step || y_step) ShapingQueue::enqueue(x_step, TERN0(INPUT_SHAPING_X, shaping_x.forward), y_step, TERN0(INPUT_SHAPING_Y, shaping_y.forward)); // do the first part of the secondary bresenham #if ENABLED(INPUT_SHAPING_X) - if (shaping_x.enabled) - PULSE_PREP_SHAPING(X, shaping_x.delta_error, shaping_x.factor1 * (shaping_x.forward ? 1 : -1)); + if (x_step) + PULSE_PREP_SHAPING(X, shaping_x.delta_error, shaping_x.forward ? shaping_x.factor1 : -shaping_x.factor1); #endif #if ENABLED(INPUT_SHAPING_Y) - if (shaping_y.enabled) - PULSE_PREP_SHAPING(Y, shaping_y.delta_error, shaping_y.factor1 * (shaping_y.forward ? 1 : -1)); + if (y_step) + PULSE_PREP_SHAPING(Y, shaping_y.delta_error, shaping_y.forward ? shaping_y.factor1 : -shaping_y.factor1); #endif #endif } @@ -1932,8 +2043,8 @@ void Stepper::pulse_phase_isr() { #if ENABLED(MIXING_EXTRUDER) if (step_needed.e) { - count_position[E_AXIS] += count_direction[E_AXIS]; - E_STEP_WRITE(mixer.get_next_stepper(), !INVERT_E_STEP_PIN); + count_position.e += count_direction.e; + E_STEP_WRITE(mixer.get_next_stepper(), STEP_STATE_E); } #elif HAS_E0_STEP PULSE_START(E); @@ -1977,7 +2088,7 @@ void Stepper::pulse_phase_isr() { #endif #if ENABLED(MIXING_EXTRUDER) - if (step_needed.e) E_STEP_WRITE(mixer.get_stepper(), INVERT_E_STEP_PIN); + if (step_needed.e) E_STEP_WRITE(mixer.get_stepper(), !STEP_STATE_E); #elif HAS_E0_STEP PULSE_STOP(E); #endif @@ -1989,28 +2100,28 @@ void Stepper::pulse_phase_isr() { } while (--events_to_do); } -#if HAS_SHAPING +#if HAS_ZV_SHAPING void Stepper::shaping_isr() { - xy_bool_t step_needed{0}; + AxisFlags step_needed{0}; - // Clear the echoes that are ready to process. If the buffers are too full and risk overflo, also apply echoes early. - TERN_(INPUT_SHAPING_X, step_needed[X_AXIS] = !ShapingQueue::peek_x() || ShapingQueue::free_count_x() < steps_per_isr); - TERN_(INPUT_SHAPING_Y, step_needed[Y_AXIS] = !ShapingQueue::peek_y() || ShapingQueue::free_count_y() < steps_per_isr); + // Clear the echoes that are ready to process. If the buffers are too full and risk overflow, also apply echoes early. + TERN_(INPUT_SHAPING_X, step_needed.x = !ShapingQueue::peek_x() || ShapingQueue::free_count_x() < steps_per_isr); + TERN_(INPUT_SHAPING_Y, step_needed.y = !ShapingQueue::peek_y() || ShapingQueue::free_count_y() < steps_per_isr); if (bool(step_needed)) while (true) { #if ENABLED(INPUT_SHAPING_X) - if (step_needed[X_AXIS]) { + if (step_needed.x) { const bool forward = ShapingQueue::dequeue_x(); - PULSE_PREP_SHAPING(X, shaping_x.delta_error, shaping_x.factor2 * (forward ? 1 : -1)); + PULSE_PREP_SHAPING(X, shaping_x.delta_error, (forward ? shaping_x.factor2 : -shaping_x.factor2)); PULSE_START(X); } #endif #if ENABLED(INPUT_SHAPING_Y) - if (step_needed[Y_AXIS]) { + if (step_needed.y) { const bool forward = ShapingQueue::dequeue_y(); - PULSE_PREP_SHAPING(Y, shaping_y.delta_error, shaping_y.factor2 * (forward ? 1 : -1)); + PULSE_PREP_SHAPING(Y, shaping_y.delta_error, (forward ? shaping_y.factor2 : -shaping_y.factor2)); PULSE_START(Y); } #endif @@ -2031,8 +2142,8 @@ void Stepper::pulse_phase_isr() { #endif } - TERN_(INPUT_SHAPING_X, step_needed[X_AXIS] = !ShapingQueue::peek_x() || ShapingQueue::free_count_x() < steps_per_isr); - TERN_(INPUT_SHAPING_Y, step_needed[Y_AXIS] = !ShapingQueue::peek_y() || ShapingQueue::free_count_y() < steps_per_isr); + TERN_(INPUT_SHAPING_X, step_needed.x = !ShapingQueue::peek_x() || ShapingQueue::free_count_x() < steps_per_isr); + TERN_(INPUT_SHAPING_Y, step_needed.y = !ShapingQueue::peek_y() || ShapingQueue::free_count_y() < steps_per_isr); if (!bool(step_needed)) break; @@ -2041,79 +2152,125 @@ void Stepper::pulse_phase_isr() { } } -#endif // HAS_SHAPING +#endif // HAS_ZV_SHAPING // Calculate timer interval, with all limits applied. -uint32_t Stepper::calc_timer_interval(uint32_t step_rate) { +hal_timer_t Stepper::calc_timer_interval(uint32_t step_rate) { + #ifdef CPU_32_BIT - // In case of high-performance processor, it is able to calculate in real-time - return uint32_t(STEPPER_TIMER_RATE) / step_rate; + + // A fast processor can just do integer division + 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 - // AVR is able to keep up at 30khz Stepping ISR rate. - constexpr uint32_t min_step_rate = (F_CPU) / 500000U; - if (step_rate <= min_step_rate) { - step_rate = 0; - uintptr_t table_address = (uintptr_t)&speed_lookuptable_slow[0][0]; - return uint16_t(pgm_read_word(table_address)); + + constexpr uint32_t min_step_rate = (F_CPU) / 500000U; // i.e., 32 or 40 + if (step_rate >= 0x0800) { // higher step rate + // AVR is able to keep up at around 65kHz Stepping ISR rate at most. + // So values for step_rate > 65535 might as well be truncated. + // Handle it as quickly as possible. i.e., assume highest byte is zero + // because non-zero would represent a step rate far beyond AVR capabilities. + if (uint8_t(step_rate >> 16)) + return uint32_t(STEPPER_TIMER_RATE) / 0x10000; + + const uintptr_t table_address = uintptr_t(&speed_lookuptable_fast[uint8_t(step_rate >> 8)]); + const uint16_t base = uint16_t(pgm_read_word(table_address)); + const uint8_t gain = uint8_t(pgm_read_byte(table_address + 2)); + return base - MultiU8X8toH8(uint8_t(step_rate & 0x00FF), gain); } - else { + else if (step_rate > min_step_rate) { // lower step rates step_rate -= min_step_rate; // Correct for minimal speed - if (step_rate >= 0x0800) { // higher step rate - const uint8_t rate_mod_256 = (step_rate & 0x00FF); - const uintptr_t table_address = uintptr_t(&speed_lookuptable_fast[uint8_t(step_rate >> 8)][0]), - gain = uint16_t(pgm_read_word(table_address + 2)); - return uint16_t(pgm_read_word(table_address)) - MultiU8X16toH16(rate_mod_256, gain); - } - else { // lower step rates - uintptr_t table_address = uintptr_t(&speed_lookuptable_slow[0][0]); - table_address += (step_rate >> 1) & 0xFFFC; - return uint16_t(pgm_read_word(table_address)) - - ((uint16_t(pgm_read_word(table_address + 2)) * uint8_t(step_rate & 0x0007)) >> 3); - } + const uintptr_t table_address = uintptr_t(&speed_lookuptable_slow[uint8_t(step_rate >> 3)]); + return uint16_t(pgm_read_word(table_address)) + - ((uint16_t(pgm_read_word(table_address + 2)) * uint8_t(step_rate & 0x0007)) >> 3); } - #endif + + return uint16_t(pgm_read_word(uintptr_t(speed_lookuptable_slow))); + + #endif // !CPU_32_BIT } // Get the timer interval and the number of loops to perform per tick -uint32_t Stepper::calc_timer_interval(uint32_t step_rate, uint8_t &loops) { - uint8_t multistep = 1; - #if DISABLED(DISABLE_MULTI_STEPPING) +hal_timer_t Stepper::calc_multistep_timer_interval(uint32_t step_rate) { - // The stepping frequency limits for each multistepping rate - static const uint32_t limit[] PROGMEM = { - ( MAX_STEP_ISR_FREQUENCY_1X ), - ( MAX_STEP_ISR_FREQUENCY_2X >> 1), - ( MAX_STEP_ISR_FREQUENCY_4X >> 2), - ( MAX_STEP_ISR_FREQUENCY_8X >> 3), - ( MAX_STEP_ISR_FREQUENCY_16X >> 4), - ( MAX_STEP_ISR_FREQUENCY_32X >> 5), - ( MAX_STEP_ISR_FREQUENCY_64X >> 6), - (MAX_STEP_ISR_FREQUENCY_128X >> 7) - }; + #if ENABLED(OLD_ADAPTIVE_MULTISTEPPING) + + #if MULTISTEPPING_LIMIT == 1 + + // Just make sure the step rate is doable + NOMORE(step_rate, uint32_t(MAX_STEP_ISR_FREQUENCY_1X)); + + #else + + // The stepping frequency limits for each multistepping rate + static const uint32_t limit[] PROGMEM = { + ( MAX_STEP_ISR_FREQUENCY_1X ) + , (((F_CPU) / ISR_EXECUTION_CYCLES(1)) >> 1) + #if MULTISTEPPING_LIMIT >= 4 + , (((F_CPU) / ISR_EXECUTION_CYCLES(2)) >> 2) + #endif + #if MULTISTEPPING_LIMIT >= 8 + , (((F_CPU) / ISR_EXECUTION_CYCLES(3)) >> 3) + #endif + #if MULTISTEPPING_LIMIT >= 16 + , (((F_CPU) / ISR_EXECUTION_CYCLES(4)) >> 4) + #endif + #if MULTISTEPPING_LIMIT >= 32 + , (((F_CPU) / ISR_EXECUTION_CYCLES(5)) >> 5) + #endif + #if MULTISTEPPING_LIMIT >= 64 + , (((F_CPU) / ISR_EXECUTION_CYCLES(6)) >> 6) + #endif + #if MULTISTEPPING_LIMIT >= 128 + , (((F_CPU) / ISR_EXECUTION_CYCLES(7)) >> 7) + #endif + }; + + // Find a doable step rate using multistepping + uint8_t multistep = 1; + for (uint8_t i = 0; i < COUNT(limit) && step_rate > uint32_t(pgm_read_dword(&limit[i])); ++i) { + step_rate >>= 1; + multistep <<= 1; + } + steps_per_isr = multistep; + + #endif + + #elif MULTISTEPPING_LIMIT > 1 + + uint8_t loops = steps_per_isr; + if (MULTISTEPPING_LIMIT >= 16 && loops >= 16) { step_rate >>= 4; loops >>= 4; } + if (MULTISTEPPING_LIMIT >= 4 && loops >= 4) { step_rate >>= 2; loops >>= 2; } + if (MULTISTEPPING_LIMIT >= 2 && loops >= 2) { step_rate >>= 1; } - // Select the proper multistepping - uint8_t idx = 0; - while (idx < 7 && step_rate > (uint32_t)pgm_read_dword(&limit[idx])) { - step_rate >>= 1; - multistep <<= 1; - ++idx; - }; - #else - NOMORE(step_rate, uint32_t(MAX_STEP_ISR_FREQUENCY_1X)); #endif - loops = multistep; return calc_timer_interval(step_rate); } -// This is the last half of the stepper interrupt: This one processes and -// properly schedules blocks from the planner. This is executed after creating -// the step pulses, so it is not time critical, as pulses are already done. - -uint32_t Stepper::block_phase_isr() { +/** + * This last phase of the stepper interrupt processes and properly + * schedules planner blocks. This is executed after the step pulses + * have been done, so it is less time critical. + */ +hal_timer_t Stepper::block_phase_isr() { + #if DISABLED(OLD_ADAPTIVE_MULTISTEPPING) + // If the ISR uses < 50% of MPU time, halve multi-stepping + const hal_timer_t time_spent = HAL_timer_get_count(MF_TIMER_STEP); + #if MULTISTEPPING_LIMIT > 1 + if (steps_per_isr > 1 && time_spent_out_isr >= time_spent_in_isr + time_spent) { + steps_per_isr >>= 1; + // ticks_nominal will need to be recalculated if we are in cruise phase + ticks_nominal = 0; + } + #endif + time_spent_in_isr = -time_spent; // unsigned but guaranteed to be +ve when needed + time_spent_out_isr = 0; + #endif // If no queued movements, just wait 1ms for the next block - uint32_t interval = (STEPPER_TIMER_RATE) / 1000UL; + hal_timer_t interval = (STEPPER_TIMER_RATE) / 1000UL; // If there is a current block if (current_block) { @@ -2158,13 +2315,13 @@ uint32_t Stepper::block_phase_isr() { // acc_step_rate is in steps/second // step_rate to timer interval and steps per stepper isr - interval = calc_timer_interval(acc_step_rate << oversampling_factor, steps_per_isr); + interval = calc_multistep_timer_interval(acc_step_rate << oversampling_factor); acceleration_time += interval; #if ENABLED(LIN_ADVANCE) - if (current_block->la_advance_rate) { + if (la_active) { const uint32_t la_step_rate = la_advance_steps < current_block->max_adv_steps ? current_block->la_advance_rate : 0; - la_interval = calc_timer_interval(acc_step_rate + la_step_rate) << current_block->la_scaling; + la_interval = calc_timer_interval((acc_step_rate + la_step_rate) >> current_block->la_scaling); } #endif @@ -2228,44 +2385,33 @@ uint32_t Stepper::block_phase_isr() { #endif // step_rate to timer interval and steps per stepper isr - interval = calc_timer_interval(step_rate << oversampling_factor, steps_per_isr); + interval = calc_multistep_timer_interval(step_rate << oversampling_factor); deceleration_time += interval; #if ENABLED(LIN_ADVANCE) - if (current_block->la_advance_rate) { + 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; - 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)) { - TBI(last_direction_bits, 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) NORM_E_DIR(j); - #else - NORM_E_DIR(stepper_extruder); - #endif - } + E_APPLY_DIR(forward_e, false); DIR_WAIT_AFTER(); } } + else + la_interval = LA_ADV_NEVER; } #endif // LIN_ADVANCE - /* + /** * Adjust Laser Power - Decelerating * trap_ramp_entry_decr - holds the precalculated value to decrease the current power per decel step. */ @@ -2286,13 +2432,13 @@ uint32_t Stepper::block_phase_isr() { else { // Must be in cruise phase otherwise // Calculate the ticks_nominal for this nominal speed, if not done yet - if (ticks_nominal < 0) { + if (ticks_nominal == 0) { // step_rate to timer interval and loops for the nominal speed - ticks_nominal = calc_timer_interval(current_block->nominal_rate << oversampling_factor, steps_per_isr); + ticks_nominal = calc_multistep_timer_interval(current_block->nominal_rate << oversampling_factor); #if ENABLED(LIN_ADVANCE) - if (current_block->la_advance_rate) - la_interval = calc_timer_interval(current_block->nominal_rate) << current_block->la_scaling; + if (la_active) + la_interval = calc_timer_interval(current_block->nominal_rate >> current_block->la_scaling); #endif } @@ -2407,7 +2553,7 @@ uint32_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 @@ -2418,7 +2564,7 @@ uint32_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)) @@ -2438,7 +2584,7 @@ uint32_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)) @@ -2458,7 +2604,7 @@ uint32_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)) @@ -2468,23 +2614,23 @@ uint32_t Stepper::block_phase_isr() { #define Z_MOVE_TEST !!current_block->steps.c #endif - axis_bits_t axis_bits = 0; + AxisBits didmove; 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) 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) 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); - 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; @@ -2493,10 +2639,12 @@ uint32_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, 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 + ++oversampling_factor; // Increase the oversampling (used for left-shift) + } } #endif @@ -2512,24 +2660,24 @@ uint32_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 @@ -2546,12 +2694,13 @@ uint32_t Stepper::block_phase_isr() { // Initialize the trapezoid generator from the current block. #if ENABLED(LIN_ADVANCE) + la_active = (current_block->la_advance_rate != 0); #if DISABLED(MIXING_EXTRUDER) && E_STEPPERS > 1 // If the now active extruder wasn't in use during the last move, its pressure is most likely gone. if (stepper_extruder != last_moved_extruder) la_advance_steps = 0; #endif - if (current_block->la_advance_rate) { - // apply LA scaling and discount the effect of frequency scaling + if (la_active) { + // Apply LA scaling and discount the effect of frequency scaling la_dividend = (advance_dividend.e << current_block->la_scaling) << oversampling_factor; } #endif @@ -2593,8 +2742,8 @@ uint32_t Stepper::block_phase_isr() { if (current_block->steps.z) enable_axis(Z_AXIS); #endif - // Mark the time_nominal as not calculated yet - ticks_nominal = -1; + // Mark ticks_nominal as not-yet-calculated + ticks_nominal = 0; #if ENABLED(S_CURVE_ACCELERATION) // Initialize the Bézier speed curve @@ -2607,17 +2756,17 @@ uint32_t Stepper::block_phase_isr() { #endif // Calculate the initial timer interval - interval = calc_timer_interval(current_block->initial_rate << oversampling_factor, steps_per_isr); + interval = calc_multistep_timer_interval(current_block->initial_rate << oversampling_factor); acceleration_time += interval; #if ENABLED(LIN_ADVANCE) - if (current_block->la_advance_rate) { + if (la_active) { const uint32_t la_step_rate = la_advance_steps < current_block->max_adv_steps ? current_block->la_advance_rate : 0; - la_interval = calc_timer_interval(current_block->initial_rate + la_step_rate) << current_block->la_scaling; + la_interval = calc_timer_interval((current_block->initial_rate + la_step_rate) >> current_block->la_scaling); } #endif } - } + } // !current_block // Return the interval to wait return interval; @@ -2631,19 +2780,19 @@ uint32_t Stepper::block_phase_isr() { // the acceleration and speed values calculated in block_phase_isr(). // This helps keep LA in sync with, for example, S_CURVE_ACCELERATION. la_delta_error += la_dividend; - const bool step_needed = la_delta_error >= 0; - if (step_needed) { + const bool e_step_needed = la_delta_error >= 0; + if (e_step_needed) { count_position.e += count_direction.e; la_advance_steps += count_direction.e; la_delta_error -= advance_divisor; // Set the STEP pulse ON - E_STEP_WRITE(TERN(MIXING_EXTRUDER, mixer.get_next_stepper(), stepper_extruder), !INVERT_E_STEP_PIN); + E_STEP_WRITE(TERN(MIXING_EXTRUDER, mixer.get_next_stepper(), stepper_extruder), STEP_STATE_E); } TERN_(I2S_STEPPER_STREAM, i2s_push_sample()); - if (step_needed) { + if (e_step_needed) { // Enforce a minimum duration for STEP pulse ON #if ISR_PULSE_CONTROL USING_TIMED_PULSE(); @@ -2652,16 +2801,16 @@ uint32_t Stepper::block_phase_isr() { #endif // Set the STEP pulse OFF - E_STEP_WRITE(TERN(MIXING_EXTRUDER, mixer.get_stepper(), stepper_extruder), INVERT_E_STEP_PIN); + E_STEP_WRITE(TERN(MIXING_EXTRUDER, mixer.get_stepper(), stepper_extruder), !STEP_STATE_E); } } #endif // LIN_ADVANCE -#if ENABLED(INTEGRATED_BABYSTEPPING) +#if ENABLED(BABYSTEPPING) // Timer interrupt for baby-stepping - uint32_t Stepper::babystepping_isr() { + hal_timer_t Stepper::babystepping_isr() { babystep.task(); return babystep.has_steps() ? BABYSTEP_TICKS : BABYSTEP_NEVER; } @@ -2701,7 +2850,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); } @@ -2715,7 +2864,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 ALL(HAS_Y2_STEPPER, HAS_Y2_DIR) Y2_DIR_INIT(); #endif #endif @@ -2731,24 +2880,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 @@ -2781,7 +2916,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 @@ -2792,7 +2927,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 ALL(HAS_Y2_STEPPER, HAS_Y2_ENABLE) Y2_ENABLE_INIT(); if (Y_ENABLE_INIT_STATE) Y2_ENABLE_WRITE(Y_ENABLE_INIT_STATE); #endif @@ -2906,7 +3041,7 @@ void Stepper::init() { #define AXIS_INIT(AXIS, PIN) \ _STEP_INIT(AXIS); \ - _WRITE_STEP(AXIS, _INVERT_STEP_PIN(PIN)); \ + _WRITE_STEP(AXIS, !_STEP_STATE(PIN)); \ _DISABLE_AXIS(AXIS) #define E_AXIS_INIT(NUM) AXIS_INIT(E## NUM, E) @@ -2915,15 +3050,15 @@ void Stepper::init() { #if HAS_X_STEP #if HAS_X2_STEPPER X2_STEP_INIT(); - X2_STEP_WRITE(INVERT_X_STEP_PIN); + X2_STEP_WRITE(!STEP_STATE_X); #endif AXIS_INIT(X, X); #endif #if HAS_Y_STEP - #if HAS_DUAL_Y_STEPPERS + #if HAS_Y2_STEPPER Y2_STEP_INIT(); - Y2_STEP_WRITE(INVERT_Y_STEP_PIN); + Y2_STEP_WRITE(!STEP_STATE_Y); #endif AXIS_INIT(Y, Y); #endif @@ -2931,15 +3066,15 @@ void Stepper::init() { #if HAS_Z_STEP #if NUM_Z_STEPPERS >= 2 Z2_STEP_INIT(); - Z2_STEP_WRITE(INVERT_Z_STEP_PIN); + Z2_STEP_WRITE(!STEP_STATE_Z); #endif #if NUM_Z_STEPPERS >= 3 Z3_STEP_INIT(); - Z3_STEP_WRITE(INVERT_Z_STEP_PIN); + Z3_STEP_WRITE(!STEP_STATE_Z); #endif #if NUM_Z_STEPPERS >= 4 Z4_STEP_INIT(); - Z4_STEP_WRITE(INVERT_Z_STEP_PIN); + Z4_STEP_WRITE(!STEP_STATE_Z); #endif AXIS_INIT(Z, Z); #endif @@ -2993,20 +3128,8 @@ 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)) - ) - ); + // Init direction states + apply_directions(); #if HAS_MOTOR_CURRENT_SPI || HAS_MOTOR_CURRENT_PWM initialized = true; @@ -3014,24 +3137,24 @@ void Stepper::init() { #endif } -#if HAS_SHAPING +#if HAS_ZV_SHAPING /** * Calculate a fixed point factor to apply to the signal and its echo * 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; 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); } @@ -3085,7 +3208,7 @@ void Stepper::init() { return -1; } -#endif // HAS_SHAPING +#endif // HAS_ZV_SHAPING /** * Set the stepper positions directly in steps @@ -3108,7 +3231,7 @@ void Stepper::_set_position(const abce_long_t &spos) { #if CORE_IS_XY // corexy positioning // these equations follow the form of the dA and dB equations on https://www.corexy.com/theory.html - count_position.set(spos.a + spos.b, CORESIGN(spos.a - spos.b), spos.c); + count_position.set(spos.a + spos.b, CORESIGN(spos.a - spos.b) OPTARG(HAS_Z_AXIS, spos.c)); #elif CORE_IS_XZ // corexz planning count_position.set(spos.a + spos.c, spos.b, CORESIGN(spos.a - spos.c)); @@ -3256,19 +3379,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() { @@ -3287,12 +3412,175 @@ void Stepper::report_positions() { report_a_position(pos); } +#if ENABLED(FT_MOTION) + + // Set stepper I/O for fixed time controller. + void Stepper::fxdTiCtrl_stepper(const bool applyDir, const ft_command_t command) { + + USING_TIMED_PULSE(); + + 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) { + 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(); + } + + // 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(); + + // 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 + + // 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) + ); + + // 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 + + void Stepper::fxdTiCtrl_BlockQueueUpdate() { + + if (current_block) { + // If the current block is not done processing, return right away + if (!fxdTiCtrl.getBlockProcDn()) return; + + axis_did_move.reset(); + current_block = nullptr; + discard_current_block(); + } + + if (!current_block) { // No current block + + // Check the buffer for a new block + current_block = planner.get_current_block(); + + if (current_block) { + // Sync block? Sync the stepper counts and return + while (current_block->is_sync()) { + if (!(current_block->is_fan_sync() || current_block->is_pwr_sync())) _set_position(current_block->position); + discard_current_block(); + + // Try to get a new block + if (!(current_block = planner.get_current_block())) + return; // No more queued movements!image.png + } + + // this is needed by motor_direction() and subsequently bed leveling (somehow) + // update it here, even though it will may be out of sync with step commands + last_direction_bits = current_block->direction_bits; + + fxdTiCtrl.startBlockProc(current_block); + + } + else { + fxdTiCtrl.runoutBlock(); + return; // No queued blocks + } + + } // if (!current_block) + + } // Stepper::fxdTiCtrl_BlockQueueUpdate() + + // Debounces the axis move indication to account for potential + // delay between the block information and the stepper commands + void Stepper::fxdTiCtrl_refreshAxisDidMove() { + + // Set the debounce time in seconds. + #define AXIS_DID_MOVE_DEB 5 // TODO: The debounce time should be calculated if possible, + // or the set conditions should be changed from the block to + // the motion trajectory or motor commands. + + 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)); + + if (current_block) { REPEAT(LOGICAL_AXES, _DEBOUNCE); } + + axis_did_move = didmove; + } + +#endif // FT_MOTION + #if ENABLED(BABYSTEPPING) #define _ENABLE_AXIS(A) enable_axis(_AXIS(A)) #define _READ_DIR(AXIS) AXIS ##_DIR_READ() - #define _INVERT_DIR(AXIS) ENABLED(INVERT_## AXIS ##_DIR) - #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) @@ -3338,40 +3626,40 @@ void Stepper::report_positions() { #if DISABLED(DELTA) - #define BABYSTEP_AXIS(AXIS, INV, DIR) do{ \ - const uint8_t old_dir = _READ_DIR(AXIS); \ - _ENABLE_AXIS(AXIS); \ - DIR_WAIT_BEFORE(); \ - _APPLY_DIR(AXIS, _INVERT_DIR(AXIS)^DIR^INV); \ - DIR_WAIT_AFTER(); \ - _SAVE_START(); \ - _APPLY_STEP(AXIS, !_INVERT_STEP_PIN(AXIS), true); \ - _PULSE_WAIT(); \ - _APPLY_STEP(AXIS, _INVERT_STEP_PIN(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, INV, DIR, 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, _INVERT_DIR(A)^DIR^INV); \ - _APPLY_DIR(B, _INVERT_DIR(B)^DIR^INV^ALT); \ + _APPLY_DIR(A, (FWD)^(INV)); \ + _APPLY_DIR(B, (FWD)^(INV)^(ALT)); \ DIR_WAIT_AFTER(); \ _SAVE_START(); \ - _APPLY_STEP(A, !_INVERT_STEP_PIN(A), true); \ - _APPLY_STEP(B, !_INVERT_STEP_PIN(B), true); \ + _APPLY_STEP(A, _STEP_STATE(A), true); \ + _APPLY_STEP(B, _STEP_STATE(B), true); \ _PULSE_WAIT(); \ - _APPLY_STEP(A, _INVERT_STEP_PIN(A), true); \ - _APPLY_STEP(B, _INVERT_STEP_PIN(B), true); \ + _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) @@ -3381,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) { @@ -3389,21 +3677,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, 0, (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; @@ -3412,142 +3700,46 @@ 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, ENABLED(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, ENABLED(BABYSTEP_INVERT_Z), (CORESIGN(1)<0)); #elif DISABLED(DELTA) - BABYSTEP_AXIS(Z, BABYSTEP_INVERT_Z, direction); + BABYSTEP_AXIS(Z, direction, ENABLED(BABYSTEP_INVERT_Z)); #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), - 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() }; - X_DIR_WRITE(ENABLED(INVERT_X_DIR) ^ z_direction); - #ifdef Y_DIR_WRITE - Y_DIR_WRITE(ENABLED(INVERT_Y_DIR) ^ z_direction); - #endif - #ifdef Z_DIR_WRITE - Z_DIR_WRITE(ENABLED(INVERT_Z_DIR) ^ z_direction); - #endif - #ifdef I_DIR_WRITE - I_DIR_WRITE(ENABLED(INVERT_I_DIR) ^ z_direction); - #endif - #ifdef J_DIR_WRITE - J_DIR_WRITE(ENABLED(INVERT_J_DIR) ^ z_direction); - #endif - #ifdef K_DIR_WRITE - K_DIR_WRITE(ENABLED(INVERT_K_DIR) ^ z_direction); - #endif - #ifdef U_DIR_WRITE - U_DIR_WRITE(ENABLED(INVERT_U_DIR) ^ z_direction); - #endif - #ifdef V_DIR_WRITE - V_DIR_WRITE(ENABLED(INVERT_V_DIR) ^ z_direction); - #endif - #ifdef W_DIR_WRITE - W_DIR_WRITE(ENABLED(INVERT_W_DIR) ^ z_direction); - #endif + X_DIR_WRITE(z_direction); + Y_DIR_WRITE(z_direction); + Z_DIR_WRITE(z_direction); DIR_WAIT_AFTER(); _SAVE_START(); - X_STEP_WRITE(!INVERT_X_STEP_PIN); - #ifdef Y_STEP_WRITE - Y_STEP_WRITE(!INVERT_Y_STEP_PIN); - #endif - #ifdef Z_STEP_WRITE - Z_STEP_WRITE(!INVERT_Z_STEP_PIN); - #endif - #ifdef I_STEP_WRITE - I_STEP_WRITE(!INVERT_I_STEP_PIN); - #endif - #ifdef J_STEP_WRITE - J_STEP_WRITE(!INVERT_J_STEP_PIN); - #endif - #ifdef K_STEP_WRITE - K_STEP_WRITE(!INVERT_K_STEP_PIN); - #endif - #ifdef U_STEP_WRITE - U_STEP_WRITE(!INVERT_U_STEP_PIN); - #endif - #ifdef V_STEP_WRITE - V_STEP_WRITE(!INVERT_V_STEP_PIN); - #endif - #ifdef W_STEP_WRITE - W_STEP_WRITE(!INVERT_W_STEP_PIN); - #endif + X_STEP_WRITE(STEP_STATE_X); + Y_STEP_WRITE(STEP_STATE_Y); + Z_STEP_WRITE(STEP_STATE_Z); _PULSE_WAIT(); - X_STEP_WRITE(INVERT_X_STEP_PIN); - #ifdef Y_STEP_WRITE - Y_STEP_WRITE(INVERT_Y_STEP_PIN); - #endif - #ifdef Z_STEP_WRITE - Z_STEP_WRITE(INVERT_Z_STEP_PIN); - #endif - #ifdef I_STEP_WRITE - I_STEP_WRITE(INVERT_I_STEP_PIN); - #endif - #ifdef J_STEP_WRITE - J_STEP_WRITE(INVERT_J_STEP_PIN); - #endif - #ifdef K_STEP_WRITE - K_STEP_WRITE(INVERT_K_STEP_PIN); - #endif - #ifdef U_STEP_WRITE - U_STEP_WRITE(INVERT_U_STEP_PIN); - #endif - #ifdef V_STEP_WRITE - V_STEP_WRITE(INVERT_V_STEP_PIN); - #endif - #ifdef W_STEP_WRITE - W_STEP_WRITE(INVERT_W_STEP_PIN); - #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(); - X_DIR_WRITE(old_dir.x); - #ifdef Y_DIR_WRITE - Y_DIR_WRITE(old_dir.y); - #endif - #ifdef Z_DIR_WRITE - Z_DIR_WRITE(old_dir.z); - #endif - #ifdef I_DIR_WRITE - I_DIR_WRITE(old_dir.i); - #endif - #ifdef J_DIR_WRITE - J_DIR_WRITE(old_dir.j); - #endif - #ifdef K_DIR_WRITE - K_DIR_WRITE(old_dir.k); - #endif - #ifdef U_DIR_WRITE - U_DIR_WRITE(old_dir.u); - #endif - #ifdef V_DIR_WRITE - V_DIR_WRITE(old_dir.v); - #endif - #ifdef W_DIR_WRITE - W_DIR_WRITE(old_dir.w); - #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(); @@ -3555,29 +3747,10 @@ void Stepper::report_positions() { } break; - #if HAS_I_AXIS - case I_AXIS: BABYSTEP_AXIS(I, 0, direction); break; - #endif - #if HAS_J_AXIS - case J_AXIS: BABYSTEP_AXIS(J, 0, direction); break; - #endif - #if HAS_K_AXIS - case K_AXIS: BABYSTEP_AXIS(K, 0, direction); break; - #endif - #if HAS_U_AXIS - case U_AXIS: BABYSTEP_AXIS(U, 0, direction); break; - #endif - #if HAS_V_AXIS - case V_AXIS: BABYSTEP_AXIS(V, 0, direction); break; - #endif - #if HAS_W_AXIS - case W_AXIS: BABYSTEP_AXIS(W, 0, direction); break; - #endif - default: break; } - IF_DISABLED(INTEGRATED_BABYSTEPPING, sei()); + IF_DISABLED(BABYSTEPPING, sei()); } #endif // BABYSTEPPING @@ -3603,7 +3776,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: @@ -3699,7 +3872,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 @@ -3760,7 +3933,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/module/stepper.h b/Marlin/src/module/stepper.h index d1506244e3..7dbb6b8b5a 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -45,246 +45,51 @@ #include "planner.h" #include "stepper/indirection.h" +#include "stepper/cycles.h" #ifdef __AVR__ #include "stepper/speed_lookuptable.h" #endif -// Disable multiple steps per ISR -//#define DISABLE_MULTI_STEPPING - -// -// 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_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 +#if ENABLED(FT_MOTION) + #include "ft_types.h" +#endif +// 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 - // Cycles to perform actions in START_TIMED_PULSE - #define TIMER_READ_ADD_AND_STORE_CYCLES 13UL - - // The base ISR - #define ISR_BASE_CYCLES 996UL - - // 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_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 88UL - + #define E_STATES E_STEPPERS // One stepper for each extruder, so each can be disabled individually. #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 R pulses plus the time -// between pulses for (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) * (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_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 - -// Now estimate the total ISR execution time in cycles given a step per ISR 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 x128-x1 stepping (in Hz) -#define MAX_STEP_ISR_FREQUENCY_128X ((F_CPU) / ISR_EXECUTION_CYCLES(128)) -#define MAX_STEP_ISR_FREQUENCY_64X ((F_CPU) / ISR_EXECUTION_CYCLES(64)) -#define MAX_STEP_ISR_FREQUENCY_32X ((F_CPU) / ISR_EXECUTION_CYCLES(32)) -#define MAX_STEP_ISR_FREQUENCY_16X ((F_CPU) / ISR_EXECUTION_CYCLES(16)) -#define MAX_STEP_ISR_FREQUENCY_8X ((F_CPU) / ISR_EXECUTION_CYCLES(8)) -#define MAX_STEP_ISR_FREQUENCY_4X ((F_CPU) / ISR_EXECUTION_CYCLES(4)) -#define MAX_STEP_ISR_FREQUENCY_2X ((F_CPU) / ISR_EXECUTION_CYCLES(2)) -#define MAX_STEP_ISR_FREQUENCY_1X ((F_CPU) / ISR_EXECUTION_CYCLES(1)) - -// 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. -// Perhaps DISABLE_MULTI_STEPPING should be required with ADAPTIVE_STEP_SMOOTHING. -#define MIN_STEP_ISR_FREQUENCY (MAX_STEP_ISR_FREQUENCY_1X / 2) - -#define ENABLE_COUNT (NUM_AXES + E_STEPPERS) -#if ENABLE_COUNT > 16 - typedef uint32_t ena_mask_t; -#else - typedef IF<(ENABLE_COUNT > 8), uint16_t, uint8_t>::type ena_mask_t; -#endif +// Number of axes that could be enabled/disabled. Dual/multiple steppers are combined. +#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 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 HAS_EXTRUDERS - bool LIST_N(EXTRUDERS, E0:1, E1:1, E2:1, E3:1, E4:1, E5:1, E6:1, E7: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 }; }; } 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), + 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) }; @@ -329,7 +134,7 @@ constexpr ena_mask_t enable_overlap[] = { //static_assert(!any_enable_overlap(), "There is some overlap."); -#if HAS_SHAPING +#if HAS_ZV_SHAPING #ifdef SHAPING_MAX_STEPRATE constexpr float max_step_rate = SHAPING_MAX_STEPRATE; @@ -358,7 +163,7 @@ constexpr ena_mask_t enable_overlap[] = { constexpr uint16_t shaping_min_freq = SHAPING_MIN_FREQ, shaping_echoes = max_step_rate / shaping_min_freq / 2 + 3; - typedef IF::type shaping_time_t; + typedef hal_timer_t shaping_time_t; enum shaping_echo_t { ECHO_NONE = 0, ECHO_FWD = 1, ECHO_BWD = 2 }; struct shaping_echo_axis_t { TERN_(INPUT_SHAPING_X, shaping_echo_t x:2); @@ -396,16 +201,36 @@ constexpr ena_mask_t enable_overlap[] = { TERN_(INPUT_SHAPING_Y, if (axis == Y_AXIS) delay_y = delay); } static void enqueue(const bool x_step, const bool x_forward, const bool y_step, const bool y_forward) { - TERN_(INPUT_SHAPING_X, if (head_x == tail && x_step) peek_x_val = delay_x); - TERN_(INPUT_SHAPING_Y, if (head_y == tail && y_step) peek_y_val = delay_y); + #if ENABLED(INPUT_SHAPING_X) + if (x_step) { + if (head_x == tail) peek_x_val = delay_x; + echo_axes[tail].x = x_forward ? ECHO_FWD : ECHO_BWD; + _free_count_x--; + } + else { + echo_axes[tail].x = ECHO_NONE; + if (head_x != tail) + _free_count_x--; + else if (++head_x == shaping_echoes) + head_x = 0; + } + #endif + #if ENABLED(INPUT_SHAPING_Y) + if (y_step) { + if (head_y == tail) peek_y_val = delay_y; + echo_axes[tail].y = y_forward ? ECHO_FWD : ECHO_BWD; + _free_count_y--; + } + else { + echo_axes[tail].y = ECHO_NONE; + if (head_y != tail) + _free_count_y--; + else if (++head_y == shaping_echoes) + head_y = 0; + } + #endif times[tail] = now; - TERN_(INPUT_SHAPING_X, echo_axes[tail].x = x_step ? (x_forward ? ECHO_FWD : ECHO_BWD) : ECHO_NONE); - TERN_(INPUT_SHAPING_Y, echo_axes[tail].y = y_step ? (y_forward ? ECHO_FWD : ECHO_BWD) : ECHO_NONE); if (++tail == shaping_echoes) tail = 0; - TERN_(INPUT_SHAPING_X, _free_count_x--); - TERN_(INPUT_SHAPING_Y, _free_count_y--); - TERN_(INPUT_SHAPING_X, if (echo_axes[head_x].x == ECHO_NONE) dequeue_x()); - TERN_(INPUT_SHAPING_Y, if (echo_axes[head_y].y == ECHO_NONE) dequeue_y()); } #if ENABLED(INPUT_SHAPING_X) static shaping_time_t peek_x() { return peek_x_val; } @@ -449,27 +274,27 @@ constexpr ena_mask_t enable_overlap[] = { struct ShapeParams { float frequency; float zeta; - bool enabled; + bool enabled : 1; + bool forward : 1; int16_t delta_error = 0; // delta_error for seconday bresenham mod 128 uint8_t factor1; uint8_t factor2; - bool forward; int32_t last_block_end_pos = 0; }; -#endif // HAS_SHAPING +#endif // HAS_ZV_SHAPING // // Stepper class definition // class Stepper { - friend class KinematicSystem; - friend class DeltaKinematicSystem; + friend class Max7219; + friend class FxdTiCtrl; friend void stepperTask(void *); 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 @@ -498,17 +323,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; @@ -516,7 +341,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 @@ -528,7 +353,16 @@ class Stepper { #endif static uint32_t acceleration_time, deceleration_time; // time measured in Stepper Timer ticks - static uint8_t steps_per_isr; // Count of steps to perform per Stepper ISR call + + #if MULTISTEPPING_LIMIT == 1 + static constexpr uint8_t steps_per_isr = 1; // Count of steps to perform per Stepper ISR call + #else + static uint8_t steps_per_isr; + #endif + + #if DISABLED(OLD_ADAPTIVE_MULTISTEPPING) + static hal_timer_t time_spent_in_isr, time_spent_out_isr; + #endif #if ENABLED(ADAPTIVE_STEP_SMOOTHING) static uint8_t oversampling_factor; // Oversampling factor (log2(multiplier)) to increase temporal resolution of axis @@ -545,7 +379,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; @@ -563,7 +397,7 @@ class Stepper { static bool bezier_2nd_half; // If Bézier curve has been initialized or not #endif - #if HAS_SHAPING + #if HAS_ZV_SHAPING #if ENABLED(INPUT_SHAPING_X) static ShapeParams shaping_x; #endif @@ -573,24 +407,25 @@ class Stepper { #endif #if ENABLED(LIN_ADVANCE) - static constexpr uint32_t LA_ADV_NEVER = 0xFFFFFFFF; - static uint32_t nextAdvanceISR, - la_interval; // Interval between ISR calls for LA - static int32_t la_delta_error, // Analogue of delta_error.e for E steps in LA ISR - la_dividend, // Analogue of advance_dividend.e for E steps in LA ISR - la_advance_steps; // Count of steps added to increase nozzle pressure + static constexpr hal_timer_t LA_ADV_NEVER = HAL_TIMER_TYPE_MAX; + static hal_timer_t nextAdvanceISR, + la_interval; // Interval between ISR calls for LA + static int32_t la_delta_error, // Analogue of delta_error.e for E steps in LA ISR + la_dividend, // Analogue of advance_dividend.e for E steps in LA ISR + la_advance_steps; // Count of steps added to increase nozzle pressure + static bool la_active; // Whether linear advance is used on the present segment. #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) - static constexpr uint32_t BABYSTEP_NEVER = 0xFFFFFFFF; - static uint32_t nextBabystepISR; + #if ENABLED(BABYSTEPPING) + static constexpr hal_timer_t BABYSTEP_NEVER = HAL_TIMER_TYPE_MAX; + static hal_timer_t nextBabystepISR; #endif #if ENABLED(DIRECT_STEPPING) static page_step_state_t page_step_state; #endif - static int32_t ticks_nominal; + static hal_timer_t ticks_nominal; #if DISABLED(S_CURVE_ACCELERATION) static uint32_t acc_step_rate; // needed for deceleration start point #endif @@ -629,9 +464,9 @@ class Stepper { static void pulse_phase_isr(); // The stepper block processing ISR phase - static uint32_t block_phase_isr(); + static hal_timer_t block_phase_isr(); - #if HAS_SHAPING + #if HAS_ZV_SHAPING static void shaping_isr(); #endif @@ -640,9 +475,9 @@ class Stepper { static void advance_isr(); #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) + #if ENABLED(BABYSTEPPING) // The Babystepping ISR phase - static uint32_t babystepping_isr(); + static hal_timer_t babystepping_isr(); FORCE_INLINE static void initiateBabystepping() { if (nextBabystepISR == BABYSTEP_NEVER) { nextBabystepISR = 0; @@ -654,7 +489,7 @@ class Stepper { // Check if the given block is busy or not - Must not be called from ISR contexts static bool is_block_busy(const block_t * const block); - #if HAS_SHAPING + #if HAS_ZV_SHAPING // Check whether the stepper is processing any input shaping echoes static bool input_shaping_busy() { const bool was_on = hal.isr_state(); @@ -693,11 +528,11 @@ class Stepper { // Quickly stop all steppers FORCE_INLINE static void quick_stop() { abort_current_block = true; } - // The direction of a single motor - FORCE_INLINE static bool motor_direction(const AxisEnum axis) { return TEST(last_direction_bits, axis); } + // 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. - 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); @@ -716,7 +551,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) @@ -727,7 +562,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 @@ -794,15 +629,20 @@ 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) { + static void set_directions(const AxisBits bits) { last_direction_bits = bits; - set_directions(); + apply_directions(); } - #if HAS_SHAPING + #if ENABLED(FT_MOTION) + // Manage the planner + static void fxdTiCtrl_BlockQueueUpdate(); + #endif + + #if HAS_ZV_SHAPING static void set_shaping_damping_ratio(const AxisEnum axis, const_float_t zeta); static float get_shaping_damping_ratio(const AxisEnum axis); static void set_shaping_frequency(const AxisEnum axis, const_float_t freq); @@ -814,9 +654,11 @@ class Stepper { // Set the current position in steps static void _set_position(const abce_long_t &spos); - // Calculate timing interval for the given step rate - static uint32_t calc_timer_interval(uint32_t step_rate); - static uint32_t calc_timer_interval(uint32_t step_rate, uint8_t &loops); + // Calculate the timing interval for the given step rate + static hal_timer_t calc_timer_interval(uint32_t step_rate); + + // Calculate timing interval and steps-per-ISR for the given step rate + static hal_timer_t calc_multistep_timer_interval(uint32_t step_rate); #if ENABLED(S_CURVE_ACCELERATION) static void _calc_bezier_curve_coeffs(const int32_t v0, const int32_t v1, const uint32_t av); @@ -831,6 +673,11 @@ class Stepper { static void microstep_init(); #endif + #if ENABLED(FT_MOTION) + static void fxdTiCtrl_stepper(const bool applyDir, const ft_command_t command); + static void fxdTiCtrl_refreshAxisDidMove(); + #endif + }; extern Stepper stepper; diff --git a/Marlin/src/module/stepper/cycles.h b/Marlin/src/module/stepper/cycles.h new file mode 100644 index 0000000000..dae9e7c62c --- /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) diff --git a/Marlin/src/module/stepper/indirection.cpp b/Marlin/src/module/stepper/indirection.cpp index 427fd71cbe..0290d8135d 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 e9a9aa7de9..e82ab66e00 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,22 +80,26 @@ 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) - #define X_ENABLE_WRITE(STATE) WRITE(X_ENABLE_PIN,STATE) - #define X_ENABLE_READ() bool(READ(X_ENABLE_PIN)) +#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 -#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_READ() 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)) // Y Stepper #if HAS_Y_AXIS @@ -69,8 +110,8 @@ 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_READ() bool(READ(Y_DIR_PIN)) + #define Y_DIR_WRITE(STATE) WRITE(Y_DIR_PIN,INVERT_DIR(Y, STATE)) + #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 @@ -88,8 +129,8 @@ 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_READ() bool(READ(Z_DIR_PIN)) + #define Z_DIR_WRITE(STATE) WRITE(Z_DIR_PIN,INVERT_DIR(Z, STATE)) + #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 @@ -107,8 +148,8 @@ 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_READ() bool(READ(X2_DIR_PIN)) + #define X2_DIR_WRITE(STATE) WRITE(X2_DIR_PIN,INVERT_DIR(X2, STATE)) + #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 @@ -126,8 +167,8 @@ 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_READ() bool(READ(Y2_DIR_PIN)) + #define Y2_DIR_WRITE(STATE) WRITE(Y2_DIR_PIN,INVERT_DIR(Y2, STATE)) + #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 @@ -147,8 +188,8 @@ 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_READ() bool(READ(Z2_DIR_PIN)) + #define Z2_DIR_WRITE(STATE) WRITE(Z2_DIR_PIN,INVERT_DIR(Z2, STATE)) + #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 @@ -168,8 +209,8 @@ 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_READ() bool(READ(Z3_DIR_PIN)) + #define Z3_DIR_WRITE(STATE) WRITE(Z3_DIR_PIN,INVERT_DIR(Z3, STATE)) + #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 @@ -189,8 +230,8 @@ 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_READ() bool(READ(Z4_DIR_PIN)) + #define Z4_DIR_WRITE(STATE) WRITE(Z4_DIR_PIN,INVERT_DIR(Z4, STATE)) + #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 @@ -210,8 +251,8 @@ 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_READ() bool(READ(I_DIR_PIN)) + #define I_DIR_WRITE(STATE) WRITE(I_DIR_PIN,INVERT_DIR(I, STATE)) + #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 @@ -229,8 +270,8 @@ 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_READ() bool(READ(J_DIR_PIN)) + #define J_DIR_WRITE(STATE) WRITE(J_DIR_PIN,INVERT_DIR(J, STATE)) + #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 @@ -248,8 +289,8 @@ 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_READ() bool(READ(K_DIR_PIN)) + #define K_DIR_WRITE(STATE) WRITE(K_DIR_PIN,INVERT_DIR(K, STATE)) + #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 @@ -267,8 +308,8 @@ 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_READ() bool(READ(U_DIR_PIN)) + #define U_DIR_WRITE(STATE) WRITE(U_DIR_PIN,INVERT_DIR(U, STATE)) + #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 @@ -286,8 +327,8 @@ 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_READ() bool(READ(V_DIR_PIN)) + #define V_DIR_WRITE(STATE) WRITE(V_DIR_PIN,INVERT_DIR(V, STATE)) + #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 @@ -305,8 +346,8 @@ 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_READ() bool(READ(W_DIR_PIN)) + #define W_DIR_WRITE(STATE) WRITE(W_DIR_PIN,INVERT_DIR(W, STATE)) + #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 @@ -323,8 +364,8 @@ 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_READ() bool(READ(E0_DIR_PIN)) + #define E0_DIR_WRITE(STATE) WRITE(E0_DIR_PIN,INVERT_DIR(E0, STATE)) + #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 @@ -340,8 +381,8 @@ 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_READ() bool(READ(E1_DIR_PIN)) + #define E1_DIR_WRITE(STATE) WRITE(E1_DIR_PIN,INVERT_DIR(E1, STATE)) + #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 @@ -357,8 +398,8 @@ 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_READ() bool(READ(E2_DIR_PIN)) + #define E2_DIR_WRITE(STATE) WRITE(E2_DIR_PIN,INVERT_DIR(E2, STATE)) + #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 @@ -374,8 +415,8 @@ 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_READ() bool(READ(E3_DIR_PIN)) + #define E3_DIR_WRITE(STATE) WRITE(E3_DIR_PIN,INVERT_DIR(E3, STATE)) + #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 @@ -391,8 +432,8 @@ 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_READ() bool(READ(E4_DIR_PIN)) + #define E4_DIR_WRITE(STATE) WRITE(E4_DIR_PIN,INVERT_DIR(E4, STATE)) + #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 @@ -408,8 +449,8 @@ 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_READ() bool(READ(E5_DIR_PIN)) + #define E5_DIR_WRITE(STATE) WRITE(E5_DIR_PIN,INVERT_DIR(E5, STATE)) + #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 @@ -425,8 +466,8 @@ 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_READ() bool(READ(E6_DIR_PIN)) + #define E6_DIR_WRITE(STATE) WRITE(E6_DIR_PIN,INVERT_DIR(E6, STATE)) + #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 @@ -442,8 +483,8 @@ 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_READ() bool(READ(E7_DIR_PIN)) + #define E7_DIR_WRITE(STATE) WRITE(E7_DIR_PIN,INVERT_DIR(E7, STATE)) + #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 @@ -454,95 +495,97 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset /** * Extruder indirection for the single E axis */ -#if ENABLED(SWITCHING_EXTRUDER) // One stepper driver per two extruders, reversed on odd index +#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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; \ - case 6: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; case 7: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; \ - case 6: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; case 7: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); 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 NORM_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; \ - case 6: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; \ - case 6: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); } }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 NORM_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 5: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); 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 NORM_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 4: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); 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 NORM_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 3: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); 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 NORM_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ + #define FWD_E_DIR(E) do{ switch (E) { \ + 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( ENABLED(INVERT_E0_DIR)); break; case 1: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; \ - case 2: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); 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 NORM_E_DIR(E) do{ E0_DIR_WRITE(E ? ENABLED(INVERT_E0_DIR) : DISABLED(INVERT_E0_DIR)); }while(0) - #define REV_E_DIR(E) do{ E0_DIR_WRITE(E ? DISABLED(INVERT_E0_DIR) : ENABLED(INVERT_E0_DIR)); }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 + #define TOOL_ESTEPPER(T) ((T) >> 1) + #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(DISABLED(INVERT_E0_DIR)) - #define REV_E_DIR(E) E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)) + #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 NORM_E_DIR(E) do{ E0_DIR_WRITE(TEST(E, 0) ? DISABLED(INVERT_E0_DIR): ENABLED(INVERT_E0_DIR)); }while(0) - #define REV_E_DIR(E) do{ E0_DIR_WRITE(TEST(E, 0) ? ENABLED(INVERT_E0_DIR): DISABLED(INVERT_E0_DIR)); }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 @@ -552,17 +595,17 @@ 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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE(DISABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE(DISABLED(INVERT_E5_DIR)); break; \ - case 6: E6_DIR_WRITE(DISABLED(INVERT_E6_DIR)); break; case 7: E7_DIR_WRITE(DISABLED(INVERT_E7_DIR)); break; \ + #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); 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( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE( ENABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE( ENABLED(INVERT_E5_DIR)); break; \ - case 6: E6_DIR_WRITE( ENABLED(INVERT_E6_DIR)); break; case 7: E7_DIR_WRITE( ENABLED(INVERT_E7_DIR)); 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 @@ -571,17 +614,17 @@ 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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE(DISABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE(DISABLED(INVERT_E5_DIR)); break; \ - case 6: E6_DIR_WRITE(DISABLED(INVERT_E6_DIR)); break; \ + #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); 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( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE( ENABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE( ENABLED(INVERT_E5_DIR)); break; \ - case 6: E6_DIR_WRITE( ENABLED(INVERT_E6_DIR)); 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 @@ -590,15 +633,15 @@ 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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE(DISABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE(DISABLED(INVERT_E5_DIR)); break; \ + #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); 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( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE( ENABLED(INVERT_E4_DIR)); break; case 5: E5_DIR_WRITE( ENABLED(INVERT_E5_DIR)); 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 @@ -607,15 +650,15 @@ 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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE(DISABLED(INVERT_E4_DIR)); break; \ + #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); 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( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); break; \ - case 4: E4_DIR_WRITE( ENABLED(INVERT_E4_DIR)); 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 @@ -623,98 +666,72 @@ 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) { \ - case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE(DISABLED(INVERT_E3_DIR)); break; \ + #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); break; case 3: E3_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; \ - case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); break; case 3: E3_DIR_WRITE( ENABLED(INVERT_E3_DIR)); 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 _NORM_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); break; case 2: E2_DIR_WRITE(DISABLED(INVERT_E2_DIR)); } }while(0) - #define _REV_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); break; case 1: E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); break; case 2: E2_DIR_WRITE( ENABLED(INVERT_E2_DIR)); } }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 _NORM_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); } else { E1_DIR_WRITE(DISABLED(INVERT_E1_DIR)); } }while(0) - #define _REV_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); } else { E1_DIR_WRITE( ENABLED(INVERT_E1_DIR)); } }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 #if ENABLED(MULTI_NOZZLE_DUPLICATION) - #define _DUPE(N,T,V) do{ if (TEST(duplication_e_mask, N)) E##N##_##T##_WRITE(V); }while(0) + #define DUPE(N,T,V) do{ if (TEST(duplication_e_mask, N)) E##N##_##T##_WRITE(V); }while(0); #else - #define _DUPE(N,T,V) E##N##_##T##_WRITE(V) + #define DUPE(N,T,V) E##N##_##T##_WRITE(V); #endif - #define NDIR(N) _DUPE(N,DIR,DISABLED(INVERT_E##N##_DIR)) - #define RDIR(N) _DUPE(N,DIR, ENABLED(INVERT_E##N##_DIR)) + #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) { DUPE(STEP,V); } else _E_STEP_WRITE(E,V); }while(0) - - #if E_STEPPERS > 2 - #if E_STEPPERS > 7 - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); _DUPE(3,T,V); _DUPE(4,T,V); _DUPE(5,T,V); _DUPE(6,T,V); _DUPE(7,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); NDIR(3); NDIR(4); NDIR(5); NDIR(6); NDIR(7); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); RDIR(3); RDIR(4); RDIR(5); RDIR(6); RDIR(7); } else _REV_E_DIR(E); }while(0) - #elif E_STEPPERS > 6 - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); _DUPE(3,T,V); _DUPE(4,T,V); _DUPE(5,T,V); _DUPE(6,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); NDIR(3); NDIR(4); NDIR(5); NDIR(6); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); RDIR(3); RDIR(4); RDIR(5); RDIR(6); } else _REV_E_DIR(E); }while(0) - #elif E_STEPPERS > 5 - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); _DUPE(3,T,V); _DUPE(4,T,V); _DUPE(5,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); NDIR(3); NDIR(4); NDIR(5); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); RDIR(3); RDIR(4); RDIR(5); } else _REV_E_DIR(E); }while(0) - #elif E_STEPPERS > 4 - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); _DUPE(3,T,V); _DUPE(4,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); NDIR(3); NDIR(4); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); RDIR(3); RDIR(4); } else _REV_E_DIR(E); }while(0) - #elif E_STEPPERS > 3 - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); _DUPE(3,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); NDIR(3); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); RDIR(3); } else _REV_E_DIR(E); }while(0) - #else - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); _DUPE(2,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); NDIR(2); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); RDIR(2); } else _REV_E_DIR(E); }while(0) - #endif - #else - #define DUPE(T,V) do{ _DUPE(0,T,V); _DUPE(1,T,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { NDIR(0); NDIR(1); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { RDIR(0); RDIR(1); } else _REV_E_DIR(E); }while(0) - #endif + #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) + #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{ E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)); E1_DIR_WRITE(DISABLED(INVERT_E0_DIR) ^ ENABLED(INVERT_E1_VS_E0_DIR)); }while(0) - #define REV_E_DIR(E) do{ E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)); E1_DIR_WRITE( ENABLED(INVERT_E0_DIR) ^ ENABLED(INVERT_E1_VS_E0_DIR)); }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 NORM_E_DIR(E) E0_DIR_WRITE(DISABLED(INVERT_E0_DIR)) - #define REV_E_DIR(E) E0_DIR_WRITE( ENABLED(INVERT_E0_DIR)) + #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 - #define NORM_E_DIR(E) NOOP + #define FWD_E_DIR(E) NOOP #define REV_E_DIR(E) NOOP #endif +#ifndef TOOL_ESTEPPER + #define TOOL_ESTEPPER(T) (T) +#endif + // // Individual stepper enable / disable macros // @@ -968,8 +985,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); } @@ -981,7 +1003,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 diff --git a/Marlin/src/module/stepper/speed_lookuptable.h b/Marlin/src/module/stepper/speed_lookuptable.h index b173ebec08..ae30bdbf3b 100644 --- a/Marlin/src/module/stepper/speed_lookuptable.h +++ b/Marlin/src/module/stepper/speed_lookuptable.h @@ -23,146 +23,146 @@ #if F_CPU == 16000000 - const uint16_t speed_lookuptable_fast[256][2] PROGMEM = { - { 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, - { 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, - { 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, - { 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, - { 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, - { 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, - { 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, - { 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, - { 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, - { 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, - { 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, - { 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, - { 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, - { 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, - { 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, - { 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, - { 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, - { 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, - { 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, - { 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, - { 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, - { 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, - { 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, - { 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, - { 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, - { 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, - { 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, - { 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, - { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, - { 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, - { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, - { 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} + const struct { uint16_t base; uint8_t gain; } speed_lookuptable_fast[256] PROGMEM = { + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, // dummy first row + { 977, 109 }, { 868, 87 }, { 781, 71 }, { 710, 59 }, { 651, 50 }, { 601, 43 }, { 558, 37 }, { 521, 33 }, + { 488, 28 }, { 460, 26 }, { 434, 23 }, { 411, 20 }, { 391, 19 }, { 372, 17 }, { 355, 15 }, { 340, 14 }, + { 326, 13 }, { 313, 13 }, { 300, 11 }, { 289, 10 }, { 279, 10 }, { 269, 9 }, { 260, 8 }, { 252, 8 }, + { 244, 7 }, { 237, 7 }, { 230, 7 }, { 223, 6 }, { 217, 6 }, { 211, 5 }, { 206, 6 }, { 200, 5 }, + { 195, 4 }, { 191, 5 }, { 186, 4 }, { 182, 4 }, { 178, 4 }, { 174, 4 }, { 170, 4 }, { 166, 3 }, + { 163, 4 }, { 159, 3 }, { 156, 3 }, { 153, 3 }, { 150, 3 }, { 147, 2 }, { 145, 3 }, { 142, 2 }, + { 140, 3 }, { 137, 2 }, { 135, 3 }, { 132, 2 }, { 130, 2 }, { 128, 2 }, { 126, 2 }, { 124, 2 }, + { 122, 2 }, { 120, 2 }, { 118, 1 }, { 117, 2 }, { 115, 2 }, { 113, 1 }, { 112, 2 }, { 110, 1 }, + { 109, 2 }, { 107, 1 }, { 106, 2 }, { 104, 1 }, { 103, 2 }, { 101, 1 }, { 100, 1 }, { 99, 1 }, + { 98, 2 }, { 96, 1 }, { 95, 1 }, { 94, 1 }, { 93, 1 }, { 92, 1 }, { 91, 1 }, { 90, 1 }, + { 89, 1 }, { 88, 1 }, { 87, 1 }, { 86, 1 }, { 85, 1 }, { 84, 1 }, { 83, 1 }, { 82, 1 }, + { 81, 0 }, { 81, 1 }, { 80, 1 }, { 79, 1 }, { 78, 1 }, { 77, 0 }, { 77, 1 }, { 76, 1 }, + { 75, 1 }, { 74, 0 }, { 74, 1 }, { 73, 1 }, { 72, 0 }, { 72, 1 }, { 71, 1 }, { 70, 0 }, + { 70, 1 }, { 69, 0 }, { 69, 1 }, { 68, 1 }, { 67, 0 }, { 67, 1 }, { 66, 0 }, { 66, 1 }, + { 65, 0 }, { 65, 1 }, { 64, 0 }, { 64, 1 }, { 63, 0 }, { 63, 1 }, { 62, 0 }, { 62, 1 }, + { 61, 0 }, { 61, 1 }, { 60, 0 }, { 60, 1 }, { 59, 0 }, { 59, 1 }, { 58, 0 }, { 58, 1 }, + { 57, 0 }, { 57, 0 }, { 57, 1 }, { 56, 0 }, { 56, 1 }, { 55, 0 }, { 55, 0 }, { 55, 1 }, + { 54, 0 }, { 54, 0 }, { 54, 1 }, { 53, 0 }, { 53, 1 }, { 52, 0 }, { 52, 0 }, { 52, 1 }, + { 51, 0 }, { 51, 0 }, { 51, 1 }, { 50, 0 }, { 50, 0 }, { 50, 1 }, { 49, 0 }, { 49, 0 }, + { 49, 0 }, { 49, 1 }, { 48, 0 }, { 48, 0 }, { 48, 1 }, { 47, 0 }, { 47, 0 }, { 47, 0 }, + { 47, 1 }, { 46, 0 }, { 46, 0 }, { 46, 1 }, { 45, 0 }, { 45, 0 }, { 45, 0 }, { 45, 1 }, + { 44, 0 }, { 44, 0 }, { 44, 0 }, { 44, 1 }, { 43, 0 }, { 43, 0 }, { 43, 0 }, { 43, 1 }, + { 42, 0 }, { 42, 0 }, { 42, 0 }, { 42, 0 }, { 42, 1 }, { 41, 0 }, { 41, 0 }, { 41, 0 }, + { 41, 1 }, { 40, 0 }, { 40, 0 }, { 40, 0 }, { 40, 0 }, { 40, 1 }, { 39, 0 }, { 39, 0 }, + { 39, 0 }, { 39, 0 }, { 39, 1 }, { 38, 0 }, { 38, 0 }, { 38, 0 }, { 38, 0 }, { 38, 0 }, + { 38, 1 }, { 37, 0 }, { 37, 0 }, { 37, 0 }, { 37, 0 }, { 37, 0 }, { 37, 1 }, { 36, 0 }, + { 36, 0 }, { 36, 0 }, { 36, 0 }, { 36, 0 }, { 36, 1 }, { 35, 0 }, { 35, 0 }, { 35, 0 }, + { 35, 0 }, { 35, 0 }, { 35, 1 }, { 34, 0 }, { 34, 0 }, { 34, 0 }, { 34, 0 }, { 34, 0 }, + { 34, 0 }, { 34, 1 }, { 33, 0 }, { 33, 0 }, { 33, 0 }, { 33, 0 }, { 33, 0 }, { 33, 0 }, + { 33, 1 }, { 32, 0 }, { 32, 0 }, { 32, 0 }, { 32, 0 }, { 32, 0 }, { 32, 0 }, { 32, 0 }, + { 32, 1 }, { 31, 0 }, { 31, 0 }, { 31, 0 }, { 31, 0 }, { 31, 0 }, { 31, 0 }, { 31, 0 }, }; const uint16_t speed_lookuptable_slow[256][2] PROGMEM = { - { 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, - { 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, - { 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, - { 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, - { 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, - { 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, - { 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, - { 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, - { 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, - { 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, - { 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, - { 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, - { 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, - { 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, - { 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, - { 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, - { 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, - { 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, - { 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, - { 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, - { 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, - { 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, - { 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, - { 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, - { 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, - { 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, - { 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, - { 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, - { 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, - { 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, - { 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, - { 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} + { 62500, 12500 }, { 50000, 8333 }, { 41667, 5953 }, { 35714, 4464 }, { 31250, 3472 }, { 27778, 2778 }, { 25000, 2273 }, { 22727, 1894 }, + { 20833, 1602 }, { 19231, 1374 }, { 17857, 1190 }, { 16667, 1042 }, { 15625, 919 }, { 14706, 817 }, { 13889, 731 }, { 13158, 658 }, + { 12500, 595 }, { 11905, 541 }, { 11364, 494 }, { 10870, 453 }, { 10417, 417 }, { 10000, 385 }, { 9615, 356 }, { 9259, 330 }, + { 8929, 308 }, { 8621, 288 }, { 8333, 268 }, { 8065, 252 }, { 7813, 237 }, { 7576, 223 }, { 7353, 210 }, { 7143, 199 }, + { 6944, 187 }, { 6757, 178 }, { 6579, 169 }, { 6410, 160 }, { 6250, 152 }, { 6098, 146 }, { 5952, 138 }, { 5814, 132 }, + { 5682, 126 }, { 5556, 121 }, { 5435, 116 }, { 5319, 111 }, { 5208, 106 }, { 5102, 102 }, { 5000, 98 }, { 4902, 94 }, + { 4808, 91 }, { 4717, 87 }, { 4630, 85 }, { 4545, 81 }, { 4464, 78 }, { 4386, 76 }, { 4310, 73 }, { 4237, 70 }, + { 4167, 69 }, { 4098, 66 }, { 4032, 64 }, { 3968, 62 }, { 3906, 60 }, { 3846, 58 }, { 3788, 57 }, { 3731, 55 }, + { 3676, 53 }, { 3623, 52 }, { 3571, 50 }, { 3521, 49 }, { 3472, 47 }, { 3425, 47 }, { 3378, 45 }, { 3333, 44 }, + { 3289, 42 }, { 3247, 42 }, { 3205, 40 }, { 3165, 40 }, { 3125, 39 }, { 3086, 37 }, { 3049, 37 }, { 3012, 36 }, + { 2976, 35 }, { 2941, 34 }, { 2907, 33 }, { 2874, 33 }, { 2841, 32 }, { 2809, 31 }, { 2778, 31 }, { 2747, 30 }, + { 2717, 29 }, { 2688, 28 }, { 2660, 28 }, { 2632, 28 }, { 2604, 27 }, { 2577, 26 }, { 2551, 26 }, { 2525, 25 }, + { 2500, 25 }, { 2475, 24 }, { 2451, 24 }, { 2427, 23 }, { 2404, 23 }, { 2381, 23 }, { 2358, 22 }, { 2336, 21 }, + { 2315, 21 }, { 2294, 21 }, { 2273, 21 }, { 2252, 20 }, { 2232, 20 }, { 2212, 19 }, { 2193, 19 }, { 2174, 19 }, + { 2155, 18 }, { 2137, 18 }, { 2119, 18 }, { 2101, 18 }, { 2083, 17 }, { 2066, 17 }, { 2049, 16 }, { 2033, 17 }, + { 2016, 16 }, { 2000, 16 }, { 1984, 15 }, { 1969, 16 }, { 1953, 15 }, { 1938, 15 }, { 1923, 15 }, { 1908, 14 }, + { 1894, 14 }, { 1880, 14 }, { 1866, 14 }, { 1852, 14 }, { 1838, 13 }, { 1825, 13 }, { 1812, 13 }, { 1799, 13 }, + { 1786, 13 }, { 1773, 12 }, { 1761, 13 }, { 1748, 12 }, { 1736, 12 }, { 1724, 12 }, { 1712, 11 }, { 1701, 12 }, + { 1689, 11 }, { 1678, 11 }, { 1667, 11 }, { 1656, 11 }, { 1645, 11 }, { 1634, 11 }, { 1623, 10 }, { 1613, 10 }, + { 1603, 11 }, { 1592, 10 }, { 1582, 10 }, { 1572, 9 }, { 1563, 10 }, { 1553, 10 }, { 1543, 9 }, { 1534, 10 }, + { 1524, 9 }, { 1515, 9 }, { 1506, 9 }, { 1497, 9 }, { 1488, 9 }, { 1479, 8 }, { 1471, 9 }, { 1462, 9 }, + { 1453, 8 }, { 1445, 8 }, { 1437, 8 }, { 1429, 9 }, { 1420, 8 }, { 1412, 8 }, { 1404, 7 }, { 1397, 8 }, + { 1389, 8 }, { 1381, 7 }, { 1374, 8 }, { 1366, 7 }, { 1359, 8 }, { 1351, 7 }, { 1344, 7 }, { 1337, 7 }, + { 1330, 7 }, { 1323, 7 }, { 1316, 7 }, { 1309, 7 }, { 1302, 7 }, { 1295, 6 }, { 1289, 7 }, { 1282, 6 }, + { 1276, 7 }, { 1269, 6 }, { 1263, 7 }, { 1256, 6 }, { 1250, 6 }, { 1244, 6 }, { 1238, 6 }, { 1232, 7 }, + { 1225, 5 }, { 1220, 6 }, { 1214, 6 }, { 1208, 6 }, { 1202, 6 }, { 1196, 6 }, { 1190, 5 }, { 1185, 6 }, + { 1179, 5 }, { 1174, 6 }, { 1168, 5 }, { 1163, 6 }, { 1157, 5 }, { 1152, 5 }, { 1147, 5 }, { 1142, 6 }, + { 1136, 5 }, { 1131, 5 }, { 1126, 5 }, { 1121, 5 }, { 1116, 5 }, { 1111, 5 }, { 1106, 5 }, { 1101, 5 }, + { 1096, 4 }, { 1092, 5 }, { 1087, 5 }, { 1082, 4 }, { 1078, 5 }, { 1073, 5 }, { 1068, 4 }, { 1064, 5 }, + { 1059, 4 }, { 1055, 5 }, { 1050, 4 }, { 1046, 4 }, { 1042, 5 }, { 1037, 4 }, { 1033, 4 }, { 1029, 4 }, + { 1025, 5 }, { 1020, 4 }, { 1016, 4 }, { 1012, 4 }, { 1008, 4 }, { 1004, 4 }, { 1000, 4 }, { 996, 4 }, + { 992, 4 }, { 988, 4 }, { 984, 4 }, { 980, 3 }, { 977, 4 }, { 973, 4 }, { 969, 4 }, { 965, 4 }, }; #elif F_CPU == 20000000 - const uint16_t speed_lookuptable_fast[256][2] PROGMEM = { - {62500, 54055}, {8445, 3917}, {4528, 1434}, {3094, 745}, {2349, 456}, {1893, 307}, {1586, 222}, {1364, 167}, - {1197, 131}, {1066, 105}, {961, 86}, {875, 72}, {803, 61}, {742, 53}, {689, 45}, {644, 40}, - {604, 35}, {569, 32}, {537, 28}, {509, 25}, {484, 23}, {461, 21}, {440, 19}, {421, 17}, - {404, 16}, {388, 15}, {373, 14}, {359, 13}, {346, 12}, {334, 11}, {323, 10}, {313, 10}, - {303, 9}, {294, 9}, {285, 8}, {277, 7}, {270, 8}, {262, 7}, {255, 6}, {249, 6}, - {243, 6}, {237, 6}, {231, 5}, {226, 5}, {221, 5}, {216, 5}, {211, 4}, {207, 5}, - {202, 4}, {198, 4}, {194, 4}, {190, 3}, {187, 4}, {183, 3}, {180, 3}, {177, 4}, - {173, 3}, {170, 3}, {167, 2}, {165, 3}, {162, 3}, {159, 2}, {157, 3}, {154, 2}, - {152, 3}, {149, 2}, {147, 2}, {145, 2}, {143, 2}, {141, 2}, {139, 2}, {137, 2}, - {135, 2}, {133, 2}, {131, 2}, {129, 1}, {128, 2}, {126, 2}, {124, 1}, {123, 2}, - {121, 1}, {120, 2}, {118, 1}, {117, 1}, {116, 2}, {114, 1}, {113, 1}, {112, 2}, - {110, 1}, {109, 1}, {108, 1}, {107, 2}, {105, 1}, {104, 1}, {103, 1}, {102, 1}, - {101, 1}, {100, 1}, {99, 1}, {98, 1}, {97, 1}, {96, 1}, {95, 1}, {94, 1}, - {93, 1}, {92, 1}, {91, 0}, {91, 1}, {90, 1}, {89, 1}, {88, 1}, {87, 0}, - {87, 1}, {86, 1}, {85, 1}, {84, 0}, {84, 1}, {83, 1}, {82, 1}, {81, 0}, - {81, 1}, {80, 1}, {79, 0}, {79, 1}, {78, 0}, {78, 1}, {77, 1}, {76, 0}, - {76, 1}, {75, 0}, {75, 1}, {74, 1}, {73, 0}, {73, 1}, {72, 0}, {72, 1}, - {71, 0}, {71, 1}, {70, 0}, {70, 1}, {69, 0}, {69, 1}, {68, 0}, {68, 1}, - {67, 0}, {67, 1}, {66, 0}, {66, 1}, {65, 0}, {65, 0}, {65, 1}, {64, 0}, - {64, 1}, {63, 0}, {63, 1}, {62, 0}, {62, 0}, {62, 1}, {61, 0}, {61, 1}, - {60, 0}, {60, 0}, {60, 1}, {59, 0}, {59, 0}, {59, 1}, {58, 0}, {58, 0}, - {58, 1}, {57, 0}, {57, 0}, {57, 1}, {56, 0}, {56, 0}, {56, 1}, {55, 0}, - {55, 0}, {55, 1}, {54, 0}, {54, 0}, {54, 1}, {53, 0}, {53, 0}, {53, 0}, - {53, 1}, {52, 0}, {52, 0}, {52, 1}, {51, 0}, {51, 0}, {51, 0}, {51, 1}, - {50, 0}, {50, 0}, {50, 0}, {50, 1}, {49, 0}, {49, 0}, {49, 0}, {49, 1}, - {48, 0}, {48, 0}, {48, 0}, {48, 1}, {47, 0}, {47, 0}, {47, 0}, {47, 1}, - {46, 0}, {46, 0}, {46, 0}, {46, 0}, {46, 1}, {45, 0}, {45, 0}, {45, 0}, - {45, 1}, {44, 0}, {44, 0}, {44, 0}, {44, 0}, {44, 1}, {43, 0}, {43, 0}, - {43, 0}, {43, 0}, {43, 1}, {42, 0}, {42, 0}, {42, 0}, {42, 0}, {42, 0}, - {42, 1}, {41, 0}, {41, 0}, {41, 0}, {41, 0}, {41, 0}, {41, 1}, {40, 0}, - {40, 0}, {40, 0}, {40, 0}, {40, 1}, {39, 0}, {39, 0}, {39, 0}, {39, 0}, - {39, 0}, {39, 0}, {39, 1}, {38, 0}, {38, 0}, {38, 0}, {38, 0}, {38, 0}, + const struct { uint16_t base; uint8_t gain; } speed_lookuptable_fast[256] PROGMEM = { + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, // dummy first row + { 1221, 136 }, { 1085, 108 }, { 977, 89 }, { 888, 74 }, { 814, 63 }, { 751, 53 }, { 698, 47 }, { 651, 41 }, + { 610, 36 }, { 574, 31 }, { 543, 29 }, { 514, 26 }, { 488, 23 }, { 465, 21 }, { 444, 19 }, { 425, 18 }, + { 407, 16 }, { 391, 15 }, { 376, 14 }, { 362, 13 }, { 349, 12 }, { 337, 11 }, { 326, 11 }, { 315, 10 }, + { 305, 9 }, { 296, 9 }, { 287, 8 }, { 279, 8 }, { 271, 7 }, { 264, 7 }, { 257, 7 }, { 250, 6 }, + { 244, 6 }, { 238, 5 }, { 233, 6 }, { 227, 5 }, { 222, 5 }, { 217, 5 }, { 212, 4 }, { 208, 5 }, + { 203, 4 }, { 199, 4 }, { 195, 4 }, { 191, 3 }, { 188, 4 }, { 184, 3 }, { 181, 3 }, { 178, 4 }, + { 174, 3 }, { 171, 3 }, { 168, 2 }, { 166, 3 }, { 163, 3 }, { 160, 2 }, { 158, 3 }, { 155, 2 }, + { 153, 3 }, { 150, 2 }, { 148, 2 }, { 146, 2 }, { 144, 2 }, { 142, 2 }, { 140, 2 }, { 138, 2 }, + { 136, 2 }, { 134, 2 }, { 132, 2 }, { 130, 2 }, { 128, 1 }, { 127, 2 }, { 125, 1 }, { 124, 2 }, + { 122, 1 }, { 121, 2 }, { 119, 1 }, { 118, 2 }, { 116, 1 }, { 115, 1 }, { 114, 2 }, { 112, 1 }, + { 111, 1 }, { 110, 1 }, { 109, 2 }, { 107, 1 }, { 106, 1 }, { 105, 1 }, { 104, 1 }, { 103, 1 }, + { 102, 1 }, { 101, 1 }, { 100, 1 }, { 99, 1 }, { 98, 1 }, { 97, 1 }, { 96, 1 }, { 95, 1 }, + { 94, 1 }, { 93, 1 }, { 92, 1 }, { 91, 1 }, { 90, 0 }, { 90, 1 }, { 89, 1 }, { 88, 1 }, + { 87, 1 }, { 86, 0 }, { 86, 1 }, { 85, 1 }, { 84, 1 }, { 83, 0 }, { 83, 1 }, { 82, 1 }, + { 81, 0 }, { 81, 1 }, { 80, 1 }, { 79, 0 }, { 79, 1 }, { 78, 0 }, { 78, 1 }, { 77, 1 }, + { 76, 0 }, { 76, 1 }, { 75, 0 }, { 75, 1 }, { 74, 1 }, { 73, 0 }, { 73, 1 }, { 72, 0 }, + { 72, 1 }, { 71, 0 }, { 71, 1 }, { 70, 0 }, { 70, 1 }, { 69, 0 }, { 69, 1 }, { 68, 0 }, + { 68, 1 }, { 67, 0 }, { 67, 1 }, { 66, 0 }, { 66, 0 }, { 66, 1 }, { 65, 0 }, { 65, 1 }, + { 64, 0 }, { 64, 1 }, { 63, 0 }, { 63, 0 }, { 63, 1 }, { 62, 0 }, { 62, 1 }, { 61, 0 }, + { 61, 0 }, { 61, 1 }, { 60, 0 }, { 60, 0 }, { 60, 1 }, { 59, 0 }, { 59, 1 }, { 58, 0 }, + { 58, 0 }, { 58, 1 }, { 57, 0 }, { 57, 0 }, { 57, 1 }, { 56, 0 }, { 56, 0 }, { 56, 1 }, + { 55, 0 }, { 55, 0 }, { 55, 0 }, { 55, 1 }, { 54, 0 }, { 54, 0 }, { 54, 1 }, { 53, 0 }, + { 53, 0 }, { 53, 0 }, { 53, 1 }, { 52, 0 }, { 52, 0 }, { 52, 1 }, { 51, 0 }, { 51, 0 }, + { 51, 0 }, { 51, 1 }, { 50, 0 }, { 50, 0 }, { 50, 0 }, { 50, 1 }, { 49, 0 }, { 49, 0 }, + { 49, 0 }, { 49, 1 }, { 48, 0 }, { 48, 0 }, { 48, 0 }, { 48, 1 }, { 47, 0 }, { 47, 0 }, + { 47, 0 }, { 47, 0 }, { 47, 1 }, { 46, 0 }, { 46, 0 }, { 46, 0 }, { 46, 1 }, { 45, 0 }, + { 45, 0 }, { 45, 0 }, { 45, 0 }, { 45, 1 }, { 44, 0 }, { 44, 0 }, { 44, 0 }, { 44, 0 }, + { 44, 1 }, { 43, 0 }, { 43, 0 }, { 43, 0 }, { 43, 0 }, { 43, 1 }, { 42, 0 }, { 42, 0 }, + { 42, 0 }, { 42, 0 }, { 42, 0 }, { 42, 1 }, { 41, 0 }, { 41, 0 }, { 41, 0 }, { 41, 0 }, + { 41, 0 }, { 41, 1 }, { 40, 0 }, { 40, 0 }, { 40, 0 }, { 40, 0 }, { 40, 0 }, { 40, 1 }, + { 39, 0 }, { 39, 0 }, { 39, 0 }, { 39, 0 }, { 39, 0 }, { 39, 1 }, { 38, 0 }, { 38, 0 }, }; const uint16_t speed_lookuptable_slow[256][2] PROGMEM = { - {62500, 10417}, {52083, 7441}, {44642, 5580}, {39062, 4340}, {34722, 3472}, {31250, 2841}, {28409, 2368}, {26041, 2003}, - {24038, 1717}, {22321, 1488}, {20833, 1302}, {19531, 1149}, {18382, 1021}, {17361, 914}, {16447, 822}, {15625, 745}, - {14880, 676}, {14204, 618}, {13586, 566}, {13020, 520}, {12500, 481}, {12019, 445}, {11574, 414}, {11160, 385}, - {10775, 359}, {10416, 336}, {10080, 315}, {9765, 296}, {9469, 278}, {9191, 263}, {8928, 248}, {8680, 235}, - {8445, 222}, {8223, 211}, {8012, 200}, {7812, 191}, {7621, 181}, {7440, 173}, {7267, 165}, {7102, 158}, - {6944, 151}, {6793, 145}, {6648, 138}, {6510, 133}, {6377, 127}, {6250, 123}, {6127, 118}, {6009, 113}, - {5896, 109}, {5787, 106}, {5681, 101}, {5580, 98}, {5482, 95}, {5387, 91}, {5296, 88}, {5208, 86}, - {5122, 82}, {5040, 80}, {4960, 78}, {4882, 75}, {4807, 73}, {4734, 70}, {4664, 69}, {4595, 67}, - {4528, 64}, {4464, 63}, {4401, 61}, {4340, 60}, {4280, 58}, {4222, 56}, {4166, 55}, {4111, 53}, - {4058, 52}, {4006, 51}, {3955, 49}, {3906, 48}, {3858, 48}, {3810, 45}, {3765, 45}, {3720, 44}, - {3676, 43}, {3633, 42}, {3591, 40}, {3551, 40}, {3511, 39}, {3472, 38}, {3434, 38}, {3396, 36}, - {3360, 36}, {3324, 35}, {3289, 34}, {3255, 34}, {3221, 33}, {3188, 32}, {3156, 31}, {3125, 31}, - {3094, 31}, {3063, 30}, {3033, 29}, {3004, 28}, {2976, 28}, {2948, 28}, {2920, 27}, {2893, 27}, - {2866, 26}, {2840, 25}, {2815, 25}, {2790, 25}, {2765, 24}, {2741, 24}, {2717, 24}, {2693, 23}, - {2670, 22}, {2648, 22}, {2626, 22}, {2604, 22}, {2582, 21}, {2561, 21}, {2540, 20}, {2520, 20}, - {2500, 20}, {2480, 20}, {2460, 19}, {2441, 19}, {2422, 19}, {2403, 18}, {2385, 18}, {2367, 18}, - {2349, 17}, {2332, 18}, {2314, 17}, {2297, 16}, {2281, 17}, {2264, 16}, {2248, 16}, {2232, 16}, - {2216, 16}, {2200, 15}, {2185, 15}, {2170, 15}, {2155, 15}, {2140, 15}, {2125, 14}, {2111, 14}, - {2097, 14}, {2083, 14}, {2069, 14}, {2055, 13}, {2042, 13}, {2029, 13}, {2016, 13}, {2003, 13}, - {1990, 13}, {1977, 12}, {1965, 12}, {1953, 13}, {1940, 11}, {1929, 12}, {1917, 12}, {1905, 12}, - {1893, 11}, {1882, 11}, {1871, 11}, {1860, 11}, {1849, 11}, {1838, 11}, {1827, 11}, {1816, 10}, - {1806, 11}, {1795, 10}, {1785, 10}, {1775, 10}, {1765, 10}, {1755, 10}, {1745, 9}, {1736, 10}, - {1726, 9}, {1717, 10}, {1707, 9}, {1698, 9}, {1689, 9}, {1680, 9}, {1671, 9}, {1662, 9}, - {1653, 9}, {1644, 8}, {1636, 9}, {1627, 8}, {1619, 9}, {1610, 8}, {1602, 8}, {1594, 8}, - {1586, 8}, {1578, 8}, {1570, 8}, {1562, 8}, {1554, 7}, {1547, 8}, {1539, 8}, {1531, 7}, - {1524, 8}, {1516, 7}, {1509, 7}, {1502, 7}, {1495, 7}, {1488, 7}, {1481, 7}, {1474, 7}, - {1467, 7}, {1460, 7}, {1453, 7}, {1446, 6}, {1440, 7}, {1433, 7}, {1426, 6}, {1420, 6}, - {1414, 7}, {1407, 6}, {1401, 6}, {1395, 7}, {1388, 6}, {1382, 6}, {1376, 6}, {1370, 6}, - {1364, 6}, {1358, 6}, {1352, 6}, {1346, 5}, {1341, 6}, {1335, 6}, {1329, 5}, {1324, 6}, - {1318, 5}, {1313, 6}, {1307, 5}, {1302, 6}, {1296, 5}, {1291, 5}, {1286, 6}, {1280, 5}, - {1275, 5}, {1270, 5}, {1265, 5}, {1260, 5}, {1255, 5}, {1250, 5}, {1245, 5}, {1240, 5}, - {1235, 5}, {1230, 5}, {1225, 5}, {1220, 5}, {1215, 4}, {1211, 5}, {1206, 5}, {1201, 5}, + { 62500, 10417 }, { 52083, 7440 }, { 44643, 5580 }, { 39063, 4341 }, { 34722, 3472 }, { 31250, 2841 }, { 28409, 2367 }, { 26042, 2004 }, + { 24038, 1717 }, { 22321, 1488 }, { 20833, 1302 }, { 19531, 1149 }, { 18382, 1021 }, { 17361, 914 }, { 16447, 822 }, { 15625, 744 }, + { 14881, 676 }, { 14205, 618 }, { 13587, 566 }, { 13021, 521 }, { 12500, 481 }, { 12019, 445 }, { 11574, 413 }, { 11161, 385 }, + { 10776, 359 }, { 10417, 336 }, { 10081, 315 }, { 9766, 296 }, { 9470, 279 }, { 9191, 262 }, { 8929, 248 }, { 8681, 235 }, + { 8446, 222 }, { 8224, 211 }, { 8013, 200 }, { 7813, 191 }, { 7622, 182 }, { 7440, 173 }, { 7267, 165 }, { 7102, 158 }, + { 6944, 151 }, { 6793, 144 }, { 6649, 139 }, { 6510, 132 }, { 6378, 128 }, { 6250, 123 }, { 6127, 117 }, { 6010, 114 }, + { 5896, 109 }, { 5787, 105 }, { 5682, 102 }, { 5580, 98 }, { 5482, 94 }, { 5388, 91 }, { 5297, 89 }, { 5208, 85 }, + { 5123, 83 }, { 5040, 80 }, { 4960, 77 }, { 4883, 75 }, { 4808, 73 }, { 4735, 71 }, { 4664, 68 }, { 4596, 67 }, + { 4529, 65 }, { 4464, 63 }, { 4401, 61 }, { 4340, 59 }, { 4281, 58 }, { 4223, 56 }, { 4167, 55 }, { 4112, 54 }, + { 4058, 52 }, { 4006, 50 }, { 3956, 50 }, { 3906, 48 }, { 3858, 47 }, { 3811, 46 }, { 3765, 45 }, { 3720, 44 }, + { 3676, 42 }, { 3634, 42 }, { 3592, 41 }, { 3551, 40 }, { 3511, 39 }, { 3472, 38 }, { 3434, 37 }, { 3397, 37 }, + { 3360, 36 }, { 3324, 35 }, { 3289, 34 }, { 3255, 33 }, { 3222, 33 }, { 3189, 32 }, { 3157, 32 }, { 3125, 31 }, + { 3094, 30 }, { 3064, 30 }, { 3034, 29 }, { 3005, 29 }, { 2976, 28 }, { 2948, 27 }, { 2921, 27 }, { 2894, 27 }, + { 2867, 26 }, { 2841, 26 }, { 2815, 25 }, { 2790, 25 }, { 2765, 24 }, { 2741, 24 }, { 2717, 23 }, { 2694, 23 }, + { 2671, 23 }, { 2648, 22 }, { 2626, 22 }, { 2604, 21 }, { 2583, 22 }, { 2561, 20 }, { 2541, 21 }, { 2520, 20 }, + { 2500, 20 }, { 2480, 19 }, { 2461, 20 }, { 2441, 19 }, { 2422, 18 }, { 2404, 19 }, { 2385, 18 }, { 2367, 17 }, + { 2350, 18 }, { 2332, 17 }, { 2315, 17 }, { 2298, 17 }, { 2281, 17 }, { 2264, 16 }, { 2248, 16 }, { 2232, 16 }, + { 2216, 15 }, { 2201, 16 }, { 2185, 15 }, { 2170, 15 }, { 2155, 15 }, { 2140, 14 }, { 2126, 15 }, { 2111, 14 }, + { 2097, 14 }, { 2083, 13 }, { 2070, 14 }, { 2056, 14 }, { 2042, 13 }, { 2029, 13 }, { 2016, 13 }, { 2003, 13 }, + { 1990, 12 }, { 1978, 13 }, { 1965, 12 }, { 1953, 12 }, { 1941, 12 }, { 1929, 12 }, { 1917, 12 }, { 1905, 11 }, + { 1894, 11 }, { 1883, 12 }, { 1871, 11 }, { 1860, 11 }, { 1849, 11 }, { 1838, 11 }, { 1827, 10 }, { 1817, 11 }, + { 1806, 10 }, { 1796, 10 }, { 1786, 10 }, { 1776, 10 }, { 1766, 10 }, { 1756, 10 }, { 1746, 10 }, { 1736, 9 }, + { 1727, 10 }, { 1717, 9 }, { 1708, 10 }, { 1698, 9 }, { 1689, 9 }, { 1680, 9 }, { 1671, 9 }, { 1662, 9 }, + { 1653, 8 }, { 1645, 9 }, { 1636, 8 }, { 1628, 9 }, { 1619, 8 }, { 1611, 8 }, { 1603, 9 }, { 1594, 8 }, + { 1586, 8 }, { 1578, 8 }, { 1570, 7 }, { 1563, 8 }, { 1555, 8 }, { 1547, 8 }, { 1539, 7 }, { 1532, 8 }, + { 1524, 7 }, { 1517, 7 }, { 1510, 8 }, { 1502, 7 }, { 1495, 7 }, { 1488, 7 }, { 1481, 7 }, { 1474, 7 }, + { 1467, 7 }, { 1460, 7 }, { 1453, 6 }, { 1447, 7 }, { 1440, 7 }, { 1433, 6 }, { 1427, 7 }, { 1420, 6 }, + { 1414, 6 }, { 1408, 7 }, { 1401, 6 }, { 1395, 6 }, { 1389, 6 }, { 1383, 6 }, { 1377, 6 }, { 1371, 6 }, + { 1365, 6 }, { 1359, 6 }, { 1353, 6 }, { 1347, 6 }, { 1341, 6 }, { 1335, 5 }, { 1330, 6 }, { 1324, 5 }, + { 1319, 6 }, { 1313, 5 }, { 1308, 6 }, { 1302, 5 }, { 1297, 6 }, { 1291, 5 }, { 1286, 5 }, { 1281, 5 }, + { 1276, 6 }, { 1270, 5 }, { 1265, 5 }, { 1260, 5 }, { 1255, 5 }, { 1250, 5 }, { 1245, 5 }, { 1240, 5 }, + { 1235, 5 }, { 1230, 5 }, { 1225, 4 }, { 1221, 5 }, { 1216, 5 }, { 1211, 4 }, { 1207, 5 }, { 1202, 5 }, }; #endif diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 48ce020d3d..ce99d87f09 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -46,7 +46,7 @@ enum StealthIndex : uint8_t { // AI = Axis Enum Index // SWHW = SW/SH UART selection #if ENABLED(TMC_USE_SW_SPI) - #define __TMC_SPI_DEFINE(IC, ST, L, AI) TMCMarlin stepper##ST(ST##_CS_PIN, float(ST##_RSENSE), TMC_SW_MOSI, TMC_SW_MISO, TMC_SW_SCK, ST##_CHAIN_POS) + #define __TMC_SPI_DEFINE(IC, ST, L, AI) TMCMarlin stepper##ST(ST##_CS_PIN, float(ST##_RSENSE), TMC_SPI_MOSI, TMC_SPI_MISO, TMC_SPI_SCK, ST##_CHAIN_POS) #else #define __TMC_SPI_DEFINE(IC, ST, L, AI) TMCMarlin stepper##ST(ST##_CS_PIN, float(ST##_RSENSE), ST##_CHAIN_POS) #endif @@ -227,7 +227,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -262,7 +262,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -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() { @@ -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; @@ -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 } @@ -684,7 +684,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -726,7 +726,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -766,7 +766,7 @@ enum StealthIndex : uint8_t { st.sdoff(0); st.rms_current(mA); st.microsteps(microsteps); - TERN_(SQUARE_WAVE_STEPPING, st.dedge(true)); + TERN_(EDGE_STEPPING, st.dedge(true)); st.intpol(interpolate); st.diss2g(true); // Disable short to ground protection. Too many false readings? TERN_(TMC_DEBUG, st.rdsel(0b01)); @@ -784,7 +784,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -819,7 +819,7 @@ enum StealthIndex : uint8_t { chopconf.intpol = interpolate; chopconf.hend = chop_init.hend + 3; chopconf.hstrt = chop_init.hstrt - 1; - TERN_(SQUARE_WAVE_STEPPING, chopconf.dedge = true); + TERN_(EDGE_STEPPING, chopconf.dedge = true); st.CHOPCONF(chopconf.sr); st.rms_current(mA, hold_multiplier); @@ -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)); @@ -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/stepper/trinamic.h b/Marlin/src/module/stepper/trinamic.h index 95bab7652c..a9832945a5 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) @@ -115,8 +115,6 @@ void restore_trinamic_drivers(); void reset_trinamic_drivers(); -#define AXIS_HAS_SQUARE_WAVE(A) (AXIS_IS_TMC(A) && ENABLED(SQUARE_WAVE_STEPPING)) - // X Stepper #if AXIS_IS_TMC(X) extern TMC_CLASS(X, X) stepperX; @@ -126,7 +124,7 @@ void reset_trinamic_drivers(); #define X_ENABLE_WRITE(STATE) stepperX.toff((STATE)==X_ENABLE_ON ? chopper_timing_X.toff : 0) #define X_ENABLE_READ() stepperX.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(X) + #if AXIS_HAS_DEDGE(X) #define X_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(X_STEP_PIN); }while(0) #endif #endif @@ -140,7 +138,7 @@ void reset_trinamic_drivers(); #define Y_ENABLE_WRITE(STATE) stepperY.toff((STATE)==Y_ENABLE_ON ? chopper_timing_Y.toff : 0) #define Y_ENABLE_READ() stepperY.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Y) + #if AXIS_HAS_DEDGE(Y) #define Y_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Y_STEP_PIN); }while(0) #endif #endif @@ -154,7 +152,7 @@ void reset_trinamic_drivers(); #define Z_ENABLE_WRITE(STATE) stepperZ.toff((STATE)==Z_ENABLE_ON ? chopper_timing_Z.toff : 0) #define Z_ENABLE_READ() stepperZ.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Z) + #if AXIS_HAS_DEDGE(Z) #define Z_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Z_STEP_PIN); }while(0) #endif #endif @@ -171,7 +169,7 @@ void reset_trinamic_drivers(); #define X2_ENABLE_WRITE(STATE) stepperX2.toff((STATE)==X_ENABLE_ON ? chopper_timing_X2.toff : 0) #define X2_ENABLE_READ() stepperX2.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(X2) + #if AXIS_HAS_DEDGE(X2) #define X2_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(X2_STEP_PIN); }while(0) #endif #endif @@ -188,7 +186,7 @@ void reset_trinamic_drivers(); #define Y2_ENABLE_WRITE(STATE) stepperY2.toff((STATE)==Y_ENABLE_ON ? chopper_timing_Y2.toff : 0) #define Y2_ENABLE_READ() stepperY2.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Y2) + #if AXIS_HAS_DEDGE(Y2) #define Y2_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Y2_STEP_PIN); }while(0) #endif #endif @@ -205,7 +203,7 @@ void reset_trinamic_drivers(); #define Z2_ENABLE_WRITE(STATE) stepperZ2.toff((STATE)==Z_ENABLE_ON ? chopper_timing_Z2.toff : 0) #define Z2_ENABLE_READ() stepperZ2.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Z2) + #if AXIS_HAS_DEDGE(Z2) #define Z2_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Z2_STEP_PIN); }while(0) #endif #endif @@ -222,7 +220,7 @@ void reset_trinamic_drivers(); #define Z3_ENABLE_WRITE(STATE) stepperZ3.toff((STATE)==Z_ENABLE_ON ? chopper_timing_Z3.toff : 0) #define Z3_ENABLE_READ() stepperZ3.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Z3) + #if AXIS_HAS_DEDGE(Z3) #define Z3_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Z3_STEP_PIN); }while(0) #endif #endif @@ -239,7 +237,7 @@ void reset_trinamic_drivers(); #define Z4_ENABLE_WRITE(STATE) stepperZ4.toff((STATE)==Z_ENABLE_ON ? chopper_timing_Z4.toff : 0) #define Z4_ENABLE_READ() stepperZ4.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(Z4) + #if AXIS_HAS_DEDGE(Z4) #define Z4_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(Z4_STEP_PIN); }while(0) #endif #endif @@ -253,7 +251,7 @@ void reset_trinamic_drivers(); #define I_ENABLE_WRITE(STATE) stepperI.toff((STATE)==I_ENABLE_ON ? chopper_timing.toff : 0) #define I_ENABLE_READ() stepperI.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(I) + #if AXIS_HAS_DEDGE(I) #define I_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(I_STEP_PIN); }while(0) #endif #endif @@ -267,7 +265,7 @@ void reset_trinamic_drivers(); #define J_ENABLE_WRITE(STATE) stepperJ.toff((STATE)==J_ENABLE_ON ? chopper_timing.toff : 0) #define J_ENABLE_READ() stepperJ.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(J) + #if AXIS_HAS_DEDGE(J) #define J_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(J_STEP_PIN); }while(0) #endif #endif @@ -281,7 +279,7 @@ void reset_trinamic_drivers(); #define K_ENABLE_WRITE(STATE) stepperK.toff((STATE)==K_ENABLE_ON ? chopper_timing.toff : 0) #define K_ENABLE_READ() stepperK.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(K) + #if AXIS_HAS_DEDGE(K) #define K_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(K_STEP_PIN); }while(0) #endif #endif @@ -295,8 +293,8 @@ void reset_trinamic_drivers(); #define U_ENABLE_WRITE(STATE) stepperU.toff((STATE)==U_ENABLE_ON ? chopper_timing_U.toff : 0) #define U_ENABLE_READ() stepperU.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(U) - #define U_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(U_STEP_PIN); }while(0) + #if AXIS_HAS_DEDGE(U) + #define U_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(U_STEP_PIN); }while(0) #endif #endif @@ -309,8 +307,8 @@ void reset_trinamic_drivers(); #define V_ENABLE_WRITE(STATE) stepperV.toff((STATE)==V_ENABLE_ON ? chopper_timing_V.toff : 0) #define V_ENABLE_READ() stepperV.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(V) - #define V_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(V_STEP_PIN); }while(0) + #if AXIS_HAS_DEDGE(V) + #define V_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(V_STEP_PIN); }while(0) #endif #endif @@ -323,8 +321,8 @@ void reset_trinamic_drivers(); #define W_ENABLE_WRITE(STATE) stepperW.toff((STATE)==W_ENABLE_ON ? chopper_timing_W.toff : 0) #define W_ENABLE_READ() stepperW.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(W) - #define W_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(W_STEP_PIN); }while(0) + #if AXIS_HAS_DEDGE(W) + #define W_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(W_STEP_PIN); }while(0) #endif #endif @@ -340,7 +338,7 @@ void reset_trinamic_drivers(); #define E0_ENABLE_WRITE(STATE) stepperE0.toff((STATE)==E_ENABLE_ON ? chopper_timing_E0.toff : 0) #define E0_ENABLE_READ() stepperE0.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E0) + #if AXIS_HAS_DEDGE(E0) #define E0_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E0_STEP_PIN); }while(0) #endif #endif @@ -357,7 +355,7 @@ void reset_trinamic_drivers(); #define E1_ENABLE_WRITE(STATE) stepperE1.toff((STATE)==E_ENABLE_ON ? chopper_timing_E1.toff : 0) #define E1_ENABLE_READ() stepperE1.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E1) + #if AXIS_HAS_DEDGE(E1) #define E1_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E1_STEP_PIN); }while(0) #endif #endif @@ -374,7 +372,7 @@ void reset_trinamic_drivers(); #define E2_ENABLE_WRITE(STATE) stepperE2.toff((STATE)==E_ENABLE_ON ? chopper_timing_E2.toff : 0) #define E2_ENABLE_READ() stepperE2.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E2) + #if AXIS_HAS_DEDGE(E2) #define E2_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E2_STEP_PIN); }while(0) #endif #endif @@ -391,7 +389,7 @@ void reset_trinamic_drivers(); #define E3_ENABLE_WRITE(STATE) stepperE3.toff((STATE)==E_ENABLE_ON ? chopper_timing_E3.toff : 0) #define E3_ENABLE_READ() stepperE3.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E3) + #if AXIS_HAS_DEDGE(E3) #define E3_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E3_STEP_PIN); }while(0) #endif #endif @@ -408,7 +406,7 @@ void reset_trinamic_drivers(); #define E4_ENABLE_WRITE(STATE) stepperE4.toff((STATE)==E_ENABLE_ON ? chopper_timing_E4.toff : 0) #define E4_ENABLE_READ() stepperE4.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E4) + #if AXIS_HAS_DEDGE(E4) #define E4_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E4_STEP_PIN); }while(0) #endif #endif @@ -425,7 +423,7 @@ void reset_trinamic_drivers(); #define E5_ENABLE_WRITE(STATE) stepperE5.toff((STATE)==E_ENABLE_ON ? chopper_timing_E5.toff : 0) #define E5_ENABLE_READ() stepperE5.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E5) + #if AXIS_HAS_DEDGE(E5) #define E5_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E5_STEP_PIN); }while(0) #endif #endif @@ -442,7 +440,7 @@ void reset_trinamic_drivers(); #define E6_ENABLE_WRITE(STATE) stepperE6.toff((STATE)==E_ENABLE_ON ? chopper_timing_E6.toff : 0) #define E6_ENABLE_READ() stepperE6.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E6) + #if AXIS_HAS_DEDGE(E6) #define E6_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E6_STEP_PIN); }while(0) #endif #endif @@ -459,7 +457,7 @@ void reset_trinamic_drivers(); #define E7_ENABLE_WRITE(STATE) stepperE7.toff((STATE)==E_ENABLE_ON ? chopper_timing_E7.toff : 0) #define E7_ENABLE_READ() stepperE7.isEnabled() #endif - #if AXIS_HAS_SQUARE_WAVE(E7) + #if AXIS_HAS_DEDGE(E7) #define E7_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(E7_STEP_PIN); }while(0) #endif #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 4b0ee355d4..1f9928f88e 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,14 +156,10 @@ #include "probe.h" #endif -#if EITHER(MPCTEMP, PID_EXTRUSION_SCALING) +#if ANY(MPCTEMP, PID_EXTRUSION_SCALING) #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 @@ -317,15 +313,63 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #if HAS_HOTEND hotend_info_t Temperature::temp_hotend[HOTENDS]; - #define _HMT(N) HEATER_##N##_MAXTEMP, - const celsius_t Temperature::hotend_maxtemp[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP, HEATER_5_MAXTEMP, HEATER_6_MAXTEMP, HEATER_7_MAXTEMP); -#endif + constexpr celsius_t Temperature::hotend_maxtemp[HOTENDS]; + + #if ENABLED(MPCTEMP) + bool MPC::e_paused; // = false + int32_t MPC::e_position; // = 0 + #endif + + // Sanity-check max readable temperatures + #define CHECK_MAXTEMP_(N,M,S) static_assert( \ + S >= 998 || M <= _MAX(TT_NAME(S)[0].celsius, TT_NAME(S)[COUNT(TT_NAME(S)) - 1].celsius) - HOTEND_OVERSHOOT, \ + "HEATER_" STRINGIFY(N) "_MAXTEMP (" STRINGIFY(M) ") is too high for thermistor_" STRINGIFY(S) ".h with HOTEND_OVERSHOOT=" STRINGIFY(HOTEND_OVERSHOOT) "."); + #define CHECK_MAXTEMP(N) TERN(TEMP_SENSOR_##N##_IS_THERMISTOR, CHECK_MAXTEMP_, CODE_0)(N, HEATER_##N##_MAXTEMP, TEMP_SENSOR_##N) + REPEAT(HOTENDS, CHECK_MAXTEMP) + + #if HAS_PREHEAT + #define CHECK_PREHEAT__(N,P,T,M) static_assert(T <= M - HOTEND_OVERSHOOT, "PREHEAT_" STRINGIFY(P) "_TEMP_HOTEND (" STRINGIFY(T) ") must be less than HEATER_" STRINGIFY(N) "_MAXTEMP (" STRINGIFY(M) ") - " STRINGIFY(HOTEND_OVERSHOOT) "."); + #define CHECK_PREHEAT_(N,P) CHECK_PREHEAT__(N, P, PREHEAT_##P##_TEMP_HOTEND, HEATER_##N##_MAXTEMP) + #define CHECK_PREHEAT(P) REPEAT2(HOTENDS, CHECK_PREHEAT_, P) + #if PREHEAT_COUNT >= 1 + CHECK_PREHEAT(1) + #endif + #if PREHEAT_COUNT >= 2 + CHECK_PREHEAT(2) + #endif + #if PREHEAT_COUNT >= 3 + CHECK_PREHEAT(3) + #endif + #if PREHEAT_COUNT >= 4 + CHECK_PREHEAT(4) + #endif + #if PREHEAT_COUNT >= 5 + CHECK_PREHEAT(5) + #endif + #if PREHEAT_COUNT >= 6 + CHECK_PREHEAT(6) + #endif + #if PREHEAT_COUNT >= 7 + CHECK_PREHEAT(7) + #endif + #if PREHEAT_COUNT >= 8 + CHECK_PREHEAT(8) + #endif + #if PREHEAT_COUNT >= 9 + CHECK_PREHEAT(9) + #endif + #if PREHEAT_COUNT >= 10 + CHECK_PREHEAT(10) + #endif + #endif // HAS_PREHEAT + +#endif // HAS_HOTEND #if HAS_TEMP_REDUNDANT 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 @@ -337,7 +381,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 @@ -391,7 +435,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 @@ -419,8 +463,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, speed); + } #endif TERN_(REPORT_FAN_CHANGE, report_fan_speed(fan)); @@ -437,7 +485,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) { @@ -465,19 +513,27 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); // Init min and max temp with extreme values to prevent false errors during startup raw_adc_t Temperature::mintemp_raw_BED = TEMP_SENSOR_BED_RAW_LO_TEMP, Temperature::maxtemp_raw_BED = TEMP_SENSOR_BED_RAW_HI_TEMP; - TERN_(WATCH_BED, bed_watch_t Temperature::watch_bed); // = { 0 } - IF_DISABLED(PIDTEMPBED, millis_t Temperature::next_bed_check_ms); + #if WATCH_BED + bed_watch_t Temperature::watch_bed; // = { 0 } + #endif + #if DISABLED(PIDTEMPBED) + millis_t Temperature::next_bed_check_ms; + #endif #endif #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; - TERN_(WATCH_CHAMBER, chamber_watch_t Temperature::watch_chamber{0}); - IF_DISABLED(PIDTEMPCHAMBER, millis_t Temperature::next_chamber_check_ms); + #if WATCH_CHAMBER + chamber_watch_t Temperature::watch_chamber; // = { 0 } + #endif + #if DISABLED(PIDTEMPCHAMBER) + millis_t Temperature::next_chamber_check_ms; + #endif #endif #endif @@ -490,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 @@ -508,7 +564,12 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #endif #endif -#if BOTH(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 +#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 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; @@ -537,11 +598,6 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); volatile bool Temperature::raw_temps_ready = false; - -#if ENABLED(MPCTEMP) - int32_t Temperature::mpc_e_position; // = 0 -#endif - #define TEMPDIR(N) ((TEMP_SENSOR_##N##_RAW_LO_TEMP) < (TEMP_SENSOR_##N##_RAW_HI_TEMP) ? 1 : -1) #define TP_CMP(S,A,B) (TEMPDIR(S) < 0 ? ((A)<(B)) : ((A)>(B))) @@ -561,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; @@ -638,15 +694,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) @@ -663,19 +719,17 @@ 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); + 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; } - 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()); @@ -760,10 +814,9 @@ 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_(PROUI_PID_TUNE, dwinPidTuning(PID_TEMP_TOO_HIGH)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH))); break; } @@ -778,7 +831,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 @@ -786,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 @@ -799,25 +852,23 @@ 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_PID_TUNE, DWIN_PidTuning(PID_TUNING_TIMEOUT)); + TERN_(DWIN_CREALITY_LCD, dwinPopupTemperature(0)); + 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); + 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) + #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); @@ -855,7 +906,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_(PROUI_PID_TUNE, dwinPidTuning(AUTOTUNE_DONE)); goto EXIT_M303; } @@ -864,7 +915,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; @@ -873,7 +924,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_(PROUI_PID_TUNE, dwinPidTuning(AUTOTUNE_DONE)); EXIT_M303: TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); @@ -882,168 +933,179 @@ volatile bool Temperature::raw_temps_ready = false; #endif // HAS_PID_HEATING -#if ENABLED(MPCTEMP) +#if ENABLED(MPC_AUTOTUNE) - void Temperature::MPC_autotune() { - auto housekeeping = [] (millis_t &ms, celsius_float_t ¤t_temp, millis_t &next_report_ms) { - ms = millis(); + #if ANY(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) + #define SINGLEFAN 1 + #endif - if (updateTemperaturesIfReady()) { // temp sample ready - current_temp = degHotend(active_extruder); - TERN_(HAS_FAN_LOGIC, manage_extruder_fans(ms)); - } + #define DEBUG_MPC_AUTOTUNE 1 - if (ELAPSED(ms, next_report_ms)) { - next_report_ms += 1000UL; + millis_t Temperature::MPC_autotuner::curr_time_ms, Temperature::MPC_autotuner::next_report_ms; - print_heater_states(active_extruder); - SERIAL_EOL(); - } + celsius_float_t Temperature::MPC_autotuner::temp_samples[16]; + uint8_t Temperature::MPC_autotuner::sample_count; + uint16_t Temperature::MPC_autotuner::sample_distance; - hal.idletask(); - TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); + // Parameters from differential analysis + celsius_float_t Temperature::MPC_autotuner::temp_fastest; - if (!wait_for_heatup) { - SERIAL_ECHOPGM(STR_MPC_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_INTERRUPTED)); - return true; - } - - return false; - }; - - struct OnExit { - ~OnExit() { - wait_for_heatup = false; - - ui.reset_status(); - - temp_hotend[active_extruder].target = 0.0f; - temp_hotend[active_extruder].soft_pwm_amount = 0; - #if HAS_FAN - set_fan_speed(EITHER(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) ? 0 : active_extruder, 0); - planner.sync_fan_speeds(fan_speed); - #endif - - do_z_clearance(MPC_TUNING_END_Z); - - TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); - } - } on_exit; - - SERIAL_ECHOPGM(STR_MPC_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_START, active_extruder); - MPCHeaterInfo &hotend = temp_hotend[active_extruder]; - MPC_t &mpc = hotend.mpc; + #if HAS_FAN + float Temperature::MPC_autotuner::power_fan255; + #endif + Temperature::MPC_autotuner::MPC_autotuner(const uint8_t extruderIdx) : e(extruderIdx) { TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = false); + } - // Move to center of bed, just above bed height and cool with max fan - gcode.home_all_axes(true); - disable_all_heaters(); + Temperature::MPC_autotuner::~MPC_autotuner() { + wait_for_heatup = false; + + ui.reset_status(); + + temp_hotend[e].target = 0.0f; + temp_hotend[e].soft_pwm_amount = 0; #if HAS_FAN - zero_fan_speeds(); - set_fan_speed(EITHER(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) ? 0 : active_extruder, 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(active_extruder), - 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, current_temp, next_report_ms)) return; - if (ELAPSED(ms, next_test_ms)) { + for (;;) { // Can be interrupted with M108 + if (housekeeping() == CANCELLED) return CANCELLED; + + 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(EITHER(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) ? 0 : active_extruder, 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, 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; + + next_test_time_ms += test_interval_ms * sample_distance; + + } + else { + // Third regime (after 200deg) finished gathering data so finish + break; } - - if (current_temp >= 200.0f) break; - - next_test_ms += 1000UL * sample_distance; } } 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.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)); + // 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 @@ -1054,75 +1116,200 @@ volatile bool Temperature::raw_temps_ready = false; wait_for_heatup = true; for (;;) { // Can be interrupted with M108 - if (housekeeping(ms, current_temp, next_report_ms)) return; + if (housekeeping() == CANCELLED) return CANCELLED; - if (ELAPSED(ms, next_test_ms)) { - hotend.soft_pwm_amount = (int)get_pid_output_hotend(active_extruder) >> 1; + 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) { - set_fan_speed(EITHER(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) ? 0 : active_extruder, 255); + 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; + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(MPC_TEMP_ERROR)); + 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, dwinUpdate(), ui.update()); + + if (!wait_for_heatup) { + SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(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 + 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)); + + // Determine ambient temperature. + SERIAL_ECHOLNPGM(STR_MPC_COOLING_TO_AMBIENT); + #if ENABLED(DWIN_LCD_PROUI) + dwinMPCTuning(MPCTEMP_START); + LCD_ALERTMESSAGE(MSG_MPC_COOLING_TO_AMBIENT); + #else + LCD_MESSAGE(MSG_COOLING); + #endif + + if (tuner.measure_ambient_temp() != MPC_autotuner::MeasurementState::SUCCESS) return; + hotend.modeled_ambient_temp = tuner.get_ambient_temp(); #if HAS_FAN - const float power_fan255 = total_energy_fan255 * 1000 / test_duration, - ambient_xfer_coeff_fan255 = power_fan255 / (hotend.target - ambient_temp); + 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); + LCD_ALERTMESSAGE(MSG_MPC_HEATING_PAST_200); + + 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_ECHOLNPGM("block_responsiveness ", p_float_t(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 - // 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)); + 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_ECHOLNPGM("Refining estimates for:"); + SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); + SERIAL_ECHOLNPGM("block_responsiveness ", p_float_t(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_ECHOPGM(STR_MPC_AUTOTUNE); SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_FINISHED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_DONE)); - - #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); - SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); - SERIAL_ECHOLNPAIR_F("block_responsiveness ", block_responsiveness, 4); - #endif + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(AUTOTUNE_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 // MPCTEMP +#endif // MPC_AUTOTUNE int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { switch (heater_id) { @@ -1140,44 +1327,55 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { } } -#define _EFANOVERLAP(A,B) _FANOVERLAP(E##A,B) - #if HAS_AUTO_FAN + #define _EFANOVERLAP(I,N) ((I != N) && _FANOVERLAP(I,E##N)) + #if EXTRUDER_AUTO_FAN_SPEED != 255 - #define INIT_E_AUTO_FAN_PIN(P) do{ if (P == FAN1_PIN || P == FAN2_PIN) { SET_PWM(P); SET_FAST_PWM_FREQ(P); } else SET_OUTPUT(P); }while(0) + #define INIT_E_AUTO_FAN_PIN(P) do{ if (PWM_PIN(P)) { SET_PWM(P); SET_FAST_PWM_FREQ(P); } else SET_OUTPUT(P); }while(0) #else #define INIT_E_AUTO_FAN_PIN(P) SET_OUTPUT(P) #endif #if CHAMBER_AUTO_FAN_SPEED != 255 - #define INIT_CHAMBER_AUTO_FAN_PIN(P) do{ if (P == FAN1_PIN || P == FAN2_PIN) { SET_PWM(P); SET_FAST_PWM_FREQ(P); } else SET_OUTPUT(P); }while(0) + #define INIT_CHAMBER_AUTO_FAN_PIN(P) do{ if (PWM_PIN(P)) { SET_PWM(P); SET_FAST_PWM_FREQ(P); } else SET_OUTPUT(P); }while(0) #else #define INIT_CHAMBER_AUTO_FAN_PIN(P) SET_OUTPUT(P) #endif + #if COOLER_AUTO_FAN_SPEED != 255 + #define INIT_COOLER_AUTO_FAN_PIN(P) do{ if (PWM_PIN(P)) { SET_PWM(P); SET_FAST_PWM_FREQ(P); } else SET_OUTPUT(P); }while(0) + #else + #define INIT_COOLER_AUTO_FAN_PIN(P) SET_OUTPUT(P) + #endif #ifndef CHAMBER_FAN_INDEX #define CHAMBER_FAN_INDEX HOTENDS #endif void Temperature::update_autofans() { - #define _EFAN(B,A) _EFANOVERLAP(A,B) ? B : + #define _EFAN(I,N) _EFANOVERLAP(I,N) ? I : static const uint8_t fanBit[] PROGMEM = { 0 #if HAS_MULTI_HOTEND #define _NEXT_FAN(N) , REPEAT2(N,_EFAN,N) N RREPEAT_S(1, HOTENDS, _NEXT_FAN) #endif + #define _NFAN HOTENDS #if HAS_AUTO_CHAMBER_FAN - #define _CFAN(B) _FANOVERLAP(CHAMBER,B) ? B : - , REPEAT(HOTENDS,_CFAN) (HOTENDS) + #define _CHFAN(I) _FANOVERLAP(I,CHAMBER) ? I : + , (REPEAT(HOTENDS,_CHFAN) (_NFAN)) + #undef _NFAN + #define _NFAN INCREMENT(HOTENDS) + #endif + #if HAS_AUTO_COOLER_FAN + #define _COFAN(I) _FANOVERLAP(I,COOLER) ? I : + , (REPEAT(HOTENDS,_COFAN) (_NFAN)) #endif }; uint8_t fanState = 0; HOTEND_LOOP() { - if (temp_hotend[e].celsius >= EXTRUDER_AUTO_FAN_TEMPERATURE) { + if (temp_hotend[e].celsius >= EXTRUDER_AUTO_FAN_TEMPERATURE) SBI(fanState, pgm_read_byte(&fanBit[e])); - } } #if HAS_AUTO_CHAMBER_FAN @@ -1198,7 +1396,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); @@ -1208,48 +1406,35 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { chamberfan_speed = fan_on ? CHAMBER_AUTO_FAN_SPEED : 0; break; #endif + #if ENABLED(AUTO_POWER_COOLER_FAN) + case COOLER_FAN_INDEX: + coolerfan_speed = fan_on ? COOLER_AUTO_FAN_SPEED : 0; + 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 #endif - #define _AUTOFAN_CASE(N) case N: _UPDATE_AUTO_FAN(E##N, fan_on, _AUTOFAN_SPEED()); break + #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) { - #if HAS_AUTO_FAN_0 - _AUTOFAN_CASE(0); - #endif - #if HAS_AUTO_FAN_1 - _AUTOFAN_CASE(1); - #endif - #if HAS_AUTO_FAN_2 - _AUTOFAN_CASE(2); - #endif - #if HAS_AUTO_FAN_3 - _AUTOFAN_CASE(3); - #endif - #if HAS_AUTO_FAN_4 - _AUTOFAN_CASE(4); - #endif - #if HAS_AUTO_FAN_5 - _AUTOFAN_CASE(5); - #endif - #if HAS_AUTO_FAN_6 - _AUTOFAN_CASE(6); - #endif - #if HAS_AUTO_FAN_7 - _AUTOFAN_CASE(7); - #endif + 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 + #if HAS_AUTO_COOLER_FAN && !AUTO_COOLER_IS_E + case COOLER_FAN_INDEX: _UPDATE_AUTO_FAN(COOLER, fan_on, COOLER_AUTO_FAN_SPEED); break; + #endif } SBI(fanDone, realFan); } @@ -1282,13 +1467,15 @@ 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)) { SERIAL_ERROR_START(); - SERIAL_ECHOF(serial_msg); + SERIAL_ECHO(serial_msg); SERIAL_ECHOPGM(STR_STOPPED_HEATER); heater_id_t real_heater_id = heater_id; @@ -1304,13 +1491,17 @@ 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: - 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) @@ -1339,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) - DWIN_Popup_Temperature(1); + 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) - DWIN_Popup_Temperature(0); + 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 @@ -1393,7 +1584,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, @@ -1451,21 +1642,21 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { float ambient_xfer_coeff = mpc.ambient_xfer_coeff_fan0; #if ENABLED(MPC_INCLUDE_FAN) - const uint8_t fan_index = EITHER(MPC_FAN_0_ACTIVE_HOTEND, MPC_FAN_0_ALL_HOTENDS) ? 0 : ee; + const uint8_t fan_index = TERN(SINGLEFAN, 0, ee); const float fan_fraction = TERN_(MPC_FAN_0_ACTIVE_HOTEND, !this_hotend ? 0.0f : ) fan_speed[fan_index] * RECIPROCAL(255); ambient_xfer_coeff += fan_fraction * mpc.fan255_adjustment; #endif if (this_hotend) { const int32_t e_position = stepper.position(E_AXIS); - const float e_speed = (e_position - mpc_e_position) * planner.mm_per_step[E_AXIS] / MPC_dT; + const float e_speed = (e_position - MPC::e_position) * planner.mm_per_step[E_AXIS] / MPC_dT; - // The position can appear to make big jumps when, e.g. homing + // The position can appear to make big jumps when, e.g., homing if (fabs(e_speed) > planner.settings.max_feedrate_mm_s[E_AXIS]) - mpc_e_position = e_position; + MPC::e_position = e_position; else if (e_speed > 0.0f) { // Ignore retract/recover moves - ambient_xfer_coeff += e_speed * mpc.filament_heat_capacity_permm; - mpc_e_position = e_position; + if (!MPC::e_paused) ambient_xfer_coeff += e_speed * mpc.filament_heat_capacity_permm; + MPC::e_position = e_position; } } @@ -1550,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)); @@ -1560,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, DWIN_Popup_Temperature(0)); - _temp_error((heater_id_t)e, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); + _TEMP_ERROR(e, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, temp); } } #endif @@ -1584,22 +1780,28 @@ 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, DWIN_Popup_Temperature(0)); - _temp_error(H_BED, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); + _TEMP_ERROR(H_BED, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, deg); } } + } #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 @@ -1644,9 +1846,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; @@ -1674,24 +1876,30 @@ 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 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) { @@ -1720,21 +1928,21 @@ 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_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)) + if (flag_chamber_excess_heat && temp_chamber.is_above_target(LOW_EXCESS_HEAT_LIMIT)) flag_chamber_excess_heat = false; #endif } @@ -1766,9 +1974,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; @@ -1800,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 @@ -1877,7 +2089,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; @@ -1890,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!" @@ -1915,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 @@ -1952,8 +2179,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 @@ -2035,12 +2264,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") :) @@ -2055,9 +2284,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) { @@ -2316,6 +2544,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) { @@ -2378,6 +2620,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()); @@ -2414,19 +2657,19 @@ 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 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"); //*/ 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); @@ -2437,23 +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 BOTH(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 ALL(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_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 BOTH(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 ALL(HAS_COOLER, THERMAL_PROTECTION_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 BOTH(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 ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_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, temp_soc.celsius); #endif #undef TP_CMP @@ -2579,51 +2826,51 @@ void Temperature::init() { #if HAS_HEATER_0 #ifdef BOARD_OPENDRAIN_MOSFETS - OUT_WRITE_OD(HEATER_0_PIN, HEATER_0_INVERTING); + OUT_WRITE_OD(HEATER_0_PIN, ENABLED(HEATER_0_INVERTING)); #else - OUT_WRITE(HEATER_0_PIN, HEATER_0_INVERTING); + OUT_WRITE(HEATER_0_PIN, ENABLED(HEATER_0_INVERTING)); #endif #endif #if HAS_HEATER_1 - OUT_WRITE(HEATER_1_PIN, HEATER_1_INVERTING); + OUT_WRITE(HEATER_1_PIN, ENABLED(HEATER_1_INVERTING)); #endif #if HAS_HEATER_2 - OUT_WRITE(HEATER_2_PIN, HEATER_2_INVERTING); + OUT_WRITE(HEATER_2_PIN, ENABLED(HEATER_2_INVERTING)); #endif #if HAS_HEATER_3 - OUT_WRITE(HEATER_3_PIN, HEATER_3_INVERTING); + OUT_WRITE(HEATER_3_PIN, ENABLED(HEATER_3_INVERTING)); #endif #if HAS_HEATER_4 - OUT_WRITE(HEATER_4_PIN, HEATER_4_INVERTING); + OUT_WRITE(HEATER_4_PIN, ENABLED(HEATER_4_INVERTING)); #endif #if HAS_HEATER_5 - OUT_WRITE(HEATER_5_PIN, HEATER_5_INVERTING); + OUT_WRITE(HEATER_5_PIN, ENABLED(HEATER_5_INVERTING)); #endif #if HAS_HEATER_6 - OUT_WRITE(HEATER_6_PIN, HEATER_6_INVERTING); + OUT_WRITE(HEATER_6_PIN, ENABLED(HEATER_6_INVERTING)); #endif #if HAS_HEATER_7 - OUT_WRITE(HEATER_7_PIN, HEATER_7_INVERTING); + OUT_WRITE(HEATER_7_PIN, ENABLED(HEATER_7_INVERTING)); #endif #if HAS_HEATED_BED #ifdef BOARD_OPENDRAIN_MOSFETS - OUT_WRITE_OD(HEATER_BED_PIN, HEATER_BED_INVERTING); + OUT_WRITE_OD(HEATER_BED_PIN, ENABLED(HEATER_BED_INVERTING)); #else - OUT_WRITE(HEATER_BED_PIN, HEATER_BED_INVERTING); + OUT_WRITE(HEATER_BED_PIN, ENABLED(HEATER_BED_INVERTING)); #endif #endif #if HAS_HEATED_CHAMBER - OUT_WRITE(HEATER_CHAMBER_PIN, HEATER_CHAMBER_INVERTING); + OUT_WRITE(HEATER_CHAMBER_PIN, ENABLED(HEATER_CHAMBER_INVERTING)); #endif #if HAS_COOLER - OUT_WRITE(COOLER_PIN, COOLER_INVERTING); + OUT_WRITE(COOLER_PIN, ENABLED(COOLER_INVERTING)); #endif #if HAS_FAN0 - INIT_FAN_PIN(FAN_PIN); + INIT_FAN_PIN(FAN0_PIN); #endif #if HAS_FAN1 INIT_FAN_PIN(FAN1_PIN); @@ -2670,6 +2917,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)); @@ -2683,33 +2931,39 @@ void Temperature::init() { HAL_timer_start(MF_TIMER_TEMP, TEMP_TIMER_FREQUENCY); ENABLE_TEMPERATURE_INTERRUPT(); - #if HAS_AUTO_FAN_0 - INIT_E_AUTO_FAN_PIN(E0_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_1 && !_EFANOVERLAP(1,0) - INIT_E_AUTO_FAN_PIN(E1_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_2 && !(_EFANOVERLAP(2,0) || _EFANOVERLAP(2,1)) - INIT_E_AUTO_FAN_PIN(E2_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_3 && !(_EFANOVERLAP(3,0) || _EFANOVERLAP(3,1) || _EFANOVERLAP(3,2)) - INIT_E_AUTO_FAN_PIN(E3_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_4 && !(_EFANOVERLAP(4,0) || _EFANOVERLAP(4,1) || _EFANOVERLAP(4,2) || _EFANOVERLAP(4,3)) - INIT_E_AUTO_FAN_PIN(E4_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_5 && !(_EFANOVERLAP(5,0) || _EFANOVERLAP(5,1) || _EFANOVERLAP(5,2) || _EFANOVERLAP(5,3) || _EFANOVERLAP(5,4)) - INIT_E_AUTO_FAN_PIN(E5_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_6 && !(_EFANOVERLAP(6,0) || _EFANOVERLAP(6,1) || _EFANOVERLAP(6,2) || _EFANOVERLAP(6,3) || _EFANOVERLAP(6,4) || _EFANOVERLAP(6,5)) - INIT_E_AUTO_FAN_PIN(E6_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_FAN_7 && !(_EFANOVERLAP(7,0) || _EFANOVERLAP(7,1) || _EFANOVERLAP(7,2) || _EFANOVERLAP(7,3) || _EFANOVERLAP(7,4) || _EFANOVERLAP(7,5) || _EFANOVERLAP(7,6)) - INIT_E_AUTO_FAN_PIN(E7_AUTO_FAN_PIN); - #endif - #if HAS_AUTO_CHAMBER_FAN && !AUTO_CHAMBER_IS_E - INIT_CHAMBER_AUTO_FAN_PIN(CHAMBER_AUTO_FAN_PIN); - #endif + #if HAS_AUTO_FAN + #define _OREFAN(I,N) || _EFANOVERLAP(I,N) + #if HAS_AUTO_FAN_0 + INIT_E_AUTO_FAN_PIN(E0_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_1 && !_EFANOVERLAP(0,1) + INIT_E_AUTO_FAN_PIN(E1_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_2 && !(0 REPEAT2(2, _OREFAN, 2)) + INIT_E_AUTO_FAN_PIN(E2_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_3 && !(0 REPEAT2(3, _OREFAN, 3)) + INIT_E_AUTO_FAN_PIN(E3_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_4 && !(0 REPEAT2(4, _OREFAN, 4)) + INIT_E_AUTO_FAN_PIN(E4_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_5 && !(0 REPEAT2(5, _OREFAN, 5)) + INIT_E_AUTO_FAN_PIN(E5_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_6 && !(0 REPEAT2(6, _OREFAN, 6)) + INIT_E_AUTO_FAN_PIN(E6_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_FAN_7 && !(0 REPEAT2(7, _OREFAN, 7)) + INIT_E_AUTO_FAN_PIN(E7_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_CHAMBER_FAN && !AUTO_CHAMBER_IS_E + INIT_CHAMBER_AUTO_FAN_PIN(CHAMBER_AUTO_FAN_PIN); + #endif + #if HAS_AUTO_COOLER_FAN && !AUTO_COOLER_IS_E + INIT_COOLER_AUTO_FAN_PIN(COOLER_AUTO_FAN_PIN); + #endif + #endif // HAS_AUTO_FAN #if HAS_HOTEND #define _TEMP_MIN_E(NR) do{ \ @@ -2727,7 +2981,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) (!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); @@ -2795,11 +3049,15 @@ 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 ALL(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 @@ -2836,7 +3094,7 @@ void Temperature::init() { * * TODO: Embed the last 3 parameters during init, if not less optimal */ - void Temperature::tr_state_machine_t::run(const_celsius_float_t current, const_celsius_float_t target, const heater_id_t heater_id, const uint16_t period_seconds, const celsius_t hysteresis_degc) { + void Temperature::tr_state_machine_t::run(const_celsius_float_t current, const_celsius_float_t target, const heater_id_t heater_id, const uint16_t period_seconds, const celsius_float_t hysteresis_degc) { #if HEATER_IDLE_HANDLER // Convert the given heater_id_t to an idle array index @@ -2861,11 +3119,18 @@ void Temperature::init() { */ #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) + + #ifdef THERMAL_PROTECTION_VARIANCE_MONITOR_PERIOD + #define VARIANCE_WINDOW THERMAL_PROTECTION_VARIANCE_MONITOR_PERIOD + #else + #define VARIANCE_WINDOW period_seconds + #endif + if (state == TRMalfunction) { // temperature invariance may continue, regardless of heater state variance += ABS(current - last_temp); // no need for detection window now, a single change in variance is enough last_temp = current; if (!NEAR_ZERO(variance)) { - variance_timer = millis() + SEC_TO_MS(period_seconds); + variance_timer = millis() + SEC_TO_MS(VARIANCE_WINDOW); variance = 0.0; state = TRStable; // resume from where we detected the problem } @@ -2898,21 +3163,32 @@ void Temperature::init() { // While the temperature is stable watch for a bad temperature case TRStable: { + const celsius_float_t rdiff = running_temp - current; + #if ENABLED(ADAPTIVE_FAN_SLOWING) if (adaptive_fan_slowing && heater_id >= 0) { - const int fan_index = _MIN(heater_id, FAN_COUNT - 1); - if (fan_speed[fan_index] == 0 || current >= running_temp - (hysteresis_degc * 0.25f)) - fan_speed_scaler[fan_index] = 128; - else if (current >= running_temp - (hysteresis_degc * 0.3335f)) - fan_speed_scaler[fan_index] = 96; - else if (current >= running_temp - (hysteresis_degc * 0.5f)) - fan_speed_scaler[fan_index] = 64; - else if (current >= running_temp - (hysteresis_degc * 0.8f)) - fan_speed_scaler[fan_index] = 32; + const int_fast8_t fan_index = _MIN(heater_id, FAN_COUNT - 1); + uint8_t scale; + if (fan_speed[fan_index] == 0 || rdiff <= hysteresis_degc * 0.25f) + scale = 128; + else if (rdiff <= hysteresis_degc * 0.3335f) + scale = 96; + else if (rdiff <= hysteresis_degc * 0.5f) + scale = 64; + else if (rdiff <= hysteresis_degc * 0.8f) + scale = 32; else - fan_speed_scaler[fan_index] = 0; + scale = 0; + + if (TERN0(REPORT_ADAPTIVE_FAN_SLOWING, DEBUGGING(INFO))) { + const uint8_t fss7 = fan_speed_scaler[fan_index] & 0x80; + if (fss7 ^ (scale & 0x80)) + serial_ternary(F("Adaptive Fan Slowing "), fss7, nullptr, F("de"), F("activated.\n")); + } + + fan_speed_scaler[fan_index] = scale; } - #endif + #endif // ADAPTIVE_FAN_SLOWING const millis_t now = millis(); @@ -2926,13 +3202,13 @@ void Temperature::init() { state = TRMalfunction; break; } - variance_timer = now + SEC_TO_MS(period_seconds); + variance_timer = now + SEC_TO_MS(VARIANCE_WINDOW); variance = 0.0; last_temp = current; } #endif - if (current >= running_temp - hysteresis_degc) { + if (rdiff <= hysteresis_degc) { timer = now + SEC_TO_MS(period_seconds); break; } @@ -2942,13 +3218,13 @@ void Temperature::init() { } // fall through case TRRunaway: - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_Popup_Temperature(0)); - _temp_error(heater_id, FPSTR(str_t_thermal_runaway), GET_TEXT_F(MSG_THERMAL_RUNAWAY)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); + _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, DWIN_Popup_Temperature(0)); - _temp_error(heater_id, FPSTR(str_t_temp_malfunction), GET_TEXT_F(MSG_TEMP_MALFUNCTION)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); + _TEMP_ERROR(heater_id, FPSTR(str_t_temp_malfunction), MSG_TEMP_MALFUNCTION, current); #endif } } @@ -3034,7 +3310,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) @@ -3264,6 +3540,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()); @@ -3294,6 +3571,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()); @@ -3371,6 +3649,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 @@ -3397,7 +3679,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 @@ -3439,7 +3721,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{ \ @@ -3752,6 +4034,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; @@ -3872,10 +4159,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()); @@ -3891,8 +4174,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)" @@ -3901,6 +4186,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 @@ -3913,36 +4199,32 @@ 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; #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_CHAR(':'); - SERIAL_PRINT(c, SFP); - SERIAL_ECHOPGM(" /"); - SERIAL_PRINT(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 += ':'; 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 - 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); } @@ -3967,29 +4249,29 @@ 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 #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) @@ -4059,7 +4341,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 @@ -4076,11 +4358,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(); } @@ -4117,9 +4400,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; } } @@ -4136,8 +4419,8 @@ 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 - HMI_flag.heat_flag = 0; + #if ENABLED(DWIN_CREALITY_LCD) + hmiFlag.heat_flag = 0; duration_t elapsed = print_job_timer.duration(); // Print timer dwin_heat_time = elapsed.value; #else @@ -4196,7 +4479,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 @@ -4213,11 +4496,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(); } @@ -4252,9 +4536,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; } } @@ -4307,7 +4591,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); @@ -4345,9 +4629,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; } } @@ -4391,7 +4674,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 @@ -4408,11 +4691,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(); } @@ -4443,9 +4727,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; } } @@ -4507,11 +4791,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/module/temperature.h b/Marlin/src/module/temperature.h index afbf656a7a..d5a27a8671 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -41,24 +41,23 @@ #include "../feature/fancheck.h" #endif -#ifndef SOFT_PWM_SCALE - #define SOFT_PWM_SCALE 0 -#endif +//#define ERR_INCLUDE_TEMP #define HOTEND_INDEX TERN(HAS_MULTI_HOTEND, e, 0) #define E_NAME TERN_(HAS_MULTI_HOTEND, e) -// Element identifiers. Positive values are hotends. Negative values are other heaters or coolers. -typedef enum : int8_t { - H_REDUNDANT = HID_REDUNDANT, - H_COOLER = HID_COOLER, - H_PROBE = HID_PROBE, - H_BOARD = HID_BOARD, - 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; +#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 + +typedef int_fast8_t heater_id_t; /** * States for ADC reading in the ISR @@ -83,6 +82,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 @@ -150,7 +152,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 @@ -166,125 +168,125 @@ 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; + 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); } + 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_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_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; + 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; + } + + 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); + + temp_dState = current; + + return constrain(work_p + work_i + work_d + float(MIN_POW), 0, MAX_POW); } - 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; - } - - 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); - - temp_dState = current; - - return constrain(work_p + work_i + work_d + float(MIN_POW), 0, MAX_POW); - } }; -#endif +#endif // HAS_PID_HEATING #if ENABLED(PIDTEMP) /// @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; - LOOP_L_N(i, LPQ_ARR_SZ) 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; - - if (e_position > prev_e_pos) { - lpq[lpq_ptr] = e_position - prev_e_pos; - prev_e_pos = e_position; + 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); } - else - lpq[lpq_ptr] = 0; - - ++lpq_ptr; - - if (lpq_ptr >= LPQ_ARR_SZ || lpq_ptr >= lpq_len) + 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; + } - work_c = (lpq[lpq_ptr] * e_mm_per_step) * Kc; + 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; - 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; + + ++lpq_ptr; + + if (lpq_ptr >= LPQ_ARR_SZ || lpq_ptr >= lpq_len) + lpq_ptr = 0; + + work_c = (lpq[lpq_ptr] * e_mm_per_step) * Kc; + + return work_c; + } }; /// @brief Fan scaled PID, this class implements the get_fan_scale_output() method @@ -294,71 +296,71 @@ 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 - #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> @@ -377,7 +379,9 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; #elif ENABLED(MPCTEMP) - typedef struct { + typedef struct MPC { + static bool e_paused; // Pause E filament permm tracking + static int32_t e_position; // For E tracking float heater_power; // M306 P float block_heat_capacity; // M306 C float sensor_responsiveness; // M306 R @@ -396,22 +400,22 @@ 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 // 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 @@ -472,12 +476,15 @@ 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 typedef temp_info_t board_info_t; #endif +#if HAS_TEMP_SOC + typedef temp_info_t soc_info_t; +#endif // Heater watch handling template @@ -586,7 +593,7 @@ class Temperature { #if HAS_HOTEND static hotend_info_t temp_hotend[HOTENDS]; - static const celsius_t hotend_maxtemp[HOTENDS]; + static constexpr celsius_t hotend_maxtemp[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP, HEATER_5_MAXTEMP, HEATER_6_MAXTEMP, HEATER_7_MAXTEMP); static celsius_t hotend_max_target(const uint8_t e) { return hotend_maxtemp[e] - (HOTEND_OVERSHOOT); } #endif @@ -605,11 +612,14 @@ 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 - #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) @@ -624,11 +634,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 @@ -652,7 +662,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 @@ -716,42 +726,46 @@ class Temperature { static hotend_watch_t watch_hotend[HOTENDS]; #endif - #if ENABLED(MPCTEMP) - static int32_t mpc_e_position; - #endif - #if HAS_HOTEND static temp_range_t temp_range[HOTENDS]; #endif #if HAS_HEATED_BED - #if ENABLED(WATCH_BED) + #if WATCH_BED static bed_watch_t watch_bed; #endif - IF_DISABLED(PIDTEMPBED, static millis_t next_bed_check_ms); + #if DISABLED(PIDTEMPBED) + static millis_t next_bed_check_ms; + #endif static raw_adc_t mintemp_raw_BED, maxtemp_raw_BED; #endif #if HAS_HEATED_CHAMBER - #if ENABLED(WATCH_CHAMBER) + #if WATCH_CHAMBER static chamber_watch_t watch_chamber; #endif - TERN(PIDTEMPCHAMBER,,static millis_t next_chamber_check_ms); + #if DISABLED(PIDTEMPCHAMBER) + static millis_t next_chamber_check_ms; + #endif static raw_adc_t mintemp_raw_CHAMBER, maxtemp_raw_CHAMBER; #endif #if HAS_COOLER - #if ENABLED(WATCH_COOLER) + #if WATCH_COOLER static cooler_watch_t watch_cooler; #endif static millis_t next_cooler_check_ms, cooler_fan_flush_ms; static raw_adc_t mintemp_raw_COOLER, maxtemp_raw_COOLER; #endif - #if HAS_TEMP_BOARD && ENABLED(THERMAL_PROTECTION_BOARD) + #if ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) static raw_adc_t mintemp_raw_BOARD, maxtemp_raw_BOARD; #endif + #if ALL(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 @@ -844,6 +858,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 @@ -851,7 +868,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); @@ -859,7 +876,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 @@ -887,7 +904,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 @@ -1117,6 +1134,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(); } @@ -1192,11 +1217,68 @@ class Temperature { } #endif - #endif + #endif // HAS_PID_HEATING - #if ENABLED(MPCTEMP) - void MPC_autotune(); - #endif + #if ENABLED(MPC_AUTOTUNE) + + // 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); @@ -1280,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) @@ -1317,12 +1403,12 @@ class Temperature { typedef struct { millis_t timer = 0; TRState state = TRInactive; - float running_temp; + celsius_float_t running_temp; #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) millis_t variance_timer = 0; celsius_float_t last_temp = 0.0, variance = 0.0; #endif - void run(const_celsius_float_t current, const_celsius_float_t target, const heater_id_t heater_id, const uint16_t period_seconds, const celsius_t hysteresis_degc); + void run(const_celsius_float_t current, const_celsius_float_t target, const heater_id_t heater_id, const uint16_t period_seconds, const celsius_float_t hysteresis_degc); } tr_state_machine_t; static tr_state_machine_t tr_state_machine[NR_HEATER_RUNAWAY]; diff --git a/Marlin/src/module/thermistor/thermistor_1.h b/Marlin/src/module/thermistor/thermistor_1.h index 2ebf8da550..e581f1b5cd 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 0000000000..f0bc6f606e --- /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/thermistor_2000.h b/Marlin/src/module/thermistor/thermistor_2000.h index 3815a6f256..6393c980ea 100644 --- a/Marlin/src/module/thermistor/thermistor_2000.h +++ b/Marlin/src/module/thermistor/thermistor_2000.h @@ -23,12 +23,12 @@ // R25 = 100 KOhm, beta25 = 4550 K, 4.7 kOhm pull-up, TDK NTCG104LH104KT1 https://product.tdk.com/en/search/sensor/ntc/chip-ntc-thermistor/info?part_no=NTCG104LH104KT1 constexpr temp_entry_t temptable_2000[] PROGMEM = { -{ OV(313), 125 }, -{ OV(347), 120 }, -{ OV(383), 115 }, -{ OV(422), 110 }, -{ OV(463), 105 }, -{ OV(506), 100 }, +{ OV(313), 125 }, +{ OV(347), 120 }, +{ OV(383), 115 }, +{ OV(422), 110 }, +{ OV(463), 105 }, +{ OV(506), 100 }, { OV(549), 95 }, { OV(594), 90 }, { OV(638), 85 }, diff --git a/Marlin/src/module/thermistor/thermistor_666.h b/Marlin/src/module/thermistor/thermistor_666.h index bba3e606fc..14a03c23b5 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/module/thermistor/thermistors.h b/Marlin/src/module/thermistor/thermistors.h index c596d746f7..5d4a8a7c92 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 @@ -532,6 +535,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/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index 74e99ac093..4c286c81a0 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -24,12 +24,12 @@ #include "tool_change.h" -#include "probe.h" #include "motion.h" #include "planner.h" #include "temperature.h" #include "../MarlinCore.h" +#include "../gcode/gcode.h" //#define DEBUG_TOOL_CHANGE //#define DEBUG_TOOLCHANGE_FILAMENT_SWAP @@ -49,12 +49,6 @@ Flags toolchange_extruder_ready; #endif -#if EITHER(MAGNETIC_PARKING_EXTRUDER, TOOL_SENSOR) \ - || defined(EVENT_GCODE_TOOLCHANGE_T0) || defined(EVENT_GCODE_TOOLCHANGE_T1) || defined(EVENT_GCODE_AFTER_TOOLCHANGE) \ - || (ENABLED(PARKING_EXTRUDER) && PARKING_EXTRUDER_SOLENOIDS_DELAY > 0) - #include "../gcode/gcode.h" -#endif - #if ENABLED(TOOL_SENSOR) #include "../lcd/marlinui.h" #endif @@ -97,8 +91,11 @@ #include "../feature/pause.h" #endif +#if HAS_BED_PROBE + #include "probe.h" +#endif + #if ENABLED(TOOLCHANGE_FILAMENT_SWAP) - #include "../gcode/gcode.h" #if TOOLCHANGE_FS_WIPE_RETRACT <= 0 #undef TOOLCHANGE_FS_WIPE_RETRACT #define TOOLCHANGE_FS_WIPE_RETRACT 0 @@ -256,7 +253,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) { @@ -441,7 +438,6 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. } } - #endif // TOOL_SENSOR #if ENABLED(SWITCHING_TOOLHEAD) @@ -887,7 +883,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); @@ -964,13 +960,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) /** @@ -980,18 +975,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 + // 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"); @@ -1003,8 +999,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 @@ -1017,7 +1013,6 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. // Cool down with fan filament_swap_cooling(); - } /** @@ -1173,13 +1168,13 @@ 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 // Z raise before retraction - #if ENABLED(TOOLCHANGE_ZRAISE_BEFORE_RETRACT) && DISABLED(SWITCHING_NOZZLE) + #if ENABLED(TOOLCHANGE_ZRAISE_BEFORE_RETRACT) && !HAS_SWITCHING_NOZZLE if (can_move_away && TERN1(TOOLCHANGE_PARK, toolchange_settings.enable_park)) { // Do a small lift to avoid the workpiece in the move back (below) current_position.z += toolchange_settings.z_raise; @@ -1223,7 +1218,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { #endif #endif - #if DISABLED(TOOLCHANGE_ZRAISE_BEFORE_RETRACT) && DISABLED(SWITCHING_NOZZLE) + #if NONE(TOOLCHANGE_ZRAISE_BEFORE_RETRACT, HAS_SWITCHING_NOZZLE) if (can_move_away && TERN1(TOOLCHANGE_PARK, toolchange_settings.enable_park)) { // Do a small lift to avoid the workpiece in the move back (below) current_position.z += toolchange_settings.z_raise; @@ -1233,7 +1228,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { #endif // Toolchange park - #if ENABLED(TOOLCHANGE_PARK) && DISABLED(SWITCHING_NOZZLE) + #if ENABLED(TOOLCHANGE_PARK) && !HAS_SWITCHING_NOZZLE if (can_move_away && toolchange_settings.enable_park) { IF_DISABLED(TOOLCHANGE_PARK_Y_ONLY, current_position.x = toolchange_settings.change_point.x); IF_DISABLED(TOOLCHANGE_PARK_X_ONLY, current_position.y = toolchange_settings.change_point.y); @@ -1285,6 +1280,11 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { fast_line_to_current(Z_AXIS); } move_nozzle_servo(new_tool); + #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); + } #endif IF_DISABLED(DUAL_X_CARRIAGE, active_extruder = new_tool); // Set the new active extruder @@ -1311,7 +1311,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 @@ -1349,7 +1349,19 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { if (toolchange_settings.enable_park) do_blocking_move_to_xy_z(destination, destination.z, MMM_TO_MMS(TOOLCHANGE_PARK_XY_FEEDRATE)); #else do_blocking_move_to_xy(destination, planner.settings.max_feedrate_mm_s[X_AXIS]); - do_blocking_move_to_z(destination.z, planner.settings.max_feedrate_mm_s[Z_AXIS]); + + // If using MECHANICAL_SWITCHING extruder/nozzle, set HOTEND_OFFSET in Z axis after running EVENT_GCODE_TOOLCHANGE below. + #if NONE(MECHANICAL_SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_NOZZLE) + do_blocking_move_to_z(destination.z, planner.settings.max_feedrate_mm_s[Z_AXIS]); + SECONDARY_AXIS_CODE( + do_blocking_move_to_i(destination.i, planner.settings.max_feedrate_mm_s[I_AXIS]), + do_blocking_move_to_j(destination.j, planner.settings.max_feedrate_mm_s[J_AXIS]), + do_blocking_move_to_k(destination.k, planner.settings.max_feedrate_mm_s[K_AXIS]), + do_blocking_move_to_u(destination.u, planner.settings.max_feedrate_mm_s[U_AXIS]), + do_blocking_move_to_v(destination.v, planner.settings.max_feedrate_mm_s[V_AXIS]), + do_blocking_move_to_w(destination.w, planner.settings.max_feedrate_mm_s[W_AXIS]) + ); + #endif #endif #endif @@ -1371,7 +1383,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { TERN_(DUAL_X_CARRIAGE, idex_set_parked(false)); } - #if ENABLED(SWITCHING_NOZZLE) + #if HAS_SWITCHING_NOZZLE // Move back down. (Including when the new tool is higher.) if (!should_move) do_blocking_move_to_z(destination.z, planner.settings.max_feedrate_mm_s[Z_AXIS]); @@ -1401,14 +1413,73 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { TERN_(HAS_FANMUX, fanmux_switch(active_extruder)); if (ENABLED(EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN) || !no_move) { - #ifdef EVENT_GCODE_TOOLCHANGE_T0 - if (new_tool == 0) - gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T0)); + + #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_workspace_offset; + if (new_tool > 0) { + old_workspace_offset = workspace_offset; + const xyz_pos_t &he = hotend_offset[new_tool]; + 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 - #ifdef EVENT_GCODE_TOOLCHANGE_T1 - if (new_tool == 1) - gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T1)); + switch (new_tool) { + default: break; + #ifdef EVENT_GCODE_TOOLCHANGE_T0 + case 0: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T0)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T1 + case 1: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T1)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T2 + case 2: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T2)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T3 + case 3: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T3)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T4 + case 4: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T4)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T5 + case 5: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T5)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T6 + case 6: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T6)); break; + #endif + #ifdef EVENT_GCODE_TOOLCHANGE_T7 + case 7: gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T7)); break; + #endif + } + + #if ANY(TC_GCODE_USE_GLOBAL_X, TC_GCODE_USE_GLOBAL_Y, TC_GCODE_USE_GLOBAL_Z) + 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 + // so that nozzle does not lower below print surface if new hotend Z offset is higher than old hotend Z offset. + #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); + #else + constexpr xyz_pos_t diff{0}; + #endif + + if (!no_move) { + // Move to new hotend Z offset and reverse Z_RAISE + do_blocking_move_to_z( + _MIN( + _MAX((destination.z - diff.z) - toolchange_settings.z_raise, + _MAX(TERN(HAS_SOFTWARE_ENDSTOPS, soft_endstop.min.z, Z_MIN_POS), Z_MIN_POS) + ), + _MIN(TERN(HAS_SOFTWARE_ENDSTOPS, soft_endstop.max.z, Z_MAX_POS), Z_MAX_POS)), + planner.settings.max_feedrate_mm_s[Z_AXIS] + ); + } #endif #ifdef EVENT_GCODE_AFTER_TOOLCHANGE diff --git a/Marlin/src/module/tool_change.h b/Marlin/src/module/tool_change.h index ff456485e2..3cb8b4a637 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/min) + int16_t unretract_speed; // M217 U (mm/min) uint8_t fan_speed; // M217 F uint8_t fan_time; // M217 D #endif diff --git a/Marlin/src/pins/esp32/env_validate.h b/Marlin/src/pins/esp32/env_validate.h index ce14c33414..0bfd0ebd92 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 d12b5276b7..06e46e3c4c 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 @@ -90,7 +88,7 @@ // Heaters / Fans // #define HEATER_0_PIN 2 -#define FAN_PIN 0 +#define FAN0_PIN 0 #define HEATER_BED_PIN 15 // diff --git a/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h b/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h index 80923d972d..360501aa08 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 @@ -101,7 +103,7 @@ // General use mosfets, useful for things like pumps and solenoids // Shift register pins 128, 129, 130 and 131 are broken out and can be used -#define FAN_PIN 132 +#define FAN0_PIN 132 #define FAN1_PIN 134 #define FAN2_PIN 135 #define FAN3_PIN 136 diff --git a/Marlin/src/pins/esp32/pins_ESP32.h b/Marlin/src/pins/esp32/pins_ESP32.h index 266de7e9f6..1c01be8a88 100644 --- a/Marlin/src/pins/esp32/pins_ESP32.h +++ b/Marlin/src/pins/esp32/pins_ESP32.h @@ -79,7 +79,7 @@ // Heaters / Fans // #define HEATER_0_PIN 2 -#define FAN_PIN 13 +#define FAN0_PIN 13 #define HEATER_BED_PIN 4 // SPI diff --git a/Marlin/src/pins/esp32/pins_ESPA_common.h b/Marlin/src/pins/esp32/pins_ESPA_common.h index ca949cdf97..36068150f7 100644 --- a/Marlin/src/pins/esp32/pins_ESPA_common.h +++ b/Marlin/src/pins/esp32/pins_ESPA_common.h @@ -68,7 +68,7 @@ // Heaters / Fans // #define HEATER_0_PIN 2 -#define FAN_PIN 13 +#define FAN0_PIN 13 #define HEATER_BED_PIN 4 // diff --git a/Marlin/src/pins/esp32/pins_FYSETC_E4.h b/Marlin/src/pins/esp32/pins_FYSETC_E4.h index 7dc59979c8..4bcffb545e 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_GODI_CONTROLLER_V1_0.h b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h new file mode 100644 index 0000000000..6f8046988e --- /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 ANY(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/esp32/pins_MKS_TINYBEE.h b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h index 37ce4ee94e..2dea1edacc 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" @@ -104,7 +102,7 @@ // #define HEATER_0_PIN 145 #define HEATER_1_PIN 146 -#define FAN_PIN 147 +#define FAN0_PIN 147 #define FAN1_PIN 148 #define HEATER_BED_PIN 144 @@ -158,7 +156,7 @@ #if HAS_WIRED_LCD #define BEEPER_PIN EXP1_01_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP2_03_PIN @@ -179,7 +177,7 @@ #if SD_CONNECTION_IS(ONBOARD) #define FORCE_SOFT_SPI #endif - #if BOTH(MKS_MINI_12864_V3, SDSUPPORT) + #if ALL(MKS_MINI_12864_V3, HAS_MEDIA) #define PAUSE_LCD_FOR_BUSY_SD #endif #else diff --git a/Marlin/src/pins/esp32/pins_MRR_ESPA.h b/Marlin/src/pins/esp32/pins_MRR_ESPA.h index e9e3db5758..ba5f6cbe35 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_MRR_ESPE.h b/Marlin/src/pins/esp32/pins_MRR_ESPE.h index f372de9e01..d88a3ab359 100644 --- a/Marlin/src/pins/esp32/pins_MRR_ESPE.h +++ b/Marlin/src/pins/esp32/pins_MRR_ESPE.h @@ -102,7 +102,7 @@ // Heaters / Fans // #define HEATER_0_PIN 145 // 2 -#define FAN_PIN 146 // 15 +#define FAN0_PIN 146 // 15 #define HEATER_BED_PIN 144 // 4 #define CONTROLLER_FAN_PIN 147 @@ -126,7 +126,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 13 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 16 #if ENABLED(CR10_STOCKDISPLAY) diff --git a/Marlin/src/pins/esp32/pins_PANDA_M4.h b/Marlin/src/pins/esp32/pins_PANDA_M4.h index 5e2e72af05..c619be43a5 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 4750057897..f2a5f440f6 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/esp32/pins_PANDA_common.h b/Marlin/src/pins/esp32/pins_PANDA_common.h index afc9a78aec..b24babd96b 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 // @@ -74,7 +74,7 @@ // #define HEATER_0_PIN 108 #define HEATER_BED_PIN 109 -#define FAN_PIN 118 // FAN0 +#define FAN0_PIN 118 // FAN0 #define FAN1_PIN 119 // FAN1 #ifndef E0_AUTO_FAN_PIN @@ -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 @@ -123,6 +123,6 @@ #define BTN_EN2 EXP2_05_PIN #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #endif diff --git a/Marlin/src/pins/gd32f1/env_validate.h b/Marlin/src/pins/gd32f1/env_validate.h new file mode 100644 index 0000000000..f6882e70d6 --- /dev/null +++ b/Marlin/src/pins/gd32f1/env_validate.h @@ -0,0 +1,29 @@ +/** + * 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 . + * + */ +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H + +#if NOT_TARGET(__STM32F1__, STM32F1) + #error "Oops! Select an STM32F1 board in 'Tools > Board.'" +#endif + +#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 0000000000..e92c24b86c --- /dev/null +++ b/Marlin/src/pins/gd32f1/pins_SOVOL_V131.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 + +/** + * 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 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART + +// +// SD Card +// +#define ONBOARD_SPI_DEVICE 1 +#define ONBOARD_SD_CS_PIN PA4 // SDSS diff --git a/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h new file mode 100644 index 0000000000..abdd35f058 --- /dev/null +++ b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h @@ -0,0 +1,152 @@ +/** + * 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 "TRIGORILLA_V006" +#define DEFAULT_MACHINE_NAME "GD32F103" + +#define BOARD_NO_NATIVE_USB + +// Release PA13 from SWD for CASE_LIGHT_PIN +#define DISABLE_DEBUG +#define DISABLE_JTAG + +// +// EEPROM +// +#define FLASH_EEPROM_EMULATION +#define MARLIN_EEPROM_SIZE 0x1000 // 4KB + +// +// Limit Switches +// +#define X_MIN_PIN PA7 +#define X_MAX_PIN PC6 +#define Y_MIN_PIN PC5 +#define Y_MAX_PIN -1 +#define Z_MIN_PIN PB2 +#define Z_MAX_PIN -1 + +// +// Steppers +// +#define X_ENABLE_PIN PC3 +#define X_STEP_PIN PC2 +#define X_DIR_PIN PB9 + +#define Y_ENABLE_PIN PC13 +#define Y_STEP_PIN PB8 +#define Y_DIR_PIN PB7 + +#define Z_ENABLE_PIN PC14 +#define Z_STEP_PIN PB6 +#define Z_DIR_PIN PB5 + +#define E0_ENABLE_PIN PA15 +#define E0_STEP_PIN PB4 +#define E0_DIR_PIN PB3 + +#define E1_ENABLE_PIN PC15 +#define E1_STEP_PIN PC0 +#define E1_DIR_PIN PC1 + +// +// Temperature Sensors +// +#define TEMP_0_PIN PC4 // T0 +#define TEMP_1_PIN -1 // T1 PA6 used for power loss +#define TEMP_BED_PIN PB0 // TB + +// +// Heaters +// +#define HEATER_0_PIN PA1 // H0 +#define HEATER_1_PIN PA8 // H1 +#define HEATER_BED_PIN PA4 // HB + +// +// Fans +// +#define FAN0_PIN PA0 // FAN +#define FAN1_PIN PA14 // Connected to +24V +#define FAN2_PIN -1 // PB1, auto fan for E0 +#define CONTROLLER_FAN_PIN FAN1_PIN + +// +// Misc +// +#define BEEPER_PIN PB15 +#define LED_PIN -1 +#define POWER_LOSS_PIN PA6 +#define FIL_RUNOUT_PIN PA5 +#define CASE_LIGHT_PIN PA13 +#define POWER_MONITOR_VOLTAGE_PIN PA6 + +#define AUTO_LEVEL_TX_PIN PB13 +#define AUTO_LEVEL_RX_PIN PB12 + +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN AUTO_LEVEL_RX_PIN +#endif + +// +// SD Card +// +#define SD_DETECT_PIN PC7 + +#ifndef ONBOARD_SDIO + #define ONBOARD_SDIO +#endif +#if ENABLED(ONBOARD_SDIO) + // + // SPI + // + #define SPI_DEVICE -1 // Maple + #define SCK_PIN -1 + #define MISO_PIN -1 + #define MOSI_PIN -1 + #define SS_PIN -1 + + // + // SDIO + // + #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 + +#else + + #undef SDSS + #define SDSS PC11 // SDIO_D3_PIN + #define SS_PIN SDSS + #define SCK_PIN PC12 // SDIO_CK_PIN + #define MISO_PIN PC8 // SDIO_D0_PIN + #define MOSI_PIN PD2 // SDIO_CMD_PIN + #define SOFTWARE_SPI + +#endif diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index 3616b7a27c..272c7d2ed2 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) @@ -161,21 +161,21 @@ #define HEATER_0_PIN MOSFET_A_PIN #if FET_ORDER_EFB // Hotend, Fan, Bed - #define FAN_PIN MOSFET_B_PIN + #define FAN0_PIN MOSFET_B_PIN #define HEATER_BED_PIN MOSFET_C_PIN #elif FET_ORDER_EEF // Hotend, Hotend, Fan #define HEATER_1_PIN MOSFET_B_PIN - #define FAN_PIN MOSFET_C_PIN + #define FAN0_PIN MOSFET_C_PIN #elif FET_ORDER_EEB // Hotend, Hotend, Bed #define HEATER_1_PIN MOSFET_B_PIN #define HEATER_BED_PIN MOSFET_C_PIN #elif FET_ORDER_EFF // Hotend, Fan, Fan - #define FAN_PIN MOSFET_B_PIN + #define FAN0_PIN MOSFET_B_PIN #define FAN1_PIN MOSFET_C_PIN #elif FET_ORDER_SF // Spindle, Fan - #define FAN_PIN MOSFET_C_PIN + #define FAN0_PIN MOSFET_C_PIN #else // Non-specific are "EFB" (i.e., "EFBF" or "EFBE") - #define FAN_PIN MOSFET_B_PIN + #define FAN0_PIN MOSFET_B_PIN #define HEATER_BED_PIN MOSFET_C_PIN #if HOTENDS == 1 && DISABLED(HEATERS_PARALLEL) #define FAN1_PIN MOSFET_D_PIN @@ -184,8 +184,8 @@ #endif #endif -#ifndef FAN_PIN - #define FAN_PIN 4 // IO pin. Buffer needed +#ifndef FAN0_PIN + #define FAN0_PIN 4 // IO pin. Buffer needed #endif // @@ -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 @@ -247,18 +247,16 @@ #endif /** - * Default pins for TMC software SPI + * Default pins for TMC SPI */ -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 66 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 44 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 64 - #endif +#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 #if HAS_TMC_UART @@ -379,12 +377,12 @@ #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_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 @@ -398,19 +396,19 @@ #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 + #define TFT_BUFFER_WORDS 0xFFFF #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 @@ -476,13 +474,13 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS 49 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE 51 // SID (MOSI) + #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_ENABLE 42 + #define LCD_PINS_EN 42 #define LCD_PINS_D4 65 #define LCD_PINS_D5 66 #define LCD_PINS_D6 44 @@ -493,7 +491,7 @@ #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 25 #if !IS_NEWPANEL @@ -503,7 +501,7 @@ #elif ENABLED(ZONESTAR_LCD) #define LCD_PINS_RS 64 - #define LCD_PINS_ENABLE 44 + #define LCD_PINS_EN 44 #define LCD_PINS_D4 63 #define LCD_PINS_D5 40 #define LCD_PINS_D6 42 @@ -511,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 @@ -521,7 +519,7 @@ #define DOGLCD_A0 LCD_PINS_DC #else #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 @@ -595,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/env_validate.h b/Marlin/src/pins/lpc1768/env_validate.h index adb3ea938d..8a6a1cebd3 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/lpc1768/pins_AZSMZ_MINI.h b/Marlin/src/pins/lpc1768/pins_AZSMZ_MINI.h index 4d1dbecf2e..ca8010493b 100644 --- a/Marlin/src/pins/lpc1768/pins_AZSMZ_MINI.h +++ b/Marlin/src/pins/lpc1768/pins_AZSMZ_MINI.h @@ -23,6 +23,8 @@ /** * AZSMZ MINI pin assignments + * Schematic: http://green-candy.osdn.jp/external/MarlinFW/board_schematics/AZSMZ%20MINI/AZSMZ.svg + * Source: https://raw.githubusercontent.com/Rose-Fish/AZSMZ-mini/master/AZSMZ.sch */ #include "env_validate.h" @@ -80,8 +82,8 @@ // EFB #define HEATER_0_PIN P2_04 #define HEATER_BED_PIN P2_05 -#ifndef FAN_PIN - #define FAN_PIN P2_07 +#ifndef FAN0_PIN + #define FAN0_PIN P2_07 #endif #define FAN1_PIN P0_26 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 10a610ff95..c498af3a64 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h @@ -22,11 +22,7 @@ #pragma once /** - * BIQU BQ111-A4 - * - * Applies to the following boards: - * - * BOARD_BIQU_BQ111_A4 (Hotend, Fan, Bed) + * BIQU Thunder B300 V1.0 */ #include "env_validate.h" @@ -77,18 +73,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P0_18 // ETH - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_17 // ETH - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_15 // ETH - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P0_18 // ETH +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_17 // ETH +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_15 // ETH #endif // @@ -103,8 +97,8 @@ // #define HEATER_0_PIN P2_07 #define HEATER_BED_PIN P2_05 -#ifndef FAN_PIN - #define FAN_PIN P2_04 +#ifndef FAN0_PIN + #define FAN0_PIN P2_04 #endif // @@ -133,14 +127,14 @@ #define SD_DETECT_PIN P0_27 // EXP2-7 #define LCD_PINS_RS P0_16 // EXP1-4 - #define LCD_PINS_ENABLE P0_18 // (MOSI) EXP1-3 + #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 - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "SDSUPPORT is not supported by the BIQU B300 v1.0 when an LCD controller is used" #endif @@ -152,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 @@ -165,7 +159,7 @@ * * There are 6 PWMS. Each PWM can be assigned to one of two pins. * - * PWM1.1 P0_18 LCD_PINS_ENABLE + * PWM1.1 P0_18 LCD_PINS_EN * PWM1.1 P2_0 X_STEP_PIN * PWM1.2 P1_20 * PWM1.2 P2_1 Y_STEP_PIN @@ -174,7 +168,7 @@ * PWM1.4 P1_23 * PWM1.4 P2_3 E0_STEP_PIN * PWM1.5 P1_24 X_MIN_PIN - * PWM1.5 P2_4 FAN_PIN + * PWM1.5 P2_4 FAN0_PIN * PWM1.6 P1_26 Y_MIN_PIN * PWM1.6 P2_5 HEATER_BED_PIN */ diff --git a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h index 92152170a0..3fb29b9092 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h @@ -23,6 +23,10 @@ /** * BIQU BQ111-A4 pin assignments + * + * Applies to the following boards: + * + * BOARD_BIQU_BQ111_A4 (Hotend, Fan, Bed) */ #include "env_validate.h" @@ -70,8 +74,8 @@ // #define HEATER_0_PIN P2_07 #define HEATER_BED_PIN P2_05 -#ifndef FAN_PIN - #define FAN_PIN P2_04 +#ifndef FAN0_PIN + #define FAN0_PIN P2_04 #endif // @@ -100,14 +104,14 @@ #define SD_DETECT_PIN P0_27 // EXP2-7 #define LCD_PINS_RS P0_16 // EXP1-4 - #define LCD_PINS_ENABLE P0_18 // (MOSI) EXP1-3 + #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 - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "SDSUPPORT is not supported by the BIQU BQ111-A4 when an LCD controller is used" #endif @@ -119,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 @@ -127,14 +131,14 @@ #define SD_SS_PIN P1_30 // EXP1-2 #define SDSS SD_SS_PIN -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * PWMS * * There are 6 PWMS. Each PWM can be assigned to one of two pins. * - * PWM1.1 P0_18 LCD_PINS_ENABLE + * PWM1.1 P0_18 LCD_PINS_EN * PWM1.1 P2_0 X_STEP_PIN * PWM1.2 P1_20 * PWM1.2 P2_1 Y_STEP_PIN @@ -143,7 +147,7 @@ * PWM1.4 P1_23 * PWM1.4 P2_3 E0_STEP_PIN * PWM1.5 P1_24 X_MIN_PIN - * PWM1.5 P2_4 FAN_PIN + * PWM1.5 P2_4 FAN0_PIN * PWM1.6 P1_26 Y_MIN_PIN * PWM1.6 P2_5 HEATER_BED_PIN */ diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_1.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_1.h index d11224315b..aa3c15443e 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_1.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_1.h @@ -23,6 +23,8 @@ /** * BigTreeTech SKR 1.1 pin assignments + * Schematic: http://green-candy.osdn.jp/external/MarlinFW/board_schematics/BTT%20SKR%20V1.1/SKR-V1.1SchDoc.pdf + * Origin: https://github.com/bigtreetech/BIGTREETECH-SKR-V1.1/blob/master/hardware/SKR-V1.1SchDoc.pdf */ #define BOARD_INFO_NAME "BTT SKR V1.1" @@ -56,7 +58,6 @@ #define E0_DIR_PIN P2_13 #define E0_ENABLE_PIN P2_12 - /** ------ ------ * 1.30 | 1 2 | 2.11 0.17 | 1 2 | 0.15 * 0.18 | 3 4 | 0.16 3.26 | 3 4 | 1.23 @@ -111,7 +112,7 @@ #define LCD_SDSS EXP2_04_PIN #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP2_06_PIN + #define LCD_PINS_EN EXP2_06_PIN #define LCD_PINS_D4 EXP2_02_PIN #if ENABLED(MKS_MINI_12864) @@ -165,12 +166,12 @@ // When using any TMC SPI-based drivers, software SPI is used // because pins may be shared with the display or SD card. #define TMC_USE_SW_SPI - #define TMC_SW_MOSI EXP2_06_PIN - #define TMC_SW_MISO EXP2_01_PIN + #define TMC_SPI_MOSI EXP2_06_PIN + #define TMC_SPI_MISO EXP2_01_PIN // To minimize pin usage use the same clock pin as the display/SD card reader. (May generate LCD noise.) - #define TMC_SW_SCK EXP2_02_PIN + #define TMC_SPI_SCK EXP2_02_PIN // If pin 2_06 is unused, it can be used for the clock to avoid the LCD noise. - //#define TMC_SW_SCK P2_06 + //#define TMC_SPI_SCK P2_06 #if ENABLED(SOFTWARE_DRIVER_ENABLE) 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 03994187c8..72a65efc52 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -23,6 +23,8 @@ /** * BigTreeTech SKR 1.3 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/BTT%20SKR%20V1.3/SKR-V1.3-SCH.pdf + * Origin: https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/blob/master/BTT%20SKR%20V1.3/hardware/SKR-V1.3-SCH.pdf */ #define BOARD_INFO_NAME "BTT SKR V1.3" @@ -137,18 +139,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P4_28 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_05 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_04 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P4_28 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_05 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_04 #endif #if HAS_TMC_UART @@ -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 /** * ------ ------ @@ -254,7 +257,7 @@ #define BTN_EN2 EXP1_07_PIN #define BTN_ENC EXP1_03_PIN - #define LCD_PINS_ENABLE EXP1_06_PIN + #define LCD_PINS_EN EXP1_06_PIN #define LCD_PINS_D4 EXP1_04_PIN #elif ENABLED(WYH_L12864) @@ -289,7 +292,7 @@ #define DOGLCD_A0 EXP1_06_PIN #define DOGLCD_SCK EXP1_04_PIN #define DOGLCD_MOSI EXP1_01_PIN - #define LCD_BACKLIGHT_PIN -1 + #define LCD_BACKLIGHT_PIN -1 #elif ENABLED(CR10_STOCKDISPLAY) @@ -299,7 +302,7 @@ #define BTN_EN2 EXP1_05_PIN #define BTN_ENC EXP1_02_PIN // (58) open-drain - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif HAS_ADC_BUTTONS @@ -308,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 BEEPER_PIN EXP1_01_PIN #define SDCARD_CONNECTION ONBOARD - #define TOUCH_BUTTONS_HW_SPI - #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + #define BEEPER_PIN EXP1_01_PIN - #define TFT_BUFFER_SIZE 2400 + #define BTN_ENC EXP1_02_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #define TFT_A0_PIN TFT_DC_PIN #ifndef TFT_WIDTH #define TFT_WIDTH 480 @@ -338,8 +328,63 @@ #define TFT_HEIGHT 320 #endif - #define LCD_READ_ID 0xD3 - #define LCD_USE_DMA_SPI + #if ENABLED(BTT_TFT35_SPI_V1_0) + + /** + * ------ ------ + * 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_DC_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 + #define TFT_DC_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_WORDS 2400 + + #endif #if ENABLED(TFT_CLASSIC_UI) #ifndef TOUCH_CALIBRATION_X @@ -367,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 @@ -377,7 +422,7 @@ #define SD_DETECT_PIN EXP2_07_PIN - #else // !CR10_STOCKDISPLAY + #else // !CR10_STOCKDISPLAY #define LCD_PINS_RS EXP1_04_PIN @@ -385,7 +430,7 @@ #define BTN_EN2 EXP2_05_PIN // (33) J3-4 & AUX-4 #define BTN_ENC EXP1_02_PIN // (58) open-drain - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #define LCD_SDSS EXP2_04_PIN // (16) J3-7 & AUX-4 @@ -404,7 +449,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 @@ -418,7 +463,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/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index a574a9fe8d..b3ebec561d 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -23,6 +23,8 @@ /** * BigTreeTech SKR 1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/BTT%20SKR%20V1.4%20+%20Turbo/BTT%20SKR%20V1.4-SCH.pdf + * Origin: https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/blob/master/BTT%20SKR%20V1.4/Hardware/BTT%20SKR%20V1.4-SCH.pdf */ #include "env_validate.h" @@ -194,18 +196,16 @@ #define TEMP_BED_PIN P0_25_A2 // A2 (T2) - (69) - TEMP_BED_PIN // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P1_17 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_05 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_04 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P1_17 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_05 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_04 #endif #if HAS_TMC_UART @@ -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 @@ -316,7 +319,7 @@ #define BTN_EN2 EXP1_07_PIN #define BTN_ENC EXP1_01_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #define BEEPER_PIN EXP1_08_PIN @@ -352,7 +355,7 @@ #define BTN_EN2 EXP1_07_PIN #define BTN_ENC EXP1_03_PIN - #define LCD_PINS_ENABLE EXP1_06_PIN + #define LCD_PINS_EN EXP1_06_PIN #define LCD_PINS_D4 EXP1_04_PIN #define BEEPER_PIN EXP1_01_PIN @@ -364,7 +367,7 @@ #define BTN_EN2 EXP1_05_PIN #define BTN_ENC EXP1_02_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(ENDER2_STOCKDISPLAY) @@ -393,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 @@ -411,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 @@ -429,7 +432,7 @@ #define BTN_EN1 EXP2_03_PIN // (31) J3-2 & AUX-4 #define BTN_EN2 EXP2_05_PIN // (33) J3-4 & AUX-4 - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #define LCD_SDSS EXP2_04_PIN // (16) J3-7 & AUX-4 @@ -447,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 ec74cc640e..75eea8e0f6 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." @@ -101,8 +101,8 @@ #define HEATER_1_PIN P2_04 #endif #endif -#ifndef FAN_PIN - #define FAN_PIN P2_03 +#ifndef FAN0_PIN + #define FAN0_PIN P2_03 #endif #ifndef HEATER_BED_PIN #define HEATER_BED_PIN P2_05 diff --git a/Marlin/src/pins/lpc1768/pins_EMOTRONIC.h b/Marlin/src/pins/lpc1768/pins_EMOTRONIC.h index 6e1ea403b1..43a9b786eb 100644 --- a/Marlin/src/pins/lpc1768/pins_EMOTRONIC.h +++ b/Marlin/src/pins/lpc1768/pins_EMOTRONIC.h @@ -23,6 +23,8 @@ /** * eMotion-Tech eMotronic pin assignments + * Schematic: http://green-candy.osdn.jp/external/MarlinFW/board_schematics/eMotion-Tech%20eMotronic/eMotronic_brd_sources_1.0.4/eMotronic_sch.pdf + * Origin: https://data.emotion-tech.com/ftp/Datasheets_et_sources/Sources/eMotronic_brd_sources_1.0.4.zip * * Board pins<->features assignments are based on the * Micro-Delta Rework printer default connections. @@ -85,7 +87,7 @@ #define HEATER_0_PIN P2_06 // (H2: 10A shared) #define HEATER_1_PIN P2_07 // (H3: 10A shared) -#define FAN_PIN P2_11 // (FAN0: 1A) +#define FAN0_PIN P2_11 // (FAN0: 1A) #define FAN1_PIN P2_13 // (FAN1: 1A) // diff --git a/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h b/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h index 39ab0bbd89..a9184073c5 100644 --- a/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h +++ b/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h @@ -23,6 +23,8 @@ /** * GMARSH X6 Rev.1 pin assignments + * Schematic: http://green-candy.osdn.jp/external/MarlinFW/board_schematics/GMARSH%20X6%20Rev.1/armprinter_2208_1heater.pdf + * Origin: https://github.com/gmarsh/gmarsh_x6/blob/master/armprinter_2208_1heater.pdf */ #include "env_validate.h" @@ -104,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 @@ -121,7 +125,7 @@ // #define HEATER_BED_PIN P1_19 // Not a PWM pin, software PWM required #define HEATER_0_PIN P3_26 // PWM1[3] -#define FAN_PIN P3_25 // Part cooling fan - connected to PWM1[2] +#define FAN0_PIN P3_25 // Part cooling fan - connected to PWM1[2] #define E0_AUTO_FAN_PIN P0_27 // Extruder cooling fan // @@ -139,7 +143,7 @@ #define BTN_EN2 P1_24 #define BTN_ENC P1_25 #define LCD_PINS_RS P0_20 - #define LCD_PINS_ENABLE P0_21 + #define LCD_PINS_EN P0_21 #define LCD_PINS_D4 P2_11 #define LCD_PINS_D5 P0_22 #define LCD_PINS_D6 P1_29 diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h index cf12a98aef..a4150aa22f 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h @@ -23,6 +23,8 @@ /** * Makerbase MKS SBASE pin assignments + * Schematic (V1.3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/MKS%20SBASE%20V1.3/MKS%20SBASE%20V1.3_002%20SCH.pdf + * Origin (V1.3): http://green-candy.osdn.jp/external/MarlinFW/board_schematics/MKS%20SBASE%20V1.3/MKS%20SBASE%20V1.3_002%20SCH.pdf */ #include "env_validate.h" @@ -99,8 +101,8 @@ #define HEATER_BED_PIN P2_05 #define HEATER_0_PIN P2_07 #define HEATER_1_PIN P2_06 -#ifndef FAN_PIN - #define FAN_PIN P2_04 +#ifndef FAN0_PIN + #define FAN0_PIN P2_04 #endif // @@ -184,7 +186,7 @@ #define SD_MISO_PIN P1_23 // J8-3 (moved from EXP2 P0.8) #define SD_MOSI_PIN P2_12 // J8-4 (moved from EXP2 P0.9) #define SD_SS_PIN P0_28 - #define LPC_SOFTWARE_SPI // With a custom cable we need software SPI because the + #define SOFTWARE_SPI // With a custom cable we need software SPI because the // selected pins are not on a hardware SPI controller #elif SD_CONNECTION_IS(LCD) || SD_CONNECTION_IS(ONBOARD) #define SD_SCK_PIN P0_07 @@ -236,9 +238,9 @@ #define BTN_EN2 P3_25 // EXP2.3 #define LCD_PINS_RS P0_16 // EXP1.4 #define LCD_SDSS P0_28 // EXP2.4 - #define LCD_PINS_ENABLE P0_18 // EXP1.3 + #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 @@ -255,15 +257,15 @@ * Pins 6, 7 & 8 on EXP2 are no connects. That means a second special * cable will be needed if the RGB LEDs are to be active. */ - #define DOGLCD_CS LCD_PINS_ENABLE // EXP1.3 (LCD_EN on FYSETC schematic) - #define DOGLCD_A0 LCD_PINS_RS // EXP1.4 (LCD_A0 on FYSETC schematic) + #define DOGLCD_CS P0_18 // EXP1.3 (LCD_EN on FYSETC schematic) + #define DOGLCD_A0 P0_16 // EXP1.4 (LCD_A0 on FYSETC schematic) #define DOGLCD_SCK P2_11 // J8-5 (SCK on FYSETC schematic) #define DOGLCD_MOSI P4_28 // J8-6 (MOSI on FYSETC schematic) //#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 @@ -300,16 +302,14 @@ // Hardware SPI is on EXP2. See if you can make it work: // https://github.com/makerbase-mks/MKS-SBASE/issues/25 #define TMC_USE_SW_SPI - #if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P0_03 // AUX1 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_02 // AUX1 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_26 // TH4 - #endif + #ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P0_03 // AUX1 + #endif + #ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_02 // AUX1 + #endif + #ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_26 // TH4 #endif #endif @@ -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 4e9f98c852..328213e873 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h @@ -23,6 +23,8 @@ /** * Makerbase MKS SGEN-L pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/MKS_GEN_L_V1_0/MKS%20Gen_L%20V1.0_008%20SCH.pdf + * Origin: https://github.com/makerbase-mks/SGEN_L/blob/master/Hardware/MKS%20SGEN_L%20V1.0_001/MKS%20SGEN_L%20V1.0_001%20SCH.pdf */ #include "env_validate.h" @@ -132,18 +134,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P4_28 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_05 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_04 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P4_28 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_05 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_04 #endif #if HAS_TMC_UART @@ -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 // @@ -209,8 +212,8 @@ #define HEATER_1_PIN P2_06 #endif #endif -#ifndef FAN_PIN - #define FAN_PIN P2_04 +#ifndef FAN0_PIN + #define FAN0_PIN P2_04 #endif // @@ -287,13 +290,13 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #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 @@ -306,11 +309,11 @@ #define TOUCH_BUTTONS_HW_SPI_DEVICE 2 // Disable any LCD related PINs config - #define LCD_PINS_ENABLE -1 + #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 @@ -351,7 +354,7 @@ #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -368,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 fe424c800a..f3b134cd36 100644 --- a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h +++ b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h @@ -23,6 +23,8 @@ /** * Re-ARM with RAMPS v1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Re-ARM%20RAMPS%201.4/Re_ARM_Schematic.pdf + * Origin: https://reprap.org/mediawiki/images/f/fa/Re_ARM_Schematic.pdf * * Applies to the following boards: * @@ -97,18 +99,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P1_00 // ETH - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P1_08 // ETH - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P1_09 // ETH - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P1_00 // ETH +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P1_08 // ETH +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P1_09 // ETH #endif #if HAS_TMC_UART @@ -119,7 +119,6 @@ * If undefined software serial is used according to the pins below */ - // P2_08 E1-Step // P2_13 E1-Dir @@ -152,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 @@ -204,15 +206,15 @@ #endif #endif -#ifndef FAN_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan - #define FAN_PIN MOSFET_B_PIN - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan - #define FAN_PIN MOSFET_C_PIN +#ifndef FAN0_PIN + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #define FAN0_PIN MOSFET_B_PIN + #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 FAN_PIN P1_18 // (4) IO pin. Buffer needed + #define FAN0_PIN P1_18 // (4) IO pin. Buffer needed #else // Non-specific are "EFB" (i.e., "EFBF" or "EFBE") - #define FAN_PIN MOSFET_B_PIN + #define FAN0_PIN MOSFET_B_PIN #endif #endif @@ -250,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 @@ -302,7 +304,7 @@ #define BTN_ENC P3_25 // J3-4 & AUX-4 #define LCD_PINS_RS P0_15 // J3-9 & AUX-4 (CS) - #define LCD_PINS_ENABLE P0_18 // J3-10 & AUX-3 (SID, MOSI) + #define LCD_PINS_EN P0_18 // J3-10 & AUX-3 (SID, MOSI) #define LCD_PINS_D4 P2_06 // J3-8 & AUX-3 (SCK, CLK) #elif ENABLED(ZONESTAR_LCD) @@ -351,11 +353,11 @@ //#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 SD_SCK_PIN - #define DOGLCD_MOSI SD_MOSI_PIN + #define DOGLCD_SCK P0_15 // (52) (SCK) J3-9 & AUX-3 + #define DOGLCD_MOSI P0_18 // (51) (MOSI) J3-10 & AUX-3 #define STAT_LED_BLUE_PIN P0_26 // (63) may change if cable changes #define STAT_LED_RED_PIN P1_21 // ( 6) may change if cable changes @@ -376,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 @@ -395,7 +397,7 @@ #endif #define LCD_BACKLIGHT_PIN P0_16 //(16) J3-7 & AUX-4 - only used on DOGLCD controllers - #define LCD_PINS_ENABLE P0_18 // (51) (MOSI) J3-10 & AUX-3 + #define LCD_PINS_EN P0_18 // (51) (MOSI) J3-10 & AUX-3 #define LCD_PINS_D4 P0_15 // (52) (SCK) J3-9 & AUX-3 #if IS_ULTIPANEL #define LCD_PINS_D5 P1_17 // (71) ENET_MDIO diff --git a/Marlin/src/pins/lpc1768/pins_SELENA_COMPACT.h b/Marlin/src/pins/lpc1768/pins_SELENA_COMPACT.h index 2972ac7560..16858c0b56 100644 --- a/Marlin/src/pins/lpc1768/pins_SELENA_COMPACT.h +++ b/Marlin/src/pins/lpc1768/pins_SELENA_COMPACT.h @@ -23,6 +23,8 @@ /** * Selena Compact pin assignments + * Pinout: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Selena%20Compact/Compact%20Pinout.pdf + * Origin: https://github.com/f61/Selena/blob/master/Compact%20Pinout.pdf */ #include "env_validate.h" @@ -85,8 +87,8 @@ #define HEATER_BED2_PIN P2_04 #define HEATER_0_PIN P2_07 #define HEATER_1_PIN P2_06 -#ifndef FAN_PIN - #define FAN_PIN P1_24 +#ifndef FAN0_PIN + #define FAN0_PIN P1_24 #endif #define FAN1_PIN P1_26 @@ -96,7 +98,7 @@ #if IS_RRD_FG_SC #define LCD_PINS_RS P0_16 - #define LCD_PINS_ENABLE P0_18 + #define LCD_PINS_EN P0_18 #define LCD_PINS_D4 P0_15 #define LCD_PINS_D5 P1_00 #define LCD_PINS_D6 P1_01 diff --git a/Marlin/src/pins/lpc1769/env_validate.h b/Marlin/src/pins/lpc1769/env_validate.h index 2e2b63d520..0f62412453 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/lpc1769/pins_AZTEEG_X5_GT.h b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h index bc7cada8da..8412f1c12d 100644 --- a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h +++ b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h @@ -23,6 +23,8 @@ /** * Azteeg X5 GT pin assignments + * Wiring diagram: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X5%20GT/X5%20GT%20Wiring%20Diagram.pdf + * Origin: https://panucattdevices.freshdesk.com/support/solutions/articles/1000244740-support-files */ #include "env_validate.h" @@ -98,16 +100,15 @@ #define HEATER_BED_PIN P2_07 #define HEATER_0_PIN P2_04 #define HEATER_1_PIN P2_05 -#ifndef FAN_PIN - #define FAN_PIN P0_26 +#ifndef FAN0_PIN + #define FAN0_PIN P0_26 #endif #define FAN1_PIN P1_22 // // 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 c33fe6e28f..92e97ca875 100644 --- a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h +++ b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h @@ -23,6 +23,10 @@ /** * Azteeg X5 MINI pin assignments + * Schematic (V1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X5%20MINI/x5mini_design_files/X5mini_design_files/V1/X5%20Mini%20PUB%20v1.0.pdf + * Schematic (V2): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X5%20MINI/x5mini_design_files/X5mini_design_files/V2/X5%20Mini%20V2%20SCH%20Pub.pdf + * Schematic (V3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X5%20MINI/x5mini_design_files/X5mini_design_files/V3/X5%20Mini%20V3%20SCH%20Pub.pdf + * Origin: http://files.panucatt.com/datasheets/x5mini_design_files.zip */ #include "env_validate.h" @@ -100,8 +104,8 @@ // #define HEATER_BED_PIN P2_07 #define HEATER_0_PIN P2_05 -#ifndef FAN_PIN - #define FAN_PIN P0_26 +#ifndef FAN0_PIN + #define FAN0_PIN P0_26 #endif #define FAN1_PIN P1_25 @@ -124,7 +128,7 @@ #define BTN_ENC P3_25 // J3-4 & AUX-4 #define LCD_PINS_RS P0_15 // J3-9 & AUX-4 (CS) - #define LCD_PINS_ENABLE P0_18 // J3-10 & AUX-3 (SID, MOSI) + #define LCD_PINS_EN P0_18 // J3-10 & AUX-3 (SID, MOSI) #define LCD_PINS_D4 P2_06 // J3-8 & AUX-3 (SCK, CLK) #else @@ -138,7 +142,7 @@ #define LCD_PINS_RS P0_16 // (16) J3-7 & AUX-4 #define LCD_SDSS P0_16 // (16) J3-7 & AUX-4 #define LCD_BACKLIGHT_PIN P0_16 // (16) J3-7 & AUX-4 - only used on DOGLCD controllers - #define LCD_PINS_ENABLE P0_18 // (51) (MOSI) J3-10 & AUX-3 + #define LCD_PINS_EN P0_18 // (51) (MOSI) J3-10 & AUX-3 #define LCD_PINS_D4 P0_15 // (52) (SCK) J3-9 & AUX-3 #define DOGLCD_A0 P2_06 // (59) J3-8 & AUX-2 @@ -154,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_AZTEEG_X5_MINI_WIFI.h b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI_WIFI.h index 086bacbac0..74439e4f3d 100644 --- a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI_WIFI.h +++ b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI_WIFI.h @@ -23,6 +23,8 @@ /** * Azteeg X5 MINI WIFI pin assignments + * Wiring diagram: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X5%20MINI%20WIFI/x5mini_wifi_wiring.pdf + * Origin: http://files.panucatt.com/datasheets/x5mini_wifi_wiring.pdf */ #include "env_validate.h" 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 dbaafb89cc..966ff5ef95 100644 --- a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h +++ b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h @@ -23,6 +23,8 @@ /** * BigTreeTech SKR E3 Turbo pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/BTT%20SKR%20E3%20Turbo/BTT%20SKR%20E3%20Turbo-SCH.pdf + * Origin: https://github.com/bigtreetech/BIGTREETECH-SKR-E3-Turbo/blob/master/Hardware/BTT%20SKR%20E3%20Turbo-SCH.pdf */ #include "env_validate.h" @@ -151,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 @@ -169,7 +174,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 @@ -177,7 +185,7 @@ #define HEATER_0_PIN P2_03 // EXTRUDER 0 #define HEATER_1_PIN P2_04 // EXTRUDER 1 #define HEATER_BED_PIN P2_05 // BED -#define FAN_PIN P2_01 +#define FAN0_PIN P2_01 #define FAN1_PIN P2_02 #ifndef CONTROLLER_FAN_PIN @@ -209,7 +217,7 @@ #endif /** - * Ender 3 V2 display SKR E3 Turbo (EXP1) Ender 3 V2 display --> SKR E3 Turbo + * Ender-3 V2 display SKR E3 Turbo (EXP1) Ender-3 V2 display --> SKR E3 Turbo * ------ ------ RX 3 --> 5 P0_15 * -- | 1 2 | -- (BEEPER) P2_08 |10 9 | P0_16 (BTN_ENC) TX 4 --> 9 P0_16 * (SKR_TX1) RX | 3 4 | TX (SKR_RX1) (BTN_EN1) P0_19 | 8 7 | RESET BEEPER 6 --> 10 P2_08 @@ -235,7 +243,7 @@ #define BTN_ENC EXP1_02_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! @@ -245,14 +253,14 @@ #endif #define LCD_PINS_RS EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_02_PIN + #define LCD_PINS_EN EXP1_02_PIN #define LCD_PINS_D4 EXP1_07_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_03_PIN #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_BTT_SKR_V1_4_TURBO.h b/Marlin/src/pins/lpc1769/pins_BTT_SKR_V1_4_TURBO.h index 7f428fc918..1bd70d8fb5 100644 --- a/Marlin/src/pins/lpc1769/pins_BTT_SKR_V1_4_TURBO.h +++ b/Marlin/src/pins/lpc1769/pins_BTT_SKR_V1_4_TURBO.h @@ -23,6 +23,8 @@ /** * BigTreeTech SKR 1.4 Turbo pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/BTT%20SKR%20V1.4%20+%20Turbo/BTT%20SKR%20V1.4-SCH.pdf + * Origin: https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/blob/master/BTT%20SKR%20V1.4/Hardware/BTT%20SKR%20V1.4-SCH.pdf */ #define BOARD_INFO_NAME "BTT SKR V1.4 TURBO" diff --git a/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h b/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h index 237dfaec36..70781cb0b5 100644 --- a/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h +++ b/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h @@ -23,6 +23,8 @@ /** * Cohesion3D Mini pin assignments + * Pinout: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Cohesion3D%20Mini/c3d-pinout.jpg + * Origin: https://lasergods.com/cohesion3d-mini-pinout-diagram/ */ #include "env_validate.h" @@ -70,16 +72,14 @@ // // Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P1_16 // Ethernet Expansion - Pin 5 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P1_17 // Ethernet Expansion - Pin 6 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P1_08 // Ethernet Expansion - Pin 7 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P1_16 // Ethernet Expansion - Pin 5 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P1_17 // Ethernet Expansion - Pin 6 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P1_08 // Ethernet Expansion - Pin 7 #endif // @@ -94,8 +94,8 @@ // #define HEATER_BED_PIN P2_05 #define HEATER_0_PIN P2_07 // FET 1 -#ifndef FAN_PIN - #define FAN_PIN P2_06 // FET 3 +#ifndef FAN0_PIN + #define FAN0_PIN P2_06 // FET 3 #endif // @@ -125,7 +125,7 @@ #define SPINDLE_LASER_ENA_PIN P2_07 // FET 1 #undef HEATER_BED_PIN #define SPINDLE_LASER_PWM_PIN P2_05 // Bed FET - #undef FAN_PIN + #undef FAN0_PIN #define SPINDLE_DIR_PIN P2_06 // FET 3 #endif @@ -149,12 +149,12 @@ #define LCD_PINS_RS P0_16 // EXP1-4 #define LCD_SDSS P0_28 // EXP2-4 - #define LCD_PINS_ENABLE P0_18 // EXP1-3 + #define LCD_PINS_EN P0_18 // EXP1-3 #define LCD_PINS_D4 P0_15 // EXP1-5 #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/lpc1769/pins_COHESION3D_REMIX.h b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h index ea2e0b7082..362aafe12e 100644 --- a/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h +++ b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h @@ -23,6 +23,8 @@ /** * Cohesion3D ReMix pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Cohesion3D%20ReMix/C3D%20ReMix%20rev2.svg + * Origin: https://github.com/Cohesion3D/Cohesion3D-ReMix/blob/master/C3D%20ReMix%20rev2.sch */ #include "env_validate.h" @@ -87,16 +89,14 @@ // // Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P1_16 // Ethernet Expansion - Pin 5 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P1_17 // Ethernet Expansion - Pin 6 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P1_08 // Ethernet Expansion - Pin 7 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P1_16 // Ethernet Expansion - Pin 5 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P1_17 // Ethernet Expansion - Pin 6 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P1_08 // Ethernet Expansion - Pin 7 #endif // @@ -119,8 +119,8 @@ #define HEATER_0_PIN P2_07 // FET 1 #define HEATER_1_PIN P1_23 // FET 2 #define HEATER_2_PIN P1_22 // FET 3 -#ifndef FAN_PIN - #define FAN_PIN P2_06 // FET 4 +#ifndef FAN0_PIN + #define FAN0_PIN P2_06 // FET 4 #endif // @@ -152,9 +152,9 @@ #if HAS_CUTTER #undef HEATER_0_PIN #undef HEATER_BED_PIN - #undef FAN_PIN - #define SPINDLE_LASER_ENA_PIN P2_07 // FET 1 + #undef FAN0_PIN #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 @@ -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 @@ -215,7 +215,7 @@ #define LCD_PINS_RS P0_16 // EXP1-4 #define LCD_SDSS P0_28 // EXP2-4 - #define LCD_PINS_ENABLE P0_18 // EXP1-3 + #define LCD_PINS_EN P0_18 // EXP1-3 #define LCD_PINS_D4 P0_15 // EXP1-5 #define KILL_PIN P2_11 // EXP2-10 diff --git a/Marlin/src/pins/lpc1769/pins_FLY_CDY.h b/Marlin/src/pins/lpc1769/pins_FLY_CDY.h index ec0b14af90..d5a7a38c23 100644 --- a/Marlin/src/pins/lpc1769/pins_FLY_CDY.h +++ b/Marlin/src/pins/lpc1769/pins_FLY_CDY.h @@ -23,6 +23,8 @@ /** * FLYmaker FLY-CDY pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/FLYmaker%20FLY-CDY%20V1/FLY_CDY%20SCH.pdf + * Origin: https://github.com/Mellow-3D/FLY-CDY/blob/master/Motherboard%20information/FLY_CDY%20SCH.pdf */ #include "env_validate.h" @@ -92,18 +94,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P0_20 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_19 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_21 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P0_20 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_19 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_21 #endif #if HAS_TMC_UART @@ -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 @@ -144,8 +147,8 @@ #define HEATER_0_PIN P3_25 #define HEATER_1_PIN P1_20 #define HEATER_2_PIN P1_23 -#ifndef FAN_PIN - #define FAN_PIN P1_18 +#ifndef FAN0_PIN + #define FAN0_PIN P1_18 #endif #define FAN1_PIN P1_21 #define FAN2_PIN P1_24 @@ -155,7 +158,7 @@ // #define BEEPER_PIN P2_07 #define LCD_PINS_RS P2_10 -#define LCD_PINS_ENABLE P0_22 +#define LCD_PINS_EN P0_22 #define LCD_PINS_D4 P1_19 #define LCD_PINS_D5 P2_08 #define LCD_PINS_D6 P1_30 diff --git a/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h b/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h index 23bcecc78d..5e552353cd 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h @@ -23,6 +23,8 @@ /** * MKS SGen pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/MKS%20SGEN/MKS%20SGEN%20V1.0_001%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-SGen/blob/master/Hardware/MKS%20SGEN%20V1.0_001/MKS%20SGEN%20V1.0_001%20SCH.pdf * * Pins diagram: * https://github.com/makerbase-mks/MKS-SGen/blob/master/Hardware/MKS%20SGEN%20V1.0_001/MKS%20SGEN%20V1.0_001%20PIN.pdf @@ -54,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 2f25d8b5fd..de100ff42e 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h @@ -23,6 +23,8 @@ /** * MKS SGen-L V2 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/MKS%20SGEN_L%20V2/MKS%20SGEN_L%20V2.0_003%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-SGEN_L-V2/blob/master/Hardware/MKS%20SGEN_L%20V2.0_003/MKS%20SGEN_L%20V2.0_003%20SCH.pdf */ #include "env_validate.h" @@ -146,18 +148,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI P1_16 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO P0_05 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK P0_04 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI P1_16 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO P0_05 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK P0_04 #endif #if HAS_TMC_UART @@ -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 // @@ -229,8 +232,8 @@ #define FAN2_PIN P2_06 // HE1 for FAN3 #endif #endif -#ifndef FAN_PIN - #define FAN_PIN P2_04 // FAN1 +#ifndef FAN0_PIN + #define FAN0_PIN P2_04 // FAN1 #endif #ifndef FAN1_PIN #define FAN1_PIN P1_04 // FAN2 @@ -316,7 +319,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #else @@ -342,7 +345,7 @@ #define TFT_CS_PIN EXP1_07_PIN #define TFT_DC_PIN EXP1_08_PIN - #define TFT_A0_PIN TFT_DC_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 @@ -355,11 +358,11 @@ #define TOUCH_BUTTONS_HW_SPI_DEVICE 2 // Disable any LCD related PINs config - #define LCD_PINS_ENABLE -1 + #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 @@ -369,7 +372,7 @@ #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -386,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 cfaca164f8..3db18e4acf 100644 --- a/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h +++ b/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h @@ -23,6 +23,8 @@ /** * Smoothieware Smoothieboard pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Smoothieware%20Smoothieboard%20V1/http.i.imgur.com.oj4zqs3.png + * Origin: http://smoothieware.org/_media///external/http.i.imgur.com.oj4zqs3.png */ #include "env_validate.h" @@ -83,15 +85,15 @@ #define HEATER_BED_PIN P2_05 #define HEATER_0_PIN P2_07 #define HEATER_1_PIN P1_23 -#ifndef FAN_PIN - #define FAN_PIN P2_06 +#ifndef FAN0_PIN + #define FAN0_PIN P2_06 #endif #define FAN1_PIN P2_04 // // LCD / Controller // -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #define BEEPER_PIN P1_31 #define DOGLCD_A0 P2_11 @@ -140,7 +142,7 @@ // EXP1 Pins #define BEEPER_PIN P1_31 // EXP1 Pin 1 #define BTN_ENC P1_30 // EXP1 Pin 2 - #define LCD_PINS_ENABLE P0_18 // EXP1 Pin 3 (MOSI) + #define LCD_PINS_EN P0_18 // EXP1 Pin 3 (MOSI) #define LCD_PINS_RS P0_16 // EXP1 Pin 4 (CS) #define LCD_PINS_D4 P0_15 // EXP1 Pin 5 (SCK) // EXP2 Pins diff --git a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h index 12a7934a3e..634e50c223 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 @@ -119,8 +122,8 @@ // #define HEATER_BED_PIN P2_05 #define HEATER_0_PIN P2_07 -#ifndef FAN_PIN - #define FAN_PIN P2_06 +#ifndef FAN0_PIN + #define FAN0_PIN P2_06 #endif #define FAN1_PIN P1_22 @@ -138,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 @@ -185,7 +188,7 @@ */ #define BEEPER_PIN EXP1_01_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #define KILL_PIN EXP1_04_PIN @@ -214,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/mega/env_validate.h b/Marlin/src/pins/mega/env_validate.h index 97c52d4e5e..7b6462ab7a 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_CHEAPTRONIC.h b/Marlin/src/pins/mega/pins_CHEAPTRONIC.h index 8bcb263bc1..e95f6c4ade 100644 --- a/Marlin/src/pins/mega/pins_CHEAPTRONIC.h +++ b/Marlin/src/pins/mega/pins_CHEAPTRONIC.h @@ -23,6 +23,7 @@ /** * Cheaptronic v1.0 pin assignments + * ATmega2560 */ #include "env_validate.h" diff --git a/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h b/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h index 01438975b9..62215a8224 100644 --- a/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h +++ b/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h @@ -24,7 +24,9 @@ /** * Cheaptronic v2.0 pin assignments * Built and sold by Michal Dyntar - RRO - * www.reprapobchod.cz + * www.reprapobchod.cz (DOES NOT EXIST ANYMORE) + * https://web.archive.org/web/20190306201523/http://reprapobchod.cz/ + * ATmega2560 */ #include "env_validate.h" @@ -84,8 +86,8 @@ #define HEATER_1_PIN 7 #define HEATER_2_PIN 8 #define HEATER_BED_PIN 9 -#ifndef FAN_PIN - #define FAN_PIN 3 +#ifndef FAN0_PIN + #define FAN0_PIN 3 #endif #define FAN2_PIN 58 // additional fan or light control output @@ -111,7 +113,7 @@ // LCD / Controller // #define LCD_PINS_RS 19 -#define LCD_PINS_ENABLE 42 +#define LCD_PINS_EN 42 #define LCD_PINS_D4 18 #define LCD_PINS_D5 38 #define LCD_PINS_D6 41 @@ -126,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_CNCONTROLS_11.h b/Marlin/src/pins/mega/pins_CNCONTROLS_11.h index 5f7a534d11..60d68a8607 100644 --- a/Marlin/src/pins/mega/pins_CNCONTROLS_11.h +++ b/Marlin/src/pins/mega/pins_CNCONTROLS_11.h @@ -23,6 +23,9 @@ /** * CartesioV11 pin assignments + * Comes with an Arduino Mega, see + * https://web.archive.org/web/20171024190029/http://mauk.cc/mediawiki/index.php/Electronical_assembly + * ATmega2560, ATmega1280 */ #define ALLOW_MEGA1280 @@ -90,8 +93,8 @@ #define HEATER_3_PIN 46 #define HEATER_BED_PIN 2 -#ifndef FAN_PIN - //#define FAN_PIN 7 // common PWM pin for all tools +#ifndef FAN0_PIN + //#define FAN0_PIN 7 // common PWM pin for all tools #endif // diff --git a/Marlin/src/pins/mega/pins_CNCONTROLS_12.h b/Marlin/src/pins/mega/pins_CNCONTROLS_12.h index 0aa0b59ca9..5c92f92e29 100644 --- a/Marlin/src/pins/mega/pins_CNCONTROLS_12.h +++ b/Marlin/src/pins/mega/pins_CNCONTROLS_12.h @@ -23,6 +23,9 @@ /** * CartesioV12 pin assignments + * Comes with an Arduino Mega, see + * https://web.archive.org/web/20171024190029/http://mauk.cc/mediawiki/index.php/Electronical_assembly + * ATmega2560, ATmega1280 */ #define ALLOW_MEGA1280 @@ -90,8 +93,8 @@ #define HEATER_3_PIN 3 #define HEATER_BED_PIN 24 -#ifndef FAN_PIN - #define FAN_PIN 5 // 5 is PWMtool3 -> 7 is common PWM pin for all tools +#ifndef FAN0_PIN + #define FAN0_PIN 5 // 5 is PWMtool3 -> 7 is common PWM pin for all tools #endif // diff --git a/Marlin/src/pins/mega/pins_CNCONTROLS_15.h b/Marlin/src/pins/mega/pins_CNCONTROLS_15.h index 6de3b7172e..bbb0385844 100644 --- a/Marlin/src/pins/mega/pins_CNCONTROLS_15.h +++ b/Marlin/src/pins/mega/pins_CNCONTROLS_15.h @@ -23,6 +23,7 @@ /** * CNControls V15 for HMS434 pin assignments + * ATmega2560, ATmega1280 */ #define ALLOW_MEGA1280 @@ -86,7 +87,7 @@ // // Fans // -#define FAN_PIN 8 +#define FAN0_PIN 8 // // Auto fans diff --git a/Marlin/src/pins/mega/pins_EINSTART-S.h b/Marlin/src/pins/mega/pins_EINSTART-S.h index c8cbee6740..813cbf7dc4 100644 --- a/Marlin/src/pins/mega/pins_EINSTART-S.h +++ b/Marlin/src/pins/mega/pins_EINSTART-S.h @@ -23,6 +23,7 @@ /** * Einstart-S pin assignments + * ATmega2560, ATmega1280 * PCB Silkscreen: 3DPrinterCon_v3.5 */ @@ -69,7 +70,7 @@ #define HEATER_0_PIN 83 #define HEATER_BED_PIN 38 -#define FAN_PIN 82 +#define FAN0_PIN 82 // // Misc. Functions diff --git a/Marlin/src/pins/mega/pins_ELEFU_3.h b/Marlin/src/pins/mega/pins_ELEFU_3.h index f5e146cff9..71797a30ff 100644 --- a/Marlin/src/pins/mega/pins_ELEFU_3.h +++ b/Marlin/src/pins/mega/pins_ELEFU_3.h @@ -23,6 +23,9 @@ /** * Elefu RA Board Pin Assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Elefu%20Ra%20v3/schematic.pdf + * Origin: https://github.com/kiyoshigawa/Elefu-RAv3/blob/master/RA_Circuits.zip + * ATmega2560 */ #include "env_validate.h" @@ -89,8 +92,8 @@ #define HEATER_2_PIN 17 // 12V PWM3 #define HEATER_BED_PIN 44 // DOUBLE 12V PWM -#ifndef FAN_PIN - #define FAN_PIN 16 // 5V PWM +#ifndef FAN0_PIN + #define FAN0_PIN 16 // 5V PWM #endif // diff --git a/Marlin/src/pins/mega/pins_GT2560_REV_A.h b/Marlin/src/pins/mega/pins_GT2560_REV_A.h index 99e8704ea5..783a93a85b 100644 --- a/Marlin/src/pins/mega/pins_GT2560_REV_A.h +++ b/Marlin/src/pins/mega/pins_GT2560_REV_A.h @@ -25,6 +25,9 @@ * Geeetech GT2560 Revision A board pin assignments, based on the work of * George Robles (https://georges3dprinters.com) and * Richard Smith + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%20Revision%20A/GT2560_sch.pdf + * Origin: https://www.geeetech.com/wiki/images/9/90/GT2560_sch.pdf + * ATmega2560 */ #define ALLOW_MEGA1280 @@ -44,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 @@ -92,71 +93,107 @@ #define HEATER_0_PIN 2 #define HEATER_1_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 7 +#ifndef FAN0_PIN + #define FAN0_PIN 7 #endif // // 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_ENABLE 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 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 16 - #define LCD_PINS_ENABLE 5 - #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 20 - #define LCD_PINS_D7 19 + #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 7e2ce20c67..1905f58108 100644 --- a/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h +++ b/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h @@ -23,12 +23,13 @@ /** * Geeetech GT2560 Revision A+ board pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%20Revision%20A+/Hardware_GT2560_RevA+.pdf + * Origin: https://www.geeetech.com/wiki/images/d/d3/Hardware_GT2560_RevA%2B.pdf + * ATmega2560 */ #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/mega/pins_GT2560_REV_B.h b/Marlin/src/pins/mega/pins_GT2560_REV_B.h index be71ec4902..0702d14eb8 100644 --- a/Marlin/src/pins/mega/pins_GT2560_REV_B.h +++ b/Marlin/src/pins/mega/pins_GT2560_REV_B.h @@ -23,6 +23,9 @@ /** * Geeetech GT2560 Rev B Pins + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%20Rev%20B/GT2560_REVB.pdf + * Origin: https://www.geeetech.com/wiki/images/7/72/GT2560_REVB.pdf + * ATmega2560 */ #define BOARD_INFO_NAME "GT2560 Rev B" diff --git a/Marlin/src/pins/mega/pins_GT2560_V3.h b/Marlin/src/pins/mega/pins_GT2560_V3.h index 46b4ebf428..0c588e6516 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3.h @@ -23,6 +23,9 @@ /** * Geeetech GT2560 3.0/3.1 pin assignments + * Schematic (3.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%203.0/GT2560_V3.0_SCH.pdf + * Origin (3.0): https://github.com/Geeetech3D/Diagram/blob/master/GT2560_V3.0_SCH.pdf + * ATmega2560 * * Also GT2560 RevB and GT2560 4.0/4.1 */ @@ -30,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 @@ -135,7 +142,7 @@ #define HEATER_1_PIN 3 #define HEATER_2_PIN 2 #define HEATER_BED_PIN 4 -#define FAN_PIN 9 +#define FAN0_PIN 9 #define FAN1_PIN 8 #define FAN2_PIN 7 @@ -161,24 +168,16 @@ #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 #endif - #ifndef LCD_PINS_ENABLE - #define LCD_PINS_ENABLE 17 + #ifndef LCD_PINS_EN + #define LCD_PINS_EN 17 #endif #ifndef LCD_PINS_D4 #define LCD_PINS_D4 16 diff --git a/Marlin/src/pins/mega/pins_GT2560_V3_A20.h b/Marlin/src/pins/mega/pins_GT2560_V3_A20.h index 986dd1cb04..2422dfdd73 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3_A20.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3_A20.h @@ -23,14 +23,19 @@ /** * Geeetech A20M board pin assignments + * ATmega2560 */ -#define LCD_PINS_RS 5 -#define LCD_PINS_ENABLE 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_V3_MC2.h b/Marlin/src/pins/mega/pins_GT2560_V3_MC2.h index e683d4dfda..70854c5716 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3_MC2.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3_MC2.h @@ -23,6 +23,7 @@ /** * Geeetech GT2560 V 3.0 board pin assignments (for Mecreator 2) + * ATmega2560 */ #define BOARD_INFO_NAME "GT2560 V3.0 (MC2)" diff --git a/Marlin/src/pins/mega/pins_GT2560_V4.h b/Marlin/src/pins/mega/pins_GT2560_V4.h index 6ac07b70bf..98f503886f 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V4.h +++ b/Marlin/src/pins/mega/pins_GT2560_V4.h @@ -23,6 +23,9 @@ /** * Geeetech GT2560 V4.X Pins + * Schematic (4.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%20V4.x%20+%20A20/GT2560V4.0SCHA20T.pdf + * 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 */ #define BOARD_INFO_NAME "GT2560 4.x" diff --git a/Marlin/src/pins/mega/pins_GT2560_V4_A20.h b/Marlin/src/pins/mega/pins_GT2560_V4_A20.h index 83a612e67c..405a3aba5b 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V4_A20.h +++ b/Marlin/src/pins/mega/pins_GT2560_V4_A20.h @@ -23,16 +23,21 @@ /** * Geeetech A20 GT2560 V4.x board pin assignments + * ATmega2560 */ #define BOARD_INFO_NAME "GT2560 4.x" -#define LCD_PINS_RS 5 -#define LCD_PINS_ENABLE 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_HJC2560C_REV2.h b/Marlin/src/pins/mega/pins_HJC2560C_REV2.h index 5c3b1dc9f6..512da02834 100644 --- a/Marlin/src/pins/mega/pins_HJC2560C_REV2.h +++ b/Marlin/src/pins/mega/pins_HJC2560C_REV2.h @@ -23,6 +23,7 @@ /** * Geeetech HJC2560-C Rev 2.x board pin assignments + * ATmega2560 */ #include "env_validate.h" @@ -91,8 +92,8 @@ #define HEATER_1_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 7 //默认不使用PWM_FAN冷却喷嘴,如果需要,则取消注释 +#ifndef FAN0_PIN + #define FAN0_PIN 7 //默认不使用PWM_FAN冷却喷嘴,如果需要,则取消注释 #endif // @@ -113,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 // @@ -128,7 +129,7 @@ #if IS_NEWPANEL #define LCD_PINS_RS 20 // LCD_CS - #define LCD_PINS_ENABLE 15 // LCD_SDA + #define LCD_PINS_EN 15 // LCD_SDA #define LCD_PINS_D4 14 // LCD_SCK #if ENABLED(HJC_LCD_SMART_CONTROLLER) @@ -160,7 +161,7 @@ #define SHIFT_EN_PIN 17 #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 + #define LCD_PINS_EN 5 #define LCD_PINS_D4 6 #define LCD_PINS_D5 21 #define LCD_PINS_D6 20 diff --git a/Marlin/src/pins/mega/pins_INTAMSYS40.h b/Marlin/src/pins/mega/pins_INTAMSYS40.h index 2e2a9b85db..6b82965065 100644 --- a/Marlin/src/pins/mega/pins_INTAMSYS40.h +++ b/Marlin/src/pins/mega/pins_INTAMSYS40.h @@ -23,6 +23,7 @@ /** * Intamsys Funmat HT V4.0 Mainboard + * ATmega2560 * 4988 Drivers Tested * 2208 version exists and may or may not work */ @@ -98,7 +99,7 @@ #define HEATER_0_PIN 2 // PWM #define HEATER_BED_PIN 4 // PWM #define HEATER_CHAMBER_PIN 3 // PWM -#define FAN_PIN 7 // PWM +#define FAN0_PIN 7 // PWM // // Misc. Functions @@ -122,7 +123,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 30 + #define LCD_PINS_EN 30 #define LCD_PINS_D4 14 #define LCD_PINS_D5 21 #define LCD_PINS_D6 5 diff --git a/Marlin/src/pins/mega/pins_LEAPFROG.h b/Marlin/src/pins/mega/pins_LEAPFROG.h index 4700fd6729..d986728e72 100644 --- a/Marlin/src/pins/mega/pins_LEAPFROG.h +++ b/Marlin/src/pins/mega/pins_LEAPFROG.h @@ -23,6 +23,7 @@ /** * Leapfrog Driver board pin assignments + * ATmega2560, ATmega1280 */ #define ALLOW_MEGA1280 @@ -78,7 +79,7 @@ #define HEATER_2_PIN 11 // 13 #define HEATER_BED_PIN 10 // 14/15 -#define FAN_PIN 7 +#define FAN0_PIN 7 // // Misc. Functions diff --git a/Marlin/src/pins/mega/pins_LEAPFROG_XEED2015.h b/Marlin/src/pins/mega/pins_LEAPFROG_XEED2015.h index 4a32472949..7b3cb2b723 100644 --- a/Marlin/src/pins/mega/pins_LEAPFROG_XEED2015.h +++ b/Marlin/src/pins/mega/pins_LEAPFROG_XEED2015.h @@ -23,6 +23,7 @@ /** * Leapfrog Xeed Driver board pin assignments + * ATmega2560 * * This board is used by other Leapfrog printers in addition to the Xeed, * such as the Creatr HS and Bolt. The pin assignments vary wildly between @@ -103,7 +104,7 @@ #define HEATER_1_PIN 9 // Misc Connector, pins 5 and 6 (Out3) #define HEATER_BED_PIN 6 // Misc Connector, pins 9(-) and 10(+) (OutA) -#define FAN_PIN 10 // Misc Connector, pins 7(-) and 8 (+) (Out4) +#define FAN0_PIN 10 // Misc Connector, pins 7(-) and 8 (+) (Out4) #define LED_PIN 13 diff --git a/Marlin/src/pins/mega/pins_MALYAN_M180.h b/Marlin/src/pins/mega/pins_MALYAN_M180.h index 19095a5379..4eb7928825 100644 --- a/Marlin/src/pins/mega/pins_MALYAN_M180.h +++ b/Marlin/src/pins/mega/pins_MALYAN_M180.h @@ -24,6 +24,8 @@ /** * Malyan M180 pin assignments * Contributed by Timo Birnschein (timo.birnschein@microforge.de) + * @Timo: sind diese Pin Definitionen immernoch korrekt? (Antwort an turningtides@outlook.de bitte) + * ATmega2560 */ #include "env_validate.h" @@ -91,8 +93,8 @@ #define HEATER_1_PIN 11 #define HEATER_BED_PIN 45 -#ifndef FAN_PIN - #define FAN_PIN 7 // M106 Sxxx command supported and tested. M107 as well. +#ifndef FAN0_PIN + #define FAN0_PIN 7 // M106 Sxxx command supported and tested. M107 as well. #endif #ifndef FAN_PIN1 diff --git a/Marlin/src/pins/mega/pins_MEGACONTROLLER.h b/Marlin/src/pins/mega/pins_MEGACONTROLLER.h index 7ebef6e281..049917b6b6 100644 --- a/Marlin/src/pins/mega/pins_MEGACONTROLLER.h +++ b/Marlin/src/pins/mega/pins_MEGACONTROLLER.h @@ -23,6 +23,9 @@ /** * Mega controller pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Mega%20Controller/Mega_controller.pdf + * Origin: https://reprap.org/mediawiki/images/b/ba/Mega_controller.pdf + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -111,8 +114,8 @@ #define HEATER_1_PIN 34 #define HEATER_BED_PIN 28 -#ifndef FAN_PIN - #define FAN_PIN 39 +#ifndef FAN0_PIN + #define FAN0_PIN 39 #endif #define FAN1_PIN 35 #define FAN2_PIN 36 @@ -159,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 ac0ba4eea6..066b577c62 100644 --- a/Marlin/src/pins/mega/pins_MEGATRONICS.h +++ b/Marlin/src/pins/mega/pins_MEGATRONICS.h @@ -23,6 +23,9 @@ /** * MegaTronics pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/MegaTronics/Megatronics_1_0_sch.pdf + * Origin: https://reprap.org/mediawiki/images/a/a3/Megatronics_1_0_sch.pdf + * ATmega2560 */ #include "env_validate.h" @@ -86,8 +89,8 @@ #define HEATER_1_PIN 8 #define HEATER_BED_PIN 10 -#ifndef FAN_PIN - #define FAN_PIN 7 // IO pin. Buffer needed +#ifndef FAN0_PIN + #define FAN0_PIN 7 // IO pin. Buffer needed #endif // @@ -109,7 +112,7 @@ #if HAS_WIRED_LCD && IS_NEWPANEL #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 @@ -127,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 e527035910..ff118e7323 100644 --- a/Marlin/src/pins/mega/pins_MEGATRONICS_2.h +++ b/Marlin/src/pins/mega/pins_MEGATRONICS_2.h @@ -23,6 +23,9 @@ /** * MegaTronics v2.0 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Megatronics%20v2.0/megatronics%20-%20Project.pdf + * Origin: https://reprap.org/wiki/File:Megatronicsv2PDF.zip + * ATmega2560 */ #include "env_validate.h" @@ -100,8 +103,8 @@ #define HEATER_1_PIN 8 #define HEATER_BED_PIN 10 -#ifndef FAN_PIN - #define FAN_PIN 7 +#ifndef FAN0_PIN + #define FAN0_PIN 7 #endif #define FAN1_PIN 6 @@ -119,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 @@ -131,7 +136,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 14 - #define LCD_PINS_ENABLE 15 + #define LCD_PINS_EN 15 #define LCD_PINS_D4 30 #define LCD_PINS_D5 31 #define LCD_PINS_D6 32 diff --git a/Marlin/src/pins/mega/pins_MEGATRONICS_3.h b/Marlin/src/pins/mega/pins_MEGATRONICS_3.h index 86aff16f92..5e571d5a3f 100644 --- a/Marlin/src/pins/mega/pins_MEGATRONICS_3.h +++ b/Marlin/src/pins/mega/pins_MEGATRONICS_3.h @@ -23,6 +23,8 @@ /** * MegaTronics v3.0 / v3.1 / v3.2 pin assignments + * Schematic Origin: https://github.com/brupje/Megatronics_3/blob/master/Design%20Files/megatronics.sch + * ATmega2560 */ #include "env_validate.h" @@ -125,8 +127,8 @@ #define HEATER_2_PIN 8 #define HEATER_BED_PIN 10 -#ifndef FAN_PIN - #define FAN_PIN 6 +#ifndef FAN0_PIN + #define FAN0_PIN 6 #endif #define FAN1_PIN 7 @@ -153,14 +155,14 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS 56 // CS chip select / SS chip slave select - #define LCD_PINS_ENABLE 51 // SID (MOSI) + #define LCD_PINS_EN 51 // SID (MOSI) #define LCD_PINS_D4 52 // SCK (CLK) clock #define SD_DETECT_PIN 35 #else #define LCD_PINS_RS 32 - #define LCD_PINS_ENABLE 31 + #define LCD_PINS_EN 31 #define LCD_PINS_D4 14 #define LCD_PINS_D5 30 #define LCD_PINS_D6 39 diff --git a/Marlin/src/pins/mega/pins_MIGHTYBOARD_REVE.h b/Marlin/src/pins/mega/pins_MIGHTYBOARD_REVE.h index cff3a11af1..e9a0ddc09d 100644 --- a/Marlin/src/pins/mega/pins_MIGHTYBOARD_REVE.h +++ b/Marlin/src/pins/mega/pins_MIGHTYBOARD_REVE.h @@ -23,6 +23,8 @@ /** * Mightyboard Rev.E pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Mightyboard%20Rev.E/MakerBot%20MightyBoard%20REVE%20Schematic.pdf + * Origin: https://github.com/sciguy14/HelioWatcher/blob/master/HelioWatcher%20Circuit/MakerBot%20MightyBoard%20REVE%20Schematic.pdf * also works for Rev D boards. It's all rev E despite what the silk screen says */ @@ -144,39 +146,34 @@ //#define TEMP_1_MOSI_PIN TEMP_0_MOSI_PIN // -// FET Pin Mapping - FET 1 is closest to the input power connector +// FET Pin Mapping - FET A is closest to the input power connector // -#define MOSFET_1_PIN 6 // Plug EX1 Pin 1-2 -> PH3 #15 -> Logical 06 -#define MOSFET_2_PIN 7 // Plug EX1 Pin 3-4 -> PH4 #16 -> Logical 07 -#define MOSFET_3_PIN 11 // Plug EX2 1-2 -> PB5 #24 -> Logical 11 -#define MOSFET_4_PIN 12 // Plug EX2 3-4 -> PB6 #25 -> Logical 12 -#define MOSFET_5_PIN 45 // Plug HBD 1-2 -> PL4 #39 -> Logical 45 -#define MOSFET_6_PIN 44 // Plug Extra 1-2 -> PL5 #40 -> Logical 44 (FET not soldered in all boards) +#define MOSFET_A_PIN 6 // Plug EX1 Pin 1-2 -> PH3 #15 -> Logical 06 +#define MOSFET_B_PIN 11 // Plug EX2 1-2 -> PB5 #24 -> Logical 11 +#define MOSFET_C_PIN 45 // Plug HBD 1-2 -> PL4 #39 -> Logical 45 +#define MOSFET_D_PIN 7 // Plug EX1 Pin 3-4 -> PH4 #16 -> Logical 07 +#define MOSFET_E_PIN 12 // Plug EX2 3-4 -> PB6 #25 -> Logical 12 +#define MOSFET_F_PIN 44 // Plug Extra 1-2 -> PL5 #40 -> Logical 44 (FET not soldered in all boards) // // Heaters / Fans (24V) // -#define HEATER_0_PIN MOSFET_1_PIN // EX1 -#define HEATER_1_PIN MOSFET_3_PIN // EX2 -#define HEATER_BED_PIN MOSFET_5_PIN // HBP +#define HEATER_0_PIN MOSFET_A_PIN // EX1 +#define HEATER_1_PIN MOSFET_B_PIN // EX2 +#define HEATER_BED_PIN MOSFET_C_PIN // HBP -// EX1 FAN (Automatic Fans are disabled by default in Configuration_adv.h - comment that out for auto fans) #ifndef E0_AUTO_FAN_PIN - #define E0_AUTO_FAN_PIN MOSFET_2_PIN -#else - #ifndef FAN_PIN - #define FAN_PIN MOSFET_2_PIN - #endif + #define E0_AUTO_FAN_PIN MOSFET_D_PIN +#elif !defined(FAN0_PIN) + #define FAN0_PIN MOSFET_D_PIN #endif -// EX2 FAN (Automatic Fans are disabled by default in Configuration_adv.h - comment that out for auto fans) + #ifndef E1_AUTO_FAN_PIN - #define E1_AUTO_FAN_PIN MOSFET_4_PIN -#else - #ifndef FAN1_PIN - #define FAN1_PIN MOSFET_4_PIN - #endif + #define E1_AUTO_FAN_PIN MOSFET_E_PIN +#elif !defined(FAN1_PIN) + #define FAN1_PIN MOSFET_E_PIN #endif // @@ -195,7 +192,7 @@ #if IS_RRD_FG_SC #define LCD_PINS_RS 33 // C4: LCD-STROBE - #define LCD_PINS_ENABLE 72 // J2: LEFT + #define LCD_PINS_EN 72 // J2: LEFT #define LCD_PINS_D4 35 // C2: LCD-CLK #define LCD_PINS_D5 32 // C5: RLED #define LCD_PINS_D6 34 // C3: LCD-DATA diff --git a/Marlin/src/pins/mega/pins_MINITRONICS.h b/Marlin/src/pins/mega/pins_MINITRONICS.h index ec712a3b90..c8828faea7 100644 --- a/Marlin/src/pins/mega/pins_MINITRONICS.h +++ b/Marlin/src/pins/mega/pins_MINITRONICS.h @@ -23,6 +23,11 @@ /** * Minitronics v1.0/1.1 pin assignments + * Schematic (1.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Minitronics%20v1.0/minitronics%20-%20Project.pdf + * Origin (1.0): https://reprap.org/wiki/File:MinitronicsPDF.zip + * Datasheet (1.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Minitronics%20v1.1/datasheet%20minitronics%20v1.1.pdf + * Origin (1.1): https://reprapworld.nl/documentation/datasheet%20minitronics%20v1.1.pdf + * ATmega1281 */ /** @@ -85,8 +90,8 @@ #define HEATER_1_PIN 8 // EXTRUDER 2 #define HEATER_BED_PIN 3 // BED -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif // @@ -103,7 +108,7 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS 15 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE 11 // SID (MOSI) + #define LCD_PINS_EN 11 // SID (MOSI) #define LCD_PINS_D4 10 // SCK (CLK) clock #define BTN_EN1 18 @@ -115,7 +120,7 @@ #else #define LCD_PINS_RS -1 - #define LCD_PINS_ENABLE -1 + #define LCD_PINS_EN -1 // Buttons are directly attached using keypad #define BTN_EN1 -1 @@ -136,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/mega/pins_OVERLORD.h b/Marlin/src/pins/mega/pins_OVERLORD.h index 49accf9f7c..1ae9e69af0 100644 --- a/Marlin/src/pins/mega/pins_OVERLORD.h +++ b/Marlin/src/pins/mega/pins_OVERLORD.h @@ -23,6 +23,9 @@ /** * Dreammaker Overlord v1.1 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Dreammaker%20Overlord%20v1.1/Schematic.pdf + * Origin: https://github.com/jdpiercy/Overlord-Pro/blob/master/Motherboard/Schematic.pdf + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -92,7 +95,7 @@ #define HEATER_1_PIN 3 #define HEATER_BED_PIN 4 -#define FAN_PIN 7 // material cooling fan +#define FAN0_PIN 7 // material cooling fan // // SD Card @@ -123,7 +126,7 @@ // OVERLORD OLED pins #define LCD_PINS_RS 20 #define LCD_PINS_D5 21 - #define LCD_PINS_ENABLE 15 + #define LCD_PINS_EN 15 #define LCD_PINS_D4 14 #define LCD_PINS_D6 5 #define LCD_PINS_D7 6 diff --git a/Marlin/src/pins/mega/pins_PICA.h b/Marlin/src/pins/mega/pins_PICA.h index 0e29d8dffe..5e9d607a78 100644 --- a/Marlin/src/pins/mega/pins_PICA.h +++ b/Marlin/src/pins/mega/pins_PICA.h @@ -23,6 +23,9 @@ /** * Arduino Mega with PICA pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/PICA/pica_schematic.pdf + * Origin: https://github.com/mjrice/PICA/blob/master/pica_schematic.pdf + * ATmega2560 * * PICA is Power, Interface, and Control Adapter and is open source hardware. * See https://github.com/mjrice/PICA for schematics etc. @@ -32,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 @@ -105,8 +112,8 @@ #endif #define HEATER_BED_PIN 8 // HEAT-BED -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #ifndef FAN_2_PIN #define FAN_2_PIN 7 @@ -120,7 +127,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) @@ -139,7 +146,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 33 - #define LCD_PINS_ENABLE 30 + #define LCD_PINS_EN 30 #define LCD_PINS_D4 35 #define LCD_PINS_D5 32 #define LCD_PINS_D6 37 diff --git a/Marlin/src/pins/mega/pins_PICAOLD.h b/Marlin/src/pins/mega/pins_PICAOLD.h index e19ea744e5..e15b4637b7 100644 --- a/Marlin/src/pins/mega/pins_PICAOLD.h +++ b/Marlin/src/pins/mega/pins_PICAOLD.h @@ -21,9 +21,13 @@ */ #pragma once +// Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/PICAOLD/pica_schematic.pdf +// Origin: https://github.com/mjrice/PICA/blob/97ab9e7771a8e5eef97788f3adcc17a9fa9de9b9/pica_schematic.pdf +// ATmega2560 + #define HEATER_0_PIN 9 // E0 #define HEATER_1_PIN 10 // E1 -#define FAN_PIN 11 +#define FAN0_PIN 11 #define FAN2_PIN 12 #include "pins_PICA.h" diff --git a/Marlin/src/pins/mega/pins_PROTONEER_CNC_SHIELD_V3.h b/Marlin/src/pins/mega/pins_PROTONEER_CNC_SHIELD_V3.h index f2e4d3da02..962fddc192 100644 --- a/Marlin/src/pins/mega/pins_PROTONEER_CNC_SHIELD_V3.h +++ b/Marlin/src/pins/mega/pins_PROTONEER_CNC_SHIELD_V3.h @@ -23,6 +23,9 @@ /** * Protoneer v3.00 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Protoneer%20CNC%20Shield%20v3.00/Arduino-CNC-Shield-Scematics-V3.XX_.webp + * Origin: https://i0.wp.com/blog.protoneer.co.nz/wp-content/uploads/2013/07/Arduino-CNC-Shield-Scematics-V3.XX_.jpg + * ATmega2560 * * This CNC shield has an UNO pinout and fits all Arduino-compatibles. * @@ -51,16 +54,16 @@ #define Y_STEP_PIN 3 #define Y_DIR_PIN 6 -#define Y_ENABLE_PIN X_ENABLE_PIN +#define Y_ENABLE_PIN X_ENABLE_PIN #define Z_STEP_PIN 4 #define Z_DIR_PIN 7 -#define Z_ENABLE_PIN X_ENABLE_PIN +#define Z_ENABLE_PIN X_ENABLE_PIN // Designated with letter "A" on BOARD #define E0_STEP_PIN 12 #define E0_DIR_PIN 13 -#define E0_ENABLE_PIN X_ENABLE_PIN +#define E0_ENABLE_PIN X_ENABLE_PIN // // Temperature sensors - These could be any analog output not hidden by board diff --git a/Marlin/src/pins/mega/pins_SILVER_GATE.h b/Marlin/src/pins/mega/pins_SILVER_GATE.h index c2ca5b3103..d739157aaf 100644 --- a/Marlin/src/pins/mega/pins_SILVER_GATE.h +++ b/Marlin/src/pins/mega/pins_SILVER_GATE.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2561 + #if NOT_TARGET(__AVR_ATmega1281__, __AVR_ATmega2561__) #error "Oops! Select 'Silvergate' in 'Tools > Board.'" #endif @@ -55,8 +57,8 @@ #define FIL_RUNOUT_PIN 34 // X_MAX unless overridden #endif -#ifndef FAN_PIN - #define FAN_PIN 5 +#ifndef FAN0_PIN + #define FAN0_PIN 5 #endif #define HEATER_0_PIN 7 @@ -73,9 +75,9 @@ #define TEMP_BED_PIN 6 #if HAS_WIRED_LCD - #if IS_U8GLIB_ST7920 // SPI GLCD 12864 ST7920 + #if IS_U8GLIB_ST7920 // SPI GLCD 12864 ST7920 #define LCD_PINS_RS 30 - #define LCD_PINS_ENABLE 20 + #define LCD_PINS_EN 20 #define LCD_PINS_D4 25 #define BEEPER_PIN 29 #define BTN_EN1 19 diff --git a/Marlin/src/pins/mega/pins_WANHAO_ONEPLUS.h b/Marlin/src/pins/mega/pins_WANHAO_ONEPLUS.h index 503dd9ec81..e224e06178 100644 --- a/Marlin/src/pins/mega/pins_WANHAO_ONEPLUS.h +++ b/Marlin/src/pins/mega/pins_WANHAO_ONEPLUS.h @@ -23,6 +23,7 @@ /** * Wanhao 0ne+ pin assignments + * ATmega2560 */ #include "env_validate.h" @@ -75,7 +76,7 @@ // #define HEATER_0_PIN 4 #define HEATER_BED_PIN 44 -#define FAN_PIN 12 // IO pin. Buffer needed +#define FAN0_PIN 12 // IO pin. Buffer needed // // SD Card diff --git a/Marlin/src/pins/mega/pins_WEEDO_62A.h b/Marlin/src/pins/mega/pins_WEEDO_62A.h index 4b3bf6a43b..d13de7ed30 100644 --- a/Marlin/src/pins/mega/pins_WEEDO_62A.h +++ b/Marlin/src/pins/mega/pins_WEEDO_62A.h @@ -23,6 +23,7 @@ /** * Based on WEEDO 62A pin configuration * Copyright (c) 2019 WEEDO3D Perron + * ATmega2560 */ #pragma once @@ -73,7 +74,7 @@ // #define HEATER_0_PIN 10 // EXTRUDER 1 #define HEATER_BED_PIN 8 // BED -#define FAN_PIN 4 // IO pin. Buffer needed +#define FAN0_PIN 4 // IO pin. Buffer needed // // Misc. Functions @@ -84,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/pins.h b/Marlin/src/pins/pins.h index e0ec241faf..5c90dbc962 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 @@ -61,740 +61,831 @@ #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 +// +// 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) || ALL(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 #else - #define NOT_TARGET(V...) NONE(V) + #define NOT_TARGET NONE #endif // -// RAMPS 1.3 / 1.4 - ATmega1280, ATmega2560 +// RAMPS 1.3 / 1.4 / 1.6+ - ATmega1280, ATmega2560 // #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 +#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 // #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 +#elif MB(KODAMA_BARDO) + #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 #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" // STM32F070 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" // 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 + #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 + #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_SKR_MINI_E3_V3_0_1) - #include "stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h"// STM32F4 env:STM32F401RC_btt + #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" // 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 + #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" // 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 + #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" // 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" // 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 // // 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:BIGTREE_OCTOPUS_V1 env:BIGTREE_OCTOPUS_V1_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:BIGTREE_OCTOPUS_V1 env:BIGTREE_OCTOPUS_V1_USB env:BIGTREE_OCTOPUS_V1_F407 env:BIGTREE_OCTOPUS_V1_F407_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:BIGTREE_OCTOPUS_V1 env:BIGTREE_OCTOPUS_V1_USB env:BIGTREE_OCTOPUS_PRO_V1_F429 env:BIGTREE_OCTOPUS_PRO_V1_F429_USB + #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 -#elif MB(VAKE403D) - #include "stm32f4/pins_VAKE403D.h" // STM32F4 + #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 +#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 +// 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:STM32H743Vx_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:STM32H743Vx_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 +#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 + #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 // // 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(LINUX_RAMPS) - #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 +#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 #else @@ -829,6 +920,7 @@ #define BOARD_TH3D_EZBOARD_LITE_V2 99923 #define BOARD_BTT_SKR_SE_BX 99924 #define BOARD_MKS_MONSTER8 99925 + #define BOARD_LINUX_RAMPS 99926 #if MB(MKS_13) #error "BOARD_MKS_13 has been renamed BOARD_MKS_GEN_13. Please update your configuration." @@ -884,6 +976,8 @@ #error "BOARD_BTT_SKR_SE_BX is now BOARD_BTT_SKR_SE_BX_V2 or BOARD_BTT_SKR_SE_BX_V3. Please update your configuration." #elif MB(MKS_MONSTER8) #error "BOARD_MKS_MONSTER8 is now BOARD_MKS_MONSTER8_V1 or BOARD_MKS_MONSTER8_V2. Please update your configuration." + #elif MB(LINUX_RAMPS) + #error "BOARD_LINUX_RAMPS is now BOARD_SIMULATED. Please update your configuration." #elif defined(MOTHERBOARD) #error "Unknown MOTHERBOARD value set in Configuration.h." #else @@ -917,6 +1011,7 @@ #undef BOARD_TH3D_EZBOARD_LITE_V2 #undef BOARD_BTT_SKR_SE_BX #undef BOARD_MKS_MONSTER8 + #undef BOARD_LINUX_RAMPS #endif diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 5b19ff1b2d..9181a5b9da 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) @@ -168,18 +168,24 @@ 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 #endif +bool pin_is_protected(const pin_t pin); + static void print_input_or_output(const bool isout) { - SERIAL_ECHOPGM_P(isout ? PSTR("Output = ") : PSTR("Input = ")); + SERIAL_ECHO(isout ? F("Output ") : F("Input ")); +} + +static void print_pin_state(const bool state) { + SERIAL_ECHO(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,25 +194,25 @@ 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 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); + if (start_string) SERIAL_ECHO(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 } @@ -230,14 +236,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 @@ -251,10 +257,10 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e } // 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); + 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(""); @@ -267,7 +273,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 +285,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) { diff --git a/Marlin/src/pins/pinsDebug_list.h b/Marlin/src/pins/pinsDebug_list.h index 39e07c739a..fa6cbf49b9 100644 --- a/Marlin/src/pins/pinsDebug_list.h +++ b/Marlin/src/pins/pinsDebug_list.h @@ -489,18 +489,27 @@ REPORT_NAME_DIGITAL(__LINE__, EXP3_10_PIN) #endif -#if _EXISTS(TMC_SW_MISO) - REPORT_NAME_DIGITAL(__LINE__, TMC_SW_MISO) +#if _EXISTS(TMC_SPI_MISO) + REPORT_NAME_DIGITAL(__LINE__, TMC_SPI_MISO) #endif -#if _EXISTS(TMC_SW_MOSI) - REPORT_NAME_DIGITAL(__LINE__, TMC_SW_MOSI) +#if _EXISTS(TMC_SPI_MOSI) + REPORT_NAME_DIGITAL(__LINE__, TMC_SPI_MOSI) #endif -#if _EXISTS(TMC_SW_SCK) - REPORT_NAME_DIGITAL(__LINE__, TMC_SW_SCK) +#if _EXISTS(TMC_SPI_SCK) + REPORT_NAME_DIGITAL(__LINE__, TMC_SPI_SCK) #endif #if _EXISTS(TFTGLCD_CS) REPORT_NAME_DIGITAL(__LINE__, TFTGLCD_CS) #endif +#if _EXISTS(TFTGLCD_SCK) + REPORT_NAME_DIGITAL(__LINE__, TFTGLCD_SCK) +#endif +#if _EXISTS(TFTGLCD_MISO) + REPORT_NAME_DIGITAL(__LINE__, TFTGLCD_MISO) +#endif +#if _EXISTS(TFTGLCD_MOSI) + REPORT_NAME_DIGITAL(__LINE__, TFTGLCD_MOSI) +#endif // // E Multiplexing @@ -730,8 +739,8 @@ // // Fans // -#if PIN_EXISTS(FAN) - REPORT_NAME_DIGITAL(__LINE__, FAN_PIN) +#if PIN_EXISTS(FAN0) + REPORT_NAME_DIGITAL(__LINE__, FAN0_PIN) #endif #if PIN_EXISTS(FAN1) REPORT_NAME_DIGITAL(__LINE__, FAN1_PIN) @@ -920,8 +929,8 @@ #if _EXISTS(LCD_PINS_D7) REPORT_NAME_DIGITAL(__LINE__, LCD_PINS_D7) #endif -#if _EXISTS(LCD_PINS_ENABLE) - REPORT_NAME_DIGITAL(__LINE__, LCD_PINS_ENABLE) +#if _EXISTS(LCD_PINS_EN) + REPORT_NAME_DIGITAL(__LINE__, LCD_PINS_EN) #endif #if _EXISTS(LCD_PINS_RS) REPORT_NAME_DIGITAL(__LINE__, LCD_PINS_RS) diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index 5b5cbcd214..e5467833e5 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -377,10 +377,9 @@ #undef W_SERIAL_RX_PIN #endif -#ifndef FAN_PIN - #define FAN_PIN -1 +#ifndef FAN0_PIN + #define FAN0_PIN -1 #endif -#define FAN0_PIN FAN_PIN #ifndef FAN1_PIN #define FAN1_PIN -1 #endif @@ -457,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 @@ -487,50 +491,45 @@ #define NUM_SERVO_PLUGS 4 #endif +// Only used within pins files +#undef NEEDS_X_MINMAX +#undef NEEDS_Y_MINMAX +#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 // -#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_STOP_PIN) && ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X_STOP) + #define X2_STOP_PIN X_STOP_PIN #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 #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 @@ -538,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 @@ -553,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 @@ -569,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 @@ -733,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 * @@ -741,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) @@ -758,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 @@ -812,25 +760,23 @@ // // 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 !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 - #undef X2_DIAG_PIN // Defined in Conditionals_post.h based on X2_USE_ENDSTOP #endif #endif @@ -847,14 +793,15 @@ #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_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) @@ -898,25 +845,23 @@ #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) - #define Y2_DIAG_PIN _EPIN(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 - #undef Y2_DIAG_PIN // Defined in Conditionals_post.h based on Y2_USE_ENDSTOP #endif #endif @@ -933,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 @@ -984,25 +930,23 @@ #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) - #define Z2_DIAG_PIN _EPIN(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 - #undef Z2_DIAG_PIN // Defined in Conditionals_post.h based on Z2_USE_ENDSTOP #endif #endif @@ -1019,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 @@ -1070,25 +1015,23 @@ #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) - #define Z3_DIAG_PIN _EPIN(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 - #undef Z3_DIAG_PIN // Defined in Conditionals_post.h based on Z3_USE_ENDSTOP #endif #endif @@ -1105,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 @@ -1156,25 +1100,23 @@ #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) - #define Z4_DIAG_PIN _EPIN(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 - #undef Z4_DIAG_PIN // Defined in Conditionals_post.h based on Z4_USE_ENDSTOP #endif #endif @@ -1191,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 @@ -1242,25 +1185,23 @@ #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) - #define I_DIAG_PIN _EPIN(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 - #undef I_DIAG_PIN // Defined in Conditionals_post.h based on I_USE_ENDSTOP #endif #endif @@ -1277,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 @@ -1328,25 +1270,23 @@ #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) - #define J_DIAG_PIN _EPIN(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 - #undef J_DIAG_PIN // Defined in Conditionals_post.h based on J_USE_ENDSTOP #endif #endif @@ -1363,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 @@ -1414,25 +1355,23 @@ #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) - #define K_DIAG_PIN _EPIN(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 - #undef K_DIAG_PIN // Defined in Conditionals_post.h based on K_USE_ENDSTOP #endif #endif @@ -1449,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 @@ -1500,25 +1440,23 @@ #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) - #define U_DIAG_PIN _EPIN(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 - #undef U_DIAG_PIN // Defined in Conditionals_post.h based on U_USE_ENDSTOP #endif #endif @@ -1535,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 @@ -1586,25 +1525,23 @@ #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) - #define V_DIAG_PIN _EPIN(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 - #undef V_DIAG_PIN // Defined in Conditionals_post.h based on O_USE_ENDSTOP #endif #endif @@ -1666,25 +1603,23 @@ #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) - #define W_DIAG_PIN _EPIN(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 - #undef W_DIAG_PIN // Defined in Conditionals_post.h based on Q_USE_ENDSTOP #endif #endif @@ -1701,359 +1636,25 @@ #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_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 -#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 - #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 +#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) + #define X2_MIN_PIN X2_STOP_PIN #endif #endif /** * 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 +#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) + #define Y2_MIN_PIN Y2_STOP_PIN #endif #endif @@ -2061,294 +1662,28 @@ * 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 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 - #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 - #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 - #endif + #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) + #define Z3_MIN_PIN Z3_STOP_PIN #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 - #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 - #endif + #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) + #define Z4_MIN_PIN Z4_STOP_PIN #endif #endif - -#endif // Z_MULTI_ENDSTOPS +#endif // // Default DOGLCD SPI delays @@ -2374,3 +1709,5 @@ #undef HAS_FREE_AUX2_PINS #undef DIAG_REMAPPED +#undef _E_DIAG_EXISTS +#undef E_DIAG_EXISTS diff --git a/Marlin/src/pins/rambo/env_validate.h b/Marlin/src/pins/rambo/env_validate.h index 84cf8392cd..ce2818f596 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/rambo/pins_EINSY_RAMBO.h b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h index c5d5fcef78..d73092c2f6 100644 --- a/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h @@ -23,6 +23,8 @@ /** * Einsy-Rambo pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Einsy-Rambo/Schematic%20Prints_Einsy%20Rambo_1.1a.PDF + * Origin: https://github.com/ultimachine/Einsy-Rambo/blob/1.1a/board/Project%20Outputs/Schematic%20Prints_Einsy%20Rambo_1.1a.PDF */ #include "env_validate.h" @@ -35,8 +37,8 @@ // // TMC2130 Configuration_adv defaults for EinsyRambo // -#if !AXIS_DRIVER_TYPE_X(TMC2130) || !AXIS_DRIVER_TYPE_Y(TMC2130) || !AXIS_DRIVER_TYPE_Z(TMC2130) || !AXIS_DRIVER_TYPE_E0(TMC2130) - #error "You must set ([XYZ]|E0)_DRIVER_TYPE to TMC2130 in Configuration.h for EinsyRambo." +#if (HAS_X_AXIS && !AXIS_DRIVER_TYPE_X(TMC2130)) || (HAS_Y_AXIS && !AXIS_DRIVER_TYPE_Y(TMC2130)) || (HAS_Z_AXIS && !AXIS_DRIVER_TYPE_Z(TMC2130)) || (HAS_EXTRUDERS && !AXIS_DRIVER_TYPE_E0(TMC2130)) + #error "For EinsyRambo you must set all *_DRIVER_TYPE to TMC2130 in Configuration.h." #endif // TMC2130 Diag Pins (currently just for reference) @@ -116,21 +118,24 @@ // #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 // #define HEATER_0_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN +#ifndef FAN0_PIN #ifdef MK3_FAN_PINS - #define FAN_PIN 6 + #define FAN0_PIN 6 #else - #define FAN_PIN 8 + #define FAN0_PIN 8 #endif #endif @@ -184,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 @@ -209,13 +216,13 @@ #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN #else #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 diff --git a/Marlin/src/pins/rambo/pins_EINSY_RETRO.h b/Marlin/src/pins/rambo/pins_EINSY_RETRO.h index 413eb8c98c..b4f09b7136 100644 --- a/Marlin/src/pins/rambo/pins_EINSY_RETRO.h +++ b/Marlin/src/pins/rambo/pins_EINSY_RETRO.h @@ -23,6 +23,10 @@ /** * Einsy-Retro pin assignments + * Schematic (1.0b): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Einsy-Retro/Schematic%20Prints_EinsyRetro_1.0b.PDF + * Origin (1.0b): https://github.com/ultimachine/EinsyRetro/blob/master/board/Project%20Outputs/Schematic%20Prints_EinsyRetro_1.0b.PDF + * Schematic (1.0c): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Einsy-Retro/Schematic%20Prints_EinsyRetro_1.0c.PDF + * Origin (1.0c): https://github.com/ultimachine/EinsyRetro/blob/master/board/Project%20Outputs/Schematic%20Prints_EinsyRetro_1.0c.PDF */ #include "env_validate.h" @@ -131,8 +135,8 @@ #define HEATER_0_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 8 +#ifndef FAN0_PIN + #define FAN0_PIN 8 #endif #define FAN1_PIN 6 @@ -149,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 @@ -174,13 +180,13 @@ #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS 85 - #define LCD_PINS_ENABLE 71 + #define LCD_PINS_EN 71 #define LCD_PINS_D4 70 #define BTN_EN1 18 #define BTN_EN2 19 #else #define LCD_PINS_RS 82 - #define LCD_PINS_ENABLE 18 // On 0.6b, use 61 + #define LCD_PINS_EN 18 // On 0.6b, use 61 #define LCD_PINS_D4 19 // On 0.6b, use 59 #define LCD_PINS_D5 70 #define LCD_PINS_D6 85 diff --git a/Marlin/src/pins/rambo/pins_MINIRAMBO.h b/Marlin/src/pins/rambo/pins_MINIRAMBO.h index 31d44f2b34..32a74515d9 100644 --- a/Marlin/src/pins/rambo/pins_MINIRAMBO.h +++ b/Marlin/src/pins/rambo/pins_MINIRAMBO.h @@ -23,6 +23,10 @@ /** * Mini-RAMBo pin assignments + * Schematic (1.3a): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Mini%20RAMBo/Mini-Rambo.PDF + * Origin (1.3a): https://github.com/ultimachine/Mini-Rambo/blob/1.3a/board/Project%20Outputs%20for%20Mini-Rambo/Mini-Rambo.PDF + * Schematic (1.0a): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Mini%20RAMBo%201.0a/Mini-Rambo.PDF + * Origin (1.0a): https://github.com/ultimachine/Mini-Rambo/blob/v1.1b/board/Project%20Outputs%20for%20Mini-Rambo/Mini-Rambo.PDF */ #include "env_validate.h" @@ -105,8 +109,8 @@ #endif #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 8 +#ifndef FAN0_PIN + #define FAN0_PIN 8 #endif #define FAN1_PIN 6 @@ -122,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 @@ -158,7 +164,7 @@ #define BTN_ENC 21 #define LCD_PINS_RS 38 - #define LCD_PINS_ENABLE 5 + #define LCD_PINS_EN 5 #define LCD_PINS_D4 14 #define LCD_PINS_D5 15 #define LCD_PINS_D6 32 @@ -177,7 +183,7 @@ #define BTN_ENC 9 #define LCD_PINS_RS 82 - #define LCD_PINS_ENABLE 18 + #define LCD_PINS_EN 18 #define LCD_PINS_D4 19 #define LCD_PINS_D5 70 #define LCD_PINS_D6 85 diff --git a/Marlin/src/pins/rambo/pins_RAMBO.h b/Marlin/src/pins/rambo/pins_RAMBO.h index cb7a059134..ba8046d6d0 100644 --- a/Marlin/src/pins/rambo/pins_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_RAMBO.h @@ -39,6 +39,8 @@ /** * Rambo pin assignments + * Schematic (1.1b): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMBo/Rambo1-1-schematic.png + * Origin (1.1b): https://www.reprap.org/wiki/File:Rambo1-1-schematic.png */ #include "env_validate.h" @@ -138,8 +140,8 @@ #define HEATER_2_PIN 6 #define HEATER_BED_PIN 3 -#ifndef FAN_PIN - #define FAN_PIN 8 +#ifndef FAN0_PIN + #define FAN0_PIN 8 #endif #ifndef FAN1_PIN #define FAN1_PIN 6 @@ -166,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 @@ -202,13 +206,13 @@ #if IS_ULTIPANEL || TOUCH_UI_ULTIPANEL #define LCD_PINS_RS 70 - #define LCD_PINS_ENABLE 71 + #define LCD_PINS_EN 71 #define LCD_PINS_D4 72 #define LCD_PINS_D5 73 #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 @@ -262,7 +266,7 @@ //#define SHIFT_EN_PIN 17 #define LCD_PINS_RS 75 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h b/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h index 533284a4bf..0d212010e0 100644 --- a/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h +++ b/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h @@ -25,7 +25,7 @@ * Rambo pin assignments MODIFIED FOR Scoovo X9H ************************************************/ -#include "env_target.h" +#include "env_validate.h" #define BOARD_INFO_NAME "Scoovo X9H" @@ -105,8 +105,8 @@ #define HEATER_1_PIN 7 #define HEATER_BED_PIN 3 -#ifndef FAN_PIN - #define FAN_PIN 8 +#ifndef FAN0_PIN + #define FAN0_PIN 8 #endif #define FAN1_PIN 6 #define FAN2_PIN 2 @@ -126,7 +126,7 @@ // LCD / Controller // #define LCD_PINS_RS 70 // Ext2_5 -#define LCD_PINS_ENABLE 71 // Ext2_7 +#define LCD_PINS_EN 71 // Ext2_7 #define LCD_PINS_D4 72 // Ext2_9 ? #define LCD_PINS_D5 73 // Ext2_11 ? #define LCD_PINS_D6 74 // Ext2_13 @@ -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/env_validate.h b/Marlin/src/pins/ramps/env_validate.h index 6006a78f01..86d7bce16c 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/ramps/pins_3DRAG.h b/Marlin/src/pins/ramps/pins_3DRAG.h index 1e9d53a6cb..2d419e1321 100644 --- a/Marlin/src/pins/ramps/pins_3DRAG.h +++ b/Marlin/src/pins/ramps/pins_3DRAG.h @@ -23,6 +23,10 @@ /** * 3DRAG (and K8200 / K8400) Arduino Mega with RAMPS v1.4 pin assignments + * This may be compatible with the standalone Controller variant. + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/3DRAG%20+%20Controller/Schema_base.jpg + * Origin: https://reprap.org/wiki/File:Schema_base.jpg + * ATmega2560, ATmega1280 */ #ifndef BOARD_INFO_NAME @@ -113,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 @@ -132,7 +136,7 @@ // TODO: Remap EXP1/2 based on adapter #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 37 #define LCD_PINS_D5 35 #define LCD_PINS_D6 33 diff --git a/Marlin/src/pins/ramps/pins_AZTEEG_X3.h b/Marlin/src/pins/ramps/pins_AZTEEG_X3.h index 31adea4270..17581dca62 100644 --- a/Marlin/src/pins/ramps/pins_AZTEEG_X3.h +++ b/Marlin/src/pins/ramps/pins_AZTEEG_X3.h @@ -23,6 +23,9 @@ /** * AZTEEG_X3 Arduino Mega with RAMPS v1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/AZTEEG_X3/AZTEEG%20X3%20PUB%20v1.12.pdf + * Origin: http://files.panucatt.com/datasheets/azteegx3_designfiles.zip + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -51,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 24266bb9d2..ddd56b28e8 100644 --- a/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h +++ b/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h @@ -23,6 +23,9 @@ /** * AZTEEG_X3_PRO (Arduino Mega) pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/AZTEEG_X3_PRO/AZTEEG%20X3%20PRO%201.0%20PUB.pdf + * Origin: http://files.panucatt.com/datasheets/x3pro_sch_v1.0.zip + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -53,8 +56,8 @@ #define Y_STOP_PIN 14 #define Z_STOP_PIN 18 -#ifndef FAN_PIN - #define FAN_PIN 6 +#ifndef FAN0_PIN + #define FAN0_PIN 6 #endif #if ENABLED(CASE_LIGHT_ENABLE) && !PIN_EXISTS(CASE_LIGHT) @@ -142,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 @@ -169,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_BAM_DICE_DUE.h b/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h index fa622ffb15..cf237fb9c1 100644 --- a/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h +++ b/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h @@ -23,6 +23,9 @@ /** * BAM&DICE Due (Arduino Mega) pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/BAM&DICE%20Due/2PRINTBETA-BAM&DICE-DUE-V1.1-sch.pdf + * Origin: http://www.2printbeta.de/download/2PRINTBETA-BAM&DICE-DUE-V1.1-sch.pdf + * ATmega2560, ATmega1280 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,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_BIQU_KFB_2.h b/Marlin/src/pins/ramps/pins_BIQU_KFB_2.h index 58a62fb8bc..aab66f0fea 100644 --- a/Marlin/src/pins/ramps/pins_BIQU_KFB_2.h +++ b/Marlin/src/pins/ramps/pins_BIQU_KFB_2.h @@ -23,6 +23,7 @@ /** * KFB 2.0 – Arduino Mega2560 with RAMPS v1.4 pin assignments + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,7 +35,6 @@ // // Heaters / Fans // -// Power outputs BEEF or BEFF -#define MOSFET_D_PIN 7 +#define MOSFET_D_PIN 7 #include "pins_RAMPS.h" 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 4a54b85ae0..08d4492ccb 100644 --- a/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h +++ b/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h @@ -23,6 +23,9 @@ /** * bq ZUM Mega 3D board definition + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/bq%20ZUM%20Mega%203D/Zum%20Mega%203D.PDF + * Origin: https://github.com/bq/zum/blob/master/zum-mega3d/Zum%20Mega%203D.PDF + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -92,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 @@ -118,9 +123,10 @@ #include "pins_RAMPS_13.h" // ... RAMPS // -// Used by the Hephestos 2 heated bed upgrade kit +// Hephestos 2 heated bed upgrade kit uses pin 8 // #if ENABLED(HEPHESTOS2_HEATED_BED_KIT) #undef HEATER_BED_PIN #define HEATER_BED_PIN 8 + #define HEATER_BED_INVERTING true #endif diff --git a/Marlin/src/pins/ramps/pins_COPYMASTER_3D.h b/Marlin/src/pins/ramps/pins_COPYMASTER_3D.h index 020941027a..1285d0244c 100644 --- a/Marlin/src/pins/ramps/pins_COPYMASTER_3D.h +++ b/Marlin/src/pins/ramps/pins_COPYMASTER_3D.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #define BOARD_INFO_NAME "Copymaster 3D RAMPS" #define Z_STEP_PIN 47 diff --git a/Marlin/src/pins/ramps/pins_DAGOMA_F5.h b/Marlin/src/pins/ramps/pins_DAGOMA_F5.h index e1bd2ec4ed..9760ccbef5 100644 --- a/Marlin/src/pins/ramps/pins_DAGOMA_F5.h +++ b/Marlin/src/pins/ramps/pins_DAGOMA_F5.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #if HOTENDS > 2 || E_STEPPERS > 2 #error "Dagoma3D F5 supports up to 2 hotends / E steppers." #endif diff --git a/Marlin/src/pins/ramps/pins_DUPLICATOR_I3_PLUS.h b/Marlin/src/pins/ramps/pins_DUPLICATOR_I3_PLUS.h index 1a4b83f02d..90f46fe386 100644 --- a/Marlin/src/pins/ramps/pins_DUPLICATOR_I3_PLUS.h +++ b/Marlin/src/pins/ramps/pins_DUPLICATOR_I3_PLUS.h @@ -23,6 +23,7 @@ /** * Wanhao Duplicator i3 Plus pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -71,7 +72,7 @@ #define HEATER_0_PIN 4 // PG5 / PWM4 #define HEATER_BED_PIN 3 // PE5 / PWM3 -#define FAN_PIN 5 // PE3 / PWM5 +#define FAN0_PIN 5 // PE3 / PWM5 // // Misc. Functions @@ -89,7 +90,7 @@ #if HAS_WIRED_LCD #if ENABLED(ZONESTAR_LCD) #define LCD_PINS_RS 2 - #define LCD_PINS_ENABLE 36 + #define LCD_PINS_EN 36 #define LCD_PINS_D4 37 #define LCD_PINS_D5 34 #define LCD_PINS_D6 35 diff --git a/Marlin/src/pins/ramps/pins_FELIX2.h b/Marlin/src/pins/ramps/pins_FELIX2.h index 3e7849d71f..f88923e0c9 100644 --- a/Marlin/src/pins/ramps/pins_FELIX2.h +++ b/Marlin/src/pins/ramps/pins_FELIX2.h @@ -23,6 +23,7 @@ /** * FELIXprinters v2.0/3.0 (RAMPS v1.4) pin assignments + * ATmega2560, ATmega1280 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,7 +35,6 @@ // // Heaters / Fans // -// Power outputs EFBF or EFBE #define MOSFET_D_PIN 7 #include "pins_RAMPS.h" diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h index a6791ff7c8..f6ee06846d 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h @@ -23,6 +23,7 @@ /** * Formbot Raptor pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -115,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) @@ -128,8 +129,8 @@ #define HEATER_1_PIN 7 #define HEATER_BED_PIN 8 -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #ifndef FIL_RUNOUT_PIN @@ -173,7 +174,7 @@ #define SD_DETECT_PIN 49 #define KILL_PIN 41 #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h index 4fb10bfd35..65828fd4fb 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h @@ -23,12 +23,13 @@ /** * Formbot Raptor 2 pin assignments + * ATmega2560 */ #define BOARD_INFO_NAME "Formbot Raptor2" #define DEFAULT_MACHINE_NAME BOARD_INFO_NAME -#define FAN_PIN 6 +#define FAN0_PIN 6 #ifndef FIL_RUNOUT_PIN #define FIL_RUNOUT_PIN 22 @@ -43,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_FORMBOT_TREX2PLUS.h b/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h index 17d3abc71f..179bad04a5 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h @@ -22,7 +22,8 @@ #pragma once /** - * Formbot pin assignments + * Formbot T-Rex 2+ pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -112,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) @@ -125,7 +126,7 @@ #define HEATER_1_PIN 7 #define HEATER_BED_PIN 58 -#define FAN_PIN 9 +#define FAN0_PIN 9 #if HAS_FILAMENT_SENSOR #define FIL_RUNOUT_PIN 4 @@ -174,7 +175,7 @@ #endif #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h b/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h index e23a63994f..fd799e0d49 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h @@ -22,7 +22,8 @@ #pragma once /** - * Formbot pin assignments + * Formbot T-Rex 3 pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -118,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) @@ -131,7 +132,7 @@ #define HEATER_1_PIN 7 #define HEATER_BED_PIN 8 -#define FAN_PIN 9 +#define FAN0_PIN 9 #define FAN1_PIN 12 #define FIL_RUNOUT_PIN 22 @@ -163,7 +164,7 @@ // #if IS_RRD_SC #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h b/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h index b8de260909..824dbd9f2d 100644 --- a/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h +++ b/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h @@ -23,6 +23,9 @@ // // FYSETC F6 1.3 (and 1.4) pin assignments +// Schematic (1.3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/FYSETC%20F6%201.3/F6_V13.pdf +// Origin: https://github.com/FYSETC/FYSETC-F6/blob/master/Hardware/V1.3/F6_V13.pdf +// ATmega2560 // #if NOT_TARGET(__AVR_ATmega2560__) @@ -182,7 +185,7 @@ #define HEATER_2_PIN 7 #define HEATER_BED_PIN 8 -#define FAN_PIN 44 +#define FAN0_PIN 44 #define FAN1_PIN 45 #define FAN2_PIN 46 @@ -246,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 @@ -263,7 +266,7 @@ #elif HAS_MARLINUI_U8GLIB || HAS_MARLINUI_HD44780 #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/ramps/pins_FYSETC_F6_14.h b/Marlin/src/pins/ramps/pins_FYSETC_F6_14.h index 1fc24154b7..9604d0ecbf 100644 --- a/Marlin/src/pins/ramps/pins_FYSETC_F6_14.h +++ b/Marlin/src/pins/ramps/pins_FYSETC_F6_14.h @@ -23,6 +23,9 @@ // // FYSETC F6 v1.4 pin assignments +// Schematic (1.4): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/FYSETC%20F6%20v1.4/F6%20V1.4%20Sch.pdf +// Origin (1.4): https://github.com/FYSETC/FYSETC-F6/blob/master/Hardware/V1.4/F6%20V1.4%20Sch.pdf +// ATmega2560 // #define BOARD_INFO_NAME "FYSETC F6 1.4" diff --git a/Marlin/src/pins/ramps/pins_K8200.h b/Marlin/src/pins/ramps/pins_K8200.h index 395e1ccca5..d2557b26c3 100644 --- a/Marlin/src/pins/ramps/pins_K8200.h +++ b/Marlin/src/pins/ramps/pins_K8200.h @@ -24,6 +24,9 @@ /** * K8200 Arduino Mega with RAMPS v1.3 pin assignments * Identical to 3DRAG + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Velleman%20K8200/K8200diagram.jpg + * Origin: https://www.velleman.eu/images/tmp/K8200diagram.jpg + * ATmega2560 */ #define BOARD_INFO_NAME "Velleman K8200" diff --git a/Marlin/src/pins/ramps/pins_K8400.h b/Marlin/src/pins/ramps/pins_K8400.h index 22ac1be8ab..bcb145825b 100644 --- a/Marlin/src/pins/ramps/pins_K8400.h +++ b/Marlin/src/pins/ramps/pins_K8400.h @@ -24,6 +24,9 @@ /** * Velleman K8400 (Vertex) * 3DRAG clone + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Velleman%20K8400/k8400-schema-electronique.jpg + * Origin: https://filimprimante3d.fr/documents/k8400-schema-electronique.jpg + * ATmega2560, ATmega1280 * * K8400 has some minor differences over a normal 3Drag: * - No X/Y max endstops @@ -50,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_K8600.h b/Marlin/src/pins/ramps/pins_K8600.h index e4468a6098..eacaf95b38 100644 --- a/Marlin/src/pins/ramps/pins_K8600.h +++ b/Marlin/src/pins/ramps/pins_K8600.h @@ -23,6 +23,7 @@ /** * VERTEX NANO Arduino Mega with RAMPS EFB v1.4 pin assignments. + * ATmega2560, ATmega1280 */ #if HAS_MULTI_HOTEND @@ -48,7 +49,7 @@ // Heaters / Fans // #define HEATER_BED_PIN -1 -#define FAN_PIN 8 +#define FAN0_PIN 8 // // Misc. Functions @@ -62,7 +63,7 @@ #if HAS_WIRED_LCD && IS_NEWPANEL #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 37 #define LCD_PINS_D5 35 #define LCD_PINS_D6 33 diff --git a/Marlin/src/pins/ramps/pins_K8800.h b/Marlin/src/pins/ramps/pins_K8800.h index 17bb59fdc9..826e1b206a 100644 --- a/Marlin/src/pins/ramps/pins_K8800.h +++ b/Marlin/src/pins/ramps/pins_K8800.h @@ -23,6 +23,9 @@ /** * Velleman K8800 (Vertex) + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Velleman%20K8800/K8800-schematic-V1.4.pdf + * Origin: https://www.velleman.eu/downloads/files/vertex-delta/schematics/K8800-schematic-V1.4.pdf + * ATmega2560, ATmega1280 */ #include "env_validate.h" @@ -71,7 +74,7 @@ // Heaters / Fans // #define HEATER_0_PIN 10 -#define FAN_PIN 8 +#define FAN0_PIN 8 #define CONTROLLER_FAN_PIN 9 // @@ -99,7 +102,7 @@ #define DOGLCD_A0 27 #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 37 #define LCD_PINS_D5 35 #define LCD_PINS_D6 33 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 0000000000..12597c4270 --- /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_LONGER3D_LKx_PRO.h b/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h index 51f9cd8038..cb28762adc 100644 --- a/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h +++ b/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h @@ -23,6 +23,7 @@ /** * Longer3D LK1/LK4/LK5 Pro board pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -126,20 +127,20 @@ // 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) - /** CR-10 Stock Display - * ------ - * GND | 9 10 | 5V - * LCD_PINS_RS D5 | 7 8 | D4 LCD_PINS_ENABLE - * BTN_EN2 D19 | 5 6 D6 LCD_PINS_D4 - * BTN_EN1 D18 | 3 4 | GND - * BEEPER_PIN D11 | 1 2 | D15 BTN_ENC - * ------ +#if ALL(CR10_STOCKDISPLAY, LONGER_LK5) + /** CR-10 Stock Display + * ------ + * BEEPER D11 | 1 2 | D15 ENC + * EN1 D18 | 3 4 | GND + * EN2 D19 5 6 | D6 LCD_D4 + * LCD_RS D5 | 7 8 | D4 LCD_ENABLE + * GND | 9 10 | 5V + * ------ * Connected via provided custom cable to: * Aux-1, J21, J17 and Y-Max. */ #define LCD_PINS_RS 5 - #define LCD_PINS_ENABLE 4 + #define LCD_PINS_EN 4 #define LCD_PINS_D4 6 #define BTN_EN1 18 #define BTN_EN2 19 diff --git a/Marlin/src/pins/ramps/pins_MAKEBOARD_MINI.h b/Marlin/src/pins/ramps/pins_MAKEBOARD_MINI.h index a42dba874f..2ab463d681 100644 --- a/Marlin/src/pins/ramps/pins_MAKEBOARD_MINI.h +++ b/Marlin/src/pins/ramps/pins_MAKEBOARD_MINI.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #define BOARD_INFO_NAME "MAKEboard Mini" // diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_10.h b/Marlin/src/pins/ramps/pins_MKS_BASE_10.h index 64efa46c05..8d46ac36fa 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_10.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_10.h @@ -23,6 +23,12 @@ /** * MKS BASE 1.0 – Arduino Mega2560 with RAMPS v1.4 pin assignments + * Schematics: + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20BASE%201.0/PAGE1.pdf + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20BASE%201.0/PAGE2.pdf + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20BASE%201.0/PAGE3.pdf + * Origin: https://reprap.org/wiki/File:MKS_Base_V1.0_source.zip + * ATmega2560 * * Rev B - Override pin definitions for CASE_LIGHT and M3/M4/M5 spindle control */ diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_14.h b/Marlin/src/pins/ramps/pins_MKS_BASE_14.h index 7e2a722cf2..9877877ffd 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_14.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_14.h @@ -23,6 +23,7 @@ /** * MKS BASE v1.4 with A4982 stepper drivers and digital micro-stepping + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -32,11 +33,6 @@ #define BOARD_INFO_NAME "MKS BASE 1.4" #define MKS_BASE_VERSION 14 -// -// Heaters / Fans -// -#define FAN_PIN 9 // PH6 ** Pin18 ** PWM9 - // Other Mods #define SERVO3_PIN 12 // PB6 ** Pin25 ** D12 diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_15.h b/Marlin/src/pins/ramps/pins_MKS_BASE_15.h index 5fedd3f97c..1d93ec5cf9 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_15.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_15.h @@ -23,6 +23,7 @@ /** * MKS BASE v1.5 with A4982 stepper drivers and digital micro-stepping + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_16.h b/Marlin/src/pins/ramps/pins_MKS_BASE_16.h index 63e0b51d3c..bb6def5ca4 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_16.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_16.h @@ -23,6 +23,9 @@ /** * MKS BASE v1.6 with A4982 stepper drivers and digital micro-stepping + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20BASE%201.6/MKS%20Base%20V1.6_004%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-BASE/blob/master/hardware/MKS%20Base%20V1.6_004/MKS%20Base%20V1.6_004%20SCH.pdf + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -35,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_MKS_BASE_HEROIC.h b/Marlin/src/pins/ramps/pins_MKS_BASE_HEROIC.h index 973f924e7c..c50f28a407 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_HEROIC.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_HEROIC.h @@ -23,6 +23,7 @@ /** * MKS BASE with Heroic HR4982 stepper drivers + * ATmega2560 */ #include "pins_MKS_BASE_15.h" // ... MKS_BASE_common ... RAMPS diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_common.h b/Marlin/src/pins/ramps/pins_MKS_BASE_common.h index 9047a4bcf0..b0f0866bc6 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_common.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_common.h @@ -23,6 +23,7 @@ /** * MKS BASE – Arduino Mega2560 with RAMPS pin assignments + * ATmega2560 */ #ifndef BOARD_INFO_NAME @@ -33,8 +34,8 @@ // // Heaters / Fans // - // Power outputs EFBF or EFBE - #define MOSFET_D_PIN 7 + #define MOSFET_B_PIN 7 + #define FAN0_PIN 9 // // M3/M4/M5 - Spindle/Laser Control @@ -49,12 +50,9 @@ #define CASE_LIGHT_PIN 2 #endif -#endif - -// -// Microstepping pins -// -#if MKS_BASE_VERSION >= 14 // |===== 1.4 =====|===== 1.5+ =====| + // + // Microstepping pins + // |===== 1.4 =====|===== 1.5+ =====| #define X_MS1_PIN 5 // PE3 | Pin 5 | PWM5 | | D3 | SERVO2_PIN #define X_MS2_PIN 6 // PH3 | Pin 15 | PWM6 | Pin 14 | D6 | SERVO1_PIN #define Y_MS1_PIN 59 // PF5 | Pin 92 | A5 | | | diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_13.h b/Marlin/src/pins/ramps/pins_MKS_GEN_13.h index 1e354a10dc..9afdc62a53 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_13.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_13.h @@ -23,6 +23,9 @@ /** * Arduino Mega with RAMPS v1.4 adjusted pin assignments + * Schematic (1.4): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20GEN%20v1.4/MKS%20GEN%20V1.4_004%20SCH.pdf + * Origin (1.4): https://github.com/makerbase-mks/MKS-GEN/blob/master/hardware/MKS%20GEN%20V1.4_004/MKS%20GEN%20V1.4_004%20SCH.pdf + * ATmega2560, ATmega1280 * * MKS GEN v1.3 (Extruder, Fan, Bed) * MKS GEN v1.3 (Extruder, Extruder, Fan, Bed) @@ -39,10 +42,8 @@ // // Heaters / Fans // -// Power outputs EFBF or EFBE -// #define MOSFET_B_PIN 7 -#define FAN_PIN 9 +#define FAN0_PIN 9 // // PSU / SERVO @@ -62,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_MKS_GEN_L.h b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h index ca1f133816..73e7aa577d 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_L.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h @@ -23,6 +23,9 @@ /** * MKS GEN L – Arduino Mega2560 with RAMPS v1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20GEN%20L%20v1.0/MKS%20Gen_L%20V1.0_008%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-GEN_L/blob/master/hardware/MKS%20Gen_L%20V1.0_008/MKS%20Gen_L%20V1.0_008%20SCH.pdf + * ATmega2560, ATmega1280 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,14 +37,11 @@ // // Heaters / Fans // -// Power outputs EFBF or EFBE -#define MOSFET_D_PIN 7 -// Hotend, Hotend, Bed + Fan on D9 -#if FET_ORDER_EEB - #define MOSFET_B_PIN 7 - #define FAN_PIN 9 -#endif +#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 @@ -49,11 +49,11 @@ // #ifndef X_CS_PIN - #define X_CS_PIN 59 + #define X_CS_PIN 59 #endif #ifndef Y_CS_PIN - #define Y_CS_PIN 63 + #define Y_CS_PIN 63 #endif #include "pins_RAMPS.h" diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_L_V2.h b/Marlin/src/pins/ramps/pins_MKS_GEN_L_V2.h index 0378b166a2..931843de7c 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_L_V2.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_L_V2.h @@ -23,6 +23,9 @@ /** * MKS GEN L V2 – Arduino Mega2560 with RAMPS v1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20GEN%20L%20V2.0/MKS%20Gen_L%20V2.0_001%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-GEN_L/blob/master/hardware/MKS%20Gen_L%20V2.0_001/MKS%20Gen_L%20V2.0_001%20SCH.pdf + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,8 +37,8 @@ // // Heaters / Fans // -// Power outputs EFBF or EFBE -#define MOSFET_D_PIN 7 +#define MOSFET_B_PIN 7 +#define FAN0_PIN 9 // // CS Pins wired to avoid conflict with the LCD diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_L_V21.h b/Marlin/src/pins/ramps/pins_MKS_GEN_L_V21.h index d508cb453f..6cea92c15b 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_L_V21.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_L_V21.h @@ -23,6 +23,9 @@ /** * MKS GEN L V2 – Arduino Mega2560 with RAMPS v1.4 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/MKS%20GEN%20L%20V2.1/MKS%20GEN_L%20V2.1_001%20SCH.pdf + * Origin: https://github.com/makerbase-mks/MKS-GEN_L/blob/master/hardware/MKS%20Gen_L%20V2.1_001/MKS%20GEN_L%20V2.1_001%20SCH.pdf + * ATmega2560 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -34,8 +37,8 @@ // // Heaters / Fans // -// Power outputs EFBF or EFBE -#define MOSFET_D_PIN 7 +#define MOSFET_B_PIN 7 +#define FAN0_PIN 9 // // CS Pins wired to avoid conflict with the LCD diff --git a/Marlin/src/pins/ramps/pins_ORTUR_4.h b/Marlin/src/pins/ramps/pins_ORTUR_4.h index e47bae1915..d2adf9971c 100644 --- a/Marlin/src/pins/ramps/pins_ORTUR_4.h +++ b/Marlin/src/pins/ramps/pins_ORTUR_4.h @@ -23,6 +23,7 @@ /** * Ortur 4 Arduino Mega based on RAMPS v1.4 pin assignments + * ATmega2560 */ #define BOARD_INFO_NAME "Ortur 4.3" @@ -82,7 +83,7 @@ #define BEEPER_PIN 35 #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 23 + #define LCD_PINS_EN 23 #define LCD_PINS_D4 37 #define LCD_SDSS 53 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 0000000000..11451e95a4 --- /dev/null +++ b/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h @@ -0,0 +1,126 @@ +/** + * 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 + +// +// 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 diff --git a/Marlin/src/pins/ramps/pins_PXMALION_CORE_I3.h b/Marlin/src/pins/ramps/pins_PXMALION_CORE_I3.h index 12c40c7dca..ee0633992e 100644 --- a/Marlin/src/pins/ramps/pins_PXMALION_CORE_I3.h +++ b/Marlin/src/pins/ramps/pins_PXMALION_CORE_I3.h @@ -22,6 +22,7 @@ /** * Pxmalion Core i3 - https://github.com/Pxmalion + * ATmega2560 */ #include "env_validate.h" diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 4e4ca60583..08c059477b 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -23,6 +23,7 @@ /** * Arduino Mega with RAMPS v1.4 (or v1.3) pin assignments + * ATmega2560, ATmega1280 * * Applies to the following boards: * @@ -96,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 @@ -108,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 @@ -249,22 +250,22 @@ #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 #endif #endif -#ifndef FAN_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan - #define FAN_PIN MOSFET_B_PIN - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan - #define FAN_PIN MOSFET_C_PIN +#ifndef FAN0_PIN + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #define FAN0_PIN MOSFET_B_PIN + #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 FAN_PIN 4 // IO pin. Buffer needed + #define FAN0_PIN 4 // IO pin. Buffer needed #else // Non-specific are "EFB" (i.e., "EFBF" or "EFBE") - #define FAN_PIN MOSFET_B_PIN + #define FAN0_PIN MOSFET_B_PIN #endif #endif @@ -308,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." @@ -319,15 +320,15 @@ // // TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 66 +#if HAS_TMC_SPI + #ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI 66 #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 44 + #ifndef TMC_SPI_MISO + #define TMC_SPI_MISO 44 #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 64 + #ifndef TMC_SPI_SCK + #define TMC_SPI_SCK 64 #endif #endif @@ -338,8 +339,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 @@ -567,7 +569,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 @@ -595,13 +597,13 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS EXP2_07_PIN // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE EXP2_06_PIN // SID (MOSI) + #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_ENABLE AUX2_08_PIN + #define LCD_PINS_EN AUX2_08_PIN #define LCD_PINS_D4 AUX2_10_PIN #define LCD_PINS_D5 AUX2_09_PIN #define LCD_PINS_D6 AUX2_07_PIN @@ -616,7 +618,7 @@ #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #if !IS_NEWPANEL @@ -630,7 +632,7 @@ #endif #define LCD_PINS_RS AUX2_05_PIN - #define LCD_PINS_ENABLE AUX2_07_PIN + #define LCD_PINS_EN AUX2_07_PIN #define LCD_PINS_D4 AUX2_04_PIN #define LCD_PINS_D5 AUX2_06_PIN #define LCD_PINS_D6 AUX2_08_PIN @@ -642,7 +644,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 @@ -652,7 +654,7 @@ #define DOGLCD_SCK EXP1_05_PIN #else #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 @@ -688,8 +690,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 @@ -738,13 +738,15 @@ #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 #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 @@ -762,7 +764,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 @@ -775,9 +779,8 @@ #endif #define KILL_PIN EXP2_08_PIN - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(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 @@ -813,7 +816,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 @@ -831,7 +834,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 @@ -856,8 +861,6 @@ #elif ENABLED(G3D_PANEL) - #define BEEPER_PIN EXP1_01_PIN - #ifndef SD_DETECT_PIN #define SD_DETECT_PIN EXP2_07_PIN #endif @@ -875,9 +878,11 @@ #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 + #if ENABLED(PANEL_ONE) // Buttons connect directly to AUX-2 #define BTN_EN1 AUX2_03_PIN #define BTN_EN2 AUX2_04_PIN #define BTN_ENC AUX3_02_PIN @@ -890,6 +895,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 @@ -907,7 +916,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_RAMPS_13.h b/Marlin/src/pins/ramps/pins_RAMPS_13.h index 6e7c8cbab5..026492e4a8 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_13.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_13.h @@ -23,6 +23,7 @@ /** * Arduino Mega with RAMPS v1.3 pin assignments + * ATmega2560, ATmega1280 * * Applies to the following boards: * 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 0000000000..803a1de30b --- /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" diff --git a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h index 3d5f5d6f91..49a8c196d0 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #if HOTENDS > 2 || E_STEPPERS > 2 #error "Creality RAMPS supports up to 2 hotends / E steppers." #endif @@ -30,8 +32,8 @@ // // Heaters / Fans // -#define MOSFET_B_PIN 7 // For HEATER_1_PIN ("EEF" or "EEB") -#define FAN_PIN 9 +#define MOSFET_B_PIN 7 +#define FAN0_PIN 9 #define FIL_RUNOUT_PIN 2 #if NUM_RUNOUT_SENSORS >= 2 @@ -55,6 +57,8 @@ #define CASE_LIGHT_PIN 65 #endif +#define SERVO1_PIN 12 + #include "pins_RAMPS.h" #ifndef BEEPER_PIN diff --git a/Marlin/src/pins/ramps/pins_RAMPS_ENDER_4.h b/Marlin/src/pins/ramps/pins_RAMPS_ENDER_4.h index 8f9148b732..ece072b509 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_ENDER_4.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_ENDER_4.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "Ender-4 only supports 1 hotend / E stepper." #endif @@ -34,7 +36,7 @@ // band (case light). Thus the hotend and controller fans are always-on. #if ENABLED(CASE_LIGHT_ENABLE) - #undef FAN_PIN + #undef FAN0_PIN #ifndef CASE_LIGHT_PIN #define CASE_LIGHT_PIN MOSFET_B_PIN #endif diff --git a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h index 9747666235..df24a7f19e 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h @@ -23,6 +23,7 @@ /** * Arduino Mega with RAMPS v1.0, v1.1, v1.2 pin assignments + * ATmega2560, ATmega1280 */ #include "env_validate.h" @@ -75,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) @@ -87,14 +88,14 @@ #if ENABLED(RAMPS_V_1_0) #define HEATER_0_PIN 12 #define HEATER_BED_PIN -1 - #ifndef FAN_PIN - #define FAN_PIN 11 + #ifndef FAN0_PIN + #define FAN0_PIN 11 #endif #else // RAMPS_V_1_1 or RAMPS_V_1_2 #define HEATER_0_PIN 10 #define HEATER_BED_PIN 8 - #ifndef FAN_PIN - #define FAN_PIN 9 + #ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #endif @@ -112,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_PLUS.h b/Marlin/src/pins/ramps/pins_RAMPS_PLUS.h index 8ccb14c866..f93c6919d9 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_PLUS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_PLUS.h @@ -23,6 +23,7 @@ /** * Arduino Mega with RAMPS v1.4Plus, also known as 3DYMY version, pin assignments + * ATmega2560, ATmega1280 * * Applies to the following boards: * diff --git a/Marlin/src/pins/ramps/pins_RAMPS_S_12.h b/Marlin/src/pins/ramps/pins_RAMPS_S_12.h index f41573b527..542b3cb816 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_S_12.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_S_12.h @@ -24,6 +24,7 @@ /** * Arduino Mega with RAMPS-S v1.2 by Sakul.cz pin assignments * Written by Michal Rábek + * ATmega2560 * * Applies to the following boards: * @@ -171,12 +172,12 @@ #if MB(RAMPS_S_12_EEFB) // Hotend0, Hotend1, Fan, Bed #define HEATER_1_PIN RAMPS_S_HE_1 - #define FAN_PIN RAMPS_S_HE_2 + #define FAN0_PIN RAMPS_S_HE_2 #elif MB(RAMPS_S_12_EEEB) // Hotend0, Hotend1, Hotend2, Bed #define HEATER_1_PIN RAMPS_S_HE_1 #define HEATER_2_PIN RAMPS_S_HE_2 #elif MB(RAMPS_S_12_EFFB) // Hotend, Fan0, Fan1, Bed - #define FAN_PIN RAMPS_S_HE_1 + #define FAN0_PIN RAMPS_S_HE_1 #define FAN1_PIN RAMPS_S_HE_2 #endif @@ -210,24 +211,22 @@ // 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 // // TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 51 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 50 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 53 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI 51 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO 50 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK 53 #endif // @@ -255,7 +254,7 @@ #if HAS_WIRED_LCD #define BEEPER_PIN 45 #define LCD_PINS_RS 19 - #define LCD_PINS_ENABLE 49 + #define LCD_PINS_EN 49 #define LCD_PINS_D4 18 #define LCD_PINS_D5 30 #define LCD_PINS_D6 41 diff --git a/Marlin/src/pins/ramps/pins_RIGIDBOARD.h b/Marlin/src/pins/ramps/pins_RIGIDBOARD.h index 273e0274a8..afd31eeead 100644 --- a/Marlin/src/pins/ramps/pins_RIGIDBOARD.h +++ b/Marlin/src/pins/ramps/pins_RIGIDBOARD.h @@ -23,6 +23,7 @@ /** * RIGIDBOARD Arduino Mega with RAMPS v1.4 pin assignments + * ATmega2560, ATmega1280 */ #ifndef BOARD_INFO_NAME @@ -71,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 @@ -83,8 +84,8 @@ #undef HEATER_BED_PIN #define HEATER_BED_PIN 10 -#ifndef FAN_PIN - #define FAN_PIN 8 // Same as RAMPS_13_EEF +#ifndef FAN0_PIN + #define FAN0_PIN 8 // Same as RAMPS_13_EEF #endif // diff --git a/Marlin/src/pins/ramps/pins_RIGIDBOARD_V2.h b/Marlin/src/pins/ramps/pins_RIGIDBOARD_V2.h index 8242f1a772..dc27378a15 100644 --- a/Marlin/src/pins/ramps/pins_RIGIDBOARD_V2.h +++ b/Marlin/src/pins/ramps/pins_RIGIDBOARD_V2.h @@ -23,6 +23,7 @@ /** * RIGIDBOARD V2 Arduino Mega with RAMPS v1.4 pin assignments + * ATmega2560, ATmega1280 */ #define BOARD_INFO_NAME "RigidBoard V2" diff --git a/Marlin/src/pins/ramps/pins_RL200.h b/Marlin/src/pins/ramps/pins_RL200.h index 00fb39a439..219a3a525d 100644 --- a/Marlin/src/pins/ramps/pins_RL200.h +++ b/Marlin/src/pins/ramps/pins_RL200.h @@ -24,6 +24,7 @@ /** * Rapide Lite 200 v1 (RUMBA clone) pin assignments. Has slightly different assignment for * extruder motors due to dual Z motors. Pinout therefore based on pins_RUMBA.h. + * ATmega2560 */ #define BOARD_INFO_NAME "RL200" diff --git a/Marlin/src/pins/ramps/pins_RUMBA.h b/Marlin/src/pins/ramps/pins_RUMBA.h index eb049c48dd..1d2aeb4f0f 100644 --- a/Marlin/src/pins/ramps/pins_RUMBA.h +++ b/Marlin/src/pins/ramps/pins_RUMBA.h @@ -23,6 +23,9 @@ /** * RUMBA pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/RUMBA/RRD-RUMBA_SCHEMATICS.png + * Origin: https://reprap.org/wiki/File:RRD-RUMBA_SCHEMATICS.png + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -50,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 @@ -156,8 +156,8 @@ #define HEATER_3_PIN 8 #define HEATER_BED_PIN 9 -#ifndef FAN_PIN - #define FAN_PIN 7 +#ifndef FAN0_PIN + #define FAN0_PIN 7 #endif #ifndef FAN1_PIN #define FAN1_PIN 8 @@ -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 @@ -225,7 +225,7 @@ #else #define LCD_PINS_RS 19 - #define LCD_PINS_ENABLE 42 + #define LCD_PINS_EN 42 #define LCD_PINS_D4 18 #define LCD_PINS_D5 38 #define LCD_PINS_D6 41 @@ -238,7 +238,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_RUMBA_RAISE3D.h b/Marlin/src/pins/ramps/pins_RUMBA_RAISE3D.h index 39942613ff..57ee32ab29 100644 --- a/Marlin/src/pins/ramps/pins_RUMBA_RAISE3D.h +++ b/Marlin/src/pins/ramps/pins_RUMBA_RAISE3D.h @@ -21,6 +21,8 @@ */ #pragma once +// ATmega2560 + #define BOARD_INFO_NAME "Raise3D Rumba" #define DEFAULT_MACHINE_NAME "Raise3D N Series" diff --git a/Marlin/src/pins/ramps/pins_SAINSMART_2IN1.h b/Marlin/src/pins/ramps/pins_SAINSMART_2IN1.h index d25029a7a3..6354cc7618 100644 --- a/Marlin/src/pins/ramps/pins_SAINSMART_2IN1.h +++ b/Marlin/src/pins/ramps/pins_SAINSMART_2IN1.h @@ -23,13 +23,14 @@ /** * Sainsmart 2-in-1 pin assignments + * ATmega2560, ATmega1280 */ #if HOTENDS > 2 || E_STEPPERS > 2 #error "Sainsmart 2-in-1 supports up to 2 hotends / E steppers." #endif -#define BOARD_INFO_NAME "Sainsmart" +#define BOARD_INFO_NAME "Sainsmart 2-in-1" // // Heaters / Fans diff --git a/Marlin/src/pins/ramps/pins_TANGO.h b/Marlin/src/pins/ramps/pins_TANGO.h index 451d2f874d..54dd443399 100644 --- a/Marlin/src/pins/ramps/pins_TANGO.h +++ b/Marlin/src/pins/ramps/pins_TANGO.h @@ -23,11 +23,14 @@ /** * BIQU Tango pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/BIQU%20Tango/schematic.png + * Origin: https://github.com/bigtreetech/Tango-3D-Printer-Motherboard/blob/master/Schematic/Tango%20V1.0.SchDoc + * ATmega2560 */ #define BOARD_INFO_NAME "Tango" -#define FAN_PIN 8 +#define FAN0_PIN 8 #define FAN1_PIN -1 #ifndef E0_AUTO_FAN_PIN diff --git a/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h b/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h index 1719fbeddd..8b73764fe3 100644 --- a/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h +++ b/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h @@ -22,7 +22,8 @@ #pragma once /** - * Tenlog pin assignments + * Tenlog D3 Hero pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -114,6 +115,13 @@ #define TEMP_1_PIN 13 // Analog Input #define TEMP_BED_PIN 14 // Analog Input +// SPI for MAX Thermocouple +#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) +#endif + // // Heaters / Fans // @@ -121,8 +129,8 @@ #define HEATER_1_PIN 10 #define HEATER_BED_PIN 8 -#define FAN_PIN 9 -#define FAN2_PIN 5 // Normally this would be a servo pin +#define FAN0_PIN 9 +#define FAN1_PIN 5 // Normally this would be a servo pin // XXX Runout support unknown? //#define NUM_RUNOUT_SENSORS 0 @@ -159,7 +167,7 @@ //#if IS_RRD_SC #define LCD_PINS_RS -1 -#define LCD_PINS_ENABLE -1 +#define LCD_PINS_EN -1 #define LCD_PINS_D4 -1 #define LCD_PINS_D5 -1 #define LCD_PINS_D6 -1 diff --git a/Marlin/src/pins/ramps/pins_TENLOG_MB1_V23.h b/Marlin/src/pins/ramps/pins_TENLOG_MB1_V23.h index b3f7d5f216..1197874d71 100644 --- a/Marlin/src/pins/ramps/pins_TENLOG_MB1_V23.h +++ b/Marlin/src/pins/ramps/pins_TENLOG_MB1_V23.h @@ -22,7 +22,8 @@ #pragma once /** - * Tenlog pin assignments + * Tenlog MB1 V2.3 pin assignments + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -94,7 +95,7 @@ #define HEATER_1_PIN 10 #define HEATER_BED_PIN 8 -#define FAN_PIN 9 +#define FAN0_PIN 9 #define FAN2_PIN 5 // Normally this would be a servo pin //#define NUM_RUNOUT_SENSORS 0 @@ -138,7 +139,7 @@ //#endif #define LCD_PINS_RS -1 -#define LCD_PINS_ENABLE -1 +#define LCD_PINS_EN -1 #define LCD_PINS_D4 -1 #define LCD_PINS_D5 -1 #define LCD_PINS_D6 -1 diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_13.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_13.h index 71dfb8c704..83dac111cb 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_13.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_13.h @@ -23,21 +23,22 @@ /** * Arduino Mega with RAMPS v1.3 for Anycubic + * ATmega2560 */ #define BOARD_INFO_NAME "Anycubic RAMPS 1.3" -#define MOSFET_B_PIN 44 +#define MOSFET_B_PIN 44 -#define E1_STEP_PIN -1 -#define E1_DIR_PIN -1 -#define E1_ENABLE_PIN -1 -#define E1_CS_PIN -1 +#define E1_STEP_PIN -1 +#define E1_DIR_PIN -1 +#define E1_ENABLE_PIN -1 +#define E1_CS_PIN -1 -#define FAN2_PIN 9 +#define FAN2_PIN 9 #ifndef E0_AUTO_FAN_PIN - #define E0_AUTO_FAN_PIN 9 + #define E0_AUTO_FAN_PIN 9 #endif #include "pins_RAMPS_13.h" // ... RAMPS diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index 96c3fced4c..7306272127 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -23,6 +23,7 @@ /** * Arduino Mega with RAMPS v1.4 for Anycubic + * ATmega2560 */ #define BOARD_INFO_NAME "Anycubic RAMPS 1.4" @@ -45,13 +46,63 @@ // // Heaters / Fans // -#define FAN_PIN 9 // FAN0 +#define FAN0_PIN 9 // FAN0 #define FAN1_PIN 7 // FAN1 #define FAN2_PIN 44 // FAN2 #ifndef E0_AUTO_FAN_PIN #define E0_AUTO_FAN_PIN FAN2_PIN #endif +/** + * 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) + * + * UART3 : GND D15 D14 5V + * (RX3 TX3) + * + * 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 + */ + +/** 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 // @@ -60,21 +111,20 @@ // - TRIGORILLA_MAPPING_I3MEGA // -// -// Limit Switches -// //#define ANYCUBIC_4_MAX_PRO_ENDSTOPS #if ENABLED(ANYCUBIC_4_MAX_PRO_ENDSTOPS) - #define X_MAX_PIN 43 - #define Y_STOP_PIN 19 -#elif EITHER(TRIGORILLA_MAPPING_CHIRON, TRIGORILLA_MAPPING_I3MEGA) + #define X_MAX_PIN 43 // AUX (2) + #define Y_STOP_PIN 19 // Z+ +#elif ANY(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 Z2_MIN_PIN 18 // Z- + #define Y_STOP_PIN 42 // AUX (1) + #define Z_STOP_PIN 43 // AUX (2) + #ifndef Z2_STOP_PIN + #define Z2_STOP_PIN 18 // Z- + #endif #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 @@ -85,17 +135,17 @@ #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 EXP2_05_PIN // Chiron Standard Adapter #endif #define HEATER_BED_PIN MOSFET_B_PIN // HEATER1 - #else - #ifndef FIL_RUNOUT_PIN - #define FIL_RUNOUT_PIN 19 - #endif #endif - #if EITHER(TRIGORILLA_MAPPING_CHIRON, SWAP_Z_MOTORS) + #ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN 19 // Z+ + #endif + + #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 @@ -109,9 +159,11 @@ #endif #endif -#if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_I3MEGA) - #define BEEPER_PIN 31 - #define SD_DETECT_PIN 49 +#if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_I3MEGA) + #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 @@ -130,35 +182,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 diff --git a/Marlin/src/pins/ramps/pins_TRONXY_V3_1_0.h b/Marlin/src/pins/ramps/pins_TRONXY_V3_1_0.h index 04c6af67b0..0104dadf7f 100644 --- a/Marlin/src/pins/ramps/pins_TRONXY_V3_1_0.h +++ b/Marlin/src/pins/ramps/pins_TRONXY_V3_1_0.h @@ -23,6 +23,7 @@ /** * Arduino Mega for Tronxy X5S-2E, etc. + * ATmega2560 */ #define REQUIRE_MEGA2560 diff --git a/Marlin/src/pins/ramps/pins_TT_OSCAR.h b/Marlin/src/pins/ramps/pins_TT_OSCAR.h index f81cc6039a..1edeb6b8fe 100644 --- a/Marlin/src/pins/ramps/pins_TT_OSCAR.h +++ b/Marlin/src/pins/ramps/pins_TT_OSCAR.h @@ -21,10 +21,12 @@ */ #pragma once +// ATmega2560 + #include "env_validate.h" #if HOTENDS > 5 || E_STEPPERS > 5 - #error "TTOSCAR supports up to 5 hotends / E steppers." + #error "TT OSCAR supports up to 5 hotends / E steppers." #endif #define BOARD_INFO_NAME "TT OSCAR" @@ -150,16 +152,14 @@ // // Default pins for TMC software SPI // -//#if ENABLED(TMC_USE_SW_SPI) -// #ifndef TMC_SW_MOSI -// #define TMC_SW_MOSI 66 -// #endif -// #ifndef TMC_SW_MISO -// #define TMC_SW_MISO 44 -// #endif -// #ifndef TMC_SW_SCK -// #define TMC_SW_SCK 64 -// #endif +//#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 // @@ -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) @@ -192,7 +192,7 @@ #define HEATER_2_PIN 44 #define HEATER_BED_PIN 8 -#define FAN_PIN 9 +#define FAN0_PIN 9 #if EXTRUDERS >= 5 #define HEATER_4_PIN 6 @@ -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 @@ -276,13 +276,13 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS 49 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE 51 // SID (MOSI) + #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_ENABLE 42 + #define LCD_PINS_EN 42 #define LCD_PINS_D4 65 #define LCD_PINS_D5 66 #define LCD_PINS_D6 44 @@ -291,7 +291,7 @@ #elif ENABLED(ZONESTAR_LCD) #define LCD_PINS_RS 64 - #define LCD_PINS_ENABLE 44 + #define LCD_PINS_EN 44 #define LCD_PINS_D4 63 #define LCD_PINS_D5 40 #define LCD_PINS_D6 42 @@ -303,7 +303,7 @@ #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 25 #if !IS_NEWPANEL @@ -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 @@ -322,7 +322,7 @@ #define DOGLCD_A0 LCD_PINS_DC #else #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 @@ -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_ULTIMAIN_2.h b/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h index 0b15cd35ad..049e8bc5d8 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h @@ -23,6 +23,25 @@ /** * Ultiboard v2.0 pin assignments + * Schematics (2.1.4): + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%202.1.4/schema1.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%202.1.4/schema2.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%202.1.4/schema3.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%202.1.4/schema4.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%202.1.4/schema5.png + * Origins (2.1.4): + * - https://github.com/Ultimaker/Ultimaker2/blob/master/1546%20ultimainboard%20V2.1.4/schema1.SchDoc + * - https://github.com/Ultimaker/Ultimaker2/blob/master/1546%20ultimainboard%20V2.1.4/schema2.SchDoc + * - https://github.com/Ultimaker/Ultimaker2/blob/master/1546%20ultimainboard%20V2.1.4/schema3.SchDoc + * - https://github.com/Ultimaker/Ultimaker2/blob/master/1546%20ultimainboard%20V2.1.4/schema4.SchDoc + * - https://github.com/Ultimaker/Ultimaker2/blob/master/1546%20ultimainboard%20V2.1.4/schema5.SchDoc + * Schematics (Original+): + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%20Original+/Ultimainboard%20rev.%202.1.1%20altium/schema1.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%20Original+/Ultimainboard%20rev.%202.1.1%20altium/schema2.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%20Original+/Ultimainboard%20rev.%202.1.1%20altium/schema3.png + * - https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%20Original+/Ultimainboard%20rev.%202.1.1%20altium/schema4.png + * Origin (Original+): https://github.com/Ultimaker/Ultimaker-Original-Plus/blob/master/1091_Main_board_v2.1.1_(x1)/Ultimainboard%20rev.%202.1.1%20altium.zip + * ATmega2560 */ /** @@ -93,8 +112,8 @@ #define HEATER_1_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 7 +#ifndef FAN0_PIN + #define FAN0_PIN 7 #endif #ifndef E0_AUTO_FAN_PIN @@ -116,7 +135,7 @@ #define BEEPER_PIN 18 #define LCD_PINS_RS 20 -#define LCD_PINS_ENABLE 15 +#define LCD_PINS_EN 15 #define LCD_PINS_D4 14 #define LCD_PINS_D5 21 #define LCD_PINS_D6 5 @@ -132,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 0bc04d962a..10adeb1891 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAKER.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAKER.h @@ -23,6 +23,7 @@ /** * Ultimaker pin assignments + * ATmega2560, ATmega1280 */ /** @@ -98,8 +99,8 @@ #define HEATER_1_PIN 3 #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 7 +#ifndef FAN0_PIN + #define FAN0_PIN 7 #endif // @@ -124,7 +125,7 @@ #if IS_NEWPANEL #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 16 #define LCD_PINS_D5 21 #define LCD_PINS_D6 5 @@ -146,7 +147,7 @@ #define SHIFT_EN_PIN 17 #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 + #define LCD_PINS_EN 5 #define LCD_PINS_D4 6 #define LCD_PINS_D5 21 #define LCD_PINS_D6 20 @@ -161,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 146c519ff9..0e3b25b4f6 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h @@ -23,6 +23,9 @@ /** * Ultimaker pin assignments (Old electronics) + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%201.0/ultipanel%20rev1.1.sch.pdf + * Origin: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/Ultimaker%201.0/ultipanel%20rev1.1.sch.pdf + * ATmega2560, ATmega1280 */ /** @@ -113,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 @@ -132,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 @@ -163,23 +166,23 @@ // // 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_ENABLE 22 + #define LCD_PINS_EN 22 #define LCD_PINS_D4 36 #define LCD_PINS_D5 34 #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 #if IS_NEWPANEL #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 16 #define LCD_PINS_D5 21 #define LCD_PINS_D6 5 @@ -201,7 +204,7 @@ #define SHIFT_EN_PIN 17 #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 + #define LCD_PINS_EN 5 #define LCD_PINS_D4 6 #define LCD_PINS_D5 21 #define LCD_PINS_D6 20 @@ -222,10 +225,10 @@ // 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 - #define SPINDLE_DIR_PIN 10 // 1.0: SW4 1.5: EXP3-6 ("10") + #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") #elif ENABLED(BOARD_REV_1_1_TO_1_3) /** * Only four hardware PWMs physically connected to anything on these boards: @@ -239,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_VORON.h b/Marlin/src/pins/ramps/pins_VORON.h index 9390381010..4aee2ab142 100644 --- a/Marlin/src/pins/ramps/pins_VORON.h +++ b/Marlin/src/pins/ramps/pins_VORON.h @@ -24,19 +24,16 @@ /** * VORON Design v2 pin assignments * See https://github.com/mzbotreprap/VORON/blob/master/Firmware/Marlin/pins_RAMPS_VORON.h + * ATmega2560 */ #define BOARD_INFO_NAME "VORON Design v2" -#define MOSFET_C_PIN 11 - -#include "pins_RAMPS.h" - // // Heaters / Fans // -#undef FAN_PIN -#define FAN_PIN 5 // Using the pin for the controller fan since controller fan is always on. +#define MOSFET_C_PIN 11 +#define FAN0_PIN 5 // Using the pin for the controller fan since controller fan is always on. #define CONTROLLER_FAN_PIN 8 // @@ -49,6 +46,8 @@ #define E1_AUTO_FAN_PIN 6 // Servo pin 6 for E3D Fan (same pin for both extruders since it's the same fan) #endif +#include "pins_RAMPS.h" + // // LCDs and Controllers // diff --git a/Marlin/src/pins/ramps/pins_ZRIB_V20.h b/Marlin/src/pins/ramps/pins_ZRIB_V20.h index 3e236e36ba..d1c80f6a4a 100644 --- a/Marlin/src/pins/ramps/pins_ZRIB_V20.h +++ b/Marlin/src/pins/ramps/pins_ZRIB_V20.h @@ -22,8 +22,13 @@ #pragma once /** - * ZRIB V2.0 & V3.0 pin assignments + * ZONESTAR ZRIB V2.0 & V3.0 pin assignments * V2 and V3 Boards only differ in USB controller, nothing affecting the pins. + * Schematic (2.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/ZONESTAR%20ZRIB%20V2.0/ZRIB_V2_Schematic.pdf + * Origin (2.0): https://github.com/ZONESTAR3D/Control-Board/blob/main/8bit/ZRIB/ZRIB_V2/ZRIB_V2_Schematic.pdf + * Schematic (3.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/ZONESTAR%20ZRIB%20V3.0/ZRIB_V3_Schematic.pdf + * Origin (3.0): https://github.com/ZONESTAR3D/Control-Board/blob/main/8bit/ZRIB/ZRIB_V3/ZRIB_V3_Schematic.pdf + * ATmega2560, ATmega1280 */ #ifndef FILWIDTH_PIN @@ -48,7 +53,7 @@ #if ENABLED(ZONESTAR_LCD) #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/ramps/pins_ZRIB_V52.h b/Marlin/src/pins/ramps/pins_ZRIB_V52.h index 44e0beaa9f..5eada31c9c 100644 --- a/Marlin/src/pins/ramps/pins_ZRIB_V52.h +++ b/Marlin/src/pins/ramps/pins_ZRIB_V52.h @@ -22,7 +22,10 @@ #pragma once /** - * ZRIB V5.2 Based on MKS BASE v1.4 with A4982 stepper drivers and digital micro-stepping + * ZONESTAR ZRIB V5.2 Based on MKS BASE v1.4 with A4982 stepper drivers and digital micro-stepping + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/RAMPS/ZONESTAR%20ZRIB%20V5.2/ZRIB_V52_Schematic.pdf + * Origin: https://github.com/ZONESTAR3D/Control-Board/blob/main/8bit/ZRIB/ZRIB_V5/ZRIB_V52_Schematic.pdf + * ATmega2560, ATmega1280 */ #if HOTENDS > 2 || E_STEPPERS > 2 @@ -36,8 +39,6 @@ // // Heaters / Fans // -#define HEATER_1_PIN 7 -#define FAN_PIN 9 // PH6 ** Pin18 ** PWM9 #define FAN1_PIN 6 // diff --git a/Marlin/src/pins/ramps/pins_ZRIB_V53.h b/Marlin/src/pins/ramps/pins_ZRIB_V53.h index 7a5cf14791..8d59eeb1f7 100644 --- a/Marlin/src/pins/ramps/pins_ZRIB_V53.h +++ b/Marlin/src/pins/ramps/pins_ZRIB_V53.h @@ -22,7 +22,8 @@ #pragma once /** - * ZRIB V5.3 Based on MKS BASE v1.4 with A4982 stepper drivers and digital micro-stepping + * ZONESTAR ZRIB V5.3 Based on MKS BASE v1.4 with A4982 stepper drivers and digital micro-stepping + * ATmega2560, ATmega1280 */ #include "env_validate.h" @@ -163,7 +164,7 @@ #define HEATER_0_PIN 10 #define HEATER_1_PIN 7 -#define FAN_PIN 9 +#define FAN0_PIN 9 #define HEATER_BED_PIN 8 #define FAN1_PIN 6 @@ -335,9 +336,9 @@ #if ENABLED(ZONESTAR_12864LCD) #define LCDSCREEN_NAME "ZONESTAR LCD12864" #define LCD_SDSS 16 - #define LCD_PINS_RS 16 // ST7920_CS_PIN LCD_PIN_RS (PIN4 of LCD module) - #define LCD_PINS_ENABLE 23 // ST7920_DAT_PIN LCD_PIN_R/W (PIN5 of LCD module) - #define LCD_PINS_D4 17 // ST7920_CLK_PIN LCD_PIN_ENABLE (PIN6 of LCD module) + #define LCD_PINS_RS 16 // ST7920_CS_PIN LCD_PIN_RS (PIN4 of LCD module) + #define LCD_PINS_EN 23 // ST7920_DAT_PIN LCD_PIN_R/W (PIN5 of LCD module) + #define LCD_PINS_D4 17 // ST7920_CLK_PIN LCD_PIN_ENA (PIN6 of LCD module) #define BTN_EN2 25 #define BTN_EN1 27 #define BTN_ENC 29 @@ -347,7 +348,7 @@ #define LCDSCREEN_NAME "Reprap LCD12864" // Use EXP1 & EXP2 connector #define LCD_PINS_RS 16 // ST7920_CS_PIN LCD_PIN_RS - #define LCD_PINS_ENABLE 17 // ST7920_DAT_PIN LCD_PIN_ENABLE + #define LCD_PINS_EN 17 // ST7920_DAT_PIN LCD_PIN_ENA #define LCD_PINS_D4 23 // ST7920_CLK_PIN LCD_PIN_R/W #define BTN_EN1 31 #define BTN_EN2 33 @@ -360,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 @@ -371,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 @@ -387,7 +388,7 @@ #if ENABLED(ZONESTAR_LCD) #define LCDSCREEN_NAME "LCD2004 ADCKEY" #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 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 b68e3edb45..f63ca83723 100644 --- a/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h +++ b/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h @@ -23,6 +23,7 @@ /** * Z-Bolt X Series board – based on Arduino Mega2560 + * ATmega2560 */ #define REQUIRE_MEGA2560 @@ -135,7 +136,7 @@ #define HEATER_3_PIN 5 #define HEATER_BED_PIN 8 -#define FAN_PIN 9 +#define FAN0_PIN 9 // // Misc. Functions @@ -169,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 @@ -182,16 +183,14 @@ // // TMC software SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 66 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 44 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 64 - #endif +#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 #if HAS_TMC_UART diff --git a/Marlin/src/pins/sam/env_validate.h b/Marlin/src/pins/sam/env_validate.h index 09bcd13649..c51583f0a1 100644 --- a/Marlin/src/pins/sam/env_validate.h +++ b/Marlin/src/pins/sam/env_validate.h @@ -19,9 +19,10 @@ * 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__) +#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.'" @@ -31,3 +32,5 @@ #undef ALLOW_MEGA1280 #undef ALLOW_MEGA2560 + +#endif diff --git a/Marlin/src/pins/sam/pins_ADSK.h b/Marlin/src/pins/sam/pins_ADSK.h index 425d6d45af..c264ffb50e 100644 --- a/Marlin/src/pins/sam/pins_ADSK.h +++ b/Marlin/src/pins/sam/pins_ADSK.h @@ -116,7 +116,7 @@ A stepper for E0 extruder // #define HEATER_0_PIN 55 // "Hold": Analog pin 1, Digital pin 55 #define HEATER_BED_PIN 57 // "CoolEn": Analog pin 3, Digital pin 57 -#define FAN_PIN 54 // "Abort": Analog pin 0, Digital pin 54 +#define FAN0_PIN 54 // "Abort": Analog pin 0, Digital pin 54 #undef E0_AUTO_FAN_PIN #define E0_AUTO_FAN_PIN 56 // "Resume": Analog pin 2, Digital pin 56 @@ -160,7 +160,7 @@ A stepper for E0 extruder // // LCD / Controller // - #define LCD_PINS_ENABLE 14 + #define LCD_PINS_EN 14 #define LCD_PINS_RS 15 #define LCD_PINS_D4 16 #define LCD_PINS_D5 17 diff --git a/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h b/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h index 76431937a7..312745f11d 100644 --- a/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h +++ b/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h @@ -113,8 +113,8 @@ #define HEATER_3_PIN 97 // PC20 on piggy #define HEATER_BED_PIN 69 // PA0 -#ifndef FAN_PIN - #define FAN_PIN 92 // PA5 +#ifndef FAN0_PIN + #define FAN0_PIN 92 // PA5 #endif #define FAN1_PIN 31 // PA7 @@ -150,10 +150,9 @@ // #if IS_RRD_FG_SC #define LCD_PINS_RS 18 - #define LCD_PINS_ENABLE 15 + #define LCD_PINS_EN 15 #define LCD_PINS_D4 19 #define BEEPER_PIN 64 - #undef UI_VOLTAGE_LEVEL #define UI_VOLTAGE_LEVEL 1 #endif diff --git a/Marlin/src/pins/sam/pins_ARCHIM1.h b/Marlin/src/pins/sam/pins_ARCHIM1.h index d9f1dcbf94..a6ac53e5ec 100644 --- a/Marlin/src/pins/sam/pins_ARCHIM1.h +++ b/Marlin/src/pins/sam/pins_ARCHIM1.h @@ -153,8 +153,8 @@ #define HEATER_2_PIN 8 // D8 PC22 FET_PWM5 #define HEATER_BED_PIN 9 // D9 PC21 BED_PWM -#ifndef FAN_PIN - #define FAN_PIN 4 // D4 PC26 FET_PWM1 +#ifndef FAN0_PIN + #define FAN0_PIN 4 // D4 PC26 FET_PWM1 #endif #define FAN1_PIN 5 // D5 PC25 FET_PWM2 @@ -183,7 +183,7 @@ #if HAS_WIRED_LCD #define BEEPER_PIN 23 // D24 PA15_CTS1 #define LCD_PINS_RS 17 // D17 PA12_RXD1 - #define LCD_PINS_ENABLE 24 // D23 PA14_RTS1 + #define LCD_PINS_EN 24 // D23 PA14_RTS1 #define LCD_PINS_D4 69 // D69 PA0_CANTX0 #define LCD_PINS_D5 54 // D54 PA16_SCK1 #define LCD_PINS_D6 68 // D68 PA1_CANRX0 diff --git a/Marlin/src/pins/sam/pins_ARCHIM2.h b/Marlin/src/pins/sam/pins_ARCHIM2.h index 310dd8e2ac..56202cc188 100644 --- a/Marlin/src/pins/sam/pins_ARCHIM2.h +++ b/Marlin/src/pins/sam/pins_ARCHIM2.h @@ -145,19 +145,17 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers. +// SPI pins for TMC2130 stepper drivers. // Required for the Archim2 board. // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 28 // PD3 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 26 // PD1 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 27 // PD2 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI 28 // PD3 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO 26 // PD1 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK 27 // PD2 #endif // @@ -176,8 +174,8 @@ #define HEATER_2_PIN 8 // D8 PC22 FET_PWM5 #define HEATER_BED_PIN 9 // D9 PC21 BED_PWM -#ifndef FAN_PIN - #define FAN_PIN 4 // D4 PC26 FET_PWM1 +#ifndef FAN0_PIN + #define FAN0_PIN 4 // D4 PC26 FET_PWM1 #endif #define FAN1_PIN 5 // D5 PC25 FET_PWM2 @@ -240,7 +238,7 @@ #if ANY(HAS_WIRED_LCD, TOUCH_UI_ULTIPANEL, TOUCH_UI_FTDI_EVE) #define BEEPER_PIN 23 // D24 PA15_CTS1 #define LCD_PINS_RS 17 // D17 PA12_RXD1 - #define LCD_PINS_ENABLE 24 // D23 PA14_RTS1 + #define LCD_PINS_EN 24 // D23 PA14_RTS1 #define LCD_PINS_D4 69 // D69 PA0_CANTX0 #define LCD_PINS_D5 54 // D54 PA16_SCK1 #define LCD_PINS_D6 68 // D68 PA1_CANRX0 diff --git a/Marlin/src/pins/sam/pins_CNCONTROLS_15D.h b/Marlin/src/pins/sam/pins_CNCONTROLS_15D.h index d44f6490da..3d15f37e47 100644 --- a/Marlin/src/pins/sam/pins_CNCONTROLS_15D.h +++ b/Marlin/src/pins/sam/pins_CNCONTROLS_15D.h @@ -91,7 +91,7 @@ // // Fans // -//#define FAN_PIN 8 +//#define FAN0_PIN 8 // // Auto fans diff --git a/Marlin/src/pins/sam/pins_DUE3DOM.h b/Marlin/src/pins/sam/pins_DUE3DOM.h index 81eca3e4b1..bd6cb7a6cd 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 @@ -96,8 +96,8 @@ #define HEATER_1_PIN 8 // HOTEND1 MOSFET #define HEATER_BED_PIN 39 // BED MOSFET -#ifndef FAN_PIN - #define FAN_PIN 11 // FAN1 header on board - PRINT FAN +#ifndef FAN0_PIN + #define FAN0_PIN 11 // FAN1 header on board - PRINT FAN #endif #define FAN1_PIN 9 // FAN2 header on board - CONTROLLER FAN #define FAN2_PIN 12 // FAN3 header on board - EXTRUDER0 FAN @@ -114,7 +114,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 42 - #define LCD_PINS_ENABLE 43 + #define LCD_PINS_EN 43 #define LCD_PINS_D4 44 #define LCD_PINS_D5 45 #define LCD_PINS_D6 46 @@ -154,7 +154,7 @@ #elif ENABLED(SPARK_FULL_GRAPHICS) #define LCD_PINS_D4 29 - #define LCD_PINS_ENABLE 27 + #define LCD_PINS_EN 27 #define LCD_PINS_RS 25 #define BTN_EN1 35 diff --git a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h index 7754fa9329..8ad5e2229c 100644 --- a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h +++ b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h @@ -69,10 +69,13 @@ #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 DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 #else #define TEMP_0_CS_PIN 53 @@ -84,8 +87,8 @@ #define HEATER_0_PIN 13 // HOTEND0 MOSFET #define HEATER_BED_PIN 7 // BED MOSFET -#ifndef FAN_PIN - #define FAN_PIN 11 // FAN1 header on board - PRINT FAN +#ifndef FAN0_PIN + #define FAN0_PIN 11 // FAN1 header on board - PRINT FAN #endif #define FAN1_PIN 12 // FAN2 header on board - CONTROLLER FAN #define FAN2_PIN 9 // FAN3 header on board - EXTRUDER0 FAN @@ -103,7 +106,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 42 - #define LCD_PINS_ENABLE 43 + #define LCD_PINS_EN 43 #define LCD_PINS_D4 44 #define LCD_PINS_D5 45 #define LCD_PINS_D6 46 @@ -147,7 +150,7 @@ #elif ENABLED(SPARK_FULL_GRAPHICS) #define LCD_PINS_D4 29 - #define LCD_PINS_ENABLE 27 + #define LCD_PINS_EN 27 #define LCD_PINS_RS 25 #define BTN_EN1 35 diff --git a/Marlin/src/pins/sam/pins_KRATOS32.h b/Marlin/src/pins/sam/pins_KRATOS32.h index f7867f9b26..74da7a78f6 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 @@ -126,8 +126,8 @@ #define HEATER_3_PIN 10 #define HEATER_BED_PIN 7 // BED -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #define FAN1_PIN 8 @@ -160,7 +160,7 @@ #if IS_RRD_FG_SC #define LCD_PINS_RS 42 - #define LCD_PINS_ENABLE 43 + #define LCD_PINS_EN 43 #define LCD_PINS_D4 44 #define BTN_BACK 52 diff --git a/Marlin/src/pins/sam/pins_PRINTRBOARD_G2.h b/Marlin/src/pins/sam/pins_PRINTRBOARD_G2.h index aa01a9227f..8fd1843ab5 100644 --- a/Marlin/src/pins/sam/pins_PRINTRBOARD_G2.h +++ b/Marlin/src/pins/sam/pins_PRINTRBOARD_G2.h @@ -138,8 +138,8 @@ #define HEATER_0_PIN 40 // PA5 #define HEATER_BED_PIN 41 // PB24 -#ifndef FAN_PIN - #define FAN_PIN 13 // PB27 Fan1A +#ifndef FAN0_PIN + #define FAN0_PIN 13 // PB27 Fan1A #endif #define FAN1_PIN 58 // PA6 Fan1B diff --git a/Marlin/src/pins/sam/pins_RADDS.h b/Marlin/src/pins/sam/pins_RADDS.h index af24014614..9a3edff0c9 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 @@ -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 @@ -196,8 +196,8 @@ #define HEATER_BED_PIN 7 // BED #endif -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #define FAN1_PIN 8 @@ -229,7 +229,7 @@ #if ENABLED(RADDS_DISPLAY) #define LCD_PINS_RS 42 - #define LCD_PINS_ENABLE 43 + #define LCD_PINS_EN 43 #define LCD_PINS_D4 44 #define LCD_PINS_D5 45 #define LCD_PINS_D6 46 @@ -252,7 +252,7 @@ // an adapter such as https://www.thingiverse.com/thing:1740725 #define LCD_PINS_RS 42 - #define LCD_PINS_ENABLE 43 + #define LCD_PINS_EN 43 #define LCD_PINS_D4 44 #define BEEPER_PIN 41 @@ -276,7 +276,7 @@ #elif ENABLED(SPARK_FULL_GRAPHICS) #define LCD_PINS_D4 29 - #define LCD_PINS_ENABLE 27 + #define LCD_PINS_EN 27 #define LCD_PINS_RS 25 #define BTN_EN1 35 diff --git a/Marlin/src/pins/sam/pins_RAMPS_DUO.h b/Marlin/src/pins/sam/pins_RAMPS_DUO.h index 5b2b2f0b66..b00d215cc7 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_DUO.h +++ b/Marlin/src/pins/sam/pins_RAMPS_DUO.h @@ -45,24 +45,19 @@ #define BOARD_INFO_NAME "RAMPS Duo" -#define ALLOW_SAM3X8E -#include "../ramps/pins_RAMPS.h" - // // Temperature Sensors // -#undef TEMP_0_PIN #define TEMP_0_PIN 9 // Analog Input - -#undef TEMP_1_PIN #define TEMP_1_PIN 11 // Analog Input - -#undef TEMP_BED_PIN #define TEMP_BED_PIN 10 // Analog Input +#define ALLOW_SAM3X8E +#include "../ramps/pins_RAMPS.h" + // 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) @@ -73,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 00eba994a8..f5587a6cba 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 @@ -124,8 +124,8 @@ #define HEATER_2_PIN 11 #define HEATER_BED_PIN 8 -#ifndef FAN_PIN - #define FAN_PIN 12 +#ifndef FAN0_PIN + #define FAN0_PIN 12 #endif // @@ -168,19 +168,21 @@ // ramps-fd lcd adaptor #define BEEPER_PIN EXP1_01_PIN - #define BTN_EN1 EXP2_05_PIN - #define BTN_EN2 EXP2_03_PIN + #define BTN_ENC EXP1_02_PIN + #define BTN_EN2 EXP2_03_PIN + #define BTN_EN1 EXP2_05_PIN + #define SD_DETECT_PIN EXP2_07_PIN #if IS_NEWPANEL #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #endif #if ENABLED(FYSETC_MINI_12864) - #define DOGLCD_CS LCD_PINS_ENABLE - #define DOGLCD_A0 LCD_PINS_RS + #define DOGLCD_CS EXP1_08_PIN + #define DOGLCD_A0 EXP1_07_PIN #define DOGLCD_SCK EXP2_02_PIN #define DOGLCD_MOSI EXP2_06_PIN @@ -189,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 @@ -217,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 @@ -258,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/sam/pins_RAMPS_SMART.h b/Marlin/src/pins/sam/pins_RAMPS_SMART.h index b02ddef166..2a0733c601 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 f8ea65a369..64fad0e081 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_11.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_11.h @@ -122,8 +122,8 @@ #define HEATER_2_PIN 11 #define HEATER_BED_PIN 7 // BED H1 -#ifndef FAN_PIN - #define FAN_PIN 9 +#ifndef FAN0_PIN + #define FAN0_PIN 9 #endif #define FAN1_PIN 8 #define CONTROLLER_FAN_PIN -1 @@ -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 @@ -163,11 +163,13 @@ #define TFT_LCD_MODULE_COM 1 #define TFT_LCD_MODULE_BAUDRATE 115600 -// ESP WiFi Use internal USART-2 -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115600 -#define ESP_WIFI_MODULE_RESET_PIN -1 -#define PIGGY_GPIO_PIN -1 +#if ENABLED(WIFISUPPORT) + // ESP WiFi Use internal USART-2 + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115600 + #define ESP_WIFI_MODULE_RESET_PIN -1 + #define PIGGY_GPIO_PIN -1 +#endif // // EEPROM @@ -225,15 +227,15 @@ #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_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #elif IS_RRD_FG_SC #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #elif HAS_U8GLIB_I2C_OLED @@ -252,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 @@ -271,7 +273,7 @@ //http://doku.radds.org/dokumentation/other-electronics/sparklcd/ #error "Oops! SPARK_FULL_GRAPHICS not supported with RURAMPS4D." //#define LCD_PINS_D4 29 //? - //#define LCD_PINS_ENABLE 27 //? + //#define LCD_PINS_EN 27 //? //#define LCD_PINS_RS 25 //? //#define BTN_EN1 35 //? //#define BTN_EN2 33 //? diff --git a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h index 58cb3f7a75..1b66b766db 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h @@ -114,7 +114,7 @@ #define HEATER_2_PIN 11 #define HEATER_BED_PIN 7 // BED H1 -#define FAN_PIN 9 +#define FAN0_PIN 9 #define FAN1_PIN 8 #define CONTROLLER_FAN_PIN -1 @@ -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 @@ -153,11 +153,13 @@ #define TFT_LCD_MODULE_COM 1 #define TFT_LCD_MODULE_BAUDRATE 115200 -// ESP WiFi Use internal USART-2 -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115200 -#define ESP_WIFI_MODULE_RESET_PIN -1 -#define PIGGY_GPIO_PIN -1 +#if ENABLED(WIFISUPPORT) + // ESP WiFi Use internal USART-2 + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115200 + #define ESP_WIFI_MODULE_RESET_PIN -1 + #define PIGGY_GPIO_PIN -1 +#endif // // EEPROM @@ -215,15 +217,15 @@ #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_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #elif IS_RRD_FG_SC #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #elif HAS_U8GLIB_I2C_OLED @@ -242,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/sam/pins_ULTRATRONICS_PRO.h b/Marlin/src/pins/sam/pins_ULTRATRONICS_PRO.h index fd30c2b69a..f3ec7806e6 100644 --- a/Marlin/src/pins/sam/pins_ULTRATRONICS_PRO.h +++ b/Marlin/src/pins/sam/pins_ULTRATRONICS_PRO.h @@ -120,8 +120,8 @@ #define HEATER_3_PIN 9 #define HEATER_BED_PIN 2 -#ifndef FAN_PIN - #define FAN_PIN 6 +#ifndef FAN0_PIN + #define FAN0_PIN 6 #endif #define FAN2_PIN 5 @@ -153,7 +153,7 @@ #define TEMP_0_CS_PIN 65 #define TEMP_1_CS_PIN 52 #define TEMP_2_CS_PIN 50 -#define TEMP_3_CS_PIN 51 +#define TEMP_3_CS_PIN 51 // Not yet supported #define ENC424_SS 61 @@ -166,7 +166,7 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS A8 // CS chip select / SS chip slave select - #define LCD_PINS_ENABLE MOSI // SID (MOSI) + #define LCD_PINS_EN MOSI // SID (MOSI) #define LCD_PINS_D4 SCK // SCK (CLK) clock #define BTN_EN1 20 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 a3f98e388a..6f41bd6848 100644 --- a/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h +++ b/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h @@ -102,7 +102,7 @@ // #define HEATER_0_PIN 6 #define HEATER_BED_PIN 7 -#define FAN_PIN 8 +#define FAN0_PIN 8 #define FAN1_PIN 9 // @@ -130,25 +130,25 @@ * 5B | . . | 5V * ------ * - *- Special mapping of EXP1 to EXP3 to work with Ender displays. + *- Special mapping of EXP1 to work with Ender displays. * - * Enable CR10_STOCKDISPLAY in Configuration.h and connect EXP1 to the display EXP3 with this mapping. * ------ - * VCC | 1 2 | GND - * LCDDE | 3 4 | LCDRS - * LCDD4 | 5 6 BTN_EN2 - * RESET | 7 8 | BTN_EN1 - * BTN_ENCODER | 9 10 | BEEPER + * BEEPER | 1 2 | ENC + * EN1 | 3 4 | RESET + * EN2 5 6 | LCD_D4 + * LCD_RS | 7 8 | LCD_EN + * GND | 9 10 | 5V * ------ + * EXP1 * *- Digital pinout reference of the Bricolemon for advanced users/configurations. * * ------ ------ - * VCC | 1 2 | GND D49 | 1 2 | GND - * D39 | 3 4 | D38 RST | 3 4 | D44 - * D37 | 5 6 D36 D51 | 5 6 D42 - * D34 | 7 8 | D35 D53 | 7 8 | D43 - * D40 | 9 10 | D41 D52 | 9 10 | D50 + * D41 | 1 2 | D40 D50 | 1 2 | D52 + * D35 | 3 4 | D34 D43 | 3 4 | D53 + * D36 5 6 | D37 D42 5 6 | D51 + * D38 | 7 8 | D39 D44 | 7 8 | RST + * GND | 9 10 | VCC GND | 9 10 | D49 * ------ ------ * EXP1 EXP2 * @@ -203,10 +203,10 @@ * This section starts with the pins_RAMPS_144.h as example, after if you need any new * display, you could use normal duponts and connect it with with the scheme showed before. * Tested: - * - Ender 3 Old display (Character LCD) - * - Ender 3 New Serial DWING Display + * - Ender-3 Old display (Character LCD) + * - Ender-3 New Serial DWING Display * - Reprap Display - * - Ender 5 New Serial Display + * - Ender-5 New Serial Display * - Any Reprap character display like */ @@ -235,14 +235,14 @@ // TO TEST //#define LCD_PINS_RS EXP2_10_PIN // CS chip select /SS chip slave select - //#define LCD_PINS_ENABLE EXP2_06_PIN // SID (MOSI) + //#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 - //#define LCD_PINS_ENABLE EXP2_05_PIN + //#define LCD_PINS_EN EXP2_05_PIN //#define LCD_PINS_D4 57 // Mega/Due:65 - AGCM4:57 //#define LCD_PINS_D5 58 // Mega/Due:66 - AGCM4:58 //#define LCD_PINS_D6 EXP2_07_PIN @@ -254,7 +254,7 @@ // TO TEST #define LCD_PINS_RS EXP3_04_PIN - #define LCD_PINS_ENABLE EXP3_03_PIN + #define LCD_PINS_EN EXP3_03_PIN #define LCD_PINS_D4 EXP3_05_PIN #if !IS_NEWPANEL @@ -266,7 +266,7 @@ // TO TEST //#define LCD_PINS_RS 56 // Mega/Due:64 - AGCM4:56 - //#define LCD_PINS_ENABLE EXP2_07_PIN + //#define LCD_PINS_EN EXP2_07_PIN //#define LCD_PINS_D4 55 // Mega/Due:63 - AGCM4:55 //#define LCD_PINS_D5 EXP1_02_PIN //#define LCD_PINS_D6 EXP2_05_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 @@ -284,11 +284,10 @@ //#define DOGLCD_SCK 23 //#define DOGLCD_A0 LCD_PINS_DC - #else // Definitions for any standard Display #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 @@ -373,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 @@ -408,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 @@ -453,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 2343dbcf82..699f10ed48 100644 --- a/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h +++ b/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h @@ -152,7 +152,7 @@ #define HEATER_BED_PIN 7 // The board has 4 PWM fans, use and configure as desired -#define FAN_PIN 8 +#define FAN0_PIN 8 #define FAN1_PIN 9 #define FAN2_PIN 30 #define FAN3_PIN 31 @@ -182,25 +182,25 @@ * 5B | . . | 5V * ------ * - *- Special mapping of EXP1 to EXP3 to work with Ender displays. + *- Special mapping of EXP1 to work with Ender displays. * - * Enable CR10_STOCKDISPLAY in Configuration.h and connect EXP1 to the display EXP3 with this mapping. * ------ - * VCC | 1 2 | GND - * LCDDE | 3 4 | LCDRS - * LCDD4 | 5 6 BTN_EN2 - * RESET | 7 8 | BTN_EN1 - * BTN_ENCODER | 9 10 | BEEPER + * BEEPER | 1 2 | ENC + * EN1 | 3 4 | RESET + * EN2 5 6 | LCD_D4 + * LCD_RS | 7 8 | LCD_EN + * GND | 9 10 | 5V * ------ + * EXP1 * *- Digital pinout reference of the Bricolemon for advanced users/configurations. * * ------ ------ - * VCC | 1 2 | GND D49 | 1 2 | GND - * D39 | 3 4 | D38 RST | 3 4 | D44 - * D37 | 5 6 D36 D51 | 5 6 D42 - * D34 | 7 8 | D35 D53 | 7 8 | D43 - * D40 | 9 10 | D41 D52 | 9 10 | D50 + * D41 | 1 2 | D40 D50 | 1 2 | D52 + * D35 | 3 4 | D34 D43 | 3 4 | D53 + * D36 5 6 | D37 D42 5 6 | D51 + * D38 | 7 8 | D39 D44 | 7 8 | RST + * GND | 9 10 | VCC GND | 9 10 | D49 * ------ ------ * EXP1 EXP2 * @@ -255,10 +255,10 @@ * This sections starts with the pins_RAMPS_144.h as example, after if you need any new * display, you could use normal duponts and connect it with with the scheme showed before. * Tested: - * - Ender 3 Old display (Character LCD) - * - Ender 3 New Serial DWING Display + * - Ender-3 Old display (Character LCD) + * - Ender-3 New Serial DWING Display * - Reprap Display - * - Ender 5 New Serial Display + * - Ender-5 New Serial Display * - Any Reprap character display like */ @@ -288,14 +288,14 @@ // TO TEST //#define LCD_PINS_RS EXP2_10_PIN // CS chip select /SS chip slave select - //#define LCD_PINS_ENABLE EXP2_06_PIN // SID (MOSI) + //#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 - //#define LCD_PINS_ENABLE EXP2_05_PIN + //#define LCD_PINS_EN EXP2_05_PIN //#define LCD_PINS_D4 57 // Mega/Due:65 - AGCM4:57 //#define LCD_PINS_D5 58 // Mega/Due:66 - AGCM4:58 //#define LCD_PINS_D6 EXP2_07_PIN @@ -307,7 +307,7 @@ // TO TEST #define LCD_PINS_RS EXP3_04_PIN - #define LCD_PINS_ENABLE EXP3_03_PIN + #define LCD_PINS_EN EXP3_03_PIN #define LCD_PINS_D4 EXP3_05_PIN #if !IS_NEWPANEL @@ -319,7 +319,7 @@ // TO TEST //#define LCD_PINS_RS 56 // Mega/Due:64 - AGCM4:56 - //#define LCD_PINS_ENABLE EXP2_07_PIN + //#define LCD_PINS_EN EXP2_07_PIN //#define LCD_PINS_D4 55 // Mega/Due:63 - AGCM4:55 //#define LCD_PINS_D5 EXP1_02_PIN //#define LCD_PINS_D6 EXP2_05_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 @@ -340,7 +340,7 @@ #else // Definitions for any standard Display #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 @@ -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 02d806b3ec..8c0daa497b 100644 --- a/Marlin/src/pins/samd/pins_MINITRONICS20.h +++ b/Marlin/src/pins/samd/pins_MINITRONICS20.h @@ -149,7 +149,7 @@ #define SPINDLE_LASER_PWM_PIN 6 // The board has 4 PWM fans, use and configure as desired -#define FAN_PIN 24 +#define FAN0_PIN 24 // // LCD / Controller @@ -174,10 +174,10 @@ * This sections starts with the pins_RAMPS_144.h as example, after if you need any new * display, you could use normal duponts and connect it with with the scheme showed before. * Tested: - * - Ender 3 Old display (Character LCD) - * - Ender 3 New Serial DWING Display + * - Ender-3 Old display (Character LCD) + * - Ender-3 New Serial DWING Display * - Reprap Display - * - Ender 5 New Serial Display + * - Ender-5 New Serial Display * - Any Reprap character display like */ @@ -190,18 +190,18 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS 18 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE MOSI // SID (MOSI) + #define LCD_PINS_EN MOSI // SID (MOSI) #define LCD_PINS_D4 SCK // SCK (CLK) clock #define BTN_ENC 23 #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 - //#define LCD_PINS_ENABLE EXP2_05_PIN + //#define LCD_PINS_EN EXP2_05_PIN //#define LCD_PINS_D4 57 // Mega/Due:65 - AGCM4:57 //#define LCD_PINS_D5 58 // Mega/Due:66 - AGCM4:58 //#define LCD_PINS_D6 EXP2_07_PIN @@ -212,9 +212,9 @@ #if ENABLED(CR10_STOCKDISPLAY) // TO TEST - //#define LCD_PINS_RS EXP3_04_PIN - //#define LCD_PINS_ENABLE EXP3_03_PIN - //#define LCD_PINS_D4 EXP3_05_PIN + //#define LCD_PINS_RS EXP3_04_PIN + //#define LCD_PINS_EN EXP3_03_PIN + //#define LCD_PINS_D4 EXP3_05_PIN #if !IS_NEWPANEL // TO TEST @@ -225,7 +225,7 @@ // TO TEST //#define LCD_PINS_RS 56 // Mega/Due:64 - AGCM4:56 - //#define LCD_PINS_ENABLE EXP2_07_PIN + //#define LCD_PINS_EN EXP2_07_PIN //#define LCD_PINS_D4 55 // Mega/Due:63 - AGCM4:55 //#define LCD_PINS_D5 EXP1_02_PIN //#define LCD_PINS_D6 EXP2_05_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 @@ -246,7 +246,7 @@ #else // Definitions for any standard Display #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 @@ -278,7 +278,7 @@ #if IS_RRD_SC - //#define BEEPER_PIN EXP1_01_PIN + //#define BEEPER_PIN EXP1_01_PIN #if ENABLED(CR10_STOCKDISPLAY) // TO TEST @@ -297,7 +297,7 @@ #ifndef SD_DETECT_PIN #define SD_DETECT_PIN EXP2_07_PIN #endif - //#define KILL_PIN EXP2_10_PIN + //#define KILL_PIN EXP2_10_PIN #if ENABLED(BQ_LCD_SMART_CONTROLLER) //#define LCD_BACKLIGHT_PIN EXP1_08_PIN // TO TEST @@ -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 7adb2404c1..3e5d563929 100644 --- a/Marlin/src/pins/samd/pins_RAMPS_144.h +++ b/Marlin/src/pins/samd/pins_RAMPS_144.h @@ -123,7 +123,7 @@ #else #define HEATER_1_PIN 8 #endif -#define FAN_PIN 9 +#define FAN0_PIN 9 #define FAN1_PIN 7 #define FAN2_PIN 12 @@ -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." @@ -164,18 +164,16 @@ #endif // -// TMC software SPI +// TMC SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI 58 // Mega/Due:66 - AGCM4:58 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO 44 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK 56 // Mega/Due:64 - AGCM4:56 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI 58 // Mega/Due:66 - AGCM4:58 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO 44 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK 56 // Mega/Due:64 - AGCM4:56 #endif #if HAS_TMC_UART @@ -275,14 +273,14 @@ // TO TEST //#define LCD_PINS_RS 49 // CS chip select /SS chip slave select - //#define LCD_PINS_ENABLE 51 // SID (MOSI) + //#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 - //#define LCD_PINS_ENABLE 42 + //#define LCD_PINS_EN 42 //#define LCD_PINS_D4 57 // Mega/Due:65 - AGCM4:57 //#define LCD_PINS_D5 58 // Mega/Due:66 - AGCM4:58 //#define LCD_PINS_D6 44 @@ -294,7 +292,7 @@ // TO TEST //#define LCD_PINS_RS 27 - //#define LCD_PINS_ENABLE 29 + //#define LCD_PINS_EN 29 //#define LCD_PINS_D4 25 #if !IS_NEWPANEL @@ -306,7 +304,7 @@ // TO TEST //#define LCD_PINS_RS 56 // Mega/Due:64 - AGCM4:56 - //#define LCD_PINS_ENABLE 44 + //#define LCD_PINS_EN 44 //#define LCD_PINS_D4 55 // Mega/Due:63 - AGCM4:55 //#define LCD_PINS_D5 40 //#define LCD_PINS_D6 42 @@ -314,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 @@ -325,7 +323,7 @@ //#define DOGLCD_A0 LCD_PINS_DC #else #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 23 #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 @@ -408,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 @@ -444,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 @@ -485,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/env_validate.h b/Marlin/src/pins/sanguino/env_validate.h index d229b6f102..bd7947f469 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/sanguino/pins_ANET_10.h b/Marlin/src/pins/sanguino/pins_ANET_10.h index bd69e167dc..e57cc9f6fa 100644 --- a/Marlin/src/pins/sanguino/pins_ANET_10.h +++ b/Marlin/src/pins/sanguino/pins_ANET_10.h @@ -23,6 +23,8 @@ /** * Anet V1.0 board pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Anet%20V1.0/ANET3D_Board_Schematic.pdf + * Origin: https://github.com/ralf-e/ANET-3D-Board-V1.0/blob/master/ANET3D_Board_Schematic.pdf */ /** @@ -146,8 +148,8 @@ #define HEATER_0_PIN 13 // (extruder) #define HEATER_BED_PIN 12 // (bed) -#ifndef FAN_PIN - #define FAN_PIN 4 +#ifndef FAN0_PIN + #define FAN0_PIN 4 #endif // @@ -173,7 +175,7 @@ #define SERVO0_PIN 27 // free for BLTouch/3D-Touch #define LCD_PINS_RS 28 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 10 #define LCD_PINS_D5 11 #define LCD_PINS_D6 16 @@ -190,7 +192,7 @@ #define SERVO0_PIN 30 #define BEEPER_PIN 27 #define LCD_PINS_RS 29 - #define LCD_PINS_ENABLE 16 + #define LCD_PINS_EN 16 #define LCD_PINS_D4 11 #define BTN_EN1 28 #define BTN_EN2 10 @@ -202,7 +204,7 @@ #define SERVO0_PIN 29 // free for BLTouch/3D-Touch #define BEEPER_PIN 17 #define LCD_PINS_RS 27 - #define LCD_PINS_ENABLE 28 + #define LCD_PINS_EN 28 #define LCD_PINS_D4 30 #define BTN_EN1 11 #define BTN_EN2 10 @@ -231,11 +233,11 @@ * published by oderwat on Thingiverse at https://www.thingiverse.com/thing:2103748. * * Using that adapter requires changing the pin definition as follows: - * #define SERVO0_PIN 27 // free for BLTouch/3D-Touch - * #define BEEPER_PIN 28 - * #define LCD_PINS_RS 30 - * #define LCD_PINS_ENABLE 29 - * #define LCD_PINS_D4 17 + * #define SERVO0_PIN 27 // free for BLTouch/3D-Touch + * #define BEEPER_PIN 28 + * #define LCD_PINS_RS 30 + * #define LCD_PINS_EN 29 + * #define LCD_PINS_D4 17 * * The BLTouch pin becomes LCD:3 */ @@ -245,32 +247,32 @@ * ===================== LCD PINOUTS ================================== * ==================================================================== * - * Anet V1.0 controller | ZONESTAR_LCD | ANET_FULL_ | RepRapDiscount Full | Thingiverse RepRap wiring - * physical logical alt | | GRAPHICS_LCD | Graphics Display Wiring | https://www.thingiverse - * pin pin functions | | | | .com/thing:2103748 - *------------------------------------------------------------------------------------------------------------------------ - * ANET-J3.1 8 *** | N/A | J3_TX *** | | - * ANET-J3.2 9 *** | N/A | J3_RX *** | | - * ANET-J3.3 6 MISO | N/A | MISO *** | EXP2.1 MISO | EXP2.1 MISO - * ANET-J3.4 +5V | N/A | +5V | | - * ANET-J3.5 7 SCK | N/A | SCK *** | EXP2.2 SCK | EXP2.2 SCK - * ANET-J3.6 5 MOSI | N/A | MOSI *** | EXP2.6 MOSI | EXP2.6 MOSI - * ANET-J3.7 !RESET | N/A | button | EXP2.8 panel button | EXP2.8 panel button - * ANET-J3.8 GND | N/A | GND | EXP2.9 GND | EXP2.9 GND - * ANET-J3.9 4 Don't use | N/A | N/C | | - * ANET-J3.10 +3.3V | N/A | +3.3V *** | | - * | | | | - * | | | | - * ANET-LCD.1 GND | GND | GND | EXP1.9 GND | EXP1.9 GND - * ANET-LCD.2 +5V | +5V | +5V | EXP1.10 +5V | EXP1.10 +5V - * ANET-LCD.3 27 A4 | N/C * | LCD_PINS_RS | EXP1.4 LCD_PINS_RS | EXP2.4 SDSS or N/C * - * ANET-LCD.4 10 | LCD_PINS_D4 | BTN_EN2 | EXP2.3 BTN_EN2 | EXP2.3 BTN_EN2 - * ANET-LCD.5 28 A3 | LCD_PINS_RS | LCD_PINS_ENABLE | EXP1.3 LCD_PINS_ENABLE | EXP1.1 BEEPER_PIN - * ANET-LCD.6 11 | LCD_PINS_D5 | BTN_EN1 | EXP2.5 BTN_EN1 | EXP2.5 BTN_EN1 - * ANET-LCD.7 29 A2 | LCD_PINS_ENABLE | N/C * | EXP2.4 SDSS or N/C * | EXP1.3 LCD_PINS_ENABLE - * ANET-LCD.8 16 SCL | LCD_PINS_D6 | BTN_ENC | EXP1.2 BTN_ENC | EXP1.2 BTN_ENC - * ANET-LCD.9 30 A1 | ADC_KEYPAD_PIN ** | LCD_PINS_D4 | EXP1.5 LCD_PINS_D4 | EXP1.4 LCD_PINS_RS - * ANET-LCD.10 17 SDA | LCD_PINS_D7 | BEEPER_PIN | EXP1.1 BEEPER_PIN | EXP1.5 LCD_PINS_D4 + * Anet V1.0 controller | ZONESTAR_LCD | ANET_FULL_ | RepRapDiscount Full | Thingiverse RepRap wiring + * physical logical alt | | GRAPHICS_LCD | Graphics Display Wiring | https://www.thingiverse + * pin pin functions | | | | .com/thing:2103748 + *-------------------------------------------------------------------------------------------------------------------- + * ANET-J3.1 8 *** | N/A | J3_TX *** | | + * ANET-J3.2 9 *** | N/A | J3_RX *** | | + * ANET-J3.3 6 MISO | N/A | MISO *** | EXP2.1 MISO | EXP2.1 MISO + * ANET-J3.4 +5V | N/A | +5V | | + * ANET-J3.5 7 SCK | N/A | SCK *** | EXP2.2 SCK | EXP2.2 SCK + * ANET-J3.6 5 MOSI | N/A | MOSI *** | EXP2.6 MOSI | EXP2.6 MOSI + * ANET-J3.7 !RESET | N/A | button | EXP2.8 panel button | EXP2.8 panel button + * ANET-J3.8 GND | N/A | GND | EXP2.9 GND | EXP2.9 GND + * ANET-J3.9 4 Don't use | N/A | N/C | | + * ANET-J3.10 +3.3V | N/A | +3.3V *** | | + * | | | | + * | | | | + * ANET-LCD.1 GND | GND | GND | EXP1.9 GND | EXP1.9 GND + * ANET-LCD.2 +5V | +5V | +5V | EXP1.10 +5V | EXP1.10 +5V + * ANET-LCD.3 27 A4 | N/C * | LCD_PINS_RS | EXP1.4 LCD_PINS_RS | EXP2.4 SDSS or N/C * + * ANET-LCD.4 10 | LCD_PINS_D4 | BTN_EN2 | EXP2.3 BTN_EN2 | EXP2.3 BTN_EN2 + * ANET-LCD.5 28 A3 | LCD_PINS_RS | LCD_PINS_EN | EXP1.3 LCD_PINS_EN | EXP1.1 BEEPER_PIN + * ANET-LCD.6 11 | LCD_PINS_D5 | BTN_EN1 | EXP2.5 BTN_EN1 | EXP2.5 BTN_EN1 + * ANET-LCD.7 29 A2 | LCD_PINS_EN | N/C * | EXP2.4 SDSS or N/C * | EXP1.3 LCD_PINS_EN + * ANET-LCD.8 16 SCL | LCD_PINS_D6 | BTN_ENC | EXP1.2 BTN_ENC | EXP1.2 BTN_ENC + * ANET-LCD.9 30 A1 | ADC_KEYPAD_PIN ** | LCD_PINS_D4 | EXP1.5 LCD_PINS_D4 | EXP1.4 LCD_PINS_RS + * ANET-LCD.10 17 SDA | LCD_PINS_D7 | BEEPER_PIN | EXP1.1 BEEPER_PIN | EXP1.5 LCD_PINS_D4 * * N/C * - if not connected to the LCD can be used for BLTouch servo input * ** - analog pin -WITHOUT a pullup @@ -282,7 +284,7 @@ * physical pin function * EXP1.1 BEEPER * EXP1.2 BTN_ENC - * EXP1.3 LCD_PINS_ENABLE + * EXP1.3 LCD_PINS_EN * EXP1.4 LCD_PINS_RS * EXP1.5 LCD_PINS_D4 * EXP1.6 LCD_PINS_D5 (not used) diff --git a/Marlin/src/pins/sanguino/pins_AZTEEG_X1.h b/Marlin/src/pins/sanguino/pins_AZTEEG_X1.h index 4c721da000..5767bc993b 100644 --- a/Marlin/src/pins/sanguino/pins_AZTEEG_X1.h +++ b/Marlin/src/pins/sanguino/pins_AZTEEG_X1.h @@ -23,10 +23,12 @@ /** * Azteeg X1 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Azteeg%20X1/Azteeg_X1_schematics.pdf + * Origin: https://reprap.org/mediawiki/images/0/07/Azteeg_X1_schematics.pdf */ #define BOARD_INFO_NAME "Azteeg X1" -#define FAN_PIN 4 +#define FAN0_PIN 4 #include "pins_SANGUINOLOLU_12.h" // ... SANGUINOLOLU_11 diff --git a/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h b/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h index 1343739a11..a5afc30187 100644 --- a/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h +++ b/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h @@ -23,6 +23,7 @@ /** * Gen3 Monolithic Electronics pin assignments + * https://reprap.org/wiki/Generation_3_Electronics */ /** diff --git a/Marlin/src/pins/sanguino/pins_GEN6.h b/Marlin/src/pins/sanguino/pins_GEN6.h index 51e8200b95..4a6136e081 100644 --- a/Marlin/src/pins/sanguino/pins_GEN6.h +++ b/Marlin/src/pins/sanguino/pins_GEN6.h @@ -23,6 +23,8 @@ /** * Gen6 pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen6/GEN6_Mendel_Circuit.pdf + * Origin: https://reprap.org/mediawiki/images/0/0f/GEN6_Mendel_Circuit.pdf */ /** @@ -115,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_12.h b/Marlin/src/pins/sanguino/pins_GEN7_12.h index 0834da78c4..0bf65c37cd 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_12.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_12.h @@ -23,6 +23,14 @@ /** * Gen7 v1.1, v1.2, v1.3 pin assignments + * Schematic (1.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.1/Gen7Board%20Schematic.pdf + * Origin (1.1): https://github.com/Traumflug/Generation_7_Electronics/blob/release-1.1/release%20documents/Gen7Board%20Schematic.pdf + * Schematic (1.2): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.2/Gen7Board%20Schematic.pdf + * Origin (1.2): https://github.com/Traumflug/Generation_7_Electronics/blob/release-1.2/release%20documents/Gen7Board%20Schematic.pdf + * Schematic (1.3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.3/Gen7Board%20Schematic.pdf + * Origin (1.3): https://github.com/Traumflug/Generation_7_Electronics/blob/release-1.3/release%20documents/Gen7Board%20Schematic.pdf + * Schematic (1.3.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.3.1/Gen7Board%20Schematic.pdf + * Origin (1.3.1): https://github.com/Traumflug/Generation_7_Electronics/blob/release-1.3.1/release%20documents/Gen7Board%20Schematic.pdf */ /** @@ -54,7 +62,7 @@ #include "env_validate.h" #ifndef BOARD_INFO_NAME - #define BOARD_INFO_NAME "Gen7 v1.1 / 1.2" + #define BOARD_INFO_NAME "Gen7 v1.1 - v1.3" #endif #ifndef GEN7_VERSION @@ -109,8 +117,8 @@ #define HEATER_0_PIN 4 #define HEATER_BED_PIN 3 -#if !defined(FAN_PIN) && GEN7_VERSION < 13 // Gen7 v1.3 removed the fan pin - #define FAN_PIN 31 +#if !defined(FAN0_PIN) && GEN7_VERSION < 13 // Gen7 v1.3 removed the fan pin + #define FAN0_PIN 31 #endif // diff --git a/Marlin/src/pins/sanguino/pins_GEN7_14.h b/Marlin/src/pins/sanguino/pins_GEN7_14.h index 97bfdd28a7..db80c45eee 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_14.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_14.h @@ -23,6 +23,10 @@ /** * Gen7 v1.4 pin assignments + * Schematic (1.4): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.4/Gen7Board%201.4%20Schematic.pdf + * Origin (1.4): https://github.com/Traumflug/Generation_7_Electronics/blob/Gen7Board-1.4/release%20documents/Gen7Board%201.4%20Schematic.pdf + * Schematic (1.4.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Gen7%20v1.4.1/Gen7Board%201.4.1%20Schematic.pdf + * Origin (1.4.1): https://github.com/Traumflug/Generation_7_Electronics/blob/Gen7Board-1.4.1/release%20documents/Gen7Board%201.4.1%20Schematic.pdf */ /** @@ -114,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 6d7678e6e3..154e26725f 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h @@ -116,7 +116,7 @@ // 4bit LCD Support #define LCD_PINS_RS 18 -#define LCD_PINS_ENABLE 17 +#define LCD_PINS_EN 17 #define LCD_PINS_D4 16 #define LCD_PINS_D5 15 #define LCD_PINS_D6 13 @@ -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_MELZI.h b/Marlin/src/pins/sanguino/pins_MELZI.h index d6f9288e8c..a0c7050a91 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI.h +++ b/Marlin/src/pins/sanguino/pins_MELZI.h @@ -23,6 +23,8 @@ /** * Melzi pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Melzi/schematic.pdf + * Origin: https://github.com/mosfet/melzi/blob/master/melzi.sch */ #ifndef BOARD_INFO_NAME @@ -31,8 +33,8 @@ #define IS_MELZI 1 -#ifndef FAN_PIN - #define FAN_PIN 4 +#ifndef FAN0_PIN + #define FAN0_PIN 4 #endif // Alter timing for graphical display diff --git a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h index d35c3ed1f9..2c9affb15e 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h @@ -23,6 +23,9 @@ /** * Melzi (Creality) pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Melzi%20(Creality)/CR-10%20Schematic.pdf + * Origin: https://github.com/Creality3DPrinting/CR10-Melzi-1.1.2/blob/master/Circuit%20diagram/Motherboard/CR-10%20Schematic.pdf + * ATmega1284P * * The Creality board needs a bootloader installed before Marlin can be uploaded. * If you don't have a chip programmer you can use a spare Arduino plus a few @@ -42,42 +45,66 @@ #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 ENABLED(CR10_STOCKDISPLAY) - #define LCD_PINS_RS 28 // ST9720 CS - #define LCD_PINS_ENABLE 17 // ST9720 DAT - #define LCD_PINS_D4 30 // ST9720 CLK - #elif 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 @@ -95,7 +122,7 @@ PIN: 2 Port: B2 Z_DIR_PIN protected PIN: 3 Port: B3 Z_STEP_PIN protected PIN: 4 Port: B4 AVR_SS_PIN protected - . FAN_PIN protected + . FAN0_PIN protected . SD_SS_PIN protected PIN: 5 Port: B5 AVR_MOSI_PIN Output = 1 . SD_MOSI_PIN Output = 1 @@ -115,7 +142,7 @@ PIN: 15 Port: D7 X_STEP_PIN protected PIN: 16 Port: C0 BTN_ENC Input = 1 . SCL Input = 1 - PIN: 17 Port: C1 LCD_PINS_ENABLE Output = 0 + PIN: 17 Port: C1 LCD_PINS_EN Output = 0 . SDA Output = 0 PIN: 18 Port: C2 X_MIN_PIN protected . X_STOP_PIN protected @@ -135,14 +162,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_PINS_D4 (ST9720 CLK) - * PA3 | 7 8 | PC1 (ST9720 CS) LCD_PINS_RS | 7 8 | LCD_PINS_ENABLE (ST9720 DAT) - * GND | 9 10 | 5V GND | 9 10 | 5V - * ------ ------ - */ 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 0000000000..4ded3294b9 --- /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 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. + #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 diff --git a/Marlin/src/pins/sanguino/pins_MELZI_MALYAN.h b/Marlin/src/pins/sanguino/pins_MELZI_MALYAN.h index d6f36cc6f5..323ecaa029 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_MALYAN.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_MALYAN.h @@ -23,13 +23,14 @@ /** * Melzi (Malyan M150) pin assignments + * ATmega644P, ATmega1284P */ #define BOARD_INFO_NAME "Melzi (Malyan)" #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS 17 // ST9720 CS - #define LCD_PINS_ENABLE 16 // ST9720 DAT + #define LCD_PINS_EN 16 // ST9720 DAT #define LCD_PINS_D4 11 // ST9720 CLK #define BTN_EN1 30 #define BTN_EN2 29 diff --git a/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h b/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h index aecad10dab..7e4cc22bbe 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h @@ -23,6 +23,7 @@ /** * Melzi pin assignments + * ATmega644P, ATmega1284P */ #define BOARD_INFO_NAME "Melzi (Tronxy)" @@ -31,9 +32,9 @@ #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_ENABLE 28 + #define LCD_PINS_EN 28 #define LCD_PINS_D4 16 #define LCD_PINS_D5 17 #define LCD_PINS_D6 27 diff --git a/Marlin/src/pins/sanguino/pins_MELZI_V2.h b/Marlin/src/pins/sanguino/pins_MELZI_V2.h index e49eb57b11..2cd949e095 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_V2.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_V2.h @@ -23,6 +23,8 @@ /** * Melzi V2.0 as found at https://www.reprap.org/wiki/Melzi + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Melzi%20V2/Melzi-circuit.png + * Origin: https://www.reprap.org/mediawiki/images/7/7d/Melzi-circuit.png */ #define BOARD_INFO_NAME "Melzi V2" diff --git a/Marlin/src/pins/sanguino/pins_OMCA.h b/Marlin/src/pins/sanguino/pins_OMCA.h index 7f18283d1c..65f9006adb 100644 --- a/Marlin/src/pins/sanguino/pins_OMCA.h +++ b/Marlin/src/pins/sanguino/pins_OMCA.h @@ -128,8 +128,8 @@ #define HEATER_0_PIN 3 // DONE PWM on RIGHT connector #define HEATER_BED_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 14 // PWM on MIDDLE connector +#ifndef FAN0_PIN + #define FAN0_PIN 14 // PWM on MIDDLE connector #endif // diff --git a/Marlin/src/pins/sanguino/pins_OMCA_A.h b/Marlin/src/pins/sanguino/pins_OMCA_A.h index a3ceb76a0d..aa7f79d602 100644 --- a/Marlin/src/pins/sanguino/pins_OMCA_A.h +++ b/Marlin/src/pins/sanguino/pins_OMCA_A.h @@ -123,8 +123,8 @@ // #define HEATER_0_PIN 4 -#ifndef FAN_PIN - #define FAN_PIN 3 +#ifndef FAN0_PIN + #define FAN0_PIN 3 #endif // diff --git a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h index 3b6297ba4d..b99437ac93 100644 --- a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h +++ b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h @@ -23,6 +23,16 @@ /** * Sanguinololu board pin assignments + * Schematic (0.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v0.1/schematic.png + * Origin (0.1): https://github.com/mosfet/Sanguinololu/blob/master/rev0.1/sanguinololu.sch + * Schematic (0.6): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v0.6/schematic.jpg + * Origin (0.6): https://github.com/mosfet/Sanguinololu/blob/master/rev0.6/images/schematic.jpg + * Schematic (0.7): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v0.7/schematic.jpg + * Origin (0.7): https://github.com/mosfet/Sanguinololu/blob/master/rev0.7/images/schematic.jpg + * Schematic (1.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v1.0/Sanguinololu-schematic.jpg + * Origin (1.0): https://reprap.org/wiki/File:Sanguinololu-schematic.jpg + * Schematic (1.1): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v1.1/schematic.png + * Origin (1.1): https://github.com/mosfet/Sanguinololu/blob/master/rev1.1/sanguinololu.sch */ /** @@ -90,8 +100,8 @@ // #define HEATER_0_PIN 13 // (extruder) -#ifndef FAN_PIN - #define FAN_PIN 4 // Works for Panelolu2 too +#ifndef FAN0_PIN + #define FAN0_PIN 4 // Works for Panelolu2 too #endif #if DISABLED(SANGUINOLOLU_V_1_2) @@ -123,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 @@ -148,16 +158,16 @@ #if ENABLED(LCD_FOR_MELZI) #define LCD_PINS_RS 17 - #define LCD_PINS_ENABLE 16 + #define LCD_PINS_EN 16 #define LCD_PINS_D4 11 #define KILL_PIN 10 #define BEEPER_PIN 27 - #elif IS_U8GLIB_ST7920 // SPI GLCD 12864 ST7920 ( like [www.digole.com] ) For Melzi V2.0 + #elif IS_U8GLIB_ST7920 // SPI GLCD 12864 ST7920 ( like [www.digole.com] ) For Melzi V2.0 #if IS_MELZI #define LCD_PINS_RS 30 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE 29 // SID (MOSI) + #define LCD_PINS_EN 29 // SID (MOSI) #define LCD_PINS_D4 17 // SCK (CLK) clock // Pin 27 is taken by LED_PIN, but Melzi LED does nothing with // Marlin so this can be used for BEEPER_PIN. You can use this pin @@ -165,7 +175,7 @@ #define BEEPER_PIN 27 #else // Sanguinololu >=1.3 #define LCD_PINS_RS 4 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 30 #define LCD_PINS_D5 29 #define LCD_PINS_D6 28 @@ -200,7 +210,7 @@ #elif ENABLED(ZONESTAR_LCD) // For the Tronxy Melzi boards #define LCD_PINS_RS 28 - #define LCD_PINS_ENABLE 29 + #define LCD_PINS_EN 29 #define LCD_PINS_D4 10 #define LCD_PINS_D5 11 #define LCD_PINS_D6 16 @@ -209,7 +219,7 @@ #else #define LCD_PINS_RS 4 - #define LCD_PINS_ENABLE 17 + #define LCD_PINS_EN 17 #define LCD_PINS_D4 30 #define LCD_PINS_D5 29 #define LCD_PINS_D6 28 @@ -260,10 +270,10 @@ // 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_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/sanguino/pins_SANGUINOLOLU_12.h b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_12.h index ec7621e28f..37d1e7030b 100644 --- a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_12.h +++ b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_12.h @@ -23,6 +23,12 @@ /** * Sanguinololu V1.2 pin assignments + * Schematic (1.2): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v1.2/schematic.png + * Origin (1.2): https://github.com/mosfet/Sanguinololu/blob/master/rev1.2/sanguinololu.sch + * Schematic (1.3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v1.3/schematic.png + * Origin (1.3): https://github.com/mosfet/Sanguinololu/blob/master/rev1.3/sanguinololu.sch + * Schematic (1.3a): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Sanguinololu%20v1.3a/schematic.png + * Origin (1.3a): https://github.com/mosfet/Sanguinololu/blob/master/rev1.3a/sanguinololu.sch * * Applies to the following boards: * @@ -46,8 +52,8 @@ #endif #define E0_ENABLE_PIN 14 -#if !defined(FAN_PIN) && ENABLED(LCD_I2C_PANELOLU2) - #define FAN_PIN 4 // Uses Transistor1 (PWM) on Panelolu2's Sanguino Adapter Board to drive the fan +#if !defined(FAN0_PIN) && ENABLED(LCD_I2C_PANELOLU2) + #define FAN0_PIN 4 // Uses Transistor1 (PWM) on Panelolu2's Sanguino Adapter Board to drive the fan #endif #define SANGUINOLOLU_V_1_2 diff --git a/Marlin/src/pins/sanguino/pins_SETHI.h b/Marlin/src/pins/sanguino/pins_SETHI.h index a2240b385b..31d5585cc8 100644 --- a/Marlin/src/pins/sanguino/pins_SETHI.h +++ b/Marlin/src/pins/sanguino/pins_SETHI.h @@ -97,13 +97,8 @@ #define HEATER_0_PIN 4 #define HEATER_BED_PIN 3 -#ifndef FAN_PIN - #if GEN7_VERSION >= 13 - // Gen7 v1.3 removed the fan pin - #define FAN_PIN -1 - #else - #define FAN_PIN 31 - #endif +#if !defined(FAN0_PIN) && GEN7_VERSION < 13 // Gen7 v1.3 removed the fan pin + #define FAN0_PIN 31 #endif // diff --git a/Marlin/src/pins/sanguino/pins_STB_11.h b/Marlin/src/pins/sanguino/pins_STB_11.h index ad0919e99e..5c6c5d4f82 100644 --- a/Marlin/src/pins/sanguino/pins_STB_11.h +++ b/Marlin/src/pins/sanguino/pins_STB_11.h @@ -22,13 +22,14 @@ #pragma once /** - * STB V1.1 pin assignments + * STB Electronics V1.1 pin assignments + * https://www.reprap.org/wiki/STB_Electronics */ #define BOARD_INFO_NAME "STB V1.1" -#ifndef FAN_PIN - #define FAN_PIN 4 // Works for Panelolu2 too +#ifndef FAN0_PIN + #define FAN0_PIN 4 // Works for Panelolu2 too #endif #include "pins_SANGUINOLOLU_12.h" // ... SANGUINOLOLU_11 diff --git a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h index aa3ce556d1..438acb79c7 100644 --- a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h +++ b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h @@ -31,6 +31,8 @@ /** * ZMIB pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/ZONESTAR%20ZMIB%20V2/ZMIB_V2_Schmatic.pdf + * Origin: https://github.com/ZONESTAR3D/Control-Board/blob/main/8bit/ZMIB/ZMIB%20V2/ZMIB_V2_Schmatic.pdf * * The ZMIB board needs a bootloader installed before Marlin can be uploaded. * If you don't have a chip programmer you can use a spare Arduino plus a few @@ -77,7 +79,7 @@ * PIN: 25 Port: A6 FIL_RUNOUT_PIN * PIN: 26 Port: A5 E0_DIR_PIN * PIN: 27 Port: A4 E0_STEP_PIN - * PIN: 28 Port: A3 FAN_PIN + * PIN: 28 Port: A3 FAN0_PIN * PIN: 29 Port: A2 EXP1_3(BTN_ENC) * ADC_KEY_PIN * PIN: 30 Port: A1 TEMP_0_PIN @@ -90,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 @@ -107,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 @@ -117,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 @@ -142,13 +144,13 @@ // #define HEATER_0_PIN 0 #define HEATER_BED_PIN 1 -#define FAN_PIN 28 +#define FAN0_PIN 28 #define FAN1_PIN -1 // // 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 @@ -157,7 +159,7 @@ // // SD card // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SDSS 4 #endif #define SD_DETECT_PIN -1 @@ -192,14 +194,14 @@ #define FORCE_SOFT_SPI //#define LCD_SDSS EXP1_03_PIN #define LCD_PINS_RS EXP1_03_PIN // ST7920_CS_PIN (LCD module pin 4) - #define LCD_PINS_ENABLE EXP1_06_PIN // ST7920_DAT_PIN (LCD module pin 5) + #define LCD_PINS_EN EXP1_06_PIN // ST7920_DAT_PIN (LCD module pin 5) #define LCD_PINS_D4 EXP1_04_PIN // ST7920_CLK_PIN (LCD module pin 6) #define BOARD_ST7920_DELAY_1 DELAY_2_NOP #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 061e27faf4..7264a26539 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 + #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 X_STEP_PIN, X_DIR_PIN, _X_ENABLE_PIN _X_MIN _X_MAX _X_MS1 _X_MS2 _X_MS3 _X_CS + +#else + + #define _X_PINS + +#endif #if HAS_Y_AXIS @@ -419,7 +426,7 @@ // Mixing stepper, Switching stepper, or regular stepper #define E_NEEDED(N) (ENABLED(MIXING_EXTRUDER) && MIXING_STEPPERS > N) \ - || (ENABLED(SWITCHING_EXTRUDER) && E_STEPPERS > N) \ + || (HAS_SWITCHING_EXTRUDER && E_STEPPERS > N) \ || (NONE(SWITCHING_EXTRUDER, MIXING_EXTRUDER) && EXTRUDERS > N) #define _E0_CS @@ -632,7 +639,7 @@ #define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, _E0_CS _E0_MS1 _E0_MS2 _E0_MS3 #endif -#if ENABLED(SWITCHING_EXTRUDER) +#if HAS_SWITCHING_EXTRUDER // Tools 0 and 1 use E0 #if EXTRUDERS > 2 // Tools 2 and 3 use E1 #undef _E1_PINS @@ -643,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 @@ -778,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 @@ -899,8 +906,8 @@ #define _Z_PROBE #endif -#if PIN_EXISTS(FAN) - #define _FAN0 FAN_PIN, +#if PIN_EXISTS(FAN0) + #define _FAN0 FAN0_PIN, #else #define _FAN0 #endif diff --git a/Marlin/src/pins/stm32f1/env_validate.h b/Marlin/src/pins/stm32f1/env_validate.h index 2d325428ac..47399a062d 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_BEAST.h b/Marlin/src/pins/stm32f1/pins_BEAST.h index 4dafe2f273..b136ca52cd 100644 --- a/Marlin/src/pins/stm32f1/pins_BEAST.h +++ b/Marlin/src/pins/stm32f1/pins_BEAST.h @@ -89,8 +89,8 @@ #define HEATER_BED_PIN PB9 // BED -#ifndef FAN_PIN - #define FAN_PIN PB10 +#ifndef FAN0_PIN + #define FAN0_PIN PB10 #endif #define FAN_SOFT_PWM_REQUIRED @@ -112,7 +112,7 @@ #error "REPRAPWORLD_GRAPHICAL_LCD is not supported." #else #define LCD_PINS_RS PB8 - #define LCD_PINS_ENABLE PD2 + #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 @@ -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_CR6.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h index 4cdbfa35c3..aa6c90292f 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h @@ -112,7 +112,7 @@ #define HEATER_0_PIN PC8 // HEATER1 #define HEATER_BED_PIN PC9 // HOT BED -#define FAN_PIN PC6 // FAN +#define FAN0_PIN PC6 // FAN #define FAN_SOFT_PWM_REQUIRED #define CONTROLLER_FAN_PIN PC7 @@ -126,7 +126,7 @@ #define BTN_EN2 PA10 #define LCD_PINS_RS PB8 - #define LCD_PINS_ENABLE PB15 + #define LCD_PINS_EN PB15 #define LCD_PINS_D4 PB9 #define BEEPER_PIN PB5 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 075258991d..8be66eedb5 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) @@ -94,18 +94,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB5 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB4 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB3 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB5 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB4 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB3 #endif #if HAS_TMC_UART @@ -133,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 @@ -147,7 +148,7 @@ // #define HEATER_0_PIN PC8 // "HE" #define HEATER_BED_PIN PC9 // "HB" -#define FAN_PIN PA8 // "FAN0" +#define FAN0_PIN PA8 // "FAN0" // // USB connect control @@ -186,7 +187,7 @@ #define BTN_EN2 EXP1_05_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! @@ -196,14 +197,14 @@ #endif #define LCD_PINS_RS EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_02_PIN + #define LCD_PINS_EN EXP1_02_PIN #define LCD_PINS_D4 EXP1_07_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_03_PIN #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 * ------ @@ -295,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.)" @@ -351,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_V1_2.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h index 44d4f23435..c345a27b76 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_E3_V2_0.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h index c0428279f0..7e6798deaf 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h @@ -37,7 +37,7 @@ #undef NO_EEPROM_SELECTED #endif -#define FAN_PIN PC6 +#define FAN0_PIN PC6 // // USB connect control 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 9448d4f0c5..c86e2f7504 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) @@ -100,8 +100,8 @@ #define HEATER_0_PIN PC8 // "HE" #define HEATER_BED_PIN PC9 // "HB" -#ifndef FAN_PIN - #define FAN_PIN PA8 // "FAN0" +#ifndef FAN0_PIN + #define FAN0_PIN PA8 // "FAN0" #endif // @@ -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 @@ -169,7 +169,7 @@ #define BTN_EN2 EXP1_05_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(LCD_FOR_MELZI) @@ -200,7 +200,7 @@ #define BTN_EN2 EXP1_07_PIN #define LCD_PINS_RS EXP1_01_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! @@ -210,14 +210,14 @@ #endif #define LCD_PINS_RS EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_02_PIN + #define LCD_PINS_EN EXP1_02_PIN #define LCD_PINS_D4 EXP1_07_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_03_PIN #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 @@ -315,8 +315,8 @@ * EXP1-2 ----------- EXP1-9 ENC * EXP1-1 ----------- EXP1-7 LCD_A0 * - * TFT-2 ----------- EXP2-5 SCK - * TFT-3 ----------- EXP2-9 MOSI + * TFT-2 ----------- EXP2-5 MOSI + * TFT-3 ----------- EXP2-9 SCK * * for backlight configuration see steps 2 (V2.1) and 3 in https://wiki.fysetc.com/Mini12864_Panel/ */ @@ -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 c544e1353c..89ed31cb82 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) @@ -68,40 +68,42 @@ #define E0_DIR_PIN PB0 #define E0_ENABLE_PIN PC4 -#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 +// Shared with EXP2 +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB3 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB4 +#endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB5 #endif #if HAS_TMC_UART // Shared with EXP1 - #define X_SERIAL_TX_PIN PC10 - #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + #define X_SERIAL_TX_PIN PC10 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN - #define Y_SERIAL_TX_PIN PC11 - #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + #define Y_SERIAL_TX_PIN PC11 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN - #define Z_SERIAL_TX_PIN PC12 - #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + #define Z_SERIAL_TX_PIN PC12 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN - #define E0_SERIAL_TX_PIN PC14 - #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + #define E0_SERIAL_TX_PIN PC14 + #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 // #define HEATER_0_PIN PA8 -#define FAN_PIN PC8 +#define FAN0_PIN PC8 #define HEATER_BED_PIN PC9 // @@ -140,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 @@ -169,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 @@ -181,7 +183,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif IS_TFTGLCD_PANEL @@ -202,7 +204,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #if ENABLED(FYSETC_MINI_12864) @@ -215,11 +217,11 @@ #define FORCE_SOFT_SPI // SPI MODE3 - #define LED_PIN EXP1_06_PIN // red pwm + #define LED_PIN EXP1_06_PIN // red pwm //#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 @@ -271,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 @@ -287,4 +289,4 @@ #define ONBOARD_SPI_DEVICE 1 // SPI1 #define ONBOARD_SD_CS_PIN PA4 // Chip select for "System" SD card -#define SDSS SD_SS_PIN +#define SDSS SD_SS_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h b/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h index c73544bf43..1d501e512b 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) @@ -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 @@ -114,7 +116,7 @@ #define HEATER_0_PIN PC8 // HEATER0 #define HEATER_BED_PIN PC9 // HOT BED -#define FAN_PIN PA7 // FAN (fan2 on board) model cool fan +#define FAN0_PIN PA7 // FAN (fan2 on board) model cool fan #define FAN1_PIN PA8 // FAN (fan0 on board) e0 cool fan #define FAN2_PIN PB9 // FAN (fan1 on board) controller cool fan @@ -134,7 +136,7 @@ #define EXP1_01_PIN PB5 #define EXP1_02_PIN PB6 #define EXP1_03_PIN PA2 -#define EXP1_04_PIN -1 // RESET +#define EXP1_04_PIN -1 // RESET #define EXP1_05_PIN PA3 #define EXP1_06_PIN PB8 #define EXP1_07_PIN PB7 @@ -151,7 +153,7 @@ #define LCD_PINS_RS EXP1_07_PIN // CS -- SOFT SPI for ENDER3 LCD #define LCD_PINS_D4 EXP1_06_PIN // SCLK - #define LCD_PINS_ENABLE EXP1_08_PIN // DATA MOSI + #define LCD_PINS_EN EXP1_08_PIN // DATA MOSI #endif // Alter timing for graphical display diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D.h b/Marlin/src/pins/stm32f1/pins_CHITU3D.h index 3b66096a27..2074bbecce 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D.h @@ -83,8 +83,8 @@ #define HEATER_0_PIN PD12 // HOT-END #define HEATER_BED_PIN PG11 // HOT-BED -#ifndef FAN_PIN - #define FAN_PIN PG14 // MAIN BOARD FAN +#ifndef FAN0_PIN + #define FAN0_PIN PG14 // MAIN BOARD FAN #endif #define FAN_SOFT_PWM_REQUIRED @@ -102,18 +102,18 @@ #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD) #define LCD_PINS_RS PD1 // 49 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE PD3 // 51 // SID (MOSI) + #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_ENABLE PD2 + #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 #define LCD_PINS_D7 PB15 #else #define LCD_PINS_RS PB8 - #define LCD_PINS_ENABLE PD2 + #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 @@ -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_CHITU3D_V6.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h index 89e07d6a21..18c8e22dff 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h @@ -33,4 +33,55 @@ #define FIL_RUNOUT2_PIN PF13 #endif +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PG9 +#endif + #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 + * + * JP2 Ribbon 30 on CXY-V6-191017 + * ---------------------------------------------- + * | 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30| + * | 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29| + * ---------------------- ---------------------- + * + * -------------------------------------------------------------------------------------- + * | Pin | Label | Function & Notes | + * -------------------------------------------------------------------------------------- + * | 1 | Hotend | Hotend driver Q6 HY1403 via MCU Pin127 PG12 | + * | 2 | Hotend | Hotend driver Q6 HY1403 via MCU Pin127 PG12 | + * | 3 | Hotend | Hotend driver Q6 HY1403 via MCU Pin127 PG12 | + * | 4 | Hotend | Hotend driver Q6 HY1403 via MCU Pin127 PG12 | + * | 5 | +24v | Hotend +24v | + * | 6 | +24v | Hotend +24v | + * | 7 | +24v | Hotend +24v | + * | 8 | +24v | Hotend +24v | + * | 9 | F_2 | Extruder Fan2 driver Q8 AO3400A X07S via MCU Pin129 PG14 | + * | 10 | +24v | Extruder cooling Fan2 +24v | + * | 11 | F_1 | Part Fan1 driver Q7 AO3400A X07S via MCU Pin128 PG13 | + * | 12 | +24v | Part cooling Fanl +24v | + * | 13 | 1B | X-MOTOR Winding Drive | + * | 14 | 1A | X-MOTOR Winding Drive | + * | 15 | 2B | X-MOTOR Winding Drive | + * | 16 | 2A | X-MOTOR Winding Drive | + * | 17 | lA | El-Motor Winding Drive | + * | 18 | 1B | El-Motor Winding Drive | + * | 19 | 2B | El-Motor Winding Drive | + * | 20 | 2A | El-Motor Winding Drive | + * | 21 | PROXIMITY | 10kΩ Pullup to +5V and 100nF to GND, then 20kΩ to MCU Pin124 PG9 | + * | 22 | +24v | Proximity sensor +24v | + * | 23 | +5V | Filament sensor +5V XSTOP sensor +5V | + * | 24 | GND | Proximity sensor GND | + * | 25 | FILAMENT1 | 10kΩ Pullup to +5V and 100nF to GND, then 47kΩ to MCU Pin110 PA15| + * | 26 | GND | Filament Sensor GND | + * | 27 | XSTOP | 10kΩ Pullup to +5V and 100nF to GND, then 47kΩ to MCU Pin125 PG10| + * | 28 | GND | XSTOP sensor GND | + * | 29 | GND | Extruder temperature NTC sensor return GND | + * | 30 | ETEMP | 4k7Ω Pullup to +3V3 and 100nF to GND, then 4k7Ω to MCU Pin35 PA1 | + * -------------------------------------------------------------------------------------- + */ diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h index f5dd4a42b0..7f117dd659 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h @@ -99,7 +99,7 @@ // Fans // #define CONTROLLER_FAN_PIN PD6 // BOARD FAN -#define FAN_PIN PG13 // FAN +#define FAN0_PIN PG13 // FAN #define FAN2_PIN PG14 // @@ -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 // @@ -140,8 +140,6 @@ #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT #define FSMC_CS_PIN PD7 #define FSMC_RS_PIN PD11 - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN @@ -157,12 +155,12 @@ #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 // 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 @@ -171,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_V24S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h index 0d2ad835d3..058dcdf94f 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h @@ -22,9 +22,14 @@ #pragma once /** - * Creality v2.4.S1 (STM32F103RE / STM32F103RC) v101 as found in the Ender 7 + * 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 53953f9ebc..ce942ba545 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h @@ -22,7 +22,7 @@ #pragma once /** - * Creality V24S1_301 (STM32F103RE / STM32F103RC) board pin assignments as found on Ender 3 S1. + * Creality V24S1_301 (STM32F103RE / STM32F103RC) board pin assignments as found on Ender-3 S1. * Also supports the STM32F4 version of the board with identical pin mapping. */ @@ -30,9 +30,10 @@ #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) +#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 @@ -40,7 +41,7 @@ #define BOARD_INFO_NAME "Creality V24S1-301" #endif #ifndef DEFAULT_MACHINE_NAME - #define DEFAULT_MACHINE_NAME "Ender 3 S1" + #define DEFAULT_MACHINE_NAME "Ender-3 S1" #endif // @@ -84,9 +85,9 @@ #if HAS_CUTTER //#define HEATER_0_PIN -1 //#define HEATER_BED_PIN -1 - #define FAN_PIN -1 - #define SPINDLE_LASER_ENA_PIN PC0 // FET 1 + #define FAN0_PIN -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/stm32f1/pins_CREALITY_V25S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h index a0152a5221..61207f90b0 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h @@ -49,11 +49,11 @@ #endif #if ENABLED(IIC_BL24CXX_EEPROM) - #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) - #define MARLIN_EEPROM_SIZE 0x800 // 2K + #define IIC_EEPROM_SDA PA11 + #define IIC_EEPROM_SCL PA12 + #define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16) +#elif ANY(SDCARD_EEPROM_EMULATION, FLASH_EEPROM_EMULATION) + #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 // @@ -114,7 +108,7 @@ #define HEATER_0_PIN PB14 // HEATER1 #define HEATER_BED_PIN PB13 // HOT BED -#define FAN_PIN PB15 // FAN +#define FAN0_PIN PB15 // FAN #ifndef E0_AUTO_FAN_PIN #define E0_AUTO_FAN_PIN PC13 // FAN #endif @@ -127,7 +121,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 f633ee0983..96b3007ca6 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 @@ -35,7 +35,7 @@ #define BOARD_INFO_NAME "Creality V4" #endif #ifndef DEFAULT_MACHINE_NAME - #define DEFAULT_MACHINE_NAME "Ender 3 V2" + #define DEFAULT_MACHINE_NAME "Ender-3 V2" #endif #define BOARD_NO_NATIVE_USB @@ -53,6 +53,7 @@ #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) @@ -148,8 +149,8 @@ #ifndef HEATER_BED_PIN #define HEATER_BED_PIN PA2 // HOT BED #endif -#ifndef FAN_PIN - #define FAN_PIN PA0 // FAN +#ifndef FAN0_PIN + #define FAN0_PIN PA0 // FAN #endif #define FAN_SOFT_PWM_REQUIRED @@ -158,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) @@ -182,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 @@ -203,14 +204,14 @@ #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 #if ENABLED(CR10_STOCKDISPLAY) #define LCD_PINS_RS EXP3_07_PIN - #define LCD_PINS_ENABLE EXP3_08_PIN + #define LCD_PINS_EN EXP3_08_PIN #define LCD_PINS_D4 EXP3_06_PIN #define BTN_ENC EXP3_02_PIN @@ -298,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/stm32f1/pins_CREALITY_V4210.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h index f3b7e4f308..2e0de87641 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h @@ -130,7 +130,7 @@ #define HEATER_0_PIN PA0 // HEATER1 #define HEATER_BED_PIN PA1 // HOT BED -#define FAN_PIN PA2 // FAN +#define FAN0_PIN PA2 // FAN #define FAN_SOFT_PWM_REQUIRED // @@ -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) @@ -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 @@ -193,7 +193,7 @@ #endif #define LCD_PINS_RS EXP3_07_PIN - #define LCD_PINS_ENABLE EXP3_08_PIN + #define LCD_PINS_EN EXP3_08_PIN #define LCD_PINS_D4 EXP3_06_PIN #define BTN_ENC EXP3_02_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h index 1c62d19a99..a225fe11be 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" @@ -72,6 +68,6 @@ // #define HEATER_0_PIN PA0 // HEATER1 #define HEATER_BED_PIN PA1 // HOT BED -#define FAN_PIN PA2 // FAN +#define FAN0_PIN PA2 // FAN #include "pins_CREALITY_V4.h" diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V452.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V452.h index 4f57f8a805..2f89402607 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V452.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V452.h @@ -33,7 +33,7 @@ #define HEATER_0_PIN PA1 // HEATER1 #define HEATER_BED_PIN PA2 // HOT BED -#define FAN_PIN PA0 // FAN +#define FAN0_PIN PA0 // FAN #if ENABLED(PROBE_ACTIVATION_SWITCH) #ifndef PROBE_ACTIVATION_SWITCH_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V453.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V453.h index 6a0fa4f418..25b5d6c0ac 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V453.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V453.h @@ -33,7 +33,7 @@ #define HEATER_0_PIN PB14 // HEATER1 #define HEATER_BED_PIN PB13 // HOT BED -#define FAN_PIN PB15 // FAN +#define FAN0_PIN PB15 // FAN #if ENABLED(PROBE_ACTIVATION_SWITCH) #ifndef PROBE_ACTIVATION_SWITCH_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h index 8bb6e71586..33a4a6a341 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h @@ -111,7 +111,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 d3d3685531..d555c0aaa1 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h @@ -133,7 +133,7 @@ #define HEATER_1_PIN PA0 // HEATER1 #define HEATER_BED_PIN PA2 // HOT BED -#define FAN_PIN PB14 // FAN +#define FAN0_PIN PB14 // FAN #define FAN1_PIN PB12 // FAN #define FAN_SOFT_PWM @@ -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) @@ -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 @@ -197,7 +197,7 @@ #endif #define LCD_PINS_RS EXP3_07_PIN - #define LCD_PINS_ENABLE EXP3_08_PIN + #define LCD_PINS_EN EXP3_08_PIN #define LCD_PINS_D4 EXP3_06_PIN #define BTN_ENC EXP3_02_PIN @@ -219,8 +219,3 @@ #endif #endif - -// DGUS LCDs -#if HAS_DGUS_LCD - #define LCD_SERIAL_PORT 3 -#endif diff --git a/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h b/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h index 08c9500fc5..b18bd09de8 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,22 +98,22 @@ #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 #endif #endif -#ifndef FAN_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan - #define FAN_PIN PB5 - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan - #define FAN_PIN PD12 +#ifndef FAN0_PIN + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #define FAN0_PIN PB5 + #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 FAN_PIN -1 // IO pin. Buffer needed + #define FAN0_PIN -1 // IO pin. Buffer needed #else // Non-specific are "EFB" (i.e., "EFBF" or "EFBE") - #define FAN_PIN PB5 + #define FAN0_PIN PB5 #endif #endif @@ -148,25 +148,29 @@ #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 // #if HAS_WIRED_LCD #define BEEPER_PIN PE12 #define BTN_ENC PE11 - #define LCD_PINS_ENABLE PE10 + #define LCD_PINS_EN PE10 #define LCD_PINS_RS PE9 #define BTN_EN1 PE4 #define BTN_EN2 PE3 diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index ff588f9488..027bfd71b5 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) @@ -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_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_CS_PIN PB12 // SPI2_NSS / Flash chip-select + #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif // @@ -128,7 +132,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 @@ -138,27 +144,29 @@ #define DEFAULT_PWM_MOTOR_CURRENT { 800, 800, 800 } #endif - /** - * MKS Robin_Wifi or another ESP8266 module - * - * __ESP(M1)__ -J1- - * GND| 15 | | 08 |+3v3 (22) RXD1 (PA10) - * | 16 | | 07 |MOSI (21) TXD1 (PA9) Active LOW, probably OK to leave floating - * IO2| 17 | | 06 |MISO (19) IO1 (PC7) Leave as unused (ESP3D software configures this with a pullup so OK to leave as floating) - * IO0| 18 | | 05 |CLK (18) IO0 (PA8) Must be HIGH (ESP3D software configures this with a pullup so OK to leave as floating) - * IO1| 19 | | 03 |EN (03) WIFI_EN Must be HIGH for module to run - * | nc | | nc | (01) WIFI_CTRL (PA5) - * RX| 21 | | nc | - * TX| 22 | | 01 |RST - *  ̄ ̄ AE ̄ ̄ - */ - // Module ESP-WIFI - #define ESP_WIFI_MODULE_COM 2 // 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 PA5 // WIFI CTRL/RST - #define ESP_WIFI_MODULE_ENABLE_PIN -1 - #define ESP_WIFI_MODULE_TXD_PIN PA9 // MKS or ESP WIFI RX PIN - #define ESP_WIFI_MODULE_RXD_PIN PA10 // MKS or ESP WIFI TX PIN + #if ENABLED(WIFISUPPORT) + /** + * MKS Robin_Wifi or another ESP8266 module + * + * __ESP(M1)__ -J1- + * GND| 15 | | 08 |+3v3 (22) RXD1 (PA10) + * | 16 | | 07 |MOSI (21) TXD1 (PA9) Active LOW, probably OK to leave floating + * IO2| 17 | | 06 |MISO (19) IO1 (PC7) Leave as unused (ESP3D software configures this with a pullup so OK to leave as floating) + * IO0| 18 | | 05 |CLK (18) IO0 (PA8) Must be HIGH (ESP3D software configures this with a pullup so OK to leave as floating) + * IO1| 19 | | 03 |EN (03) WIFI_EN Must be HIGH for module to run + * | nc | | nc | (01) WIFI_CTRL (PA5) + * RX| 21 | | nc | + * TX| 22 | | 01 |RST + *  ̄ ̄ AE ̄ ̄ + */ + // Module ESP-WIFI + #define ESP_WIFI_MODULE_COM 2 // 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 PA5 // WIFI CTRL/RST + #define ESP_WIFI_MODULE_ENABLE_PIN -1 + #define ESP_WIFI_MODULE_TXD_PIN PA9 // MKS or ESP WIFI RX PIN + #define ESP_WIFI_MODULE_RXD_PIN PA10 // MKS or ESP WIFI TX PIN + #endif #endif // @@ -167,7 +175,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 @@ -189,7 +196,7 @@ #define HEATER_0_PIN PC3 // HEATER_E0 #define HEATER_BED_PIN PA0 // HEATER_BED-WKUP -#define FAN_PIN PB1 // E_FAN +#define FAN0_PIN PB1 // E_FAN // // Misc. Functions @@ -254,7 +261,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 @@ -293,8 +300,6 @@ #define TFT_BACKLIGHT_PIN PD13 #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define FSMC_CS_PIN PD7 // NE4 #define FSMC_RS_PIN PD11 // A0 @@ -302,13 +307,13 @@ #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 #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_FLY_MINI.h b/Marlin/src/pins/stm32f1/pins_FLY_MINI.h index f39850f755..69e11be20c 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 @@ -83,16 +83,14 @@ #define E0_CS_PIN PC2 #endif -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI EXP2_06_PIN - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO EXP2_01_PIN - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK EXP2_02_PIN - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI EXP2_06_PIN +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO EXP2_01_PIN +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK EXP2_02_PIN #endif #if HAS_TMC_UART @@ -111,8 +109,8 @@ // #define HEATER_0_PIN PC6 #define HEATER_BED_PIN PC7 -#ifndef FAN_PIN - #define FAN_PIN PC8 +#ifndef FAN0_PIN + #define FAN0_PIN PC8 #endif #define FAN1_PIN PC9 @@ -131,30 +129,30 @@ * ------ ------ * EXP1 EXP2 */ -#define EXP1_01_PIN PC14 -#define EXP1_02_PIN PC13 -#define EXP1_03_PIN PB9 -#define EXP1_04_PIN PB8 -#define EXP1_05_PIN PB7 -#define EXP1_06_PIN PB6 -#define EXP1_07_PIN PB5 -#define EXP1_08_PIN PB4 +#define EXP1_01_PIN PC14 +#define EXP1_02_PIN PC13 +#define EXP1_03_PIN PB9 +#define EXP1_04_PIN PB8 +#define EXP1_05_PIN PB7 +#define EXP1_06_PIN PB6 +#define EXP1_07_PIN PB5 +#define EXP1_08_PIN PB4 -#define EXP2_01_PIN PB14 -#define EXP2_02_PIN PB13 -#define EXP2_03_PIN PB3 -#define EXP2_04_PIN PB12 -#define EXP2_05_PIN PD2 -#define EXP2_06_PIN PB15 -#define EXP2_07_PIN PB11 -#define EXP2_08_PIN -1 // RESET +#define EXP2_01_PIN PB14 +#define EXP2_02_PIN PB13 +#define EXP2_03_PIN PB3 +#define EXP2_04_PIN PB12 +#define EXP2_05_PIN PD2 +#define EXP2_06_PIN PB15 +#define EXP2_07_PIN PB11 +#define EXP2_08_PIN -1 // RESET // // LCD / Controller // #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 @@ -166,7 +164,7 @@ #define BEEPER_PIN EXP1_01_PIN #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h b/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h index 9250ee1127..93ef7b75d4 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) @@ -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 @@ -134,8 +137,8 @@ // #define HEATER_0_PIN PC7 #define HEATER_BED_PIN PC6 -#ifndef FAN_PIN - #define FAN_PIN PC8 +#ifndef FAN0_PIN + #define FAN0_PIN PC8 #endif // diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h index e59e8aef59..49b6f25a47 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) @@ -104,8 +104,8 @@ // #define HEATER_0_PIN PC6 #define HEATER_BED_PIN PC7 -#ifndef FAN_PIN - #define FAN_PIN PC8 +#ifndef FAN0_PIN + #define FAN0_PIN PC8 #endif // @@ -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 @@ -172,7 +172,7 @@ #define LCD_PINS_RS EXP1_07_PIN // CS -- SOFT SPI for ENDER3 LCD #define LCD_PINS_D4 EXP1_06_PIN // SCLK - #define LCD_PINS_ENABLE EXP1_08_PIN // DATA MOSI + #define LCD_PINS_EN EXP1_08_PIN // DATA MOSI //#define LCD_CONTRAST_INIT 190 diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h index 120d6d6f0a..96e90b701c 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_GTM32_MINI.h b/Marlin/src/pins/stm32f1/pins_GTM32_MINI.h index 5515132c78..b97ccc8ec7 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 @@ -110,7 +110,7 @@ // // These are FAN PWM pins on EXT0..EXT2 connectors. // -//#define FAN_PIN PB9 // EXT0 port +//#define FAN0_PIN PB9 // EXT0 port #define FAN1_PIN PB8 // EXT1 port #define FAN2_PIN PB7 // EXT2 port @@ -143,7 +143,7 @@ // RepRapDiscount Smart Controller, but adds an FFC40 connector // #define LCD_PINS_RS PE6 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE PE14 // SID (MOSI) + #define LCD_PINS_EN PE14 // SID (MOSI) #define LCD_PINS_D4 PD8 // SCK (CLK) clock #define LCD_PINS_D5 PD9 #define LCD_PINS_D6 PD10 @@ -226,10 +226,11 @@ #define SDSS SD_SS_PIN -// -// ESP WiFi can be soldered to J9 connector which is wired to USART2. -// Must define WIFISUPPORT in Configuration.h for the printer. -// -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115200 -#define ESP_WIFI_MODULE_RESET_PIN -1 +#if ENABLED(WIFISUPPORT) + // + // ESP WiFi can be soldered to J9 connector which is wired to USART2. + // + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115200 + #define ESP_WIFI_MODULE_RESET_PIN -1 +#endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h b/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h index dc23680b8c..4bb8c5dee6 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 @@ -110,7 +110,7 @@ // // These are FAN PWM pins on EXT0..EXT2 connectors. // -//#define FAN_PIN PB9 // EXT0 port +//#define FAN0_PIN PB9 // EXT0 port #define FAN1_PIN PB8 // EXT1 port #define FAN2_PIN PB7 // EXT2 port @@ -144,7 +144,7 @@ // connected with a flat wire to J2 connector on the board. // #define LCD_PINS_RS PE6 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE PE14 // SID (MOSI) + #define LCD_PINS_EN PE14 // SID (MOSI) #define LCD_PINS_D4 PD8 // SCK (CLK) clock #define LCD_PINS_D5 PD9 #define LCD_PINS_D6 PD10 @@ -220,10 +220,11 @@ #define SDSS SD_SS_PIN -// -// ESP WiFi can be soldered to J9 connector which is wired to USART2. -// Must define WIFISUPPORT in Configuration.h for the printer. -// -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115200 -#define ESP_WIFI_MODULE_RESET_PIN -1 +#if ENABLED(WIFISUPPORT) + // + // ESP WiFi can be soldered to J9 connector which is wired to USART2. + // + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115200 + #define ESP_WIFI_MODULE_RESET_PIN -1 +#endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h index 646638dae2..57abf7aca7 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 @@ -115,7 +115,7 @@ // // These are FAN PWM pins on EXT0..EXT2 connectors. // -//#define FAN_PIN PB9 // EXT0 port +//#define FAN0_PIN PB9 // EXT0 port #define FAN1_PIN PB8 // EXT1 port #define FAN2_PIN PB7 // EXT2 port @@ -148,7 +148,7 @@ // RepRapDiscount Smart Controller, but adds an FFC40 connector // #define LCD_PINS_RS PE6 // CS chip select /SS chip slave select - #define LCD_PINS_ENABLE PE14 // SID (MOSI) + #define LCD_PINS_EN PE14 // SID (MOSI) #define LCD_PINS_D4 PD8 // SCK (CLK) clock #define LCD_PINS_D5 PD9 #define LCD_PINS_D6 PD10 @@ -231,10 +231,11 @@ #define SDSS SD_SS_PIN -// -// ESP WiFi can be soldered to J9 connector which is wired to USART2. -// Must define WIFISUPPORT in Configuration.h for the printer. -// -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115200 -#define ESP_WIFI_MODULE_RESET_PIN -1 +#if ENABLED(WIFISUPPORT) + // + // ESP WiFi can be soldered to J9 connector which is wired to USART2. + // + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115200 + #define ESP_WIFI_MODULE_RESET_PIN -1 +#endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h b/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h index 968d9cb6bd..34f7dba91f 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 @@ -110,7 +110,7 @@ // // These are FAN PWM pins on EXT0..EXT2 connectors. // -//#define FAN_PIN PB9 // EXT0 port +//#define FAN0_PIN PB9 // EXT0 port #define FAN1_PIN PB8 // EXT1 port #define FAN2_PIN PB7 // EXT2 port @@ -146,7 +146,7 @@ // #define LCD_PINS_RS PA12 // CS chip select /SS chip slave select // RW is hardwired to VSS - #define LCD_PINS_ENABLE PC7 // SID (MOSI) + #define LCD_PINS_EN PC7 // SID (MOSI) #define LCD_PINS_D4 PD1 // SCK (CLK) clock #define LCD_PINS_D5 PD4 #define LCD_PINS_D6 PD5 @@ -223,10 +223,11 @@ #define SDSS SD_SS_PIN -// -// ESP WiFi can be soldered to J9 connector which is wired to USART2. -// Must define WIFISUPPORT in Configuration.h for the printer. -// -#define ESP_WIFI_MODULE_COM 2 -#define ESP_WIFI_MODULE_BAUDRATE 115200 -#define ESP_WIFI_MODULE_RESET_PIN -1 +#if ENABLED(WIFISUPPORT) + // + // ESP WiFi can be soldered to J9 connector which is wired to USART2. + // + #define ESP_WIFI_MODULE_COM 2 + #define ESP_WIFI_MODULE_BAUDRATE 115200 + #define ESP_WIFI_MODULE_RESET_PIN -1 +#endif diff --git a/Marlin/src/pins/stm32f1/pins_JGAURORA_A5S_A1.h b/Marlin/src/pins/stm32f1/pins_JGAURORA_A5S_A1.h index d3cf3e5cf5..21ac51e279 100644 --- a/Marlin/src/pins/stm32f1/pins_JGAURORA_A5S_A1.h +++ b/Marlin/src/pins/stm32f1/pins_JGAURORA_A5S_A1.h @@ -104,7 +104,7 @@ #define HEATER_0_PIN PA2 #define HEATER_BED_PIN PA3 -#define FAN_PIN PA1 +#define FAN0_PIN PA1 #define FIL_RUNOUT_PIN PC7 @@ -117,8 +117,6 @@ #define FSMC_RS_PIN PG0 #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_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 new file mode 100644 index 0000000000..9b20700adb --- /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 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) + #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_EN 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_EN 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 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 + // #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 // Maple + #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/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h index ad6b84b057..2c1fdf1d76 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 FAN_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 @@ -116,7 +116,7 @@ #define BOARD_PREINIT() { \ OUT_WRITE_OD(HEATER_0_PIN, 0); \ OUT_WRITE_OD(HEATER_BED_PIN, 0); \ - OUT_WRITE_OD(FAN_PIN, 0); \ + OUT_WRITE_OD(FAN0_PIN, 0); \ } // @@ -136,23 +136,21 @@ // #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_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 + #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 #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) @@ -160,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 @@ -170,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 // @@ -183,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 f157c8e455..6add3ca01c 100644 --- a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h @@ -51,22 +51,22 @@ #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) #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Limit Switches // #define X_MIN_PIN PD6 -#define X_MAX_PIN PG15 // To double check +#define X_MAX_PIN PG15 // To double check #define Y_MIN_PIN PG9 -#define Y_MAX_PIN PG14 // To double check +#define Y_MAX_PIN PG14 // To double check #define Z_MIN_PIN PG10 #define Z_MAX_PIN PG13 @@ -111,7 +111,7 @@ #define HEATER_0_PIN PB0 #define HEATER_BED_PIN PB1 -#define FAN_PIN PA0 // FAN +#define FAN0_PIN PA0 // FAN // // SD Card @@ -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 @@ -143,8 +143,6 @@ #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT #define FSMC_CS_PIN PD7 // NE4 #define FSMC_RS_PIN PG0 // A0 - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h index be5f6c7404..a1ca477857 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h @@ -116,7 +116,7 @@ // // Fan // -#define FAN_PIN PA7 // FAN +#define FAN0_PIN PA7 // FAN // // Thermocouples @@ -176,15 +176,13 @@ #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT #define FSMC_CS_PIN PG12 // NE4 #define FSMC_RS_PIN PF0 // A0 - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN #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 @@ -197,12 +195,12 @@ // 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 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 @@ -276,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_E3D.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D.h index 77c2b79215..6d88897332 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D.h @@ -50,18 +50,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB15 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB14 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB13 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 #endif #include "pins_MKS_ROBIN_E3_common.h" diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D_V1_1.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D_V1_1.h index 2ad68a0140..89fda7ab67 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D_V1_1.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D_V1_1.h @@ -50,18 +50,17 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers +// Software and hardware actually, they are connected to SPI2 bus. // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB15 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB14 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB13 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 #endif #include "pins_MKS_ROBIN_E3_V1_1_common.h" // ... MKS_ROBIN_E3_common diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index 89525d93ef..6687230559 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -52,15 +52,15 @@ //#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 // -// Note: MKS Robin board is using SPI2 interface. +// SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -112,18 +112,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PD14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PD1 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PD0 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PD14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PD1 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PD0 #endif #if HAS_TMC_UART @@ -158,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 // @@ -173,7 +174,7 @@ #define HEATER_0_PIN PC3 // HEATER1 #define HEATER_BED_PIN PA0 // HOT BED -#define FAN_PIN PB1 // FAN +#define FAN0_PIN PB1 // FAN // // Misc. Functions @@ -241,7 +242,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 @@ -298,19 +299,19 @@ #if ENABLED(TFT_CLASSIC_UI) // Emulated DOGM SPI - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define BTN_ENC EXP1_02_PIN #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 #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN @@ -381,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 642c97bb11..c3becd3fa1 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) @@ -112,14 +112,17 @@ #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 // #define HEATER_0_PIN PC9 -#define FAN_PIN PA8 +#define FAN0_PIN PA8 #define HEATER_BED_PIN PC8 // @@ -165,13 +168,13 @@ #define EXP2_05_PIN PB0 #define EXP2_06_PIN PB15 #define EXP2_07_PIN PC10 -#define EXP2_08_PIN -1 // RESET +#define EXP2_08_PIN -1 // RESET // "Ender-3 EXP1" #define EXP3_01_PIN PC1 #define EXP3_02_PIN PC3 #define EXP3_03_PIN PB11 -#define EXP3_04_PIN -1 // RESET +#define EXP3_04_PIN -1 // RESET #define EXP3_05_PIN PB0 #define EXP3_06_PIN PA6 #define EXP3_07_PIN PA5 @@ -181,7 +184,7 @@ #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN @@ -250,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 7ead6aa288..53f31c2784 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h @@ -68,7 +68,7 @@ // Heaters / Fans // #define HEATER_0_PIN PC9 -#define FAN_PIN PA8 +#define FAN0_PIN PA8 #define HEATER_BED_PIN PC8 // @@ -110,7 +110,7 @@ #define BTN_EN1 EXP3_03_PIN #define BTN_EN2 EXP3_05_PIN - #define LCD_PINS_ENABLE EXP3_08_PIN + #define LCD_PINS_EN EXP3_08_PIN #if ENABLED(MKS_MINI_12864) @@ -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 b1aaa53c94..0651bcebf2 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h @@ -82,7 +82,7 @@ // #define HEATER_0_PIN PC9 #define HEATER_1_PIN PC7 -#define FAN_PIN PA8 +#define FAN0_PIN PA8 #define HEATER_BED_PIN PC8 // @@ -101,7 +101,7 @@ #define BEEPER_PIN PC1 #define BTN_ENC PC3 - #define LCD_PINS_ENABLE PA4 + #define LCD_PINS_EN PA4 #define LCD_PINS_RS PA5 #define BTN_EN1 PB11 #define BTN_EN2 PB0 @@ -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 cd4989d73d..a4c5ca767e 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h @@ -43,14 +43,14 @@ // // 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) #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -111,7 +111,7 @@ #define HEATER_0_PIN PC3 #define HEATER_BED_PIN PA0 -#define FAN_PIN PB1 // FAN +#define FAN0_PIN PB1 // FAN // // Misc. Functions @@ -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 @@ -160,8 +160,6 @@ #define FSMC_RS_PIN TFT_RS_PIN // A0 #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #if NEED_TOUCH_PINS #define TOUCH_CS_PIN PC2 // SPI2_NSS @@ -174,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 @@ -201,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 8dba943136..d8c8f7aa83 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -54,15 +54,15 @@ //#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 // -// Note: MKS Robin board is using SPI2 interface. +// SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -122,18 +122,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PD14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PD1 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PD0 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PD14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PD1 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PD0 #endif #if HAS_TMC_UART @@ -165,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 // @@ -182,7 +183,7 @@ #define HEATER_1_PIN PB0 // HEATER2 #define HEATER_BED_PIN PA0 // HOT BED -#define FAN_PIN PB1 // FAN +#define FAN0_PIN PB1 // FAN // // Thermocouples @@ -241,7 +242,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 @@ -298,19 +299,19 @@ #if ENABLED(TFT_CLASSIC_UI) // Emulated DOGM SPI - #define LCD_PINS_ENABLE PD13 + #define LCD_PINS_EN PD13 #define LCD_PINS_RS PC6 #define BTN_ENC PE13 #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 #define BEEPER_PIN PC5 #define BTN_ENC PE13 - #define LCD_PINS_ENABLE PD13 + #define LCD_PINS_EN PD13 #define LCD_PINS_RS PC6 #define BTN_EN1 PE8 #define BTN_EN2 PE11 @@ -383,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 858dabb8b9..28c96e9070 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h @@ -42,14 +42,14 @@ #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) #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -105,8 +105,8 @@ #ifndef HEATER_0_PIN #define HEATER_0_PIN PC3 #endif -#ifndef FAN_PIN - #define FAN_PIN PB1 // FAN +#ifndef FAN0_PIN + #define FAN0_PIN PB1 // FAN #endif #ifndef HEATER_BED_PIN #define HEATER_BED_PIN PA0 @@ -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 @@ -196,8 +196,6 @@ #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT #define FSMC_CS_PIN PD7 #define FSMC_RS_PIN PD11 - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN @@ -205,14 +203,14 @@ #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 #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 048570102b..75a541593c 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 @@ -105,18 +105,16 @@ #define E2_CS_PIN PG9 #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB15 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB14 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB13 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 #endif #if HAS_TMC_UART @@ -167,11 +165,11 @@ #define HEATER_1_PIN PB0 // +HE1- #define HEATER_2_PIN PF9 // +HE2- #define HEATER_BED_PIN PA0 // +HOT-BED- -#define FAN_PIN PB1 // +FAN- +#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 @@ -212,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) @@ -233,8 +231,6 @@ #define FSMC_CS_PIN PD7 // NE4 #define FSMC_RS_PIN PD11 // A0 - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #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 @@ -242,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 @@ -268,7 +264,7 @@ #define BEEPER_PIN PC5 #define BTN_ENC PG2 - #define LCD_PINS_ENABLE PG0 + #define LCD_PINS_EN PG0 #define LCD_PINS_RS PG1 #define BTN_EN1 PG5 #define BTN_EN2 PG4 @@ -312,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_MORPHEUS.h b/Marlin/src/pins/stm32f1/pins_MORPHEUS.h index 87919c12f4..08e5455b30 100644 --- a/Marlin/src/pins/stm32f1/pins_MORPHEUS.h +++ b/Marlin/src/pins/stm32f1/pins_MORPHEUS.h @@ -82,7 +82,7 @@ #define HEATER_0_PIN PA2 // HOTEND MOSFET #define HEATER_BED_PIN PA0 // BED MOSFET -#define FAN_PIN PA1 // FAN1 header on board - PRINT FAN +#define FAN0_PIN PA1 // FAN1 header on board - PRINT FAN // // Misc. diff --git a/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h b/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h index ed602d8d01..4c65ce9f64 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) @@ -88,18 +88,16 @@ #define E0_DIR_PIN PB14 // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB5 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB4 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB3 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB5 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB4 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB3 #endif #if HAS_TMC_UART @@ -127,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 @@ -142,7 +143,7 @@ // #define HEATER_0_PIN PB12 // "HE" #define HEATER_BED_PIN PB13 // "HB" -#define FAN_PIN PA8 // "FAN0" +#define FAN0_PIN PA8 // "FAN0" #define HEATER_1_PIN PA12 // @@ -173,11 +174,11 @@ #define BTN_EN2 PC5 #define LCD_PINS_RS PC0 - #define LCD_PINS_ENABLE PC2 + #define LCD_PINS_EN PC2 #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.)" @@ -218,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 634cadc1aa..a2efa632f8 100644 --- a/Marlin/src/pins/stm32f1/pins_STM32F1R.h +++ b/Marlin/src/pins/stm32f1/pins_STM32F1R.h @@ -101,7 +101,7 @@ #error "REPRAPWORLD_GRAPHICAL_LCD is not supported." #else #define LCD_PINS_RS PB8 - #define LCD_PINS_ENABLE PD2 + #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 @@ -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 eee7dbf316..b4cf21ee7f 100644 --- a/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h @@ -86,8 +86,8 @@ //#define HEATER_BED2_PIN -1 // BED2 //#define HEATER_BED3_PIN -1 // BED3 -#ifndef FAN_PIN - #define FAN_PIN PD14 +#ifndef FAN0_PIN + #define FAN0_PIN PD14 #endif #define FAN1_PIN PD13 @@ -116,7 +116,7 @@ #error "REPRAPWORLD_GRAPHICAL_LCD is not supported." #else #define LCD_PINS_RS PB8 - #define LCD_PINS_ENABLE PD2 + #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 @@ -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_TRIGORILLA_PRO.h b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h index 73f61c1aca..d6a5ef3c17 100644 --- a/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h @@ -117,7 +117,7 @@ // Fans // #define CONTROLLER_FAN_PIN PD6 // FAN -#define FAN_PIN PG13 // FAN +#define FAN0_PIN PG13 // FAN #define FAN1_PIN PG14 // FAN // @@ -153,8 +153,6 @@ #define TFT_RS_PIN FSMC_RS_PIN #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define ANYCUBIC_TFT35 #else @@ -186,9 +184,9 @@ #endif // SPI1(PA7) & SPI3(PB5) not available -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple -#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/stm32f1/pins_ZM3E2_V1_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h index 1347a14678..8ce0f48839 100644 --- a/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h +++ b/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h @@ -39,7 +39,7 @@ // Zonestar ZM3E2 V1.0 (STM32F103RCT6) board pin assignments //============================================================================= // PA0 PWR_HOLD | PB0 BEEP | PC0 HEATER_0 -// PA1 FAN_PIN | PB1 KILL | PC1 HEATER_BED +// PA1 FAN0_PIN | PB1 KILL | PC1 HEATER_BED // PA2 TX2 | PB2 LCD_SDA | PC2 TEMP_BED // PA3 RX2 | PB3 E1_EN | PC3 TEMP_E0 // PA4 SD_CS | PB4 Z_STOP | PC4 SD_DETECT @@ -149,7 +149,7 @@ #define HEATER_BED_PIN PC1 // BED #define FAN1_PIN PC6 -#define FAN_PIN PA1 +#define FAN0_PIN PA1 // // Temperature Sensors @@ -186,7 +186,7 @@ // 8 TX1 PA9 LCD_PINS_RS // 7 RX1 PA10 LCD_PINS_D4 // 6 ENA PC5 BTN_EN2 - // 5 DAT PB2 LCD_PINS_ENABLE + // 5 DAT PB2 LCD_PINS_EN // 4 TX3 PB10 BTN_ENC // 3 RX3 PB11 BTN_EN1 // 2 +5V @@ -194,7 +194,7 @@ #define LCDSCREEN_NAME "ZONESTAR LCD12864" #define LCD_PINS_RS EXP1_03_PIN - #define LCD_PINS_ENABLE EXP1_06_PIN + #define LCD_PINS_EN EXP1_06_PIN #define LCD_PINS_D4 EXP1_04_PIN //#define KILL_PIN EXP1_01_PIN #define BEEPER_PIN EXP1_02_PIN @@ -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/stm32f1/pins_ZM3E4_V1_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h index 9618b3ad1a..06f697e270 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 @@ -249,7 +250,7 @@ #define HEATER_1_PIN PB0 // HEATER1 #endif -#define FAN_PIN PB1 // FAN1 +#define FAN0_PIN PB1 // FAN1 #define FAN1_PIN PB8 // FAN2 // @@ -280,7 +281,7 @@ #if ENABLED(ZONESTAR_12864LCD) #define LCDSCREEN_NAME "ZONESTAR LCD12864" #define LCD_PINS_RS EXP1_03_PIN // 7 CS make sure for zonestar zm3e4! - #define LCD_PINS_ENABLE EXP1_06_PIN // 6 DATA make sure for zonestar zm3e4! + #define LCD_PINS_EN EXP1_06_PIN // 6 DATA make sure for zonestar zm3e4! #define LCD_PINS_D4 EXP1_04_PIN // 8 SCK make sure for zonestar zm3e4! #define BEEPER_PIN EXP1_02_PIN #define KILL_PIN -1 // EXP1_01_PIN @@ -290,7 +291,7 @@ #elif ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) #define LCDSCREEN_NAME "REPRAPDISCOUNT LCD12864" #define LCD_PINS_RS EXP1_03_PIN // 7 CS make sure for zonestar zm3e4! - #define LCD_PINS_ENABLE EXP1_04_PIN // 6 DATA make sure for zonestar zm3e4! + #define LCD_PINS_EN EXP1_04_PIN // 6 DATA make sure for zonestar zm3e4! #define LCD_PINS_D4 EXP1_06_PIN // 8 SCK make sure for zonestar zm3e4! #define BEEPER_PIN EXP1_02_PIN #define KILL_PIN EXP2_07_PIN @@ -310,7 +311,7 @@ #if ENABLED(ZONESTAR_LCD2004_KNOB) #define LCDSCREEN_NAME "LCD2004 KNOB" #define LCD_PINS_RS EXP1_03_PIN - #define LCD_PINS_ENABLE EXP1_04_PIN + #define LCD_PINS_EN EXP1_04_PIN #define LCD_PINS_D4 EXP1_06_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_08_PIN @@ -323,7 +324,7 @@ #elif ENABLED(ZONESTAR_LCD2004_ADCKEY) #define LCDSCREEN_NAME "LCD2004 5KEY" #define LCD_PINS_RS EXP1_03_PIN - #define LCD_PINS_ENABLE EXP1_04_PIN + #define LCD_PINS_EN EXP1_04_PIN #define LCD_PINS_D4 EXP1_06_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_08_PIN diff --git a/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h index d1d8a4c68f..24c7404360 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 @@ -249,7 +250,7 @@ // // Fans // -#define FAN_PIN PB1 // FAN1 +#define FAN0_PIN PB1 // FAN1 #define FAN1_PIN PB8 // FAN2 // @@ -277,7 +278,7 @@ #if ENABLED(ZONESTAR_12864LCD) #define LCDSCREEN_NAME "ZONESTAR LCD12864" #define LCD_PINS_RS EXP1_03_PIN // 7 CS make sure for zonestar zm3e4! - #define LCD_PINS_ENABLE EXP1_06_PIN // 6 DATA make sure for zonestar zm3e4! + #define LCD_PINS_EN EXP1_06_PIN // 6 DATA make sure for zonestar zm3e4! #define LCD_PINS_D4 EXP1_04_PIN // 8 SCK make sure for zonestar zm3e4! #define BEEPER_PIN EXP1_02_PIN #define KILL_PIN -1 // EXP1_01_PIN @@ -287,7 +288,7 @@ #elif ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) #define LCDSCREEN_NAME "REPRAPDISCOUNT LCD12864" #define LCD_PINS_RS EXP2_03_PIN // 7 CS make sure for zonestar zm3e4! - #define LCD_PINS_ENABLE EXP2_06_PIN // 6 DATA make sure for zonestar zm3e4! + #define LCD_PINS_EN EXP2_06_PIN // 6 DATA make sure for zonestar zm3e4! #define LCD_PINS_D4 EXP2_04_PIN // 8 SCK make sure for zonestar zm3e4! #define BEEPER_PIN EXP2_01_PIN #define KILL_PIN EXP2_02_PIN diff --git a/Marlin/src/pins/stm32f4/env_validate.h b/Marlin/src/pins/stm32f4/env_validate.h index c01401f06c..91adbfc869 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_ANET_ET4.h b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h index 01ca4560fe..edfee05166 100644 --- a/Marlin/src/pins/stm32f4/pins_ANET_ET4.h +++ b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h @@ -123,7 +123,7 @@ // // Fans // -#define FAN_PIN PE3 // Layer fan +#define FAN0_PIN PE3 // Layer fan #define FAN1_PIN PE1 // Hotend fan #ifndef E0_AUTO_FAN_PIN @@ -195,17 +195,18 @@ // // SD Card // -//#define SDIO_SUPPORT +//#define ONBOARD_SDIO #ifndef SDCARD_CONNECTION #define SDCARD_CONNECTION CUSTOM_CABLE #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA - #if DISABLED(SDIO_SUPPORT) + #if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI #define SDSS PC11 + #define SD_SS_PIN SDSS #define SD_SCK_PIN PC12 #define SD_MISO_PIN PC8 #define SD_MOSI_PIN PD2 diff --git a/Marlin/src/pins/stm32f4/pins_ARMED.h b/Marlin/src/pins/stm32f4/pins_ARMED.h index 2abcc21da5..b466122638 100644 --- a/Marlin/src/pins/stm32f4/pins_ARMED.h +++ b/Marlin/src/pins/stm32f4/pins_ARMED.h @@ -128,7 +128,7 @@ #define HEATER_1_PIN PA2 // Hardware PWM #define HEATER_BED_PIN PA0 // Hardware PWM -#define FAN_PIN PC6 // Hardware PWM, Part cooling fan +#define FAN0_PIN PC6 // Hardware PWM, Part cooling fan #define FAN1_PIN PC7 // Hardware PWM, Extruder fan #define FAN2_PIN PC8 // Hardware PWM, Controller fan @@ -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 @@ -173,7 +173,7 @@ #endif #else #define LCD_PINS_RS PE9 - #define LCD_PINS_ENABLE PE8 + #define LCD_PINS_EN PE8 #define LCD_PINS_D4 PB12 #define LCD_PINS_D5 PB13 #define LCD_PINS_D6 PB14 @@ -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_ARTILLERY_RUBY.h b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h index 7413b9b064..02ad9bb4ad 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 @@ -100,8 +100,8 @@ #ifndef HEATER_BED_PIN #define HEATER_BED_PIN PA8 // Hotbed #endif -#ifndef FAN_PIN - #define FAN_PIN PC8 // Fan0 +#ifndef FAN0_PIN + #define FAN0_PIN PC8 // Fan0 #endif #ifndef FAN1_PIN #define FAN1_PIN PC7 // Fan1 @@ -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 @@ -160,7 +160,7 @@ #define LCD_CONTRAST_INIT 255 #else #define LCD_PINS_RS PC15 - #define LCD_PINS_ENABLE PB6 + #define LCD_PINS_EN PB6 #define LCD_PINS_D4 PB5 #define LCD_PINS_D5 PB9 #define LCD_PINS_D6 PB8 @@ -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_BLACKPILL_CUSTOM.h b/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h new file mode 100644 index 0000000000..039333adfa --- /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_BLACK_STM32F407VE.h b/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h index c49abca9ef..025a1fc9f1 100644 --- a/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h +++ b/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h @@ -101,7 +101,7 @@ #define HEATER_1_PIN PA3 // Heater1 #define HEATER_BED_PIN PA1 // Hotbed -#define FAN_PIN PE9 // Fan0 +#define FAN0_PIN PE9 // Fan0 #define FAN1_PIN PE11 // Fan1 #define FAN2_PIN PE13 // Fan2 #define FAN3_PIN PE14 // Fan3 @@ -121,7 +121,7 @@ #define BEEPER_PIN PD10 #define LCD_PINS_RS PE15 -#define LCD_PINS_ENABLE PD8 +#define LCD_PINS_EN PD8 #define LCD_PINS_D4 PE10 #define LCD_PINS_D5 PE12 #define LCD_PINS_D6 PD1 @@ -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_BTT002_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h index 2147dd9b4f..bc80720916 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h @@ -108,18 +108,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PB15 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB14 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB13 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 #endif #if HAS_TMC_UART @@ -154,29 +152,35 @@ #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 // #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 // #define HEATER_0_PIN PE6 // Heater0 #define HEATER_BED_PIN PE5 // Hotbed -#ifndef FAN_PIN +#ifndef FAN0_PIN #ifdef MK3_FAN_PINS - #define FAN_PIN PB8 // Fan1 + #define FAN0_PIN PB8 // Fan1 #else - #define FAN_PIN PB9 // Fan0 + #define FAN0_PIN PB9 // Fan0 #endif #endif @@ -250,7 +254,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(MKS_MINI_12864) @@ -267,7 +271,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -283,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 c29949e814..4350fad7f7 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 // @@ -135,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 @@ -159,7 +158,7 @@ #define HEATER_1_PIN FPC16_PIN // "HE1" #endif -#define FAN_PIN PB5 // "FAN0" +#define FAN0_PIN PB5 // "FAN0" #ifndef CONTROLLER_FAN_PIN #define CONTROLLER_FAN_PIN PB6 // "FAN1" @@ -197,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 @@ -206,7 +205,7 @@ #define BTN_EN2 PB2 #define LCD_PINS_RS PB1 - #define LCD_PINS_ENABLE PE11 + #define LCD_PINS_EN PE11 #define LCD_PINS_D4 PE10 #if ENABLED(LCD_FOR_MELZI) @@ -252,14 +251,14 @@ #endif #define LCD_PINS_RS PE10 - #define LCD_PINS_ENABLE PE9 + #define LCD_PINS_EN PE9 #define LCD_PINS_D4 PB1 #define LCD_PINS_D5 PB2 #define LCD_PINS_D6 PE7 #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 @@ -331,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.)" @@ -383,22 +382,23 @@ #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) #error "SD CUSTOM_CABLE is not compatible with BTT E3 RRF." #endif -// -// 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 PA4 -#define ESP_WIFI_MODULE_ENABLE_PIN PA5 -#define ESP_WIFI_MODULE_GPIO0_PIN PA6 +#if ENABLED(WIFISUPPORT) + // + // 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 PA4 + #define ESP_WIFI_MODULE_ENABLE_PIN PA5 + #define ESP_WIFI_MODULE_GPIO0_PIN PA6 +#endif #if ENABLED(BTT_E3_RRF_IDEX_BOARD) #define FPC2_PIN PB11 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 fe03ec8983..2414c07ae3 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 @@ -202,18 +212,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PG15 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PB6 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PB3 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PG15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB6 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB3 #endif #if HAS_TMC_UART @@ -274,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 @@ -304,9 +315,9 @@ //#define TEMP_0_MOSI_PIN ... // For MAX31865 #define TEMP_1_CS_PIN PH2 // M5 K-TEMP -#define TEMP_1_SCK_PIN TEMP_0_SCK_PIN -#define TEMP_1_MISO_PIN TEMP_0_MISO_PIN -//#define TEMP_1_MOSI_PIN TEMP_0_MOSI_PIN +#define TEMP_1_SCK_PIN TEMP_0_SCK_PIN +#define TEMP_1_MISO_PIN TEMP_0_MISO_PIN +//#define TEMP_1_MOSI_PIN TEMP_0_MOSI_PIN // // Heaters / Fans @@ -325,7 +336,7 @@ #define HEATER_BED_PIN PA2 // Hotbed -#define FAN_PIN PE5 // Fan0 +#define FAN0_PIN PE5 // Fan0 #define FAN1_PIN PE6 // Fan1 #define FAN2_PIN PC8 // Fan2 @@ -421,7 +432,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(MKS_MINI_12864) @@ -440,7 +451,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -453,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 b3d97ae059..87ee6ca2ef 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -27,24 +27,23 @@ #define USES_DIAG_JUMPERS // Onboard I2C EEPROM -#define I2C_EEPROM -#define MARLIN_EEPROM_SIZE 0x1000 // 4K (AT24C32) -#define I2C_SCL_PIN PB8 -#define I2C_SDA_PIN PB9 +#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 10 +#define STEP_TIMER 8 // // Servos // #define SERVO0_PIN PB6 -// -// Misc. Functions -// -#define LED_PIN PA13 - // // Trinamic Stallguard pins // @@ -57,30 +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 - -// -// 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 1 - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX 1 - #endif - #if _ENDSTOP_IS_ANY(_ZMIN_) || _ENDSTOP_IS_ANY(_ZMAX_) - #define NEEDS_Z_MINMAX 1 - #endif - #undef _ENDSTOP_IS_ANY -#endif - // // Limit Switches // @@ -91,7 +66,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 @@ -138,9 +113,12 @@ #define Z_STOP_PIN Z_DIAG_PIN // Z-STOP #endif -#undef NEEDS_X_MINMAX -#undef NEEDS_Y_MINMAX -#undef NEEDS_Z_MINMAX +// +// Z Probe (when not Z_MIN_PIN) +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PB7 +#endif // // Filament Runout Sensor @@ -164,6 +142,11 @@ #define POWER_LOSS_PIN PC0 // PWRDET #endif +// +// Misc. Functions +// +#define LED_PIN PA13 + // // Steppers // @@ -241,7 +224,7 @@ #define HEATER_2_PIN PB10 // Heater2 #define HEATER_3_PIN PB11 // Heater3 -#define FAN_PIN PA8 // Fan0 +#define FAN0_PIN PA8 // Fan0 #define FAN1_PIN PE5 // Fan1 #define FAN2_PIN PD12 // Fan2 #define FAN3_PIN PD13 // Fan3 @@ -260,18 +243,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PA7 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PA6 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PA5 - #endif +#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 @@ -318,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) @@ -353,7 +337,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 @@ -465,7 +449,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #else @@ -475,7 +459,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -483,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 @@ -544,26 +528,28 @@ #define NEOPIXEL_PIN PB0 #endif -// -// WIFI -// +#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 + /** + * ------- + * 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/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 31551f6ff6..64ab2dd6c9 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 @@ -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 @@ -146,7 +146,7 @@ // #define HEATER_0_PIN PA15 // "HE" #define HEATER_BED_PIN PB3 // "HB" -#define FAN_PIN PC9 // "FAN0" +#define FAN0_PIN PC9 // "FAN0" #define FAN1_PIN PA8 // "FAN1" #define FAN2_PIN PC8 // "FAN2" @@ -202,7 +202,7 @@ #define BTN_EN2 EXP1_05_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! @@ -212,14 +212,14 @@ #endif #define LCD_PINS_RS EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_02_PIN + #define LCD_PINS_EN EXP1_02_PIN #define LCD_PINS_D4 EXP1_07_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_03_PIN #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 78a137b35d..f2fbdb9ece 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." @@ -172,18 +172,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PC12 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PC11 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PC10 - #endif +#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 @@ -224,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 @@ -291,7 +292,7 @@ // // Fans // -#define FAN_PIN PC8 // Fan0 +#define FAN0_PIN PC8 // Fan0 #define FAN1_PIN PE5 // Fan1 #ifndef E0_AUTO_FAN_PIN @@ -444,7 +445,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(MKS_MINI_12864) @@ -487,7 +488,7 @@ #define DOGLCD_A0 EXP1_06_PIN #define DOGLCD_SCK EXP1_04_PIN #define DOGLCD_MOSI EXP1_02_PIN - #define LCD_BACKLIGHT_PIN -1 + #define LCD_BACKLIGHT_PIN -1 #else @@ -496,7 +497,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -504,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 @@ -547,22 +548,24 @@ #endif #endif -// -// WIFI -// +#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 + /** + * ------ + * 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/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 7ac9156f40..2469305696 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." @@ -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 // @@ -251,8 +249,8 @@ #ifndef HEATER_BED_PIN #define HEATER_BED_PIN PD7 // Hotbed #endif -#ifndef FAN_PIN - #define FAN_PIN PB7 // Fan0 +#ifndef FAN0_PIN + #define FAN0_PIN PB7 // Fan0 #endif #if HAS_CUTTER @@ -272,18 +270,16 @@ #endif // SPINDLE_FEATURE || LASER_FEATURE // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PE14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PA14 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PE15 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PA14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PE15 #endif #if HAS_TMC_UART @@ -324,8 +320,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 @@ -374,7 +373,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 @@ -458,7 +457,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(MKS_MINI_12864) @@ -475,7 +474,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -483,7 +482,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 @@ -513,6 +512,118 @@ #endif // HAS_WIRED_LCD +#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) + + /** + * ------ ------ + * 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_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 + #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_DC_PIN EXP1_08_PIN // SPI1_RS + #define TFT_A0_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_WORDS 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 + // Alter timing for graphical display #if IS_U8GLIB_ST7920 #ifndef BOARD_ST7920_DELAY_1 @@ -526,29 +637,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 // @@ -556,25 +644,27 @@ #define NEOPIXEL_PIN PE6 #endif -// -// WIFI -// +#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) PB10 | 12 | | 5 | PB13 (ESP-CLK) - * (ESP-IO4) PB11 | 13 | | 4 | -- - * -- | 14 | | 3 | 3.3V (ESP-EN) - * (ESP-RX) PD8 | 15 | | 2 | -- - * (ESP-TX) PD9 | 16 | | 1 | PC14 (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 PC14 -#define ESP_WIFI_MODULE_GPIO0_PIN PB10 -#define ESP_WIFI_MODULE_GPIO4_PIN PB11 + /** + * ------- + * GND | 9 | | 8 | 3.3V + * (ESP-CS) PB12 | 10 | | 7 | PB15 (ESP-MOSI) + * 3.3V | 11 | | 6 | PB14 (ESP-MISO) + * (ESP-IO0) PB10 | 12 | | 5 | PB13 (ESP-CLK) + * (ESP-IO4) PB11 | 13 | | 4 | -- + * -- | 14 | | 3 | 3.3V (ESP-EN) + * (ESP-RX) PD8 | 15 | | 2 | -- + * (ESP-TX) PD9 | 16 | | 1 | PC14 (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 PC14 + #define ESP_WIFI_MODULE_GPIO0_PIN PB10 + #define ESP_WIFI_MODULE_GPIO4_PIN PB11 +#endif 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 0000000000..f4b5b7d96a --- /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_EN 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/Marlin/src/pins/stm32f4/pins_CREALITY_V24S1_301F4.h b/Marlin/src/pins/stm32f4/pins_CREALITY_V24S1_301F4.h index 883640d577..32f70a3715 100644 --- a/Marlin/src/pins/stm32f4/pins_CREALITY_V24S1_301F4.h +++ b/Marlin/src/pins/stm32f4/pins_CREALITY_V24S1_301F4.h @@ -22,7 +22,7 @@ #pragma once /** - * Creality V24S1_301F4 (STM32F401RC) board pin assignments as found on Ender 3 S1. + * Creality V24S1_301F4 (STM32F401RC) board pin assignments as found on Ender-3 S1. */ #ifndef BOARD_INFO_NAME diff --git a/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h b/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h index 8d5e094122..725d326ec2 100644 --- a/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h +++ b/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h @@ -166,8 +166,8 @@ #define HEATER_5_PIN PE3 #define HEATER_BED_PIN PE2 -#ifndef FAN_PIN - #define FAN_PIN PF8 +#ifndef FAN0_PIN + #define FAN0_PIN PF8 #endif #define FAN1_PIN PF9 #define FAN2_PIN PA2 @@ -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 @@ -235,18 +235,16 @@ #endif // -// Trinamic Software SPI +// Trinamic SPI // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_SCK - #define TMC_SW_SCK EXP2_02_PIN - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO EXP2_01_PIN - #endif - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI EXP2_06_PIN - #endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK EXP2_02_PIN +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO EXP2_01_PIN +#endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI EXP2_06_PIN #endif // @@ -288,7 +286,7 @@ #if IS_RRD_SC #define BEEPER_PIN EXP1_01_PIN #define LCD_PINS_RS EXP1_04_PIN - #define LCD_PINS_ENABLE EXP1_03_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 diff --git a/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h b/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h index 32ec518bf8..16973b344f 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 @@ -43,22 +43,24 @@ #define FLASH_ADDRESS_START 0x8004000 #endif -// -// Z Probe -// -#if ENABLED(BLTOUCH) - #error "You need to set jumper to 5v for Bltouch, then comment out this line to proceed." - #define SERVO0_PIN PA0 -#elif !defined(Z_MIN_PROBE_PIN) - #define Z_MIN_PROBE_PIN PA0 -#endif +#define SERVO0_PIN PB1 // BL-TOUCH/PWM // // Limit Switches // -#define X_STOP_PIN PB4 -#define Y_STOP_PIN PC8 -#define Z_STOP_PIN PB1 +#define X_STOP_PIN PB4 // X-MIN +#define Y_STOP_PIN PC8 // Y-MIN +#define Z_STOP_PIN PA0 // Z-MIN + +// +// Z Probe +// +#if ENABLED(BLTOUCH) + #error "You need to set jumper to 5V for BLTouch, then comment out this line to proceed." +#endif +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PB1 // BL-TOUCH/PWM repurposed +#endif // // Filament runout @@ -110,8 +112,8 @@ // #define HEATER_0_PIN PC6 #define HEATER_BED_PIN PC7 -#ifndef FAN_PIN - #define FAN_PIN PA14 +#ifndef FAN0_PIN + #define FAN0_PIN PA14 #endif #define FAN1_PIN PA13 #define FAN2_PIN PA1 @@ -147,17 +149,15 @@ * GND | 9 10 | 5V GND | 9 10 | 5V * ------ ------ * EXP2 EXP1 - */ - -/** - * ------ - * 5V | 1 2 | GND - * (LCD_EN/MOSI) PB15 | 3 4 | PB12 (LCD_RS) - * (LCD_D4/SCK) PB13 5 6 | PC11 (BTN_EN2) - * (LCD_D5/MISO) PB14 | 7 8 | PC10 (BTN_EN1) - * (BTN_ENC) PC12 | 9 10 | PC9 (BEEPER) - * ------ - * EXP3 + * + * ------ + * (BEEPER) PC9 | 1 2 | PC12 (BTN_ENC) + * (BTN_EN1) PC10 | 3 4 | PB14 (LCD_D5/MISO) + * (BTN_EN2) PC11 5 6 | PB13 (LCD_D4/SCK) + * (LCD_RS) PB12 | 7 8 | PB15 (LCD_EN/MOSI) + * GND | 9 10 | 5V + * ------ + * EXP3 */ #define EXP1_01_PIN PC9 @@ -178,22 +178,31 @@ #define EXP2_07_PIN PC3 #define EXP2_08_PIN -1 -#if HAS_WIRED_LCD +#define EXP3_01_PIN PC9 +#define EXP3_02_PIN PC12 +#define EXP3_03_PIN PC10 +#define EXP3_04_PIN PB14 +#define EXP3_05_PIN PC11 +#define EXP3_06_PIN PB13 +#define EXP3_07_PIN PB12 +#define EXP3_08_PIN PB15 + +#if ENABLED(CR10_STOCKDISPLAY) + + #define BEEPER_PIN EXP3_01_PIN + #define BTN_ENC EXP3_02_PIN + #define BTN_EN1 EXP3_03_PIN + #define BTN_EN2 EXP3_05_PIN + #define LCD_PINS_D4 EXP3_06_PIN + #define LCD_PINS_RS EXP3_07_PIN + #define LCD_PINS_EN EXP3_08_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_04_PIN - - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - - #define LCD_PINS_ENABLE EXP1_03_PIN - #define LCD_PINS_D4 EXP1_05_PIN - - #elif ENABLED(MKS_MINI_12864) + #if ENABLED(MKS_MINI_12864) #define DOGLCD_A0 EXP1_07_PIN #define DOGLCD_CS EXP1_06_PIN @@ -207,7 +216,7 @@ #define BTN_EN1 EXP2_05_PIN #define BTN_EN2 EXP2_03_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -215,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 fca181c1f4..3daa813952 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h @@ -182,8 +182,8 @@ #define HEATER_BED_PIN PC8 #endif -#ifndef FAN_PIN - #define FAN_PIN PB0 +#ifndef FAN0_PIN + #define FAN0_PIN PB0 #endif #ifndef FAN1_PIN #define FAN1_PIN PB1 @@ -268,7 +268,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #else @@ -280,7 +280,7 @@ #define LCD_SDSS EXP2_04_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -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_FYSETC_S6_V2_0.h b/Marlin/src/pins/stm32f4/pins_FYSETC_S6_V2_0.h index a9ce1383d8..a6035c2c6f 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_S6_V2_0.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_S6_V2_0.h @@ -53,19 +53,17 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // #define TMC_USE_SW_SPI -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PE14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PE13 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PE12 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PE13 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PE12 #endif #include "pins_FYSETC_S6.h" diff --git a/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER.h b/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER.h index 009bfb248d..368f464f86 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER.h @@ -101,19 +101,17 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // #define TMC_USE_SW_SPI -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PE14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PE13 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PE12 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PE13 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PE12 #endif #if HOTENDS > 3 || E_STEPPERS > 3 diff --git a/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER_V2_2.h b/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER_V2_2.h index 50a19fa3d3..6ef86117e7 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER_V2_2.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_SPIDER_V2_2.h @@ -28,7 +28,7 @@ #define TEMP_4_PIN PB1 #define TEMP_BED_PIN PB0 -#define FAN_PIN PA13 +#define FAN0_PIN PA13 #define FAN1_PIN PA14 #include "pins_FYSETC_SPIDER.h" diff --git a/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h b/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h new file mode 100644 index 0000000000..f63f4adeec --- /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 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." + #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 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 + #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/Marlin/src/pins/stm32f4/pins_LERDGE_K.h b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h index 6c6f8d25ea..da11ce05ef 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_K.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h @@ -154,13 +154,16 @@ #ifndef EX_SERIAL_RX_PIN #define EX_SERIAL_RX_PIN EX_SERIAL_TX_PIN #endif - //#define Z2_SERIAL_RX_PIN EX_SERIAL_RX_PIN - //#define Z2_SERIAL_TX_PIN EX_SERIAL_TX_PIN - //#define E2_SERIAL_RX_PIN EX_SERIAL_RX_PIN - //#define E2_SERIAL_TX_PIN EX_SERIAL_TX_PIN + //#define Z2_SERIAL_RX_PIN EX_SERIAL_RX_PIN + //#define Z2_SERIAL_TX_PIN EX_SERIAL_TX_PIN + //#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 @@ -182,8 +185,8 @@ #define HEATER_1_PIN PA0 #define HEATER_BED_PIN PA2 -#ifndef FAN_PIN - #define FAN_PIN PF7 +#ifndef FAN0_PIN + #define FAN0_PIN PF7 #endif #define FAN1_PIN PF6 @@ -217,10 +220,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 376c2f3f27..c7c9e3db3b 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_S.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_S.h @@ -122,7 +122,7 @@ #define HEATER_1_PIN PA1 #define HEATER_BED_PIN PA3 -#define FAN_PIN PA15 // heater 0 fan 1 +#define FAN0_PIN PA15 // heater 0 fan 1 #define FAN1_PIN PB10 // heater 1 fan 2 #define FAN2_PIN PF5 // heater 0 fan 2 and heater 1 fan 1 (two sockets, switched together) @@ -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 6325697655..22e7f6e2e2 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_X.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_X.h @@ -98,8 +98,8 @@ #define HEATER_1_PIN -1 #define HEATER_BED_PIN PA2 -//#ifndef FAN_PIN -// #define FAN_PIN PC15 +//#ifndef FAN0_PIN +// #define FAN0_PIN PC15 //#endif #define FAN1_PIN PC15 #define FAN2_PIN PA0 @@ -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_MKS_MONSTER8_V1.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_V1.h index 50fe790dc3..7d6ea8e039 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_V1.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_V1.h @@ -39,7 +39,7 @@ // // Misc. Functions // -#define PW_DET PC5 // Y+ +#define PW_DET PC5 // Y+ #define PW_OFF PB12 // Z+ #define MT_DET_1_PIN PW_DET #define MT_DET_2_PIN PW_OFF diff --git a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h index 1896cd5441..5b5c4fea87 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h @@ -126,22 +126,23 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// Default pins for TMC software SPI // This board only supports SW SPI for stepper drivers // #if HAS_TMC_SPI #define TMC_USE_SW_SPI #endif -#if ENABLED(TMC_USE_SW_SPI) - #if !defined(TMC_SW_MOSI) || TMC_SW_MOSI == -1 - #define TMC_SW_MOSI PE14 - #endif - #if !defined(TMC_SW_MISO) || TMC_SW_MISO == -1 - #define TMC_SW_MISO PE13 - #endif - #if !defined(TMC_SW_SCK) || TMC_SW_SCK == -1 - #define TMC_SW_SCK PE12 - #endif +#if !defined(TMC_SPI_MOSI) || TMC_SPI_MOSI == -1 + #undef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE14 +#endif +#if !defined(TMC_SPI_MISO) || TMC_SPI_MISO == -1 + #undef TMC_SPI_MISO + #define TMC_SPI_MISO PE13 +#endif +#if !defined(TMC_SPI_SCK) || TMC_SPI_SCK == -1 + #undef TMC_SPI_SCK + #define TMC_SPI_SCK PE12 #endif #if HAS_TMC_UART @@ -174,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 @@ -193,7 +197,7 @@ #define HEATER_2_PIN PA3 // HE2 #define HEATER_BED_PIN PB10 // H-BED -#define FAN_PIN PA2 // FAN0 +#define FAN0_PIN PA2 // FAN0 #define FAN1_PIN PA1 // FAN1 #define FAN2_PIN PA0 // FAN2 @@ -237,7 +241,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 @@ -259,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 @@ -290,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 @@ -310,7 +314,7 @@ #elif HAS_WIRED_LCD - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define LCD_BACKLIGHT_PIN -1 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h index 2274d0c0df..b85b2357d3 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h @@ -90,7 +90,7 @@ #define HEATER_0_PIN PF3 // Heater0 #define HEATER_1_PIN PF2 // Heater1 #define HEATER_BED_PIN PF4 // Hotbed -#define FAN_PIN PA7 // Fan0 +#define FAN0_PIN PA7 // Fan0 // // Misc. Functions @@ -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_WORDS 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/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 3cba69a7b3..a0a711647b 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" diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3.h index 32d8a47488..96e19c987f 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3.h @@ -51,22 +51,23 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // This board only supports SW SPI for stepper drivers // #if HAS_TMC_SPI #define TMC_USE_SW_SPI #endif -#if ENABLED(TMC_USE_SW_SPI) - #if !defined(TMC_SW_MOSI) || TMC_SW_MOSI == -1 - #define TMC_SW_MOSI PD14 - #endif - #if !defined(TMC_SW_MISO) || TMC_SW_MISO == -1 - #define TMC_SW_MISO PD1 - #endif - #if !defined(TMC_SW_SCK) || TMC_SW_SCK == -1 - #define TMC_SW_SCK PD0 - #endif +#if !defined(TMC_SPI_MOSI) || TMC_SPI_MOSI == -1 + #undef TMC_SPI_MOSI + #define TMC_SPI_MOSI PD14 +#endif +#if !defined(TMC_SPI_MISO) || TMC_SPI_MISO == -1 + #undef TMC_SPI_MISO + #define TMC_SPI_MISO PD1 +#endif +#if !defined(TMC_SPI_SCK) || TMC_SPI_SCK == -1 + #undef TMC_SPI_SCK + #define TMC_SPI_SCK PD0 #endif #include "pins_MKS_ROBIN_NANO_V3_common.h" 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 42b252d320..6be3520db9 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 @@ -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 @@ -133,7 +136,7 @@ #define HEATER_1_PIN PB0 // HEATER2 #define HEATER_BED_PIN PA0 // HOT BED -#define FAN_PIN PC14 // FAN +#define FAN0_PIN PC14 // FAN #define FAN1_PIN PB1 // FAN1 // @@ -210,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 @@ -224,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 /** @@ -307,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 @@ -327,7 +329,7 @@ #elif HAS_WIRED_LCD - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define LCD_BACKLIGHT_PIN -1 @@ -342,7 +344,6 @@ // Required for MKS_MINI_12864 with this board //#define MKS_LCD12864B - //#undef SHOW_BOOTSCREEN #elif ENABLED(FYSETC_MINI_12864_2_1) #define LCD_PINS_DC EXP1_04_PIN 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 14b3d66168..14f6c31d73 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h @@ -113,18 +113,16 @@ #endif // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PD14 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PD1 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PD0 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PD14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PD1 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PD0 #endif #if HAS_TMC_UART @@ -162,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 // @@ -179,7 +180,7 @@ #define HEATER_1_PIN PB0 // HEATER2 #define HEATER_BED_PIN PA0 // HOT BED -#define FAN_PIN PB1 // FAN +#define FAN0_PIN PB1 // FAN // // Thermocouples @@ -238,23 +239,23 @@ * ------ ------ * EXP1 EXP2 */ -#define EXP1_01_PIN PC5 -#define EXP1_02_PIN PE13 -#define EXP1_03_PIN PD13 -#define EXP1_04_PIN PC6 -#define EXP1_05_PIN PE14 -#define EXP1_06_PIN PE15 -#define EXP1_07_PIN PD11 -#define EXP1_08_PIN PD10 +#define EXP1_01_PIN PC5 +#define EXP1_02_PIN PE13 +#define EXP1_03_PIN PD13 +#define EXP1_04_PIN PC6 +#define EXP1_05_PIN PE14 +#define EXP1_06_PIN PE15 +#define EXP1_07_PIN PD11 +#define EXP1_08_PIN PD10 -#define EXP2_01_PIN PA6 -#define EXP2_02_PIN PA5 -#define EXP2_03_PIN PE8 -#define EXP2_04_PIN PE10 -#define EXP2_05_PIN PE11 -#define EXP2_06_PIN PA7 -#define EXP2_07_PIN PE12 -#define EXP2_08_PIN -1 // RESET +#define EXP2_01_PIN PA6 +#define EXP2_02_PIN PA5 +#define EXP2_03_PIN PE8 +#define EXP2_04_PIN PE10 +#define EXP2_05_PIN PE11 +#define EXP2_06_PIN PA7 +#define EXP2_07_PIN PE12 +#define EXP2_08_PIN -1 // RESET // // LCD SD @@ -270,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 @@ -335,13 +336,13 @@ #define LCD_USE_DMA_SPI //#define TFT_DRIVER ST7796 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #elif HAS_WIRED_LCD #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_RS EXP1_04_PIN #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN @@ -358,7 +359,6 @@ // Required for MKS_MINI_12864 with this board //#define MKS_LCD12864B - //#undef SHOW_BOOTSCREEN #else // !MKS_MINI_12864 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 d00b21c30b..f7b9fb4674 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 1 - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX 1 - #endif - #if _ENDSTOP_IS_ANY(_ZMIN_) || _ENDSTOP_IS_ANY(_ZMAX_) - #define NEEDS_Z_MINMAX 1 - #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 @@ -113,15 +96,11 @@ #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 -#undef NEEDS_X_MINMAX -#undef NEEDS_Y_MINMAX -#undef NEEDS_Z_MINMAX - // // Steppers // @@ -190,19 +169,19 @@ #define HEATER_1_PIN PB0 // Heater1 #define HEATER_2_PIN PA3 // Heater2 -#define FAN_PIN PA2 // Fan0 +#define FAN0_PIN PA2 // Fan0 #define FAN1_PIN PA1 // Fan1 #define FAN2_PIN PA0 // Fan2 // -// Software SPI pins for TMC2130 stepper drivers -// This board doesn't support hardware SPI there +// Default pins for TMC software SPI +// This board only supports SW SPI for stepper drivers // #if HAS_TMC_SPI #define TMC_USE_SW_SPI - #define TMC_SW_MOSI PE14 - #define TMC_SW_MISO PE13 - #define TMC_SW_SCK PE12 + #define TMC_SPI_MOSI PE14 + #define TMC_SPI_MISO PE13 + #define TMC_SPI_SCK PE12 #endif // @@ -232,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) @@ -266,7 +248,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 @@ -311,7 +293,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #else @@ -321,7 +303,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -329,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_OPULO_LUMEN_REV3.h b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h index 06bf09402c..5802c07241 100644 --- a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h +++ b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h @@ -144,14 +144,16 @@ #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 // -#define FAN_PIN PE2 +#define FAN0_PIN PE2 #define FAN1_PIN PE3 #define FAN2_PIN PE4 #define FAN3_PIN PE5 @@ -171,9 +173,9 @@ #define MOSI_PIN PB5 #define SCK_PIN PB3 -#define TMC_SW_MISO MISO_PIN -#define TMC_SW_MOSI MOSI_PIN -#define TMC_SW_SCK SCK_PIN +#define TMC_SPI_MISO MISO_PIN +#define TMC_SPI_MOSI MOSI_PIN +#define TMC_SPI_SCK SCK_PIN // // I2C diff --git a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h index d16d7b200b..1697cf000e 100644 --- a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h +++ b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h @@ -141,14 +141,16 @@ #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 // -#define FAN_PIN PE2 +#define FAN0_PIN PE2 #define FAN1_PIN PE3 #define FAN2_PIN PE4 #define FAN3_PIN PE5 @@ -168,9 +170,9 @@ #define MOSI_PIN PB5 #define SCK_PIN PB3 -#define TMC_SW_MISO MISO_PIN -#define TMC_SW_MOSI MOSI_PIN -#define TMC_SW_SCK SCK_PIN +#define TMC_SPI_MISO MISO_PIN +#define TMC_SPI_MOSI MOSI_PIN +#define TMC_SPI_SCK SCK_PIN // // I2C diff --git a/Marlin/src/pins/stm32f4/pins_RUMBA32_common.h b/Marlin/src/pins/stm32f4/pins_RUMBA32_common.h index 12871becbb..daed1da4b0 100644 --- a/Marlin/src/pins/stm32f4/pins_RUMBA32_common.h +++ b/Marlin/src/pins/stm32f4/pins_RUMBA32_common.h @@ -91,16 +91,14 @@ #define E2_ENABLE_PIN PD0 #define E2_CS_PIN PD1 -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PA7 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PA6 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PA5 - #endif +#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 // @@ -120,7 +118,7 @@ #define HEATER_2_PIN PC8 #define HEATER_BED_PIN PA1 -#define FAN_PIN PC9 +#define FAN0_PIN PC9 #define FAN1_PIN PA8 // @@ -151,7 +149,7 @@ #define BTN_ENC PE7 #define LCD_PINS_RS PE10 - #define LCD_PINS_ENABLE PE9 + #define LCD_PINS_EN PE9 #define LCD_PINS_D4 PE12 #if ENABLED(MKS_MINI_12864) diff --git a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h index 4fb57985b9..6149000598 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 @@ -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 @@ -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 @@ -162,8 +165,8 @@ // #define HEATER_BED_PIN PC9 #define HEATER_0_PIN PC8 -#ifndef FAN_PIN - #define FAN_PIN PC6 +#ifndef FAN0_PIN + #define FAN0_PIN PC6 #endif #define FAN1_PIN PC7 @@ -233,7 +236,7 @@ #define BEEPER_PIN EXP1_01_PIN // Not connected in dev board #endif #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN //#define KILL_PIN -1 @@ -266,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/stm32f4/pins_TRONXY_V10.h b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h index e3b9f7ef6e..e9e069583a 100644 --- a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h +++ b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h @@ -72,10 +72,10 @@ //#define SPI_FLASH #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x200000 // 2MB - #define W25QXX_CS_PIN PG15 // SPI2 - #define W25QXX_MOSI_PIN PB5 - #define W25QXX_MISO_PIN PB4 - #define W25QXX_SCK_PIN PB3 + #define SPI_FLASH_CS_PIN PG15 // SPI2 + #define SPI_FLASH_SCK_PIN PB3 + #define SPI_FLASH_MISO_PIN PB4 + #define SPI_FLASH_MOSI_PIN PB5 #endif // @@ -152,7 +152,7 @@ #define HEATER_BED_PIN PE2 // HOT BED //#define HEATER_BED_INVERTING true -#define FAN_PIN PG0 // FAN0 +#define FAN0_PIN PG0 // FAN0 #define FAN1_PIN PB6 // FAN1 #define FAN2_PIN PG9 // FAN2 #define FAN3_PIN PF10 // FAN3 @@ -200,8 +200,6 @@ #define TFT_BACKLIGHT_PIN PG8 #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_DMA_DEV DMA2 - #define FSMC_DMA_CHANNEL DMA_CH5 #define TFT_CS_PIN PG12 #define TFT_RS_PIN PG2 @@ -211,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 @@ -253,14 +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 - -#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_VAKE403D.h b/Marlin/src/pins/stm32f4/pins_VAKE403D.h deleted file mode 100644 index 21ab9d0e70..0000000000 --- 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 FAN_PIN - #define FAN_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 ENABLED(SDSUPPORT) - #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 ENABLED(SDSUPPORT) - #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_ENABLE 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 diff --git a/Marlin/src/pins/stm32f7/pins_NUCLEO_F767ZI.h b/Marlin/src/pins/stm32f7/pins_NUCLEO_F767ZI.h index 48f986e2ca..bf45f94ab8 100644 --- a/Marlin/src/pins/stm32f7/pins_NUCLEO_F767ZI.h +++ b/Marlin/src/pins/stm32f7/pins_NUCLEO_F767ZI.h @@ -154,8 +154,8 @@ #define HEATER_0_PIN PA15 // PWM Capable, TIM2_CH1 #define HEATER_BED_PIN PB3 // PWM Capable, TIM2_CH2 -#ifndef FAN_PIN - #define FAN_PIN PB10 // PWM Capable, TIM2_CH3 +#ifndef FAN0_PIN + #define FAN0_PIN PB10 // PWM Capable, TIM2_CH3 #endif #define FAN1_PIN PB11 // PWM Capable, TIM2_CH4 @@ -186,7 +186,7 @@ #define BTN_ENC PE11 // BTN_ENC #define SD_DETECT_PIN PD14 #define LCD_PINS_RS PF12 // LCD_RS - #define LCD_PINS_ENABLE PD15 // LCD_EN + #define LCD_PINS_EN PD15 // LCD_EN #define LCD_PINS_D4 PB13 // LCD_D4 #define BTN_EN1 PF13 // BTN_EN1 #define BTN_EN2 PE9 // BTN_EN2 diff --git a/Marlin/src/pins/stm32f7/pins_REMRAM_V1.h b/Marlin/src/pins/stm32f7/pins_REMRAM_V1.h index c4feba692f..2db21be45e 100644 --- a/Marlin/src/pins/stm32f7/pins_REMRAM_V1.h +++ b/Marlin/src/pins/stm32f7/pins_REMRAM_V1.h @@ -95,8 +95,8 @@ #define HEATER_0_PIN 33 #define HEATER_BED_PIN 31 -#ifndef FAN_PIN - #define FAN_PIN 30 // "FAN1" +#ifndef FAN0_PIN + #define FAN0_PIN 30 // "FAN1" #endif #define FAN1_PIN 32 // "FAN2" @@ -120,7 +120,7 @@ #define SD_DETECT_PIN 56 // SD_CARD_DET #define BEEPER_PIN 46 // LCD_BEEPER #define LCD_PINS_RS 49 // LCD_RS -#define LCD_PINS_ENABLE 48 // LCD_EN +#define LCD_PINS_EN 48 // LCD_EN #define LCD_PINS_D4 50 // LCD_D4 #define LCD_PINS_D5 51 // LCD_D5 #define LCD_PINS_D6 52 // LCD_D6 diff --git a/Marlin/src/pins/stm32g0/env_validate.h b/Marlin/src/pins/stm32g0/env_validate.h new file mode 100644 index 0000000000..03887eb7a4 --- /dev/null +++ b/Marlin/src/pins/stm32g0/env_validate.h @@ -0,0 +1,29 @@ +/** + * 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 . + * + */ +#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/stm32g0/pins_BTT_EBB42_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h index fc2be5401e..6c31fdc572 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h @@ -21,6 +21,8 @@ */ #pragma once +#include "env_validate.h" + /** CAUTION ** * This board definition is to facilitate support for a Filament Extrusion * devices, used to convert waste plastic into 3D printable filament. @@ -36,13 +38,13 @@ // // 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 #endif #define EEPROM_PAGE_SIZE (0x800UL) // 2K - #define EEPROM_START_ADDRESS (0x0801F800UL) + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 1UL) #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE #endif @@ -78,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 @@ -108,7 +99,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 @@ -132,8 +125,9 @@ // // Heaters / Fans // -#define HEATER_0_PIN PA2 // "HE" -#define FAN_PIN PA0 // "FAN0" +#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/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 new file mode 100644 index 0000000000..c2c16ba696 --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h @@ -0,0 +1,353 @@ +/** + * 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 "BTT Manta E3 EZ V1.0" +#endif + +#define USES_DIAG_JUMPERS + +// Ignore temp readings during development. +//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 + +// +// EEPROM +// +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) + #undef NO_EEPROM_SELECTED + #ifndef FLASH_EEPROM_EMULATION + #define FLASH_EEPROM_EMULATION + #endif + #define EEPROM_PAGE_SIZE (0x800UL) // 2K + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) + #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE +#endif + +// +// Servos +// +#define SERVO0_PIN PA7 // BLTouch + +// +// Probe enable +// +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN +#endif + +// +// Trinamic StallGuard pins +// +#define X_DIAG_PIN PC4 // X-STOP +#define Y_DIAG_PIN PB0 // Y-STOP +#define Z_DIAG_PIN PC6 // Z-STOP +#define E0_DIAG_PIN PC5 // E0-DET +#define E1_DIAG_PIN PB1 // E1-DET + +// +// Limit Switches +// +#define X_STOP_PIN X_DIAG_PIN // X-STOP +#define Y_STOP_PIN Y_DIAG_PIN // Y-STOP +#define Z_STOP_PIN Z_DIAG_PIN // Z-STOP + +// +// Z Probe (when not Z_STOP_PIN) +// +#define Z_MIN_PROBE_PIN PA6 // BLTouch + +// +// Filament Runout Sensor +// +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN E0_DIAG_PIN // E0-DET +#endif +#ifndef FIL_RUNOUT2_PIN + #define FIL_RUNOUT2_PIN E1_DIAG_PIN // E1-DET +#endif + +// +// Power Supply Control +// +#ifndef PS_ON_PIN + #define PS_ON_PIN PA9 // PS-ON +#endif + +// +// Power Loss Detection +// +#ifndef POWER_LOSS_PIN + #define POWER_LOSS_PIN PB9 // PWRDET +#endif + +// +// Steppers +// +#define X_STEP_PIN PA14 +#define X_DIR_PIN PA10 +#define X_ENABLE_PIN PA13 +#ifndef X_CS_PIN + #define X_CS_PIN PB8 +#endif + +#define Y_STEP_PIN PC8 +#define Y_DIR_PIN PA15 +#define Y_ENABLE_PIN PC14 +#ifndef Y_CS_PIN + #define Y_CS_PIN PC9 +#endif + +#define Z_STEP_PIN PD2 +#define Z_DIR_PIN PD4 +#define Z_ENABLE_PIN PD3 +#ifndef Z_CS_PIN + #define Z_CS_PIN PD0 +#endif + +#define E0_STEP_PIN PD5 +#define E0_DIR_PIN PD6 +#define E0_ENABLE_PIN PB3 +#ifndef E0_CS_PIN + #define E0_CS_PIN PD1 +#endif + +#define E1_STEP_PIN PB7 +#define E1_DIR_PIN PB6 +#define E1_ENABLE_PIN PB4 +#ifndef E1_CS_PIN + #define E1_CS_PIN PB5 +#endif + +// +// Default pins for TMC software SPI +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PC12 // Shared with SPI header, Pin 5 (SPI3) +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PC11 // Shared with SPI header, Pin 6 (SPI3) +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PC10 // Shared with SPI header, Pin 4 (SPI3) +#endif + +#if HAS_TMC_UART + #define X_SERIAL_TX_PIN PB8 // X_CS_PIN + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PC9 // Y_CS_PIN + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PD0 // Z_CS_PIN + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PD1 // E0_CS_PIN + #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + + #define E1_SERIAL_TX_PIN PB5 // E1_CS_PIN + #define E1_SERIAL_RX_PIN E1_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 + +// +// Temperature Sensors +// +#define TEMP_0_PIN PA4 // Analog Input "TH0" +#define TEMP_1_PIN PA5 // Analog Input "TH1" +#define TEMP_BED_PIN PA3 // Analog Input "TB" + +// +// Heaters / Fans +// +#define HEATER_0_PIN PB11 // "HE0" +#define HEATER_1_PIN PB10 // "HE1" +#define HEATER_BED_PIN PB2 // "HB" + +#define FAN0_PIN PA8 // "FAN0" +#define FAN1_PIN PB15 // "FAN1" +#define FAN2_PIN PB14 // "FAN2" + +// +// Auto fans +// +#if HOTENDS == 2 + #ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN FAN1_PIN + #endif + #ifndef E1_AUTO_FAN_PIN + #define E1_AUTO_FAN_PIN FAN2_PIN + #endif +#else + #ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN FAN1_PIN + #endif + #ifndef CONTROLLER_FAN_PIN + #define CONTROLLER_FAN_PIN FAN2_PIN + #endif +#endif + +/** + * Manta E3 EZ V1.0 + * ------ + * (BEEPER) PC1 | 1 2 | PC2 (BTN_ENC) + * (BTN_EN1) PC3 | 3 4 | RESET + * (BTN_EN2) PC0 5 6 | PA0 (LCD_D4) + * (LCD_RS) PA2 | 7 8 | PA1 (LCD_EN) + * GND | 9 10 | 5V + * ------ + * EXP1 + */ +#define EXP1_01_PIN PC1 +#define EXP1_02_PIN PC2 +#define EXP1_03_PIN PC3 +#define EXP1_04_PIN -1 +#define EXP1_05_PIN PC0 +#define EXP1_06_PIN PA0 +#define EXP1_07_PIN PA2 +#define EXP1_08_PIN PA1 +#define EXP1_09_PIN -1 +#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 + + #define BEEPER_PIN EXP1_01_PIN + #define BTN_EN1 EXP1_08_PIN + #define BTN_EN2 EXP1_07_PIN + #define BTN_ENC EXP1_05_PIN + +#elif HAS_WIRED_LCD + + #if ENABLED(CR10_STOCKDISPLAY) + + #define BEEPER_PIN EXP1_01_PIN + + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN + #define BTN_ENC EXP1_02_PIN + + #define LCD_PINS_RS EXP1_07_PIN + #define LCD_PINS_EN EXP1_08_PIN + #define LCD_PINS_D4 EXP1_06_PIN + + #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! + + #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING + #error "CAUTION! ZONESTAR_LCD requires wiring modifications. See 'pins_BTT_MANTA_E3_EZ_V1_0.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" + #endif + + #define LCD_PINS_RS EXP1_06_PIN + #define LCD_PINS_EN EXP1_02_PIN + #define LCD_PINS_D4 EXP1_07_PIN + #define LCD_PINS_D5 EXP1_05_PIN + #define LCD_PINS_D6 EXP1_03_PIN + #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 ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN + #define BTN_ENC EXP1_02_PIN + + #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 + #define LCD_BACKLIGHT_PIN -1 + + #else + + #error "Only ZONESTAR_LCD, MKS_MINI_12864, ENDER2_STOCKDISPLAY, and CR10_STOCKDISPLAY are currently supported on the BTT_MANTA_E3_EZ_V1_0." + + #endif + +#endif // HAS_WIRED_LCD + +// +// SD Support +// +#ifndef SDCARD_CONNECTION + #define SDCARD_CONNECTION ONBOARD +#endif + +#define SD_DETECT_PIN -1 + +#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." +#endif + +#define ONBOARD_SPI_DEVICE 3 // SPI3 -> used only by HAL/STM32F1... +#define ONBOARD_SD_CS_PIN PC13 // Chip select for "System" SD card + +#define ENABLE_SPI3 +#define SDSS ONBOARD_SD_CS_PIN +#define SD_SS_PIN ONBOARD_SD_CS_PIN +#define SD_SCK_PIN PC10 +#define SD_MISO_PIN PC11 +#define SD_MOSI_PIN PC12 + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PC7 // RGB +#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 new file mode 100644 index 0000000000..f3c79f0cdc --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h @@ -0,0 +1,312 @@ +/** + * 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_CUSTOM_BUILD_FLAGS -DTONE_CHANNEL=4 -DTONE_TIMER=4 -DTIMER_TONE=4 + +#ifndef BOARD_INFO_NAME + #define BOARD_INFO_NAME "BTT Manta M4P V1.0" +#endif + +#define USES_DIAG_JUMPERS + +// Ignore temp readings during development. +//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 + +// +// EEPROM +// +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) + #undef NO_EEPROM_SELECTED + #ifndef FLASH_EEPROM_EMULATION + #define FLASH_EEPROM_EMULATION + #endif + #define EEPROM_PAGE_SIZE (0x800UL) // 2K + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) + #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE +#endif + +// +// Servos +// +#define SERVO0_PIN PA1 // SERVOS + +// +// Probe enable +// +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN +#endif + +// +// Limit Switches +// +#define X_STOP_PIN PC0 // X-STOP +#define Y_STOP_PIN PC1 // Y-STOP +#define Z_STOP_PIN PC2 // Z-STOP + +// +// Z Probe must be this pin +// +#define Z_MIN_PROBE_PIN PC14 // PROBE + +// +// Filament Runout Sensor +// +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN PC15 // E0-STOP +#endif + +// +// Steppers +// +#define X_STEP_PIN PC6 +#define X_DIR_PIN PA14 +#define X_ENABLE_PIN PC7 +#ifndef X_CS_PIN + #define X_CS_PIN PB12 +#endif + +#define Y_STEP_PIN PB10 +#define Y_DIR_PIN PB2 +#define Y_ENABLE_PIN PB11 +#ifndef Y_CS_PIN + #define Y_CS_PIN PC10 +#endif + +#define Z_STEP_PIN PB0 +#define Z_DIR_PIN PC5 +#define Z_ENABLE_PIN PB1 +#ifndef Z_CS_PIN + #define Z_CS_PIN PC9 +#endif + +#define E0_STEP_PIN PB3 +#define E0_DIR_PIN PB4 +#define E0_ENABLE_PIN PD5 +#ifndef E0_CS_PIN + #define E0_CS_PIN PA13 +#endif + +// +// Default pins for TMC software SPI +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 +#endif + +#if HAS_TMC_UART + #define X_SERIAL_TX_PIN PB12 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PC10 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PC9 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PA13 + #define E0_SERIAL_RX_PIN E0_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 + +// +// Temperature Sensors +// +#define TEMP_0_PIN PA0 // Analog Input "TH0" +#define TEMP_BED_PIN PC4 // Analog Input "TB0" + +// +// Heaters / Fans +// +#define HEATER_0_PIN PC8 // "HE" +#define HEATER_BED_PIN PD8 // "HB" + +#define FAN0_PIN PD2 // "FAN0" +#define FAN1_PIN PD3 // "FAN1" +#define FAN2_PIN PD4 // "FAN2" + +/** + * ------ ------ + * (BEEPER) PD6 | 1 2 | PB8 (BTN_ENC) (MISO) PB14 | 1 2 | PB13 (SCK) + * (LCD_EN) PB9 | 3 4 | PC3 (LCD_RS) (BTN_EN1) PC11 | 3 4 | PA8 (SD_SS) + * (LCD_D4) PA15 | 5 6 PA10 (LCD_D5) (BTN_EN2) PC12 | 5 6 PB15 (MOSI) + * (LCD_D6) PA9 | 7 8 | PB5 (LCD_D7) (SD_DETECT) PC13 | 7 8 | RESET + * GND | 9 10 | 5V GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN PD6 +#define EXP1_02_PIN PB8 +#define EXP1_03_PIN PB9 +#define EXP1_04_PIN PC3 +#define EXP1_05_PIN PA15 +#define EXP1_06_PIN PA10 +#define EXP1_07_PIN PA9 +#define EXP1_08_PIN PB5 + +#define EXP2_01_PIN PB14 +#define EXP2_02_PIN PB13 +#define EXP2_03_PIN PC11 +#define EXP2_04_PIN PA8 +#define EXP2_05_PIN PC12 +#define EXP2_06_PIN PB15 +#define EXP2_07_PIN PC13 +#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 SDSS EXP2_04_PIN + #define SD_SS_PIN SDSS + #define SD_SCK_PIN EXP2_02_PIN + #define SD_MISO_PIN EXP2_01_PIN + #define SD_MOSI_PIN EXP2_06_PIN + #define SD_DETECT_PIN EXP2_07_PIN +#elif SD_CONNECTION_IS(ONBOARD) + #define SD_SCK_PIN PA5 + #define SD_MISO_PIN PA6 + #define SD_MOSI_PIN PA7 + #define ONBOARD_SD_CS_PIN PA4 // Chip select for "System" SD card + #define SD_SS_PIN ONBOARD_SD_CS_PIN +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "No custom SD drive cable defined for this board." +#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 + + #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 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_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 + #ifndef BOARD_ST7920_DELAY_1 + #define BOARD_ST7920_DELAY_1 120 + #endif + #ifndef BOARD_ST7920_DELAY_2 + #define BOARD_ST7920_DELAY_2 80 + #endif + #ifndef BOARD_ST7920_DELAY_3 + #define BOARD_ST7920_DELAY_3 580 + #endif +#endif + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PD0 +#endif + +#ifndef NEOPIXEL2_PIN + #define NEOPIXEL2_PIN PD1 +#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 new file mode 100644 index 0000000000..ed3fb4e9dc --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h @@ -0,0 +1,340 @@ +/** + * 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 "BTT Manta M5P V1.0" +#endif + +#define USES_DIAG_JUMPERS + +// Ignore temp readings during development. +//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 + +// +// EEPROM +// +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) + #undef NO_EEPROM_SELECTED + #ifndef FLASH_EEPROM_EMULATION + #define FLASH_EEPROM_EMULATION + #endif + #define EEPROM_PAGE_SIZE (0x800UL) // 2K + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) + #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE +#endif + +// +// Servos +// +#define SERVO0_PIN PC15 // PROBE + +// +// Probe enable +// +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN +#endif + +// +// Trinamic StallGuard pins +// +#define X_DIAG_PIN PD3 // MIN1 +#define Y_DIAG_PIN PD2 // MIN2 +#define Z_DIAG_PIN PC3 // MIN3 +#define E0_DIAG_PIN PC2 // MIN4 +#define E1_DIAG_PIN -1 + +// +// Limit Switches +// +#define X_STOP_PIN X_DIAG_PIN // MIN1 +#define Y_STOP_PIN Y_DIAG_PIN // MIN1 +#define Z_STOP_PIN Z_DIAG_PIN // MIN3 + +// +// Z Probe (when not Z_STOP_PIN) +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PC13 // PROBE + //#define Z_MIN_PROBE_PIN PC15 // IND-DET (with adjustable pullup set via jumper) +#endif + +// +// Filament Runout Sensor +// +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN E0_DIAG_PIN // MIN4 +#endif + +// +// Steppers +// +#define X_STEP_PIN PC8 +#define X_DIR_PIN PC9 +#define X_ENABLE_PIN PA15 +#ifndef X_CS_PIN + #define X_CS_PIN PD9 +#endif + +#define Y_STEP_PIN PA10 +#define Y_DIR_PIN PA14 +#define Y_ENABLE_PIN PA13 +#ifndef Y_CS_PIN + #define Y_CS_PIN PD8 +#endif + +#define Z_STEP_PIN PC6 +#define Z_DIR_PIN PC7 +#define Z_ENABLE_PIN PA9 +#ifndef Z_CS_PIN + #define Z_CS_PIN PB10 +#endif + +#define E0_STEP_PIN PB12 +#define E0_DIR_PIN PB11 +#define E0_ENABLE_PIN PA8 +#ifndef E0_CS_PIN + #define E0_CS_PIN PB2 +#endif + +#define E1_STEP_PIN PB0 +#define E1_DIR_PIN PB1 +#define E1_ENABLE_PIN PC4 +#ifndef E1_CS_PIN + #define E1_CS_PIN PA6 +#endif + +// +// Default pins for TMC software SPI +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PB15 // Shared with SPI header, Pin 5 (SPI2) +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PB14 // Shared with SPI header, Pin 6 (SPI2) +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PB13 // Shared with SPI header, Pin 4 (SPI2) +#endif + +#if HAS_TMC_UART + #define X_SERIAL_TX_PIN PD9 // X_CS_PIN + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PD8 // Y_CS_PIN + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PB10 // Z_CS_PIN + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PB2 // E0_CS_PIN + #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + + #define E1_SERIAL_TX_PIN PA6 // E1_CS_PIN + #define E1_SERIAL_RX_PIN E1_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 + +// +// Temperature Sensors +// +#define TEMP_0_PIN PA1 // Analog Input "TH0" +#define TEMP_1_PIN PA2 // Analog Input "TH1" +#define TEMP_BED_PIN PA0 // Analog Input "TB" + +// +// Heaters / Fans +// +#define HEATER_0_PIN PC5 // "HE0" +#define HEATER_1_PIN PA7 // "HE1" +#define HEATER_BED_PIN PA5 // "HB" + +#define FAN0_PIN PA4 // "FAN0" +#define FAN1_PIN PA3 // "FAN1" + +// +// Auto fans +// +#ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN FAN1_PIN +#endif + +/** + * ------ ------ + * (BEEPER) PD5 | 1 2 | PD4 (BTN_ENC) (MISO) PB14 | 1 2 | PB13 (SCK) + * (LCD_EN) PB3 | 3 4 | PD6 (LCD_RS) (BTN_EN1) PB8 | 3 4 | PB9 (SD_SS) + * (LCD_D4) PB5 | 5 6 PB4 (LCD_D5) (BTN_EN2) PC10 | 5 6 PB15 (MOSI) + * (LCD_D6) PB7 | 7 8 | PB6 (LCD_D7) (SD_DETECT) PC12 | 7 8 | PF2 + * GND | 9 10 | 5V GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN PD5 +#define EXP1_02_PIN PD4 +#define EXP1_03_PIN PB3 +#define EXP1_04_PIN PD6 +#define EXP1_05_PIN PB5 +#define EXP1_06_PIN PB4 +#define EXP1_07_PIN PB7 +#define EXP1_08_PIN PB6 + +#define EXP2_01_PIN PB14 +#define EXP2_02_PIN PB13 +#define EXP2_03_PIN PB8 +#define EXP2_04_PIN PB9 +#define EXP2_05_PIN PC10 +#define EXP2_06_PIN PB15 +#define EXP2_07_PIN PC12 +#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 SDSS EXP2_04_PIN + #define SD_SS_PIN SDSS + #define SD_SCK_PIN EXP2_02_PIN + #define SD_MISO_PIN EXP2_01_PIN + #define SD_MOSI_PIN EXP2_06_PIN + #define SD_DETECT_PIN EXP2_07_PIN +#elif SD_CONNECTION_IS(ONBOARD) + #define SD_SCK_PIN PB13 + #define SD_MISO_PIN PB14 + #define SD_MOSI_PIN PB15 + #define ONBOARD_SD_CS_PIN PC1 // Chip select for "System" SD card + #define SD_SS_PIN ONBOARD_SD_CS_PIN +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "No custom SD drive cable defined for this board." +#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 + + #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 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_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 + #ifndef BOARD_ST7920_DELAY_1 + #define BOARD_ST7920_DELAY_1 120 + #endif + #ifndef BOARD_ST7920_DELAY_2 + #define BOARD_ST7920_DELAY_2 80 + #endif + #ifndef BOARD_ST7920_DELAY_3 + #define BOARD_ST7920_DELAY_3 580 + #endif +#endif + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PC11 // RGB1 +#endif + +#ifndef NEOPIXEL2_PIN + #define NEOPIXEL2_PIN PC14 // RGB2 +#endif 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 new file mode 100644 index 0000000000..824e44130f --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h @@ -0,0 +1,82 @@ +/** + * 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 common Manta M8P pins +#include "pins_BTT_MANTA_M8P_common.h" + +#ifndef BOARD_INFO_NAME + #define BOARD_INFO_NAME "BTT Manta M8P V1.0" +#endif + +// +// Steppers +// + +#define E1_STEP_PIN PA10 // M6 +#define E1_DIR_PIN PD15 +#define E1_ENABLE_PIN PA15 +#ifndef E1_CS_PIN + #define E1_CS_PIN PF8 +#endif + +#define E2_STEP_PIN PD12 // M7 +#define E2_DIR_PIN PD11 +#define E2_ENABLE_PIN PD14 +#ifndef E2_CS_PIN + #define E2_CS_PIN PD13 +#endif + +#define E3_STEP_PIN PD10 // M8 +#define E3_DIR_PIN PD8 +#define E3_ENABLE_PIN PD9 +#ifndef E3_CS_PIN + #define E3_CS_PIN PC7 +#endif + +#if HAS_TMC_UART + #define E1_SERIAL_TX_PIN PF8 + #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN + + #define E2_SERIAL_TX_PIN PD13 + #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN + + #define E3_SERIAL_TX_PIN PC7 + #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 + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PC6 +#endif + +#ifndef NEOPIXEL2_PIN + #define NEOPIXEL2_PIN PA9 +#endif 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 new file mode 100644 index 0000000000..d7c15eaa04 --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h @@ -0,0 +1,81 @@ +/** + * 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 common Manta M8P pins +#include "pins_BTT_MANTA_M8P_common.h" + +#ifndef BOARD_INFO_NAME + #define BOARD_INFO_NAME "BTT Manta M8P V1.1" +#endif + +// +// Steppers +// +#define E1_STEP_PIN PA10 // M6 +#define E1_DIR_PIN PA14 +#define E1_ENABLE_PIN PA15 +#ifndef E1_CS_PIN + #define E1_CS_PIN PF8 +#endif + +#define E2_STEP_PIN PD11 // M7 +#define E2_DIR_PIN PD9 +#define E2_ENABLE_PIN PD15 +#ifndef E2_CS_PIN + #define E2_CS_PIN PD14 +#endif + +#define E3_STEP_PIN PD8 // M8 +#define E3_DIR_PIN PC6 +#define E3_ENABLE_PIN PC7 +#ifndef E3_CS_PIN + #define E3_CS_PIN PD10 +#endif + +#if HAS_TMC_UART + #define E1_SERIAL_TX_PIN PF8 + #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN + + #define E2_SERIAL_TX_PIN PD14 + #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN + + #define E3_SERIAL_TX_PIN PD10 + #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 + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PA9 +#endif + +#ifndef NEOPIXEL2_PIN + #define NEOPIXEL2_PIN PB15 +#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 new file mode 100644 index 0000000000..fc3f679b8d --- /dev/null +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h @@ -0,0 +1,379 @@ +/** + * 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_CUSTOM_BUILD_FLAGS -DTONE_CHANNEL=4 -DTONE_TIMER=4 -DTIMER_TONE=4 + +#define USES_DIAG_JUMPERS + +// Ignore temp readings during development. +//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 + +// +// EEPROM +// +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) + #undef NO_EEPROM_SELECTED + #ifndef FLASH_EEPROM_EMULATION + #define FLASH_EEPROM_EMULATION + #endif + #define EEPROM_PAGE_SIZE (0x800UL) // 2K + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) + #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE +#endif + +// +// Servos +// +#define SERVO0_PIN PB1 // PROBE + +// +// Probe enable +// +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN +#endif + +// +// Trinamic Stallguard pins +// +#define X_DIAG_PIN PF3 // MIN1 +#define Y_DIAG_PIN PF4 // MIN2 +#define Z_DIAG_PIN PF5 // MIN3 +#define Z2_DIAG_PIN PC0 // MIN4 +#define E0_DIAG_PIN PC1 // MIN5 +#define E1_DIAG_PIN PC2 // MIN6 + +// +// Z Probe (when not Z_MIN_PIN) +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PB2 // PROBE + //#define Z_MIN_PROBE_PIN PF6 // IND-PROBE (with adjustable voltage & pullup set via jumpers) +#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 // MIN5 + #else + #define X_MIN_PIN E0_DIAG_PIN // MIN5 + #endif +#elif NEEDS_X_MINMAX + #ifndef X_MIN_PIN + #define X_MIN_PIN X_DIAG_PIN // MIN1 + #endif + #ifndef X_MAX_PIN + #define X_MAX_PIN E0_DIAG_PIN // MIN5 + #endif +#else + #define X_STOP_PIN X_DIAG_PIN // MIN1 +#endif + +#ifdef Y_STALL_SENSITIVITY + #define Y_STOP_PIN Y_DIAG_PIN + #if Y_HOME_TO_MIN + #define Y_MAX_PIN E1_DIAG_PIN // MIN6 + #else + #define Y_MIN_PIN E1_DIAG_PIN // MIN6 + #endif +#elif NEEDS_Y_MINMAX + #ifndef Y_MIN_PIN + #define Y_MIN_PIN Y_DIAG_PIN // MIN2 + #endif + #ifndef Y_MAX_PIN + #define Y_MAX_PIN E1_DIAG_PIN // MIN6 + #endif +#else + #define Y_STOP_PIN Y_DIAG_PIN // MIN2 +#endif + +#define Z_STOP_PIN Z_DIAG_PIN // MIN3 + +// +// Filament Runout Sensors +// +#define FIL_RUNOUT_PIN PC1 // MIN5 +#define FIL_RUNOUT2_PIN PC2 // MIN6 + +#ifndef PS_ON_PIN + #define PS_ON_PIN PC3 // PS-ON +#endif + +// +// Steppers +// +#define X_STEP_PIN PE2 // M1 +#define X_DIR_PIN PB4 +#define X_ENABLE_PIN PC11 +#ifndef X_CS_PIN + #define X_CS_PIN PC10 +#endif + +#define Y_STEP_PIN PF12 // M2 +#define Y_DIR_PIN PF11 +#define Y_ENABLE_PIN PB3 +#ifndef Y_CS_PIN + #define Y_CS_PIN PF13 +#endif + +#define Z_STEP_PIN PD7 // M3 +#define Z_DIR_PIN PD6 +#define Z_ENABLE_PIN PF10 +#ifndef Z_CS_PIN + #define Z_CS_PIN PF9 +#endif + +#define Z2_STEP_PIN PD3 // M4 +#define Z2_DIR_PIN PD2 +#define Z2_ENABLE_PIN PD5 +#ifndef Z2_CS_PIN + #define Z2_CS_PIN PD4 +#endif + +#define E0_STEP_PIN PC9 // M5 +#define E0_DIR_PIN PC8 +#define E0_ENABLE_PIN PD1 +#ifndef E0_CS_PIN + #define E0_CS_PIN PD0 +#endif + +// +// Default pins for TMC software SPI +// +#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 + #define X_SERIAL_TX_PIN PC10 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PF13 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PF9 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define Z2_SERIAL_TX_PIN PD4 + #define Z2_SERIAL_RX_PIN Z2_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PD0 + #define E0_SERIAL_RX_PIN E0_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 + +// +// Temperature Sensors +// +#define TEMP_BED_PIN PA0 // TB +#define TEMP_0_PIN PA1 // TH0 +#define TEMP_1_PIN PA2 // TH1 +#define TEMP_2_PIN PA3 // TH2 +#define TEMP_3_PIN PA4 // TH3 + +// +// Heaters / Fans +// +#define HEATER_BED_PIN PB7 // BED-OUT +#define HEATER_0_PIN PE3 // HE0 +#define HEATER_1_PIN PB5 // HE1 +#define HEATER_2_PIN PB6 // HE2 +#define HEATER_3_PIN PE1 // HE3 + +#define FAN0_PIN PE6 // FAN0 +#define FAN1_PIN PE0 // FAN1 +#define FAN2_PIN PC12 // FAN2 +#define FAN3_PIN PE5 // FAN3 +#define FAN4_PIN PE4 // FAN4 +#define FAN5_PIN PB8 // FAN5 +#define FAN6_PIN PB9 // FAN6 + +// +// SD Support +// +#ifndef SDCARD_CONNECTION + #if HAS_WIRED_LCD + #define SDCARD_CONNECTION LCD + #else + #define SDCARD_CONNECTION ONBOARD + #endif +#endif + +/** + * ------ ------ + * (BEEPER) PE9 | 1 2 | PE10 (BTN_ENC) (MISO) PB14 | 1 2 | PB13 (SCK) + * (LCD_EN) PE11 | 3 4 | PE12 (LCD_RS) (BTN_EN1) PF7 | 3 4 | PB12 (SD_SS) + * (LCD_D4) PE13 | 5 6 PE14 (LCD_D5) (BTN_EN2) PE7 | 5 6 PB11 (MOSI) + * (LCD_D6) PE15 | 7 8 | PB10 (LCD_D7) (SD_DETECT) PE8 | 7 8 | RESET + * GND | 9 10 | 5V GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN PE9 +#define EXP1_02_PIN PE10 +#define EXP1_03_PIN PE11 +#define EXP1_04_PIN PE12 +#define EXP1_05_PIN PE13 +#define EXP1_06_PIN PE14 +#define EXP1_07_PIN PE15 +#define EXP1_08_PIN PB10 + +#define EXP2_01_PIN PB14 +#define EXP2_02_PIN PB13 +#define EXP2_03_PIN PF7 +#define EXP2_04_PIN PB12 +#define EXP2_05_PIN PE7 +#define EXP2_06_PIN PB11 +#define EXP2_07_PIN PE8 +#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 SDSS EXP2_04_PIN + #define SD_SS_PIN SDSS + #define SD_SCK_PIN EXP2_02_PIN + #define SD_MISO_PIN EXP2_01_PIN + #define SD_MOSI_PIN EXP2_06_PIN + #define SD_DETECT_PIN EXP2_07_PIN +#elif SD_CONNECTION_IS(ONBOARD) + #define SD_DETECT_PIN PE8 + #define SD_SCK_PIN PB13 + #define SD_MISO_PIN PB14 + #define SD_MOSI_PIN PB11 + #define ONBOARD_SD_CS_PIN PB14 // Chip select for "System" SD card + #define SD_SS_PIN ONBOARD_SD_CS_PIN +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "No custom SD drive cable defined for this board." +#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 + + #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 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_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 + #ifndef BOARD_ST7920_DELAY_1 + #define BOARD_ST7920_DELAY_1 120 + #endif + #ifndef BOARD_ST7920_DELAY_2 + #define BOARD_ST7920_DELAY_2 80 + #endif + #ifndef BOARD_ST7920_DELAY_3 + #define BOARD_ST7920_DELAY_3 580 + #endif +#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 f931d9924a..ef6a22b88f 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 @@ -21,6 +21,8 @@ */ #pragma once +#include "env_validate.h" + //#define BOARD_CUSTOM_BUILD_FLAGS -DTONE_CHANNEL=4 -DTONE_TIMER=4 -DTIMER_TONE=4 #ifndef BOARD_INFO_NAME @@ -35,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 @@ -134,7 +136,7 @@ // #define HEATER_0_PIN PC8 // "HE" #define HEATER_BED_PIN PC9 // "HB" -#define FAN_PIN PC6 // "FAN0" +#define FAN0_PIN PC6 // "FAN0" #define FAN1_PIN PC7 // "FAN1" #define FAN2_PIN PB15 // "FAN2" @@ -194,7 +196,7 @@ * CS | 3 4 | SCK (EN1) PA10 | 3 4 | -- * MOSI | 5 6 | MISO (EN2) PA9 5 6 | MOSI * 3V3 | 7 8 | GND -- | 7 8 | -- - * ------ GND | 9 10| RESET (Kill) + * ------ GND | 9 10 | RESET (Kill) * SPI ------ * EXP2 * @@ -203,7 +205,7 @@ * PA9 | 3 4 | RESET (LCD CS) PB8 | 3 4 | PD6 (LCD_A0) * PA10 5 6 | PB9 (RESET) PB9 5 6 | PA15 (DIN) * PB8 | 7 8 | PD6 -- | 7 8 | -- - * GND | 9 10| 5V GND | 9 10| 5V + * GND | 9 10 | 5V GND | 9 10 | 5V * ------ ------ * EXP1 EXP1 */ @@ -236,7 +238,7 @@ #define BTN_EN2 EXP1_05_PIN #define LCD_PINS_RS EXP1_07_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD! @@ -246,14 +248,14 @@ #endif #define LCD_PINS_RS EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_02_PIN + #define LCD_PINS_EN EXP1_02_PIN #define LCD_PINS_D4 EXP1_07_PIN #define LCD_PINS_D5 EXP1_05_PIN #define LCD_PINS_D6 EXP1_03_PIN #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 @@ -361,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.)" @@ -414,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/env_validate.h b/Marlin/src/pins/stm32h7/env_validate.h new file mode 100644 index 0000000000..7feaf20959 --- /dev/null +++ b/Marlin/src/pins/stm32h7/env_validate.h @@ -0,0 +1,29 @@ +/** + * 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 . + * + */ +#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/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h new file mode 100644 index 0000000000..9d30d853b5 --- /dev/null +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -0,0 +1,473 @@ +/** + * 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 "OCTOPUS MAX EZ V1.0" + +#define USES_DIAG_JUMPERS + +// Onboard 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 + #define I2C_SCL_PIN PB10 + #define I2C_SDA_PIN PB11 + #define MARLIN_EEPROM_SIZE 0x1000 // 4KB +#endif + +// Avoid conflict with TIMER_TONE +#define STEP_TIMER 8 + +// +// Servos +// +#define SERVO0_PIN PB14 + +// +// 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-DET +#define E0_DIAG_PIN PF1 // M5-DET +#define E1_DIAG_PIN PC15 // M6-DET +#define E2_DIAG_PIN PF12 // PWRDET + +// +// 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 // M4-DET + #else + #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 // M4-DET + #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 // M5-DET + #else + #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 // M5-DET + #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 + #define Z_MIN_PROBE_PIN PB15 +#endif + +// +// Filament Runout Sensor +// +#define FIL_RUNOUT_PIN PF1 // M5-DET +#define FIL_RUNOUT2_PIN PC15 // M6-DET + +// +// Steppers +// +#define X_STEP_PIN PC13 // MOTOR 1 +#define X_DIR_PIN PC14 +#define X_ENABLE_PIN PE6 +#ifndef X_CS_PIN + #define X_CS_PIN PG14 +#endif + +#define Y_STEP_PIN PE4 // MOTOR 2 +#define Y_DIR_PIN PE5 +#define Y_ENABLE_PIN PE3 +#ifndef Y_CS_PIN + #define Y_CS_PIN PG13 +#endif + +#define Z_STEP_PIN PE1 // MOTOR 3 +#define Z_DIR_PIN PE0 +#define Z_ENABLE_PIN PE2 +#ifndef Z_CS_PIN + #define Z_CS_PIN PG12 +#endif + +#define Z2_STEP_PIN PB8 // MOTOR 4 +#define Z2_DIR_PIN PB9 +#define Z2_ENABLE_PIN PB7 +#ifndef Z2_CS_PIN + #define Z2_CS_PIN PG11 +#endif + +#define E0_STEP_PIN PB5 // MOTOR 5 +#define E0_DIR_PIN PB4 +#define E0_ENABLE_PIN PB6 +#ifndef E0_CS_PIN + #define E0_CS_PIN PG10 +#endif + +#define E1_STEP_PIN PG15 // MOTOR 6 +#define E1_DIR_PIN PB3 +#define E1_ENABLE_PIN PD5 +#ifndef E1_CS_PIN + #define E1_CS_PIN PG9 +#endif + +#define E2_STEP_PIN PD3 // MOTOR 7 +#define E2_DIR_PIN PD2 +#define E2_ENABLE_PIN PD4 +#ifndef E2_CS_PIN + #define E2_CS_PIN PD7 +#endif + +#define E3_STEP_PIN PA10 // MOTOR 8 +#define E3_DIR_PIN PA9 +#define E3_ENABLE_PIN PA15 +#ifndef E3_CS_PIN + #define E3_CS_PIN PD6 +#endif + +#define E4_STEP_PIN PA8 // MOTOR 9 +#define E4_DIR_PIN PC7 +#define E4_ENABLE_PIN PC9 +#ifndef E4_CS_PIN + #define E4_CS_PIN PG8 +#endif + +#define E5_STEP_PIN PG6 // MOTOR 10 +#define E5_DIR_PIN PC6 +#define E5_ENABLE_PIN PC8 +#ifndef E5_CS_PIN + #define E5_CS_PIN PG7 +#endif + +// +// Temperature Sensors +// +#define TEMP_BED_PIN PB1 // TB +#define TEMP_0_PIN PB0 // TH0 +#define TEMP_1_PIN PC5 // TH1 +#define TEMP_2_PIN PC4 // TH2 +#define TEMP_3_PIN PA7 // TH3 + +// +// Heaters / Fans +// +#define HEATER_BED_PIN PF5 // Hotbed +#define HEATER_0_PIN PF6 // Heater0 +#define HEATER_1_PIN PA0 // Heater1 +#define HEATER_2_PIN PF9 // Heater2 +#define HEATER_3_PIN PF7 // Heater3 + +#define FAN0_PIN PA6 // Fan0 +#define FAN1_PIN PA5 // Fan1 +#define FAN2_PIN PA4 // Fan2 +#define FAN3_PIN PA3 // Fan3 +#define FAN4_PIN PA1 // 4 wire Fan4 +#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 +// +#ifndef SDCARD_CONNECTION + #if HAS_WIRED_LCD + #define SDCARD_CONNECTION LCD + #else + #define SDCARD_CONNECTION ONBOARD + #endif +#endif + +// +// Default pins for TMC software SPI +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE14 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PE13 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PE12 +#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 PG14 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PG13 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PG12 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define Z2_SERIAL_TX_PIN PG11 + #define Z2_SERIAL_RX_PIN Z2_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PG10 + #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + + #define E1_SERIAL_TX_PIN PG9 + #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN + + #define E2_SERIAL_TX_PIN PD7 + #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN + + #define E3_SERIAL_TX_PIN PD6 + #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN + + #define E4_SERIAL_TX_PIN PG8 + #define E4_SERIAL_RX_PIN E3_SERIAL_TX_PIN + + #define E5_SERIAL_TX_PIN PG7 + #define E5_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 + +/** + * 18-pin FPC Connector + * ---- + * (MISO) PE13 | 1 | + * (SCK) PE12 | 2 | + * (BTN_EN1) PG5 | 3 | + * (SD_SS) PE11 | 4 | + * (BTN_EN2) PG4 | 5 | + * (MOSI) PE14 | 6 | + * (SD_DETECT) PG3 | 7 | + * RESET | 8 | + * (BEEPER) PG2 | 9 | + * (BTN_ENC) PD15 | 10 | + * (LCD_EN) PD14 | 11 | + * (LCD_RS) PD13 | 12 | + * (LCD_D4) PD12 | 13 | + * (LCD_D5) PD11 | 14 | + * (LCD_D6) PD10 | 15 | + * (LCD_D7) PE15 | 16 | + * GND | 17 | + * 5V | 18 | + * ---- + * LCD + */ + +#define EXP1_01_PIN PG2 +#define EXP1_02_PIN PD15 +#define EXP1_03_PIN PD14 +#define EXP1_04_PIN PD13 +#define EXP1_05_PIN PD12 +#define EXP1_06_PIN PD11 +#define EXP1_07_PIN PD10 +#define EXP1_08_PIN PE15 + +#define EXP2_01_PIN PE13 +#define EXP2_02_PIN PE12 +#define EXP2_03_PIN PG5 +#define EXP2_04_PIN PE11 +#define EXP2_05_PIN PG4 +#define EXP2_06_PIN PE14 +#define EXP2_07_PIN PG3 +#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) + #ifndef SD_DETECT_STATE + #define SD_DETECT_STATE HIGH + #elif SD_DETECT_STATE == LOW + #error "BOARD_BTT_OCTOPUS_MAX_EZ onboard SD requires SD_DETECT_STATE set to HIGH." + #endif + #define SDSS PB12 + #define SD_SS_PIN SDSS + #define SD_SCK_PIN PE12 + #define SD_MISO_PIN PE13 + #define SD_MOSI_PIN PE14 + #define SD_DETECT_PIN PB13 + #define SOFTWARE_SPI +#elif SD_CONNECTION_IS(LCD) + #define SDSS EXP2_04_PIN + #define SD_SS_PIN SDSS + #define SD_SCK_PIN EXP2_02_PIN + #define SD_MISO_PIN EXP2_01_PIN + #define SD_MOSI_PIN EXP2_06_PIN + #define SD_DETECT_PIN EXP2_07_PIN + #define SOFTWARE_SPI +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "CUSTOM_CABLE is not a supported SDCARD_CONNECTION for this board" +#endif + +// +// LCDs and Controllers +// + +#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 + + #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 + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_07_PIN + #define LCD_PINS_D7 EXP1_08_PIN + + #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 Hardware SPI causes display problems. + // Results in LCD Software SPI mode 3, SD Software 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. + #define NEOPIXEL_PIN EXP1_06_PIN + +#elif HAS_WIRED_LCD + #error "Only BTT_MINI_12864_V1 is currently supported on the BIGTREE_OCTOPUS_MAX_EZ." +#endif + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PE10 +#endif +#ifndef NEOPIXEL2_PIN + #define NEOPIXEL2_PIN PE9 +#endif + +// +// WIFI +// +#if ENABLED(WIFISUPPORT) + /** + * -------- + * 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 + #define ESP_WIFI_MODULE_RESET_PIN PB2 + #define ESP_WIFI_MODULE_GPIO0_PIN PG0 + #define ESP_WIFI_MODULE_GPIO4_PIN PF15 +#endif 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 0000000000..64e1b828f0 --- /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_SE_BX_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h index 1ee7846c93..caa2272f4d 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 @@ -21,9 +21,7 @@ */ #pragma once -#if NOT_TARGET(STM32H7) - #error "Oops! Select an STM32H7 board in 'Tools > Board.'" -#endif +#include "env_validate.h" #define DEFAULT_MACHINE_NAME "Biqu BX" @@ -93,18 +91,16 @@ #define E1_CS_PIN PC8 // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PC6 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PG3 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PC7 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PC6 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PG3 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PC7 #endif #if HAS_TMC_UART @@ -145,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 @@ -162,7 +161,7 @@ #define HEATER_1_PIN PC5 #define HEATER_BED_PIN PA4 -#define FAN_PIN PA5 // "FAN0" +#define FAN0_PIN PA5 // "FAN0" #define FAN1_PIN PA6 // "FAN1" #define FAN2_PIN PA7 // "FAN2" 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 eaceafe29e..47bcb732eb 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 @@ -21,16 +21,14 @@ */ #pragma once -#if NOT_TARGET(STM32H7) - #error "Oops! Select an STM32H7 board in 'Tools > Board.'" -#endif +#include "env_validate.h" // If you have the BigTreeTech driver expansion module, enable BTT_MOTOR_EXPANSION // 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." @@ -40,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 @@ -121,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) @@ -132,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 // @@ -241,8 +238,8 @@ #ifndef HEATER_BED_PIN #define HEATER_BED_PIN PD7 // Hotbed #endif -#ifndef FAN_PIN - #define FAN_PIN PB7 // Fan0 +#ifndef FAN0_PIN + #define FAN0_PIN PB7 // Fan0 #endif #if HAS_CUTTER @@ -262,18 +259,16 @@ #endif // SPINDLE_FEATURE || LASER_FEATURE // -// Software SPI pins for TMC2130 stepper drivers +// SPI pins for TMC2130 stepper drivers // -#if ENABLED(TMC_USE_SW_SPI) - #ifndef TMC_SW_MOSI - #define TMC_SW_MOSI PE13 - #endif - #ifndef TMC_SW_MISO - #define TMC_SW_MISO PE15 - #endif - #ifndef TMC_SW_SCK - #define TMC_SW_SCK PE14 - #endif +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PE13 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PE15 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PE14 #endif #if HAS_TMC_UART @@ -314,8 +309,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 @@ -364,7 +362,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." @@ -449,7 +447,7 @@ #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #define LCD_PINS_D4 EXP1_06_PIN #elif ENABLED(MKS_MINI_12864) @@ -459,6 +457,115 @@ #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 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 + + #ifndef TFT_WIDTH + #define TFT_WIDTH 480 + #endif + #ifndef TFT_HEIGHT + #define TFT_HEIGHT 320 + #endif + + #if ENABLED(BTT_TFT35_SPI_V1_0) + + /** + * ------ ------ + * 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_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 + #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_DC_PIN EXP1_08_PIN // SPI1_RS + #define TFT_A0_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_WORDS 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 @@ -466,7 +573,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #if ENABLED(FYSETC_MINI_12864) @@ -474,7 +581,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 @@ -517,27 +624,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 // @@ -545,25 +631,27 @@ #define NEOPIXEL_PIN PE6 #endif -// -// WIFI -// +#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) PB10 | 12 | | 5 | PB13 (ESP-CLK) - * (ESP-IO4) PB11 | 13 | | 4 | -- - * -- | 14 | | 3 | 3.3V (ESP-EN) - * (ESP-RX) PD8 | 15 | | 2 | -- - * (ESP-TX) PD9 | 16 | | 1 | PC14 (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 PC14 -#define ESP_WIFI_MODULE_GPIO0_PIN PB10 -#define ESP_WIFI_MODULE_GPIO4_PIN PB11 + /** + * ------- + * GND | 9 | | 8 | 3.3V + * (ESP-CS) PB12 | 10 | | 7 | PB15 (ESP-MOSI) + * 3.3V | 11 | | 6 | PB14 (ESP-MISO) + * (ESP-IO0) PB10 | 12 | | 5 | PB13 (ESP-CLK) + * (ESP-IO4) PB11 | 13 | | 4 | -- + * -- | 14 | | 3 | 3.3V (ESP-EN) + * (ESP-RX) PD8 | 15 | | 2 | -- + * (ESP-TX) PD9 | 16 | | 1 | PC14 (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 PC14 + #define ESP_WIFI_MODULE_GPIO0_PIN PB10 + #define ESP_WIFI_MODULE_GPIO4_PIN PB11 +#endif diff --git a/Marlin/src/pins/teensy2/env_validate.h b/Marlin/src/pins/teensy2/env_validate.h index 5f0ea4f3b6..8fd6fba319 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 diff --git a/Marlin/src/pins/teensy2/pins_5DPRINT.h b/Marlin/src/pins/teensy2/pins_5DPRINT.h index 6e1f9c0217..798f98dae5 100644 --- a/Marlin/src/pins/teensy2/pins_5DPRINT.h +++ b/Marlin/src/pins/teensy2/pins_5DPRINT.h @@ -64,6 +64,8 @@ /** * 5DPrint D8 Driver board pin assignments + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/5DPrint%20D8/5DPD8_v1.0_OS_schematics.PDF + * Origin: https://bitbucket.org/makible/5dprint-d8-controller-board/src/master/5DPD8_v1.0_OS_schematics.PDF * * https://bitbucket.org/makible/5dprint-d8-controller-board */ @@ -131,8 +133,8 @@ #define HEATER_0_PIN 15 // C5 #define HEATER_BED_PIN 14 // C4 -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A #endif // diff --git a/Marlin/src/pins/teensy2/pins_BRAINWAVE.h b/Marlin/src/pins/teensy2/pins_BRAINWAVE.h index cdcc249c00..900eae6dd4 100644 --- a/Marlin/src/pins/teensy2/pins_BRAINWAVE.h +++ b/Marlin/src/pins/teensy2/pins_BRAINWAVE.h @@ -23,9 +23,13 @@ /** * Brainwave 1.0 pin assignments (AT90USB646) + * https://www.reprap.org/wiki/Brainwave * * Requires hardware bundle for Arduino: * https://github.com/unrepentantgeek/brainwave-arduino + * + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Brainwave/schematic.pdf + * Origin: https://github.com/unrepentantgeek/Brainwave/blob/master/brainwave/brainwave.sch */ /** @@ -116,8 +120,8 @@ #define HEATER_0_PIN 32 // A4 Extruder #define HEATER_BED_PIN 18 // E6 Bed -#ifndef FAN_PIN - #define FAN_PIN 31 // A3 Fan +#ifndef FAN0_PIN + #define FAN0_PIN 31 // A3 Fan #endif // diff --git a/Marlin/src/pins/teensy2/pins_BRAINWAVE_PRO.h b/Marlin/src/pins/teensy2/pins_BRAINWAVE_PRO.h index 319130ef96..a1ef48e524 100644 --- a/Marlin/src/pins/teensy2/pins_BRAINWAVE_PRO.h +++ b/Marlin/src/pins/teensy2/pins_BRAINWAVE_PRO.h @@ -26,6 +26,8 @@ * * Requires hardware bundle for Arduino: * https://github.com/unrepentantgeek/brainwave-arduino + * + * Not to be confused with the regular Brainwave controller (https://www.reprap.org/wiki/Brainwave) */ /** @@ -124,8 +126,8 @@ // #define HEATER_0_PIN 27 // B7 #define HEATER_BED_PIN 26 // B6 Bed -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 Fan, PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 Fan, PWM3A #endif // diff --git a/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h b/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h index ddf0d53ea6..c1eee00c2d 100644 --- a/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h +++ b/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h @@ -25,6 +25,15 @@ * Rev B 2 JUN 2017 * * Converted to Arduino pin numbering + * + * Schematic (RevA): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.A/schematic.png + * Origin (RevA): https://raw.githubusercontent.com/lwalkera/printrboard/revA/Printrboard.sch + * Schematic (RevB): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.B/schematic.png + * Origin (RevB): https://raw.githubusercontent.com/lwalkera/printrboard/revB/Printrboard.sch + * Schematic (RevC): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.C/schematic.png + * Origin (RevC): https://raw.githubusercontent.com/lwalkera/printrboard/revC/Printrboard.sch + * Schematic (RevD): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.D/schematic.png + * Origin (RevD): https://raw.githubusercontent.com/lwalkera/printrboard/RevD/Printrboard.sch */ /** @@ -109,8 +118,8 @@ #define HEATER_2_PIN 45 // F7 #define HEATER_BED_PIN 14 // C4 PWM3C -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A #endif // @@ -124,13 +133,13 @@ #if HAS_WIRED_LCD && IS_NEWPANEL #define LCD_PINS_RS 9 // E1 JP11-11 - #define LCD_PINS_ENABLE 8 // E0 JP11-10 + #define LCD_PINS_EN 8 // E0 JP11-10 #define LCD_PINS_D4 7 // D7 JP11-8 #define LCD_PINS_D5 6 // D6 JP11-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 1867398087..62922399d8 100644 --- a/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h +++ b/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h @@ -25,6 +25,19 @@ * Rev B 2 JUN 2017 * * Converted to Arduino pin numbering + * + * Schematic (RevF): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F/schematic.png + * Origin (RevF): https://github.com/lwalkera/printrboard/raw/revF/Printrboard.sch + * Schematic (RevF2): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F2/schematic.png + * Origin (RevF2): https://raw.githubusercontent.com/lwalkera/printrboard/revF2/Printrboard.sch + * Schematic (RevF3): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F3/schematic.png + * Origin (RevF3): https://raw.githubusercontent.com/lwalkera/printrboard/revF3/Printrboard.sch + * Schematic (RevF4): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F4/schematic.png + * Origin (RevF4): https://raw.githubusercontent.com/lwalkera/printrboard/revF4/Printrboard.sch + * Schematic (RevF5): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F5/schematic.png + * Origin (RevF5): https://raw.githubusercontent.com/lwalkera/printrboard/revF5/Printrboard.sch + * Schematic (RevF6): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Printrboard%20Rev.F6/schematic.png + * Origin (RevF6): https://raw.githubusercontent.com/lwalkera/printrboard/revF6/Printrboard.sch */ /** @@ -190,8 +203,8 @@ #endif #endif -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A #endif // @@ -201,13 +214,13 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 9 // E1 JP11-11 - #define LCD_PINS_ENABLE 8 // E0 JP11-10 + #define LCD_PINS_EN 8 // E0 JP11-10 #define LCD_PINS_D4 7 // D7 JP11-8 #define LCD_PINS_D5 6 // D6 JP11-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 cdba535090..28b0aebe42 100644 --- a/Marlin/src/pins/teensy2/pins_SAV_MKI.h +++ b/Marlin/src/pins/teensy2/pins_SAV_MKI.h @@ -25,6 +25,9 @@ * Rev B 2 JUN 2017 * * Converted to Arduino pin numbering + * + * Schematic: https://green-candy.osdn.jp/external/MarlinFW/board_schematics/SAV%20MkI/SAV_MK-I.pdf + * Origin: https://reprap.org/mediawiki/images/3/3c/SAV_MK-I.pdf */ /** @@ -113,8 +116,8 @@ #define HEATER_0_PIN 15 // C5 PWM3B - Extruder #define HEATER_BED_PIN 14 // C4 PWM3C - Bed -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A #endif // @@ -152,7 +155,7 @@ // #define BEEPER_PIN -1 #define LCD_PINS_RS -1 -#define LCD_PINS_ENABLE -1 +#define LCD_PINS_EN -1 #if ENABLED(SAV_3DLCD) // For LCD SHIFT register LCD @@ -160,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/pins/teensy2/pins_TEENSY2.h b/Marlin/src/pins/teensy2/pins_TEENSY2.h index efb409bf32..9c8c6ce628 100644 --- a/Marlin/src/pins/teensy2/pins_TEENSY2.h +++ b/Marlin/src/pins/teensy2/pins_TEENSY2.h @@ -109,6 +109,7 @@ #include "env_validate.h" +// https://reprap.org/wiki/Teensy_Breadboard #define BOARD_INFO_NAME "Teensy++2.0" // @@ -148,8 +149,8 @@ // #define HEATER_0_PIN 15 // C5 PWM3B Extruder #define HEATER_BED_PIN 14 // C4 PWM3C -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A Fan +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A Fan #endif // @@ -168,7 +169,7 @@ // #if IS_ULTIPANEL #define LCD_PINS_RS 8 // E0 - #define LCD_PINS_ENABLE 9 // E1 + #define LCD_PINS_EN 9 // E1 #define LCD_PINS_D4 10 // C0 #define LCD_PINS_D5 11 // C1 #define LCD_PINS_D6 12 // C2 @@ -181,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 ab722478fd..deeffe9038 100644 --- a/Marlin/src/pins/teensy2/pins_TEENSYLU.h +++ b/Marlin/src/pins/teensy2/pins_TEENSYLU.h @@ -24,6 +24,10 @@ * Rev C 2 JUN 2017 * * Converted to Arduino pin numbering + * + * Schematic (1.0): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Teensylu%20v1.0/schematic.png + * Origin (1.0): https://raw.githubusercontent.com/StephS/Teensylu/master/working/Teensylu-1.0.sch + * (*) Other versions are discouraged by creator. */ /** @@ -129,8 +133,8 @@ #define HEATER_0_PIN 15 // C5 PWM3B - Extruder #define HEATER_BED_PIN 14 // C4 PWM3C -#ifndef FAN_PIN - #define FAN_PIN 16 // C6 PWM3A +#ifndef FAN0_PIN + #define FAN0_PIN 16 // C6 PWM3A #endif // @@ -163,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 diff --git a/Marlin/src/pins/teensy3/pins_TEENSY31_32.h b/Marlin/src/pins/teensy3/pins_TEENSY31_32.h index 0edb5cb19d..a6aa4fd86d 100644 --- a/Marlin/src/pins/teensy3/pins_TEENSY31_32.h +++ b/Marlin/src/pins/teensy3/pins_TEENSY31_32.h @@ -71,8 +71,8 @@ #define HEATER_0_PIN 20 //#define HEATER_1_PIN 36 #define HEATER_BED_PIN 21 -#ifndef FAN_PIN - #define FAN_PIN 22 +#ifndef FAN0_PIN + #define FAN0_PIN 22 #endif // @@ -100,7 +100,7 @@ /* #if HAS_WIRED_LCD #define LCD_PINS_RS 40 - #define LCD_PINS_ENABLE 41 + #define LCD_PINS_EN 41 #define LCD_PINS_D4 42 #define LCD_PINS_D5 43 #define LCD_PINS_D6 44 diff --git a/Marlin/src/pins/teensy3/pins_TEENSY35_36.h b/Marlin/src/pins/teensy3/pins_TEENSY35_36.h index 71c348536a..54bf6f8835 100644 --- a/Marlin/src/pins/teensy3/pins_TEENSY35_36.h +++ b/Marlin/src/pins/teensy3/pins_TEENSY35_36.h @@ -57,7 +57,7 @@ * 3.3V | | GND * Z_STOP_PIN 24 | 40 * * 53 | A22 DAC1 * AUX2 25 | 41 * * 52 | A21 DAC0 - * AUX2 FAN_PIN SCL2 TX1 26 | 42 * * 51 | 39 A20 MISO0 SDSS + * AUX2 FAN0_PIN SCL2 TX1 26 | 42 * * 51 | 39 A20 MISO0 SDSS * AUX2 Z-PROBE PWR SCK0 RX1 27 | * * * * * | 38 A19 PWM SDA1 * AUX2 SOL1_PIN MOSI0 28 | 43 * * 50 | 37 A18 PWM SCL1 * D10 CONTROLLER_FAN_PIN CAN0TX PWM 29 | 44 * * 49 | 36 A17 PWM @@ -67,7 +67,7 @@ * * Interior pins: * LCD_PINS_RS 40 * * 53 SCK2 - * LCD_PINS_ENABLE 41 * * 52 MOSI2 + * LCD_PINS_EN 41 * * 52 MOSI2 * LCD_PINS_D4 42 * * 51 MISO2 * LCD_PINS_D5 CS2 43 * * 50 A24 * LCD_PINS_D6 MOSI2 44 * * 49 A23 @@ -109,8 +109,8 @@ #define HEATER_0_PIN 30 #define HEATER_1_PIN 36 #define HEATER_BED_PIN 31 -#ifndef FAN_PIN - #define FAN_PIN 2 +#ifndef FAN0_PIN + #define FAN0_PIN 2 #endif #define TEMP_0_PIN 2 // Extruder / Analog pin numbering: 2 => A2 @@ -132,7 +132,7 @@ #if HAS_WIRED_LCD #define LCD_PINS_RS 40 - #define LCD_PINS_ENABLE 41 + #define LCD_PINS_EN 41 #define LCD_PINS_D4 42 #define LCD_PINS_D5 43 #define LCD_PINS_D6 44 diff --git a/Marlin/src/pins/teensy4/env_validate.h b/Marlin/src/pins/teensy4/env_validate.h new file mode 100644 index 0000000000..5a89e8a409 --- /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 5f62bb05a6..2ee4f2970e 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 21a1ff675f..2a8a76f17c 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" @@ -53,10 +51,10 @@ * 3.3V | | GND * Z_STOP_PIN PWM 24 | | 41 A17 * E0_ENABLE_PIN PWM 25 | | 40 A16 - * FAN_PIN MOSI1 26 | | 39 A15 MISO1 X_STOP_PIN + * FAN0_PIN MOSI1 26 | | 39 A15 MISO1 X_STOP_PIN * Z-PROBE PWR SCK1 27 | * * * * * | 38 A14 Y_STOP_PIN * SOL1_PIN RX7 PWM 28 | | 37 PWM HEATER_0_PIN - * FAN_PIN TX7 PWM 29 | | 36 PWM HEATER_BED_PIN + * FAN0_PIN TX7 PWM 29 | | 36 PWM HEATER_BED_PIN * X_CS_PIN 30 | | 35 TX8 E1_ENABLE_PIN * y_CS_PIN 31 | SDCARD | 34 RX8 E1_DIR_PIN * Z_CS_PIN 32 |_______________| 33 PWM E1_STEP_PIN @@ -107,8 +105,8 @@ #define HEATER_0_PIN 37 #define HEATER_1_PIN 18 #define HEATER_BED_PIN 36 -#ifndef FAN_PIN - #define FAN_PIN 29 +#ifndef FAN0_PIN + #define FAN0_PIN 29 #endif // diff --git a/Marlin/src/sd/Sd2Card.cpp b/Marlin/src/sd/Sd2Card.cpp index 2d84c95a3d..7deebd4776 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(); @@ -345,7 +345,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi * \param[out] dst Pointer to the location that will receive the data. * \return true for success, false for failure. */ -bool DiskIODriver_SPI_SD::readBlock(uint32_t blockNumber, uint8_t *dst) { +bool DiskIODriver_SPI_SD::readBlock(uint32_t blockNumber, uint8_t * const dst) { #if IS_TEENSY_35_36 || IS_TEENSY_40_41 return 0 == SDHC_CardReadBlock(dst, blockNumber); #endif @@ -385,7 +385,7 @@ bool DiskIODriver_SPI_SD::readBlock(uint32_t blockNumber, uint8_t *dst) { * * \return true for success, false for failure. */ -bool DiskIODriver_SPI_SD::readData(uint8_t *dst) { +bool DiskIODriver_SPI_SD::readData(uint8_t * const dst) { chipSelect(); return readData(dst, 512); } @@ -455,7 +455,7 @@ bool DiskIODriver_SPI_SD::readData(uint8_t *dst) { #endif // SD_CHECK_AND_RETRY -bool DiskIODriver_SPI_SD::readData(uint8_t *dst, const uint16_t count) { +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; @@ -487,8 +487,8 @@ bool DiskIODriver_SPI_SD::readData(uint8_t *dst, const uint16_t count) { } /** read CID or CSR register */ -bool DiskIODriver_SPI_SD::readRegister(const uint8_t cmd, void *buf) { - uint8_t *dst = reinterpret_cast(buf); +bool DiskIODriver_SPI_SD::readRegister(const uint8_t cmd, void * const buf) { + uint8_t * const dst = reinterpret_cast(buf); if (cardCommand(cmd, 0)) { error(SD_CARD_ERROR_READ_REG); chipDeselect(); @@ -567,7 +567,7 @@ void DiskIODriver_SPI_SD::error(const uint8_t code) { errorCode_ = code; } * \param[in] src Pointer to the location of the data to be written. * \return true for success, false for failure. */ -bool DiskIODriver_SPI_SD::writeBlock(uint32_t blockNumber, const uint8_t *src) { +bool DiskIODriver_SPI_SD::writeBlock(uint32_t blockNumber, const uint8_t * const src) { if (ENABLED(SDCARD_READONLY)) return false; #if IS_TEENSY_35_36 || IS_TEENSY_40_41 @@ -598,7 +598,7 @@ bool DiskIODriver_SPI_SD::writeBlock(uint32_t blockNumber, const uint8_t *src) { * \param[in] src Pointer to the location of the data to be written. * \return true for success, false for failure. */ -bool DiskIODriver_SPI_SD::writeData(const uint8_t *src) { +bool DiskIODriver_SPI_SD::writeData(const uint8_t * const src) { if (ENABLED(SDCARD_READONLY)) return false; bool success = true; @@ -613,7 +613,7 @@ bool DiskIODriver_SPI_SD::writeData(const uint8_t *src) { } // Send one block of data for write block or write multiple blocks -bool DiskIODriver_SPI_SD::writeData(const uint8_t token, const uint8_t *src) { +bool DiskIODriver_SPI_SD::writeData(const uint8_t token, const uint8_t * const src) { if (ENABLED(SDCARD_READONLY)) return false; const uint16_t crc = TERN(SD_CHECK_AND_RETRY, CRC_CCITT(src, 512), 0xFFFF); diff --git a/Marlin/src/sd/Sd2Card.h b/Marlin/src/sd/Sd2Card.h index e0dce02a02..49569af512 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; @@ -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 @@ -143,7 +143,7 @@ public: * * \return true for success or false for failure. */ - bool readCID(cid_t *cid) { return readRegister(CMD10, cid); } + bool readCID(cid_t * const cid) { return readRegister(CMD10, cid); } /** * Read a card's CSD register. The CSD contains Card-Specific Data that @@ -153,18 +153,18 @@ public: * * \return true for success or false for failure. */ - inline bool readCSD(csd_t *csd) override { return readRegister(CMD9, csd); } + inline bool readCSD(csd_t * const csd) override { return readRegister(CMD9, csd); } - bool readData(uint8_t *dst) override; + bool readData(uint8_t * const dst) override; bool readStart(uint32_t blockNumber) override; bool readStop() override; - bool writeData(const uint8_t *src) override; - bool writeStart(const uint32_t blockNumber, const uint32_t eraseCount) override; + bool writeData(const uint8_t * const src) override; + bool writeStart(uint32_t blockNumber, const uint32_t eraseCount) override; bool writeStop() override; - bool readBlock(uint32_t block, uint8_t *dst) override; - bool writeBlock(uint32_t blockNumber, const uint8_t *src) override; + bool readBlock(uint32_t blockNumber, uint8_t * const dst) override; + bool writeBlock(uint32_t blockNumber, const uint8_t * const src) override; uint32_t cardSize() override; @@ -187,11 +187,11 @@ private: } uint8_t cardCommand(const uint8_t cmd, const uint32_t arg); - bool readData(uint8_t *dst, const uint16_t count); - bool readRegister(const uint8_t cmd, void *buf); + bool readData(uint8_t * const dst, const uint16_t count); + bool readRegister(const uint8_t cmd, void * const buf); void chipDeselect(); void chipSelect(); inline void type(const uint8_t value) { type_ = value; } bool waitNotBusy(const millis_t timeout_ms); - bool writeData(const uint8_t token, const uint8_t *src); + bool writeData(const uint8_t token, const uint8_t * const src); }; diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 1c1e0c7d14..46312bca82 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" @@ -91,7 +91,7 @@ bool SdBaseFile::addDirCluster() { // cache a file's directory entry // cache the current "dirBlock_" and return the entry at index "dirIndex_" // return pointer to cached entry or null for failure -dir_t* SdBaseFile::cacheDirEntry(uint8_t action) { +dir_t* SdBaseFile::cacheDirEntry(const uint8_t action) { if (!vol_->cacheRawBlock(dirBlock_, action)) return nullptr; return vol_->cache()->dir + dirIndex_; } @@ -119,7 +119,7 @@ bool SdBaseFile::close() { * Reasons for failure include file is not contiguous, file has zero length * or an I/O error occurred. */ -bool SdBaseFile::contiguousRange(uint32_t *bgnBlock, uint32_t *endBlock) { +bool SdBaseFile::contiguousRange(uint32_t * const bgnBlock, uint32_t * const endBlock) { // error if no blocks if (firstCluster_ == 0) return false; @@ -156,7 +156,7 @@ bool SdBaseFile::contiguousRange(uint32_t *bgnBlock, uint32_t *endBlock) { * a file is already open, the file already exists, the root * directory is full or an I/O error. */ -bool SdBaseFile::createContiguous(SdBaseFile *dirFile, const char *path, uint32_t size) { +bool SdBaseFile::createContiguous(SdBaseFile * const dirFile, const char * const path, const uint32_t size) { if (ENABLED(SDCARD_READONLY)) return false; uint32_t count; @@ -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]; @@ -301,7 +301,7 @@ bool SdBaseFile::getDosName(char * const name) { return true; } -void SdBaseFile::getpos(filepos_t *pos) { +void SdBaseFile::getpos(filepos_t * const pos) { pos->position = curPosition_; pos->cluster = curCluster_; } @@ -322,12 +322,12 @@ void SdBaseFile::getpos(filepos_t *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)); @@ -337,7 +337,7 @@ void SdBaseFile::ls(uint8_t flags, uint8_t indent) { // saves 32 bytes on stack for ls recursion // return 0 - EOF, 1 - normal file, or 2 - directory -int8_t SdBaseFile::lsPrintNext(uint8_t flags, uint8_t indent) { +int8_t SdBaseFile::lsPrintNext(const uint8_t flags, const uint8_t indent) { dir_t dir; uint8_t w = 0; @@ -350,10 +350,10 @@ int8_t SdBaseFile::lsPrintNext(uint8_t flags, 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('.'); @@ -400,7 +400,7 @@ uint8_t lfn_checksum(const uint8_t *name) { } // Format directory name field from a 8.3 name string -bool SdBaseFile::make83Name(const char *str, uint8_t *name, const char **ptr) { +bool SdBaseFile::make83Name(const char *str, uint8_t * const name, const char **ptr) { uint8_t n = 7, // Max index until a dot is found i = 11; while (i) name[--i] = ' '; // Set whole FILENAME.EXT to spaces @@ -437,13 +437,11 @@ bool SdBaseFile::make83Name(const char *str, uint8_t *name, const char **ptr) { * Reasons for failure include this file is already open, \a parent is not a * directory, \a path is invalid or already exists in \a parent. */ -bool SdBaseFile::mkdir(SdBaseFile *parent, const char *path, bool pFlag) { +bool SdBaseFile::mkdir(SdBaseFile *parent, const char *path, const bool pFlag/*=true*/) { if (ENABLED(SDCARD_READONLY)) return false; - uint8_t dname[11]; - SdBaseFile dir1, dir2; - SdBaseFile *sub = &dir1; - SdBaseFile *start = parent; + SdBaseFile dir1, dir2, *sub = &dir1; + SdBaseFile * const start = parent; #if ENABLED(LONG_FILENAME_WRITE_SUPPORT) uint8_t dlname[LONG_FILENAME_LENGTH]; @@ -459,6 +457,7 @@ bool SdBaseFile::mkdir(SdBaseFile *parent, const char *path, bool pFlag) { } } + uint8_t dname[11]; for (;;) { if (!TERN(LONG_FILENAME_WRITE_SUPPORT, parsePath(path, dname, dlname, &path), make83Name(path, dname, &path))) return false; while (*path == '/') path++; @@ -474,7 +473,7 @@ bool SdBaseFile::mkdir(SdBaseFile *parent, const char *path, bool pFlag) { return mkdir(parent, dname OPTARG(LONG_FILENAME_WRITE_SUPPORT, dlname)); } -bool SdBaseFile::mkdir(SdBaseFile *parent, const uint8_t dname[11] +bool SdBaseFile::mkdir(SdBaseFile * const parent, const uint8_t dname[11] OPTARG(LONG_FILENAME_WRITE_SUPPORT, const uint8_t dlname[LONG_FILENAME_LENGTH]) ) { if (ENABLED(SDCARD_READONLY)) return false; @@ -505,7 +504,7 @@ bool SdBaseFile::mkdir(SdBaseFile *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_); @@ -541,7 +540,7 @@ bool SdBaseFile::mkdir(SdBaseFile *parent, const uint8_t dname[11] * * \return true for success, false for failure. */ -bool SdBaseFile::open(const char *path, uint8_t oflag) { +bool SdBaseFile::open(const char * const path, const uint8_t oflag) { return open(cwd_, path, oflag); } @@ -595,7 +594,7 @@ bool SdBaseFile::open(const char *path, uint8_t oflag) { * a directory, \a path is invalid, the file does not exist * or can't be opened in the access mode specified by oflag. */ -bool SdBaseFile::open(SdBaseFile *dirFile, const char *path, uint8_t oflag) { +bool SdBaseFile::open(SdBaseFile * const dirFile, const char *path, const uint8_t oflag) { uint8_t dname[11]; SdBaseFile dir1, dir2; SdBaseFile *parent = dirFile, *sub = &dir1; @@ -627,9 +626,9 @@ bool SdBaseFile::open(SdBaseFile *dirFile, const char *path, uint8_t oflag) { } // open with filename in dname and long filename in dlname -bool SdBaseFile::open(SdBaseFile *dirFile, const uint8_t dname[11] +bool SdBaseFile::open(SdBaseFile * const dirFile, const uint8_t dname[11] OPTARG(LONG_FILENAME_WRITE_SUPPORT, const uint8_t dlname[LONG_FILENAME_LENGTH]) - , uint8_t oflag + , const uint8_t oflag ) { bool emptyFound = false, fileFound = false; uint8_t index = 0; @@ -703,7 +702,10 @@ bool SdBaseFile::open(SdBaseFile *dirFile, const uint8_t dname[11] // Get VFat dir entry pvFat = (vfat_t *) p; // Get checksum from the last entry of the sequence - if (pvFat->sequenceNumber & 0x40) lfnChecksum = pvFat->checksum; + if (pvFat->sequenceNumber & 0x40) { + lfnChecksum = pvFat->checksum; + ZERO(lfnName); + } // Get LFN sequence number lfnSequenceNumber = pvFat->sequenceNumber & 0x1F; if WITHIN(lfnSequenceNumber, 1, reqEntriesNum) { @@ -711,6 +713,7 @@ bool SdBaseFile::open(SdBaseFile *dirFile, const uint8_t dname[11] if (lfnChecksum == pvFat->checksum) { // Set chunk of LFN from VFAT entry into lfnName getLFNName(pvFat, (char *)lfnName, lfnSequenceNumber); + TERN_(UTF_FILENAME_SUPPORT, convertUtf16ToUtf8((char *)lfnName)); // LFN found? if (!strncasecmp((char*)dlname, (char*)lfnName, lfnNameLength)) lfnFileFound = true; } @@ -768,7 +771,7 @@ bool SdBaseFile::open(SdBaseFile *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? @@ -872,7 +875,7 @@ bool SdBaseFile::open(SdBaseFile *dirFile, const uint8_t dname[11] * See open() by path for definition of flags. * \return true for success or false for failure. */ -bool SdBaseFile::open(SdBaseFile *dirFile, uint16_t index, uint8_t oflag) { +bool SdBaseFile::open(SdBaseFile *dirFile, uint16_t index, const uint8_t oflag) { vol_ = dirFile->vol_; // error if already open @@ -898,7 +901,7 @@ bool SdBaseFile::open(SdBaseFile *dirFile, uint16_t index, uint8_t oflag) { } // open a cached directory entry. Assumes vol_ is initialized -bool SdBaseFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { +bool SdBaseFile::openCachedEntry(const uint8_t dirIndex, const uint8_t oflag) { dir_t *p; #if ENABLED(SDCARD_READONLY) @@ -958,7 +961,7 @@ bool SdBaseFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { * See open() by path for definition of flags. * \return true for success or false for failure. */ -bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { +bool SdBaseFile::openNext(SdBaseFile *dirFile, const uint8_t oflag) { if (!dirFile) return false; // error if already open @@ -999,7 +1002,8 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { bool SdBaseFile::isDirLFN(const dir_t* dir) { if (DIR_IS_LONG_NAME(dir)) { vfat_t *VFAT = (vfat_t*)dir; - // Sanity-check the VFAT entry. The first cluster is always set to zero. And the sequence number should be higher than 0 + // Sanity-check the VFAT entry. The first cluster is always set to zero. + // The sequence number should be higher than 0 and lower than maximum allowed by VFAT spec if ((VFAT->firstClusterLow == 0) && WITHIN((VFAT->sequenceNumber & 0x1F), 1, MAX_VFAT_ENTRIES)) return true; } return false; @@ -1012,9 +1016,8 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { * \return true if the dirname is a long file name (LFN) * \return false if the dirname is a short file name 8.3 (SFN) */ - bool SdBaseFile::isDirNameLFN(const char *dirname) { - uint8_t length = strlen(dirname); - uint8_t idx = length; + bool SdBaseFile::isDirNameLFN(const char * const dirname) { + uint8_t length = strlen(dirname), idx = length; bool dotFound = false; if (idx > 12) return true; // LFN due to filename length > 12 ("filename.ext") // Check dot(s) position @@ -1044,7 +1047,7 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { * The SFN is without dot ("FILENAMEEXT") * The LFN is complete ("Filename.ext") */ - bool SdBaseFile::parsePath(const char *path, uint8_t *name, uint8_t *lname, const char **ptrNextPath) { + bool SdBaseFile::parsePath(const char *path, uint8_t * const name, uint8_t * const lname, const char **ptrNextPath) { // Init randomizer for SFN generation randomSeed(millis()); // Parse the LFN @@ -1132,14 +1135,14 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { /** * Get the LFN filename block from a dir. Get the block in lname at startOffset */ - void SdBaseFile::getLFNName(vfat_t *pFatDir, char *lname, uint8_t sequenceNumber) { - uint8_t startOffset = (sequenceNumber - 1) * FILENAME_LENGTH; - LOOP_L_N(i, FILENAME_LENGTH) { + void SdBaseFile::getLFNName(vfat_t *pFatDir, char *lname, const uint8_t sequenceNumber) { + const uint8_t startOffset = (sequenceNumber - 1) * 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 // needs static bytes addressing. So here just store full UTF-16LE words to re-convert later. - uint16_t idx = (startOffset + i) * 2; // This is fixed as FAT LFN always contain UTF-16LE encoding + const uint16_t idx = (startOffset + i) * 2; // This is fixed as FAT LFN always contain UTF-16LE encoding lname[idx] = utf16_ch & 0xFF; lname[idx + 1] = (utf16_ch >> 8) & 0xFF; #else @@ -1152,10 +1155,10 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, uint8_t oflag) { /** * Set the LFN filename block lname to a dir. Put the block based on sequence number */ - void SdBaseFile::setLFNName(vfat_t *pFatDir, char *lname, uint8_t sequenceNumber) { - uint8_t startOffset = (sequenceNumber - 1) * FILENAME_LENGTH; - uint8_t nameLength = strlen(lname); - LOOP_L_N(i, FILENAME_LENGTH) { + void SdBaseFile::setLFNName(vfat_t *pFatDir, char *lname, const uint8_t sequenceNumber) { + const uint8_t startOffset = (sequenceNumber - 1) * FILENAME_LENGTH, + nameLength = strlen(lname); + for (uint8_t i = 0; i < FILENAME_LENGTH; ++i) { uint16_t ch = 0; if ((startOffset + i) < nameLength) ch = lname[startOffset + i]; @@ -1301,7 +1304,7 @@ static void print2u(const uint8_t v) { * \param[in] pr Print stream for output. * \param[in] fatDate The date field from a directory entry. */ -void SdBaseFile::printFatDate(uint16_t fatDate) { +void SdBaseFile::printFatDate(const uint16_t fatDate) { SERIAL_ECHO(FAT_YEAR(fatDate)); SERIAL_CHAR('-'); print2u(FAT_MONTH(fatDate)); @@ -1318,7 +1321,7 @@ void SdBaseFile::printFatDate(uint16_t fatDate) { * \param[in] pr Print stream for output. * \param[in] fatTime The time field from a directory entry. */ -void SdBaseFile::printFatTime(uint16_t fatTime) { +void SdBaseFile::printFatTime(const uint16_t fatTime) { print2u(FAT_HOUR(fatTime)); SERIAL_CHAR(':'); print2u(FAT_MINUTE(fatTime)); @@ -1363,7 +1366,7 @@ int16_t SdBaseFile::read() { * read() called before a file has been opened, corrupt file system * or an I/O error occurred. */ -int16_t SdBaseFile::read(void *buf, uint16_t nbyte) { +int16_t SdBaseFile::read(void * const buf, uint16_t nbyte) { uint8_t *dst = reinterpret_cast(buf); uint16_t offset, toRead; uint32_t block; // raw device block number @@ -1425,7 +1428,7 @@ int16_t SdBaseFile::read(void *buf, uint16_t nbyte) { * readDir() called before a directory has been opened, this is not * a directory file or an I/O error occurred. */ -int8_t SdBaseFile::readDir(dir_t *dir, char *longFilename) { +int8_t SdBaseFile::readDir(dir_t * const dir, char * const longFilename) { int16_t n; // if not a directory file or miss-positioned return an error if (!isDir() || (0x1F & curPosition_)) return -1; @@ -1460,7 +1463,7 @@ int8_t SdBaseFile::readDir(dir_t *dir, char *longFilename) { // Sanity-check the VFAT entry. The first cluster is always set to zero. And the sequence number should be higher than 0 if (VFAT->firstClusterLow == 0) { const uint8_t seq = VFAT->sequenceNumber & 0x1F; - if (WITHIN(seq, 1, MAX_VFAT_ENTRIES)) { + if (WITHIN(seq, 1, VFAT_ENTRIES_LIMIT)) { if (seq == 1) { checksum = VFAT->checksum; checksum_error = 0; @@ -1476,7 +1479,7 @@ int8_t SdBaseFile::readDir(dir_t *dir, char *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 @@ -1507,44 +1510,55 @@ int8_t SdBaseFile::readDir(dir_t *dir, char *longFilename) { // Post-process normal file or subdirectory longname, if any if (DIR_IS_FILE_OR_SUBDIR(dir)) { #if ENABLED(UTF_FILENAME_SUPPORT) - #if LONG_FILENAME_CHARSIZE > 2 - // Add warning for developers for currently not supported 3-byte cases (Conversion series of 2-byte - // codepoints to 3-byte in-place will break the rest of filename) - #error "Currently filename re-encoding is done in-place. It may break the remaining chars to use 3-byte codepoints." - #endif - // Is there a long filename to decode? if (longFilename) { - // Reset n to the start of the long name - n = 0; - for (uint16_t idx = 0; idx < (LONG_FILENAME_LENGTH) / 2; idx += 2) { // idx is fixed since FAT LFN always contains UTF-16LE encoding - const uint16_t utf16_ch = longFilename[idx] | (longFilename[idx + 1] << 8); - if (0xD800 == (utf16_ch & 0xF800)) // Surrogate pair - encode as '_' - longFilename[n++] = '_'; - else if (0 == (utf16_ch & 0xFF80)) // Encode as 1-byte UTF-8 char - longFilename[n++] = utf16_ch & 0x007F; - else if (0 == (utf16_ch & 0xF800)) { // Encode as 2-byte UTF-8 char - longFilename[n++] = 0xC0 | ((utf16_ch >> 6) & 0x1F); - longFilename[n++] = 0x80 | ( utf16_ch & 0x3F); - } - else { - #if LONG_FILENAME_CHARSIZE > 2 // Encode as 3-byte UTF-8 char - longFilename[n++] = 0xE0 | ((utf16_ch >> 12) & 0x0F); - longFilename[n++] = 0xC0 | ((utf16_ch >> 6) & 0x3F); - longFilename[n++] = 0xC0 | ( utf16_ch & 0x3F); - #else // Encode as '_' - longFilename[n++] = '_'; - #endif - } - if (0 == utf16_ch) break; // End of filename - } // idx - } // longFilename + n = convertUtf16ToUtf8(longFilename); + } #endif return n; } // DIR_IS_FILE_OR_SUBDIR } } +#if ENABLED(UTF_FILENAME_SUPPORT) + + uint8_t SdBaseFile::convertUtf16ToUtf8(char * const longFilename) { + #if LONG_FILENAME_CHARSIZE > 2 + // Add warning for developers for unsupported 3-byte cases. + // (Converting 2-byte codepoints to 3-byte in-place would break the rest of filename.) + #error "Currently filename re-encoding is done in-place. It may break the remaining chars to use 3-byte codepoints." + #endif + + int16_t n; + // Reset n to the start of the long name + n = 0; + for (uint16_t idx = 0; idx < (LONG_FILENAME_LENGTH); idx += 2) { // idx is fixed since FAT LFN always contains UTF-16LE encoding + const uint16_t utf16_ch = longFilename[idx] | (longFilename[idx + 1] << 8); + if (0xD800 == (utf16_ch & 0xF800)) // Surrogate pair - encode as '_' + longFilename[n++] = '_'; + else if (0 == (utf16_ch & 0xFF80)) // Encode as 1-byte UTF-8 char + longFilename[n++] = utf16_ch & 0x007F; + else if (0 == (utf16_ch & 0xF800)) { // Encode as 2-byte UTF-8 char + longFilename[n++] = 0xC0 | ((utf16_ch >> 6) & 0x1F); + longFilename[n++] = 0x80 | ( utf16_ch & 0x3F); + } + else { + #if LONG_FILENAME_CHARSIZE > 2 // Encode as 3-byte UTF-8 char + longFilename[n++] = 0xE0 | ((utf16_ch >> 12) & 0x0F); + longFilename[n++] = 0xC0 | ((utf16_ch >> 6) & 0x3F); + longFilename[n++] = 0xC0 | ( utf16_ch & 0x3F); + #else // Encode as '_' + longFilename[n++] = '_'; + #endif + } + if (0 == utf16_ch) break; // End of filename + } // idx + + return n; + } + +#endif // UTF_FILENAME_SUPPORT + // Read next directory entry into the cache // Assumes file is correctly positioned dir_t* SdBaseFile::readDirCache() { @@ -1613,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, MAX_VFAT_ENTRIES) { + for (uint8_t sequenceNumber = 1; sequenceNumber <= VFAT_ENTRIES_LIMIT; ++sequenceNumber) { dirIndex_ = (dirIndex_ - 1) & 0xF; if (dirBlock_ == 0) break; if (dirIndex_ == 0xF) dirBlock_--; @@ -1661,13 +1675,35 @@ bool SdBaseFile::remove() { * \a dirFile is not a directory, \a path is not found * or an I/O error occurred. */ -bool SdBaseFile::remove(SdBaseFile *dirFile, const char *path) { +bool SdBaseFile::remove(SdBaseFile * const dirFile, const char * const path) { if (ENABLED(SDCARD_READONLY)) return false; SdBaseFile file; return file.open(dirFile, path, O_WRITE) ? file.remove() : false; } +bool SdBaseFile::hide(const bool hidden) { + if (ENABLED(SDCARD_READONLY)) return false; + // must be an open file or subdirectory + if (!(isFile() || isSubDir())) return false; + // sync() and cache directory entry + sync(); + dir_t *d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + uint8_t a = d->attributes; + if (hidden) + a |= DIR_ATT_HIDDEN; + else + a &= ~DIR_ATT_HIDDEN; + + if (a != d->attributes) { + d->attributes = a; + return vol_->cacheFlush(); + } + + return true; +} + /** * Rename a file or subdirectory. * @@ -1678,7 +1714,7 @@ bool SdBaseFile::remove(SdBaseFile *dirFile, const char *path) { * Reasons for failure include \a dirFile is not open or is not a directory * file, newPath is invalid or already exists, or an I/O error occurs. */ -bool SdBaseFile::rename(SdBaseFile *dirFile, const char *newPath) { +bool SdBaseFile::rename(SdBaseFile * const dirFile, const char * const newPath) { if (ENABLED(SDCARD_READONLY)) return false; uint32_t dirCluster = 0; @@ -1863,7 +1899,7 @@ bool SdBaseFile::rmRfStar() { * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive * OR of open flags. see SdBaseFile::open(SdBaseFile*, const char*, uint8_t). */ -SdBaseFile::SdBaseFile(const char *path, uint8_t oflag) { +SdBaseFile::SdBaseFile(const char * const path, const uint8_t oflag) { type_ = FAT_FILE_TYPE_CLOSED; writeError = false; open(path, oflag); @@ -1906,7 +1942,7 @@ bool SdBaseFile::seekSet(const uint32_t pos) { return true; } -void SdBaseFile::setpos(filepos_t *pos) { +void SdBaseFile::setpos(filepos_t * const pos) { curPosition_ = pos->position; curCluster_ = pos->cluster; } @@ -1961,7 +1997,7 @@ bool SdBaseFile::sync() { * * \return true for success, false for failure. */ -bool SdBaseFile::timestamp(SdBaseFile *file) { +bool SdBaseFile::timestamp(SdBaseFile * const file) { dir_t dir; // get timestamps @@ -2018,8 +2054,8 @@ bool SdBaseFile::timestamp(SdBaseFile *file) { * * \return true for success, false for failure. */ -bool SdBaseFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, - uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { +bool SdBaseFile::timestamp(const uint8_t flags, const uint16_t year, const uint8_t month, + const uint8_t day, const uint8_t hour, const uint8_t minute, const uint8_t second) { if (ENABLED(SDCARD_READONLY)) return false; uint16_t dirDate, dirTime; @@ -2133,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 @@ -2233,4 +2269,4 @@ int16_t SdBaseFile::write(const void *buf, uint16_t nbyte) { return -1; } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdBaseFile.h b/Marlin/src/sd/SdBaseFile.h index bda44c6bd5..b806a3cd70 100644 --- a/Marlin/src/sd/SdBaseFile.h +++ b/Marlin/src/sd/SdBaseFile.h @@ -89,7 +89,7 @@ uint8_t const FAT_FILE_TYPE_CLOSED = 0, // This file h * * \return Packed date for dir_t entry. */ -static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { return (year - 1980) << 9 | month << 5 | day; } +static inline uint16_t FAT_DATE(const uint16_t year, const uint8_t month, const uint8_t day) { return (year - 1980) << 9 | month << 5 | day; } /** * year part of FAT directory date field @@ -97,7 +97,7 @@ static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { ret * * \return Extracted year [1980,2107] */ -static inline uint16_t FAT_YEAR(uint16_t fatDate) { return 1980 + (fatDate >> 9); } +static inline uint16_t FAT_YEAR(const uint16_t fatDate) { return 1980 + (fatDate >> 9); } /** * month part of FAT directory date field @@ -105,7 +105,7 @@ static inline uint16_t FAT_YEAR(uint16_t fatDate) { return 1980 + (fatDate >> 9) * * \return Extracted month [1,12] */ -static inline uint8_t FAT_MONTH(uint16_t fatDate) { return (fatDate >> 5) & 0xF; } +static inline uint8_t FAT_MONTH(const uint16_t fatDate) { return (fatDate >> 5) & 0xF; } /** * day part of FAT directory date field @@ -113,7 +113,7 @@ static inline uint8_t FAT_MONTH(uint16_t fatDate) { return (fatDate >> 5) & 0xF; * * \return Extracted day [1,31] */ -static inline uint8_t FAT_DAY(uint16_t fatDate) { return fatDate & 0x1F; } +static inline uint8_t FAT_DAY(const uint16_t fatDate) { return fatDate & 0x1F; } /** * time field for FAT directory entry @@ -123,7 +123,7 @@ static inline uint8_t FAT_DAY(uint16_t fatDate) { return fatDate & 0x1F; } * * \return Packed time for dir_t entry. */ -static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { return hour << 11 | minute << 5 | second >> 1; } +static inline uint16_t FAT_TIME(const uint8_t hour, const uint8_t minute, const uint8_t second) { return hour << 11 | minute << 5 | second >> 1; } /** * hour part of FAT directory time field @@ -131,7 +131,7 @@ static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { * * \return Extracted hour [0,23] */ -static inline uint8_t FAT_HOUR(uint16_t fatTime) { return fatTime >> 11; } +static inline uint8_t FAT_HOUR(const uint16_t fatTime) { return fatTime >> 11; } /** * minute part of FAT directory time field @@ -139,7 +139,7 @@ static inline uint8_t FAT_HOUR(uint16_t fatTime) { return fatTime >> 11; } * * \return Extracted minute [0,59] */ -static inline uint8_t FAT_MINUTE(uint16_t fatTime) { return (fatTime >> 5) & 0x3F; } +static inline uint8_t FAT_MINUTE(const uint16_t fatTime) { return (fatTime >> 5) & 0x3F; } /** * second part of FAT directory time field @@ -149,7 +149,7 @@ static inline uint8_t FAT_MINUTE(uint16_t fatTime) { return (fatTime >> 5) & 0x3 * * \return Extracted second [0,58] */ -static inline uint8_t FAT_SECOND(uint16_t fatTime) { return 2 * (fatTime & 0x1F); } +static inline uint8_t FAT_SECOND(const uint16_t fatTime) { return 2 * (fatTime & 0x1F); } // Default date for file timestamps is 1 Jan 2000 uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; @@ -163,7 +163,7 @@ uint16_t const FAT_DEFAULT_TIME = (1 << 11); class SdBaseFile { public: SdBaseFile() : writeError(false), type_(FAT_FILE_TYPE_CLOSED) {} - SdBaseFile(const char *path, uint8_t oflag); + SdBaseFile(const char * const path, const uint8_t oflag); ~SdBaseFile() { if (isOpen()) close(); } /** @@ -179,18 +179,17 @@ class SdBaseFile { * get position for streams * \param[out] pos struct to receive position */ - void getpos(filepos_t *pos); + void getpos(filepos_t * const pos); /** * set position for streams * \param[out] pos struct with value for new position */ - void setpos(filepos_t *pos); + void setpos(filepos_t * const pos); bool close(); - bool contiguousRange(uint32_t *bgnBlock, uint32_t *endBlock); - bool createContiguous(SdBaseFile *dirFile, - const char *path, uint32_t size); + bool contiguousRange(uint32_t * const bgnBlock, uint32_t * const endBlock); + bool createContiguous(SdBaseFile * const dirFile, const char * const path, const uint32_t size); /** * \return The current cluster number for a file or directory. */ @@ -235,7 +234,7 @@ class SdBaseFile { * See the timestamp() function. */ static void dateTimeCallback( - void (*dateTime)(uint16_t *date, uint16_t *time)) { + void (*dateTime)(uint16_t * const date, uint16_t * const time)) { dateTime_ = dateTime; } @@ -246,7 +245,7 @@ class SdBaseFile { bool dirEntry(dir_t *dir); static void dirName(const dir_t& dir, char *name); bool exists(const char *name); - int16_t fgets(char *str, int16_t num, char *delim = 0); + int16_t fgets(char *str, int16_t num, char *delim=0); /** * \return The total number of bytes in a file or directory. @@ -284,32 +283,37 @@ 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 *dir, const char *path, bool pFlag = true); - bool open(SdBaseFile *dirFile, uint16_t index, uint8_t oflag); - bool open(SdBaseFile *dirFile, const char *path, uint8_t oflag); - bool open(const char *path, uint8_t oflag = O_READ); - bool openNext(SdBaseFile *dirFile, uint8_t oflag); - bool openRoot(SdVolume *vol); + bool mkdir(SdBaseFile *parent, const char *path, const bool pFlag=true); + bool open(SdBaseFile * const dirFile, uint16_t index, const uint8_t oflag); + bool open(SdBaseFile * const dirFile, const char *path, const uint8_t oflag); + bool open(const char * const path, const uint8_t oflag=O_READ); + bool openNext(SdBaseFile * const dirFile, const uint8_t oflag); + bool openRoot(SdVolume * const vol); int peek(); - static void printFatDate(uint16_t fatDate); - static void printFatTime(uint16_t fatTime); + static void printFatDate(const uint16_t fatDate); + static void printFatTime(const uint16_t fatTime); bool printName(); int16_t read(); - int16_t read(void *buf, uint16_t nbyte); - int8_t readDir(dir_t *dir, char *longFilename); - static bool remove(SdBaseFile *dirFile, const char *path); + int16_t read(void * const buf, uint16_t nbyte); + int8_t readDir(dir_t * const dir, char * const longFilename); + static bool remove(SdBaseFile * const dirFile, const char * const path); bool remove(); /** * Set the file's current position to zero. */ void rewind() { seekSet(0); } - bool rename(SdBaseFile *dirFile, const char *newPath); + bool rename(SdBaseFile * const dirFile, const char * const newPath); bool rmdir(); bool rmRfStar(); + /** + * Set or clear DIR_ATT_HIDDEN attribute for directory entry + */ + bool hide(const bool hidden); + /** * Set the files position to current position + \a pos. See seekSet(). * \param[in] offset The new position in bytes from the current position. @@ -322,12 +326,12 @@ class SdBaseFile { * \param[in] offset The new position in bytes from end-of-file. * \return true for success or false for failure. */ - bool seekEnd(const int32_t offset = 0) { return seekSet(fileSize_ + offset); } + bool seekEnd(const int32_t offset=0) { return seekSet(fileSize_ + offset); } bool seekSet(const uint32_t pos); bool sync(); - bool timestamp(SdBaseFile *file); - bool timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, - uint8_t hour, uint8_t minute, uint8_t second); + bool timestamp(SdBaseFile * const file); + bool timestamp(const uint8_t flag, const uint16_t year, const uint8_t month, const uint8_t day, + const uint8_t hour, const uint8_t minute, const uint8_t second); /** * Type of file. Use isFile() or isDir() instead of type() if possible. @@ -341,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_ @@ -374,29 +378,31 @@ class SdBaseFile { // private functions bool addCluster(); bool addDirCluster(); - dir_t* cacheDirEntry(uint8_t action); - int8_t lsPrintNext(uint8_t flags, uint8_t indent); - static bool make83Name(const char *str, uint8_t *name, const char **ptr); - bool mkdir(SdBaseFile *parent, const uint8_t dname[11] + dir_t* cacheDirEntry(const uint8_t action); + int8_t lsPrintNext(const uint8_t flags, const uint8_t indent); + static bool make83Name(const char *str, uint8_t * const name, const char **ptr); + bool mkdir(SdBaseFile * const parent, const uint8_t dname[11] OPTARG(LONG_FILENAME_WRITE_SUPPORT, const uint8_t dlname[LONG_FILENAME_LENGTH]) ); bool open(SdBaseFile *dirFile, const uint8_t dname[11] OPTARG(LONG_FILENAME_WRITE_SUPPORT, const uint8_t dlname[LONG_FILENAME_LENGTH]) - , uint8_t oflag + , const uint8_t oflag ); - bool openCachedEntry(uint8_t cacheIndex, uint8_t oflags); + bool openCachedEntry(const uint8_t dirIndex, const uint8_t oflags); dir_t* readDirCache(); + #if ENABLED(UTF_FILENAME_SUPPORT) + uint8_t convertUtf16ToUtf8(char * const longFilename); + #endif + // Long Filename create/write support #if ENABLED(LONG_FILENAME_WRITE_SUPPORT) static bool isDirLFN(const dir_t* dir); - static bool isDirNameLFN(const char *dirname); - static bool parsePath(const char *str, uint8_t *name, uint8_t *lname, const char **ptr); - /** - * Return the number of entries needed in the FAT for this LFN - */ - static inline uint8_t getLFNEntriesNum(const char *lname) { return (strlen(lname) + 12) / 13; } - static void getLFNName(vfat_t *vFatDir, char *lname, uint8_t startOffset); - static void setLFNName(vfat_t *vFatDir, char *lname, uint8_t lfnSequenceNumber); + static bool isDirNameLFN(const char * const dirname); + static bool parsePath(const char *str, uint8_t * const name, uint8_t * const lname, const char **ptr); + // Return the number of entries needed in the FAT for this LFN + static uint8_t getLFNEntriesNum(const char * const lname) { return (strlen(lname) + 12) / 13; } + static void getLFNName(vfat_t *vFatDir, char *lname, const uint8_t sequenceNumber); + static void setLFNName(vfat_t *vFatDir, char *lname, const uint8_t sequenceNumber); #endif }; diff --git a/Marlin/src/sd/SdFatConfig.h b/Marlin/src/sd/SdFatConfig.h index dfba641295..0979a592a3 100644 --- a/Marlin/src/sd/SdFatConfig.h +++ b/Marlin/src/sd/SdFatConfig.h @@ -109,4 +109,4 @@ #define LONG_FILENAME_CHARSIZE TERN(UTF_FILENAME_SUPPORT, 2, 1) // Total bytes needed to store a single long filename -#define LONG_FILENAME_LENGTH (FILENAME_LENGTH * LONG_FILENAME_CHARSIZE * MAX_VFAT_ENTRIES + 1) +#define LONG_FILENAME_LENGTH (FILENAME_LENGTH * LONG_FILENAME_CHARSIZE * VFAT_ENTRIES_LIMIT + 1) diff --git a/Marlin/src/sd/SdFatStructs.h b/Marlin/src/sd/SdFatStructs.h index 03bbc1c194..b3f94b57a0 100644 --- a/Marlin/src/sd/SdFatStructs.h +++ b/Marlin/src/sd/SdFatStructs.h @@ -66,9 +66,9 @@ struct partitionTable { * Sector part of Cylinder-head-sector address of the first block in * the partition. Legal values are 1-63. Only used in old PC BIOS. */ - unsigned beginSector : 6; + uint8_t beginSector : 6; /** High bits cylinder for first block in partition. */ - unsigned beginCylinderHigh : 2; + uint8_t beginCylinderHigh : 2; /** * Combine beginCylinderLow with beginCylinderHigh. Legal values * are 0-1023. Only used in old PC BIOS. @@ -88,9 +88,9 @@ struct partitionTable { * Sector part of cylinder-head-sector address of the last sector in * the partition. Legal values are 1-63. Only used in old PC BIOS. */ - unsigned endSector : 6; + uint8_t endSector : 6; /** High bits of end cylinder */ - unsigned endCylinderHigh : 2; + uint8_t endCylinderHigh : 2; /** * Combine endCylinderLow with endCylinderHigh. Legal values * are 0-1023. Only used in old PC BIOS. diff --git a/Marlin/src/sd/SdFatUtil.cpp b/Marlin/src/sd/SdFatUtil.cpp index e6f7a9a013..a68bd73ebe 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 bce96ef02d..c6a3577e1d 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" @@ -43,7 +43,7 @@ * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive * OR of open flags. see SdBaseFile::open(SdBaseFile*, const char*, uint8_t). */ -SdFile::SdFile(const char *path, uint8_t oflag) : SdBaseFile(path, oflag) { } +SdFile::SdFile(const char * const path, const uint8_t oflag) : SdBaseFile(path, oflag) { } /** * Write data to an open file. @@ -60,25 +60,21 @@ SdFile::SdFile(const char *path, uint8_t oflag) : SdBaseFile(path, oflag) { } * 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 SdFile::write(const void *buf, uint16_t nbyte) { return SdBaseFile::write(buf, nbyte); } +int16_t SdFile::write(const void * const buf, const uint16_t nbyte) { return SdBaseFile::write(buf, nbyte); } /** * Write a byte to a file. Required by the Arduino Print class. * \param[in] b the byte to be written. * Use writeError to check for errors. */ -#if ARDUINO >= 100 - size_t SdFile::write(uint8_t b) { return SdBaseFile::write(&b, 1); } -#else - void SdFile::write(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. * \param[in] str Pointer to the string. * Use writeError to check for errors. */ -void SdFile::write(const char *str) { SdBaseFile::write(str, strlen(str)); } +void SdFile::write(const char * const str) { SdBaseFile::write(str, strlen(str)); } /** * Write a PROGMEM string to a file. @@ -94,9 +90,9 @@ void SdFile::write_P(PGM_P str) { * \param[in] str Pointer to the PROGMEM string. * Use writeError to check for errors. */ -void SdFile::writeln_P(PGM_P str) { +void SdFile::writeln_P(PGM_P const str) { write_P(str); write_P(PSTR("\r\n")); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdFile.h b/Marlin/src/sd/SdFile.h index 1ff05828d2..cdce1ffe12 100644 --- a/Marlin/src/sd/SdFile.h +++ b/Marlin/src/sd/SdFile.h @@ -41,15 +41,12 @@ class SdFile : public SdBaseFile { public: SdFile() {} - SdFile(const char *name, uint8_t oflag); - #if ARDUINO >= 100 - size_t write(uint8_t b); - #else - void write(uint8_t b); - #endif - - int16_t write(const void *buf, uint16_t nbyte); - void write(const char *str); + SdFile(const char * const name, const uint8_t oflag); + 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); - void writeln_P(PGM_P str); + void writeln_P(PGM_P const str); }; + +using MediaFile = SdFile; diff --git a/Marlin/src/sd/SdVolume.cpp b/Marlin/src/sd/SdVolume.cpp index 1b1fdc5a7c..1b8cdbdcae 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" @@ -47,7 +47,7 @@ #endif // find a contiguous group of clusters -bool SdVolume::allocContiguous(uint32_t count, uint32_t *curCluster) { +bool SdVolume::allocContiguous(const uint32_t count, uint32_t * const curCluster) { if (ENABLED(SDCARD_READONLY)) return false; // start of group @@ -138,7 +138,7 @@ bool SdVolume::cacheFlush() { return true; } -bool SdVolume::cacheRawBlock(uint32_t blockNumber, bool dirty) { +bool SdVolume::cacheRawBlock(const uint32_t blockNumber, const bool dirty) { if (cacheBlockNumber_ != blockNumber) { if (!cacheFlush()) return false; if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) return false; @@ -149,7 +149,7 @@ bool SdVolume::cacheRawBlock(uint32_t blockNumber, bool dirty) { } // return the size in bytes of a cluster chain -bool SdVolume::chainSize(uint32_t cluster, uint32_t *size) { +bool SdVolume::chainSize(uint32_t cluster, uint32_t * const size) { uint32_t s = 0; do { if (!fatGet(cluster, &cluster)) return false; @@ -160,7 +160,7 @@ bool SdVolume::chainSize(uint32_t cluster, uint32_t *size) { } // Fetch a FAT entry -bool SdVolume::fatGet(uint32_t cluster, uint32_t *value) { +bool SdVolume::fatGet(const uint32_t cluster, uint32_t * const value) { uint32_t lba; if (cluster > (clusterCount_ + 1)) return false; if (FAT12_SUPPORT && fatType_ == 12) { @@ -195,7 +195,7 @@ bool SdVolume::fatGet(uint32_t cluster, uint32_t *value) { } // Store a FAT entry -bool SdVolume::fatPut(uint32_t cluster, uint32_t value) { +bool SdVolume::fatPut(const uint32_t cluster, const uint32_t value) { if (ENABLED(SDCARD_READONLY)) return false; uint32_t lba; @@ -326,7 +326,7 @@ int32_t SdVolume::freeClusterCount() { * Reasons for failure include not finding a valid partition, not finding a valid * FAT file system in the specified partition or an I/O error. */ -bool SdVolume::init(DiskIODriver* dev, uint8_t part) { +bool SdVolume::init(DiskIODriver * const dev, const uint8_t part) { uint32_t totalBlocks, volumeStartBlock = 0; fat32_boot_t *fbs; @@ -402,4 +402,4 @@ bool SdVolume::init(DiskIODriver* dev, uint8_t part) { return true; } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdVolume.h b/Marlin/src/sd/SdVolume.h index b8e70ca9d7..ccf595a593 100644 --- a/Marlin/src/sd/SdVolume.h +++ b/Marlin/src/sd/SdVolume.h @@ -93,8 +93,8 @@ class SdVolume { * Reasons for failure include not finding a valid partition, not finding * a valid FAT file system or an I/O error. */ - bool init(DiskIODriver *dev) { return init(dev, 1) || init(dev, 0); } - bool init(DiskIODriver *dev, uint8_t part); + bool init(DiskIODriver * const dev) { return init(dev, 1) || init(dev, 0); } + bool init(DiskIODriver * const dev, const uint8_t part); // inline functions that return volume info uint8_t blocksPerCluster() const { return blocksPerCluster_; } //> \return The volume's cluster size in blocks. @@ -127,7 +127,7 @@ class SdVolume { * \param[out] v value of entry * \return true for success or false for failure */ - bool dbgFat(uint32_t n, uint32_t *v) { return fatGet(n, v); } + bool dbgFat(const uint32_t n, uint32_t * const v) { return fatGet(n, v); } private: // Allow SdBaseFile access to SdVolume private data. @@ -164,20 +164,20 @@ class SdVolume { uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 - bool allocContiguous(uint32_t count, uint32_t *curCluster); - uint8_t blockOfCluster(uint32_t position) const { return (position >> 9) & (blocksPerCluster_ - 1); } - uint32_t clusterStartBlock(uint32_t cluster) const { return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_); } - uint32_t blockNumber(uint32_t cluster, uint32_t position) const { return clusterStartBlock(cluster) + blockOfCluster(position); } + bool allocContiguous(const uint32_t count, uint32_t * const curCluster); + uint8_t blockOfCluster(const uint32_t position) const { return (position >> 9) & (blocksPerCluster_ - 1); } + uint32_t clusterStartBlock(const uint32_t cluster) const { return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_); } + uint32_t blockNumber(const uint32_t cluster, const uint32_t position) const { return clusterStartBlock(cluster) + blockOfCluster(position); } cache_t* cache() { return &cacheBuffer_; } uint32_t cacheBlockNumber() const { return cacheBlockNumber_; } #if USE_MULTIPLE_CARDS bool cacheFlush(); - bool cacheRawBlock(uint32_t blockNumber, bool dirty); + bool cacheRawBlock(const uint32_t blockNumber, const bool dirty); #else static bool cacheFlush(); - static bool cacheRawBlock(uint32_t blockNumber, bool dirty); + static bool cacheRawBlock(const uint32_t blockNumber, const bool dirty); #endif // used by SdBaseFile write to assign cache to SD location @@ -186,16 +186,18 @@ class SdVolume { cacheBlockNumber_ = blockNumber; } void cacheSetDirty() { cacheDirty_ |= CACHE_FOR_WRITE; } - bool chainSize(uint32_t beginCluster, uint32_t *size); - bool fatGet(uint32_t cluster, uint32_t *value); - bool fatPut(uint32_t cluster, uint32_t value); - bool fatPutEOC(uint32_t cluster) { return fatPut(cluster, 0x0FFFFFFF); } + bool chainSize(uint32_t cluster, uint32_t * const size); + bool fatGet(const uint32_t cluster, uint32_t * const value); + bool fatPut(const uint32_t cluster, const uint32_t value); + bool fatPutEOC(const uint32_t cluster) { return fatPut(cluster, 0x0FFFFFFF); } bool freeChain(uint32_t cluster); - bool isEOC(uint32_t cluster) const { - if (FAT12_SUPPORT && fatType_ == 12) return cluster >= FAT12EOC_MIN; + bool isEOC(const uint32_t cluster) const { + if (FAT12_SUPPORT && fatType_ == 12) return cluster >= FAT12EOC_MIN; if (fatType_ == 16) return cluster >= FAT16EOC_MIN; - return cluster >= FAT32EOC_MIN; + return cluster >= FAT32EOC_MIN; } - bool readBlock(uint32_t block, uint8_t *dst) { return sdCard_->readBlock(block, dst); } - bool writeBlock(uint32_t block, const uint8_t *dst) { return sdCard_->writeBlock(block, dst); } + bool readBlock(const uint32_t block, uint8_t * const dst) { return sdCard_->readBlock(block, dst); } + bool writeBlock(const uint32_t block, const uint8_t * const dst) { return sdCard_->writeBlock(block, dst); } }; + +using MarlinVolume = SdVolume; diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 7d47897fe5..f2cce42658 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 @@ -60,7 +60,11 @@ #include "../feature/pause.h" #endif -#define DEBUG_OUT EITHER(DEBUG_CARDREADER, MARLIN_DEV_MODE) +#if ENABLED(ONE_CLICK_PRINT) + #include "../../src/lcd/menu/menu.h" +#endif + +#define DEBUG_OUT ANY(DEBUG_CARDREADER, MARLIN_DEV_MODE) #include "../core/debug_out.h" #include "../libs/hex_print.h" @@ -83,12 +87,13 @@ IF_DISABLED(NO_SD_AUTOSTART, uint8_t CardReader::autofile_index); // = 0 // private: -SdFile CardReader::root, CardReader::workDir, CardReader::workDirParents[MAX_DIR_DEPTH]; +MediaFile CardReader::root, CardReader::workDir, CardReader::workDirParents[MAX_DIR_DEPTH]; uint8_t CardReader::workDirDepth; +int16_t CardReader::nrItems = -1; #if ENABLED(SDCARD_SORT_ALPHA) - uint16_t CardReader::sort_count; + int16_t CardReader::sort_count; #if ENABLED(SDSORT_GCODE) bool CardReader::sort_alpha; int CardReader::sort_folders; @@ -104,7 +109,6 @@ uint8_t CardReader::workDirDepth; #if ENABLED(SDSORT_USES_RAM) #if ENABLED(SDSORT_CACHE_NAMES) - uint16_t CardReader::nrFiles; // Cached total file count #if ENABLED(SDSORT_DYNAMIC_RAM) char **CardReader::sortshort, **CardReader::sortnames; #else @@ -137,8 +141,8 @@ uint8_t CardReader::workDirDepth; #endif DiskIODriver* CardReader::driver = nullptr; -SdVolume CardReader::volume; -SdFile CardReader::file; +MarlinVolume CardReader::volume; +MediaFile CardReader::file; #if HAS_MEDIA_SUBCALLS uint8_t CardReader::file_subcall_ctr; @@ -176,7 +180,7 @@ CardReader::CardReader() { workDirDepth = 0; ZERO(workDirParents); - #if BOTH(SDSUPPORT, HAS_SD_DETECT) + #if ALL(HAS_MEDIA, HAS_SD_DETECT) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif @@ -190,7 +194,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]; @@ -232,25 +236,20 @@ bool CardReader::is_visible_entity(const dir_t &p OPTARG(CUSTOM_FIRMWARE_UPLOAD, // // Get the number of (compliant) items in the folder // -int CardReader::countItems(SdFile dir) { +int16_t CardReader::countVisibleItems(MediaFile dir) { dir_t p; - int c = 0; - while (dir.readDir(&p, longFilename) > 0) - c += is_visible_entity(p); - - #if ALL(SDCARD_SORT_ALPHA, SDSORT_USES_RAM, SDSORT_CACHE_NAMES) - nrFiles = c; - #endif - + int16_t c = 0; + dir.rewind(); + while (dir.readDir(&p, longFilename) > 0) c += is_visible_entity(p); return c; } // // Get file/folder info for an item by index // -void CardReader::selectByIndex(SdFile dir, const uint8_t index) { +void CardReader::selectByIndex(MediaFile dir, const int16_t index) { dir_t p; - for (uint8_t cnt = 0; dir.readDir(&p, longFilename) > 0;) { + for (int16_t cnt = 0; dir.readDir(&p, longFilename) > 0;) { if (is_visible_entity(p)) { if (cnt == index) { createFilename(filename, p); @@ -264,7 +263,7 @@ void CardReader::selectByIndex(SdFile dir, const uint8_t index) { // // Get file/folder info for an item by name // -void CardReader::selectByName(SdFile dir, const char * const match) { +void CardReader::selectByName(MediaFile dir, const char * const match) { dir_t p; for (uint8_t cnt = 0; dir.readDir(&p, longFilename) > 0; cnt++) { if (is_visible_entity(p)) { @@ -284,7 +283,7 @@ void CardReader::selectByName(SdFile dir, const char * const match) { * this can blow up the stack, so a 'depth' parameter would be a * good addition. */ -void CardReader::printListing(SdFile parent, const char * const prepend, const uint8_t lsflags +void CardReader::printListing(MediaFile parent, const char * const prepend, const uint8_t lsflags OPTARG(LONG_FILENAME_HOST_SUPPORT, const char * const prependLong/*=nullptr*/) ) { const bool includeTime = TERN0(M20_TIMESTAMP_SUPPORT, TEST(lsflags, LS_TIMESTAMP)); @@ -299,7 +298,7 @@ void CardReader::printListing(SdFile parent, const char * const prepend, const 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] = '/'; } @@ -308,7 +307,7 @@ void CardReader::printListing(SdFile parent, const char * const prepend, const // Get a new directory object using the full path // and dive recursively into it. - SdFile child; // child.close() in destructor + MediaFile child; // child.close() in destructor if (child.open(&parent, dosFilename, O_READ)) { #if ENABLED(LONG_FILENAME_HOST_SUPPORT) if (includeLong) { @@ -358,7 +357,7 @@ void CardReader::printListing(SdFile parent, const char * const prepend, const // // 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); @@ -379,7 +378,7 @@ void CardReader::ls(const uint8_t lsflags) { // Zero out slashes to make segments for (i = 0; i < pathLen; i++) if (path[i] == '/') path[i] = '\0'; - SdFile diveDir = root; // start from the root for segment 1 + MediaFile diveDir = root; // start from the root for segment 1 for (i = 0; i < pathLen;) { if (path[i] == '\0') i++; // move past a single nul @@ -408,7 +407,7 @@ void CardReader::ls(const uint8_t lsflags) { // SERIAL_ECHOPGM("Opening dir: "); SERIAL_ECHOLN(segment); // Open the sub-item as the new dive parent - SdFile dir; + MediaFile dir; if (!dir.open(&diveDir, segment, O_READ)) { SERIAL_EOL(); SERIAL_ECHO_START(); @@ -424,6 +423,40 @@ void CardReader::ls(const uint8_t lsflags) { SERIAL_EOL(); } + void CardReader::getLongPath(char * const pathLong, char * const pathShort) { + + int i, pathLen = strlen(pathShort); + char bufShort[FILENAME_LENGTH] = { '\0' }; + strcpy_P(bufShort, pathShort); + + // Zero out slashes to make segments + for (i = 0; i < pathLen; i++) if (bufShort[i] == '/') bufShort[i] = '\0'; + + SdFile diveDir = root; // start from the root for segment 1 + for (i = 0; i < pathLen;) { + + if (bufShort[i] == '\0') i++; // move past a single nul + + char *segment = &bufShort[i]; // The segment after most slashes + + // If a segment is empty (extra-slash) then exit + if (!*segment) break; + + //SERIAL_ECHOLNPGM("Looking for segment: ", segment); + + // Find the item, setting the long filename + diveDir.rewind(); + selectByName(diveDir, segment); + diveDir.close(); + + if (longFilename[0]) { + strncpy_P(pathLong, longFilename, 63); + pathLong[63] = '\0'; + break; + } + } + } + #endif // LONG_FILENAME_HOST_SUPPORT // @@ -450,6 +483,7 @@ void CardReader::printSelectedFilename() { void CardReader::mount() { flag.mounted = false; + nrItems = -1; if (root.isOpen()) root.close(); if (!driver->init(SD_SPI_SPEED, SDSS) @@ -470,7 +504,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 } @@ -520,20 +554,28 @@ void CardReader::manage_media() { if (!stat) return; // Exit if no media is present - if (old_stat != 2) return; // First mount? - - DEBUG_ECHOLNPGM("First mount."); - - // 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. - TERN_(POWER_LOSS_RECOVERY, if (recovery.check()) do_auto = false); + // First mount on boot? Load emulated EEPROM and look for PLR file. + if (old_stat == 2) { + DEBUG_ECHOLNPGM("First mount."); - // Look for auto0.g on the next idle() - IF_DISABLED(NO_SD_AUTOSTART, if (do_auto) autofile_begin()); + // Load settings the first time media is inserted (not just during init) + TERN_(SDCARD_EEPROM_EMULATION, settings.first_load()); + + // Check for PLR file. Skip One-Click and auto#.g if found + 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); + + // 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()); + } } /** @@ -549,9 +591,7 @@ void CardReader::release() { flag.mounted = false; flag.workDirIsRoot = true; - #if ALL(SDCARD_SORT_ALPHA, SDSORT_USES_RAM, SDSORT_CACHE_NAMES) - nrFiles = 0; - #endif + nrItems = -1; SERIAL_ECHO_MSG(STR_SD_CARD_RELEASED); } @@ -586,7 +626,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()); @@ -609,13 +649,13 @@ void CardReader::getAbsFilenameInCWD(char *dst) { *dst++ = '/'; uint8_t cnt = 1; - auto appendAtom = [&](SdFile &file) { + auto appendAtom = [&](MediaFile &file) { file.getDosName(dst); while (*dst && cnt < MAXPATHNAMELENGTH) { dst++; cnt++; } 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 @@ -633,9 +673,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); } } @@ -688,7 +726,7 @@ void CardReader::openFileRead(const char * const path, const uint8_t subcall_typ abortFilePrintNow(); - SdFile *diveDir; + MediaFile *diveDir; const char * const fname = diveToFile(true, diveDir, path); if (!fname) return openFailed(path); @@ -724,7 +762,7 @@ void CardReader::openFileWrite(const char * const path) { abortFilePrintNow(); - SdFile *diveDir; + MediaFile *diveDir; const char * const fname = diveToFile(false, diveDir, path); if (!fname) return openFailed(path); @@ -752,7 +790,7 @@ bool CardReader::fileExists(const char * const path) { DEBUG_ECHOLNPGM("fileExists: ", path); // Dive to the file's directory and get the base name - SdFile *diveDir = nullptr; + MediaFile *diveDir = nullptr; const char * const fname = diveToFile(false, diveDir, path); if (!fname) return false; @@ -762,7 +800,7 @@ bool CardReader::fileExists(const char * const path) { //diveDir->close(); // Try to open the file and return the result - SdFile tmpFile; + MediaFile tmpFile; const bool success = tmpFile.open(diveDir, fname, O_READ); if (success) tmpFile.close(); return success; @@ -776,7 +814,7 @@ void CardReader::removeFile(const char * const name) { //abortFilePrintNow(); - SdFile *itsDirPtr; + MediaFile *itsDirPtr; const char * const fname = diveToFile(false, itsDirPtr, name); if (!fname) return; @@ -864,6 +902,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(); @@ -880,7 +993,7 @@ void CardReader::closefile(const bool store_location/*=false*/) { // // Get info for a file in the working directory by index // -void CardReader::selectFileByIndex(const uint16_t nr) { +void CardReader::selectFileByIndex(const int16_t nr) { #if ENABLED(SDSORT_CACHE_NAMES) if (nr < sort_count) { strcpy(filename, sortshort[nr]); @@ -899,7 +1012,7 @@ void CardReader::selectFileByIndex(const uint16_t nr) { // void CardReader::selectFileByName(const char * const match) { #if ENABLED(SDSORT_CACHE_NAMES) - for (uint16_t nr = 0; nr < sort_count; nr++) + for (int16_t nr = 0; nr < sort_count; nr++) if (strcasecmp(match, sortshort[nr]) == 0) { strcpy(filename, sortshort[nr]); strcpy(longFilename, sortnames[nr]); @@ -912,11 +1025,6 @@ void CardReader::selectFileByName(const char * const match) { selectByName(workDir, match); } -uint16_t CardReader::countFilesInWorkDir() { - workDir.rewind(); - return countItems(workDir); -} - /** * Dive to the given DOS 8.3 file path, with optional echo of the dive paths. * @@ -924,23 +1032,23 @@ uint16_t CardReader::countFilesInWorkDir() { * - The workDir points to the last-set navigation target by cd, cdup, cdroot, or diveToFile(true, ...) * * On exit: - * - Your curDir pointer contains an SdFile reference to the file's directory. + * - Your curDir pointer contains an MediaFile reference to the file's directory. * - If update_cwd was 'true' the workDir now points to the file's directory. * * Returns a pointer to the last segment (filename) of the given DOS 8.3 path. - * On exit, inDirPtr contains an SdFile reference to the file's directory. + * On exit, inDirPtr contains an MediaFile reference to the file's directory. * * A nullptr result indicates an unrecoverable error. * * NOTE: End the path with a slash to dive to a folder. In this case the * returned filename will be blank (points to the end of the path). */ -const char* CardReader::diveToFile(const bool update_cwd, SdFile* &inDirPtr, const char * const path, const bool echo/*=false*/) { +const char* CardReader::diveToFile(const bool update_cwd, MediaFile* &inDirPtr, const char * const path, const bool echo/*=false*/) { DEBUG_SECTION(est, "diveToFile", true); // Track both parent and subfolder - static SdFile newDir1, newDir2; - SdFile *sub = &newDir1, *startDirPtr; + static MediaFile newDir1, newDir2; + MediaFile *sub = &newDir1, *startDirPtr; // Parsing the path string const char *atom_ptr = path; @@ -1022,13 +1130,14 @@ const char* CardReader::diveToFile(const bool update_cwd, SdFile* &inDirPtr, con } void CardReader::cd(const char * relpath) { - SdFile newDir, *parent = &getWorkDir(); + MediaFile newDir, *parent = &getWorkDir(); if (newDir.open(parent, relpath, O_READ)) { workDir = newDir; flag.workDirIsRoot = false; if (workDirDepth < MAX_DIR_DEPTH) workDirParents[workDirDepth++] = workDir; + nrItems = -1; TERN_(SDCARD_SORT_ALPHA, presort()); } else @@ -1037,6 +1146,7 @@ void CardReader::cd(const char * relpath) { int8_t CardReader::cdup() { if (workDirDepth > 0) { // At least 1 dir has been saved + nrItems = -1; workDir = --workDirDepth ? workDirParents[workDirDepth - 1] : root; // Use parent, or root if none TERN_(SDCARD_SORT_ALPHA, presort()); } @@ -1048,6 +1158,7 @@ void CardReader::cdroot() { workDir = root; flag.workDirIsRoot = true; workDirDepth = 0; + nrItems = -1; TERN_(SDCARD_SORT_ALPHA, presort()); } @@ -1056,9 +1167,8 @@ void CardReader::cdroot() { /** * Get the name of a file in the working directory by sort-index */ - void CardReader::getfilename_sorted(const uint16_t nr) { - selectFileByIndex(TERN1(SDSORT_GCODE, sort_alpha) && (nr < sort_count) - ? sort_order[nr] : nr); + void CardReader::selectFileByIndexSorted(const int16_t nr) { + selectFileByIndex(TERN1(SDSORT_GCODE, sort_alpha) && (nr < sort_count) ? sort_order[nr] : nr); } #if ENABLED(SDSORT_USES_RAM) @@ -1099,20 +1209,20 @@ void CardReader::cdroot() { * - Most RAM: Buffer the directory and return filenames from RAM */ void CardReader::presort() { - // Throw away old sort index flush_presort(); + int16_t fileCnt = get_num_items(); + // Sorting may be turned off if (TERN0(SDSORT_GCODE, !sort_alpha)) return; // If there are files, sort up to the limit - uint16_t fileCnt = countFilesInWorkDir(); if (fileCnt > 0) { // Never sort more than the max allowed // If you use folders to organize, 20 may be enough - NOMORE(fileCnt, uint16_t(SDSORT_LIMIT)); + NOMORE(fileCnt, int16_t(SDSORT_LIMIT)); // Sort order is always needed. May be static or dynamic. TERN_(SDSORT_DYNAMIC_RAM, sort_order = new uint8_t[fileCnt]); @@ -1152,7 +1262,7 @@ void CardReader::cdroot() { if (fileCnt > 1) { // Init sort order. - for (uint16_t i = 0; i < fileCnt; i++) { + for (int16_t i = 0; i < fileCnt; i++) { sort_order[i] = i; // If using RAM then read all filenames now. #if ENABLED(SDSORT_USES_RAM) @@ -1171,9 +1281,9 @@ void CardReader::cdroot() { } // Bubble Sort - for (uint16_t i = fileCnt; --i;) { + for (int16_t i = fileCnt; --i;) { bool didSwap = false; - uint8_t o1 = sort_order[0]; + int16_t o1 = sort_order[0]; #if DISABLED(SDSORT_USES_RAM) selectFileByIndex(o1); // Pre-fetch the first entry and save it strcpy(name1, longest_filename()); // so the loop only needs one fetch @@ -1182,8 +1292,8 @@ void CardReader::cdroot() { #endif #endif - for (uint16_t j = 0; j < i; ++j) { - const uint16_t o2 = sort_order[j + 1]; + for (int16_t j = 0; j < i; ++j) { + const int16_t o2 = sort_order[j + 1]; // Compare names from the array or just the two buffered names #if ENABLED(SDSORT_USES_RAM) @@ -1241,14 +1351,14 @@ void CardReader::cdroot() { // Using RAM but not keeping names around #if ENABLED(SDSORT_USES_RAM) && DISABLED(SDSORT_CACHE_NAMES) #if ENABLED(SDSORT_DYNAMIC_RAM) - for (uint16_t i = 0; i < fileCnt; ++i) free(sortnames[i]); + for (int16_t i = 0; i < fileCnt; ++i) free(sortnames[i]); TERN_(HAS_FOLDER_SORTING, delete [] isDir); #endif #endif } 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]; @@ -1270,7 +1380,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 } @@ -1284,15 +1394,10 @@ void CardReader::cdroot() { #endif // SDCARD_SORT_ALPHA -uint16_t CardReader::get_num_Files() { +int16_t CardReader::get_num_items() { if (!isMounted()) return 0; - return ( - #if ALL(SDCARD_SORT_ALPHA, SDSORT_USES_RAM, SDSORT_CACHE_NAMES) - nrFiles // no need to access the SD card for filenames - #else - countFilesInWorkDir() - #endif - ); + if (nrItems < 0) nrItems = countVisibleItems(workDir); + return nrItems; } // @@ -1345,12 +1450,11 @@ 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 } } #endif // POWER_LOSS_RECOVERY -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index 6fe75f760e..80e317ebcf 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[]; @@ -36,12 +36,6 @@ extern const char M23_STR[], M24_STR[]; #endif #endif -#if ENABLED(SDCARD_RATHERRECENTFIRST) && DISABLED(SDCARD_SORT_ALPHA) - #define SD_ORDER(N,C) ((C) - 1 - (N)) -#else - #define SD_ORDER(N,C) N -#endif - #define MAX_DIR_DEPTH 10 // Maximum folder depth #define MAXDIRNAMELENGTH 8 // DOS folder name size #define MAXPATHNAMELENGTH (1 + (MAXDIRNAMELENGTH + 1) * (MAX_DIR_DEPTH) + 1 + FILENAME_LENGTH) // "/" + N * ("ADIRNAME/") + "filename.ext" @@ -110,13 +104,11 @@ public: #endif #endif - // // // Methods // // // - CardReader(); static void changeMedia(DiskIODriver *_driver) { driver = _driver; } - static SdFile getroot() { return root; } + static MediaFile getroot() { return root; } static void mount(); static void release(); @@ -136,6 +128,12 @@ public: 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); @@ -146,17 +144,17 @@ public: static char* longest_filename() { return longFilename[0] ? longFilename : filename; } #if ENABLED(LONG_FILENAME_HOST_SUPPORT) static void printLongPath(char * const path); // Used by M33 + static void getLongPath(char * const pathLong, char * const pathShort); // Used by anycubic_vyper #endif // Working Directory for SD card menu static void cdroot(); static void cd(const char *relpath); static int8_t cdup(); - static uint16_t countFilesInWorkDir(); - static uint16_t get_num_Files(); + static int16_t get_num_items(); // Select a file - static void selectFileByIndex(const uint16_t nr); + static void selectFileByIndex(const int16_t nr); static void selectFileByName(const char * const match); // (working directory only) // Print job @@ -190,26 +188,28 @@ public: * Relative paths apply to the workDir. * * update_cwd: Pass 'true' to update the workDir on success. - * inDirPtr: On exit your pointer points to the target SdFile. + * inDirPtr: On exit your pointer points to the target MediaFile. * A nullptr indicates failure. * path: Start with '/' for abs path. End with '/' to get a folder ref. * echo: Set 'true' to print the path throughout the loop. */ - static const char* diveToFile(const bool update_cwd, SdFile* &inDirPtr, const char * const path, const bool echo=false); + static const char* diveToFile(const bool update_cwd, MediaFile* &inDirPtr, const char * const path, const bool echo=false); #if ENABLED(SDCARD_SORT_ALPHA) static void presort(); - static void getfilename_sorted(const uint16_t nr); + static void selectFileByIndexSorted(const int16_t nr); #if ENABLED(SDSORT_GCODE) FORCE_INLINE static void setSortOn(bool b) { sort_alpha = b; presort(); } FORCE_INLINE static void setSortFolders(int i) { sort_folders = i; presort(); } //FORCE_INLINE static void setSortReverse(bool b) { sort_reverse = b; } #endif #else - FORCE_INLINE static void getfilename_sorted(const uint16_t nr) { selectFileByIndex(nr); } + FORCE_INLINE static void selectFileByIndexSorted(const int16_t nr) { + selectFileByIndex(TERN(SDCARD_RATHERRECENTFIRST, get_num_items() - 1 - nr, (nr))); + } #endif - static void ls(const uint8_t lsflags); + static void ls(const uint8_t lsflags=0); #if ENABLED(POWER_LOSS_RECOVERY) static bool jobRecoverFileExists(); @@ -223,7 +223,7 @@ public: // Current Working Dir - Set by cd, cdup, cdroot, and diveToFile(true, ...) static char* getWorkDirName() { workDir.getDosName(filename); return filename; } - static SdFile& getWorkDir() { return workDir.isOpen() ? workDir : root; } + static MediaFile& getWorkDir() { return workDir.isOpen() ? workDir : root; } // Print File stats static uint32_t getFileSize() { return filesize; } @@ -262,14 +262,15 @@ private: // // Working directory and parents // - static SdFile root, workDir, workDirParents[MAX_DIR_DEPTH]; + static MediaFile root, workDir, workDirParents[MAX_DIR_DEPTH]; static uint8_t workDirDepth; + static int16_t nrItems; // Cache the total count // // Alphabetical file and folder sorting // #if ENABLED(SDCARD_SORT_ALPHA) - static uint16_t sort_count; // Count of sorted items in the current directory + static int16_t sort_count; // Count of sorted items in the current directory #if ENABLED(SDSORT_GCODE) static bool sort_alpha; // Flag to enable / disable the feature static int sort_folders; // Folder sorting before/none/after @@ -283,7 +284,7 @@ private: 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 @@ -296,7 +297,6 @@ private: // If using dynamic ram for names, allocate on the heap. #if ENABLED(SDSORT_CACHE_NAMES) - static uint16_t nrFiles; // Cache the total count #if ENABLED(SDSORT_DYNAMIC_RAM) static char **sortshort, **sortnames; #else @@ -322,8 +322,8 @@ private: #endif // SDCARD_SORT_ALPHA static DiskIODriver *driver; - static SdVolume volume; - static SdFile file; + static MarlinVolume volume; + static MediaFile file; static uint32_t filesize, // Total size of the current file, in bytes sdpos; // Index most recently read (one behind file.getPos) @@ -341,10 +341,11 @@ private: // Directory items // static bool is_visible_entity(const dir_t &p OPTARG(CUSTOM_FIRMWARE_UPLOAD, const bool onlyBin=false)); - static int countItems(SdFile dir); - static void selectByIndex(SdFile dir, const uint8_t index); - static void selectByName(SdFile dir, const char * const match); - static void printListing(SdFile parent, const char * const prepend, const uint8_t lsflags + static int16_t countVisibleItems(MediaFile dir); + static void selectByIndex(MediaFile dir, const int16_t index); + static void selectByName(MediaFile dir, const char * const match); + static void printListing( + MediaFile parent, const char * const prepend, const uint8_t lsflags OPTARG(LONG_FILENAME_HOST_SUPPORT, const char * const prependLong=nullptr) ); @@ -369,7 +370,7 @@ private: extern CardReader card; -#else // !SDSUPPORT +#else // !HAS_MEDIA #define IS_SD_PRINTING() false #define IS_SD_FETCHING() false @@ -378,4 +379,4 @@ extern CardReader card; #define LONG_FILENAME_LENGTH 0 -#endif // !SDSUPPORT +#endif // !HAS_MEDIA diff --git a/Marlin/src/sd/disk_io_driver.h b/Marlin/src/sd/disk_io_driver.h index 02e2b3c739..f1f49cf85f 100644 --- a/Marlin/src/sd/disk_io_driver.h +++ b/Marlin/src/sd/disk_io_driver.h @@ -22,6 +22,7 @@ #pragma once #include +#include "SdInfo.h" /** * DiskIO Interface @@ -46,18 +47,18 @@ public: * * \return true for success or false for failure. */ - virtual bool readCSD(csd_t* csd) = 0; + virtual bool readCSD(csd_t * const csd) = 0; virtual bool readStart(const uint32_t block) = 0; - virtual bool readData(uint8_t* dst) = 0; + virtual bool readData(uint8_t * const dst) = 0; virtual bool readStop() = 0; virtual bool writeStart(const uint32_t block, const uint32_t) = 0; virtual bool writeData(const uint8_t* src) = 0; virtual bool writeStop() = 0; - virtual bool readBlock(uint32_t block, uint8_t* dst) = 0; - virtual bool writeBlock(uint32_t blockNumber, const uint8_t* src) = 0; + virtual bool readBlock(const uint32_t block, uint8_t * const dst) = 0; + virtual bool writeBlock(const uint32_t blockNumber, const uint8_t * const src) = 0; virtual uint32_t cardSize() = 0; diff --git a/Marlin/src/sd/storage.h b/Marlin/src/sd/storage.h new file mode 100644 index 0000000000..3510e04bbe --- /dev/null +++ b/Marlin/src/sd/storage.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 + +/** + * Marlin Storage Architecture: + * + * DiskIODriver: + * Do all low level IO with the underline hardware or block device: SPI, SDIO, OTG + * + * FilesystemDriver: + * Handle the filesystem format / implementation. Uses the io driver to read and write data. + * Sd2Card is the very first and current filesystem implementation on Marlin, supporting FAT. + * FatFS - Work in progress. + * + * + * Marlin Abstractions: + * + * Using this names allow us to isolate filesystem driver code, keeping all Marlin code agnostic. + * + * MediaFilesystem: + * Abstraction of systemwide filesystem operation. + * + * MarlinVolume: + * Abstraction of a filesystem volume. + * + * MediaFile: + * Abstraction of a generic file. Using this name allow us to isolate filesystem driver code, + * keeping all Marlin code agnostic. + * + * PrintFromStorage: + * Class to handle printing from any attached storage. + * + */ + +/* + +Interface definition. Doesn't need to be compiled, as we use duck typing, +allowing drivers to just use type alias. + +Class MarlinVolume { +public: +}; + +Class MediaFile { +public: +}; + +Class MediaFilesystem { +public: + static void init(); + static MarlinVolume* openVolume(const char *); +}; + +*/ diff --git a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp index b5968b7021..76d69c789e 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/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h index 3390bc51be..f722c873ae 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/Marlin/src/tests/marlin_tests.cpp b/Marlin/src/tests/marlin_tests.cpp index 89e5664345..f61f840176 100644 --- a/Marlin/src/tests/marlin_tests.cpp +++ b/Marlin/src/tests/marlin_tests.cpp @@ -37,6 +37,41 @@ // 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 += uint8_t(123); + str += F("456"); + str += repchr_t('-', 6); + str += Spaces(3); + str += "< spaces!"; + str += int8_t(33); + 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() diff --git a/binaries/D3P_220X_DW7.4.8.hex.zip b/binaries/D3P_220X_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bcd18fb0c2 Binary files /dev/null and b/binaries/D3P_220X_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5f8db96aed Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3657e34cb8 Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..018c91b5cf Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9da94e97ef Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9b57f91c68 Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f3dbb33742 Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..51202a34dc Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..4fd4fc784c Binary files /dev/null and b/binaries/D3P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..20f2d15188 Binary files /dev/null and b/binaries/D3P_220X_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..293d29e991 Binary files /dev/null and b/binaries/D3P_220X_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3bf938e7e0 Binary files /dev/null and b/binaries/D3P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3b63c18dea Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f30e6e58dc Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f5b1cb4f46 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9114200894 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..356930fb49 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..35a4d8aa45 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..2c621cfbe1 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..c1afa45385 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..952135b45b Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..e70f40fb67 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5df47dcf45 Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..919a11927e Binary files /dev/null and b/binaries/D3P_220X_DualGear_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3daa382adb Binary files /dev/null and b/binaries/D3P_220X_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..565d12dd93 Binary files /dev/null and b/binaries/D3P_220X_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..ed1f3f912e Binary files /dev/null and b/binaries/D3P_220X_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..100df613f5 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..ad95aa99d9 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..50bff050e8 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..558cbd1840 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_DW7.4.8.hex.zip new file mode 100644 index 0000000000..17473b245b Binary files /dev/null and b/binaries/D3P_220X_OpticalY_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_DualGear_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..d6eae1ddd3 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..082323c9a2 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..36a034da75 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..a45d38949f Binary files /dev/null and b/binaries/D3P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_LowRes_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3ec85121ec Binary files /dev/null and b/binaries/D3P_220X_OpticalY_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..84e91316d8 Binary files /dev/null and b/binaries/D3P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_OpticalY_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_OpticalY_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9f78a0734c Binary files /dev/null and b/binaries/D3P_220X_OpticalY_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_220X_Vul_DW7.4.8.hex.zip b/binaries/D3P_220X_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bf7fda57ec Binary files /dev/null and b/binaries/D3P_220X_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_BLTouch_DW7.4.8.hex.zip b/binaries/D3P_A4988_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..d7420d4f6a Binary files /dev/null and b/binaries/D3P_A4988_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D3P_A4988_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7196ba7675 Binary files /dev/null and b/binaries/D3P_A4988_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..27d13b26a7 Binary files /dev/null and b/binaries/D3P_A4988_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..e2aed124ef Binary files /dev/null and b/binaries/D3P_A4988_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DW7.4.8.hex.zip b/binaries/D3P_A4988_DW7.4.8.hex.zip new file mode 100644 index 0000000000..b29c7e2f5b Binary files /dev/null and b/binaries/D3P_A4988_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_BLTouch_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..4e3af7ba2d Binary files /dev/null and b/binaries/D3P_A4988_DualGear_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5666d89bf5 Binary files /dev/null and b/binaries/D3P_A4988_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7acb8a9934 Binary files /dev/null and b/binaries/D3P_A4988_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..ba8d8e90ce Binary files /dev/null and b/binaries/D3P_A4988_DualGear_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..d3d4dd5229 Binary files /dev/null and b/binaries/D3P_A4988_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..b5ba64c914 Binary files /dev/null and b/binaries/D3P_A4988_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bd66dd5b1c Binary files /dev/null and b/binaries/D3P_A4988_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5c4c0ad630 Binary files /dev/null and b/binaries/D3P_A4988_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_LowRes_DW7.4.8.hex.zip b/binaries/D3P_A4988_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bec93f836d Binary files /dev/null and b/binaries/D3P_A4988_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..83c7ac295d Binary files /dev/null and b/binaries/D3P_A4988_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3P_A4988_Vul_DW7.4.8.hex.zip b/binaries/D3P_A4988_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..af6973d8ce Binary files /dev/null and b/binaries/D3P_A4988_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3S_220X_DualGear_DW7.4.8.hex.zip b/binaries/D3S_220X_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3314bdbc2b Binary files /dev/null and b/binaries/D3S_220X_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D3S_220X_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D3S_220X_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..454f7ea610 Binary files /dev/null and b/binaries/D3S_220X_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D3S_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D3S_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9ac248adc1 Binary files /dev/null and b/binaries/D3S_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D3S_220X_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D3S_220X_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..2eaecf0314 Binary files /dev/null and b/binaries/D3S_220X_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DW7.4.8.hex.zip b/binaries/D5P_220X_DW7.4.8.hex.zip new file mode 100644 index 0000000000..12acd61560 Binary files /dev/null and b/binaries/D5P_220X_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3f75880da5 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bc486c1e68 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..efa6bef3a5 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..0047c9fca8 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..0c497d948b Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..10d5f154c4 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..6f01da02b3 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..6a7bd264e1 Binary files /dev/null and b/binaries/D5P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..2764e6a881 Binary files /dev/null and b/binaries/D5P_220X_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f7e09b66c1 Binary files /dev/null and b/binaries/D5P_220X_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..fe44168346 Binary files /dev/null and b/binaries/D5P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..55a93e6bcb Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..85e0c1e3f8 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..2b4e9de162 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3d29871408 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..713dd289a4 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..375c2eadec Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..369cd8c200 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..feaa995888 Binary files /dev/null and b/binaries/D5P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bd99bf81da Binary files /dev/null and b/binaries/D5P_220X_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..1a530f377c Binary files /dev/null and b/binaries/D5P_220X_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..217c0e7f16 Binary files /dev/null and b/binaries/D5P_220X_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9e7405f37b Binary files /dev/null and b/binaries/D5P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..0d502f0e6e Binary files /dev/null and b/binaries/D5P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9eee9a0466 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7682391630 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bd6a96cae3 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_DualGear_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..32fdbb7427 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..fbd086598f Binary files /dev/null and b/binaries/D5P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7ac7c7f133 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..60b45c0e50 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_LowRes_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7f6f4d9754 Binary files /dev/null and b/binaries/D5P_220X_OpticalY_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..0703646a0c Binary files /dev/null and b/binaries/D5P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_OpticalY_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_OpticalY_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..e8bce5103f Binary files /dev/null and b/binaries/D5P_220X_OpticalY_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D5P_220X_Vul_DW7.4.8.hex.zip b/binaries/D5P_220X_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..73657dae9d Binary files /dev/null and b/binaries/D5P_220X_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DW7.4.8.hex.zip b/binaries/D6P_220X_DW7.4.8.hex.zip new file mode 100644 index 0000000000..c2152c2c3f Binary files /dev/null and b/binaries/D6P_220X_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5297e4eb9f Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5b2c1b30ef Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..be85610038 Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..d723ae2a68 Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f5f9ebe50e Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f9d2f47577 Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..c2ea2d96fb Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..7f13feffda Binary files /dev/null and b/binaries/D6P_220X_DualGear_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..afb8728706 Binary files /dev/null and b/binaries/D6P_220X_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..a2337d29c2 Binary files /dev/null and b/binaries/D6P_220X_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..04f33a1213 Binary files /dev/null and b/binaries/D6P_220X_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..37e2ecce44 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9e088ec0a8 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..4478b159d4 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..0c8584e7ec Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip new file mode 100644 index 0000000000..a575dddd73 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..201cfefc1f Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f0e370ccf4 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..3e7d0784d4 Binary files /dev/null and b/binaries/D6P_220X_DualGear_OpticalY_BLTouch_ACBed_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..dabb367928 Binary files /dev/null and b/binaries/D6P_220X_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..568774bd6a Binary files /dev/null and b/binaries/D6P_220X_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..1678dd3dd9 Binary files /dev/null and b/binaries/D6P_220X_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip new file mode 100644 index 0000000000..78bbf39fa8 Binary files /dev/null and b/binaries/D6P_220X_OpticalY_BLTouch_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..89459a399e Binary files /dev/null and b/binaries/D6P_220X_OpticalY_BLTouch_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..2ef50a6076 Binary files /dev/null and b/binaries/D6P_220X_OpticalY_BLTouch_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..5944ab55de Binary files /dev/null and b/binaries/D6P_220X_OpticalY_BLTouch_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_DW7.4.8.hex.zip new file mode 100644 index 0000000000..f9eec21e9a Binary files /dev/null and b/binaries/D6P_220X_OpticalY_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_DualGear_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_DualGear_DW7.4.8.hex.zip new file mode 100644 index 0000000000..eecca4b9da Binary files /dev/null and b/binaries/D6P_220X_OpticalY_DualGear_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..21879fe0de Binary files /dev/null and b/binaries/D6P_220X_OpticalY_DualGear_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9163412bae Binary files /dev/null and b/binaries/D6P_220X_OpticalY_DualGear_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..9569bb44dd Binary files /dev/null and b/binaries/D6P_220X_OpticalY_DualGear_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_LowRes_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_LowRes_DW7.4.8.hex.zip new file mode 100644 index 0000000000..b61d6d9b26 Binary files /dev/null and b/binaries/D6P_220X_OpticalY_LowRes_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..bc09d90692 Binary files /dev/null and b/binaries/D6P_220X_OpticalY_LowRes_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_OpticalY_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_OpticalY_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..839e5a4292 Binary files /dev/null and b/binaries/D6P_220X_OpticalY_Vul_DW7.4.8.hex.zip differ diff --git a/binaries/D6P_220X_Vul_DW7.4.8.hex.zip b/binaries/D6P_220X_Vul_DW7.4.8.hex.zip new file mode 100644 index 0000000000..c9e819a6ce Binary files /dev/null and b/binaries/D6P_220X_Vul_DW7.4.8.hex.zip differ diff --git a/buildroot/bin/build_example b/buildroot/bin/build_example index 34549769bb..a8878e8d9f 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; } diff --git a/buildroot/share/PlatformIO/boards/marlin_BTT_SKR_SE_BX.json b/buildroot/share/PlatformIO/boards/marlin_BTT_SKR_SE_BX.json index 65735d433b..3ed21e393b 100644 --- a/buildroot/share/PlatformIO/boards/marlin_BTT_SKR_SE_BX.json +++ b/buildroot/share/PlatformIO/boards/marlin_BTT_SKR_SE_BX.json @@ -3,7 +3,7 @@ "core": "stm32", "cpu": "cortex-m7", "extra_flags": "-DSTM32H743xx", - "f_cpu": "400000000L", + "f_cpu": "480000000L", "mcu": "stm32h743iit6", "variant": "MARLIN_BTT_SKR_SE_BX" }, diff --git a/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json b/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json similarity index 85% rename from buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json rename to buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json index 82f49fa815..31739c3a38 100644 --- a/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json +++ b/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json @@ -15,11 +15,11 @@ ] ], "ldscript": "ldscript.ld", - "mcu": "stm32f401rct6", - "variant": "MARLIN_CREALITY_STM32F401RC" + "mcu": "stm32f401ret6", + "variant": "MARLIN_CREALITY_STM32F401RE" }, "debug": { - "jlink_device": "STM32F401RC", + "jlink_device": "STM32F401RE", "openocd_target": "stm32f4x", "svd_path": "STM32F40x.svd", "tools": { @@ -45,11 +45,11 @@ "arduino", "stm32cube" ], - "name": "STM32F401RC (64k RAM. 256k Flash)", + "name": "STM32F401RE (64k RAM. 512k Flash)", "upload": { "disable_flushing": false, "maximum_ram_size": 65536, - "maximum_size": 262144, + "maximum_size": 514288, "protocol": "stlink", "protocols": [ "stlink", @@ -60,6 +60,6 @@ "use_1200bps_touch": false, "wait_for_upload_port": false }, - "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32f401rc.html", + "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32f401re.html", "vendor": "Generic" } diff --git a/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json b/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json index 6c2e093c3b..7dd7542c6d 100644 --- a/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json +++ b/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json @@ -55,7 +55,7 @@ "dfu", "jlink" ], - "offset_address": "0x8008000", + "offset_address": "0x8008000", "require_upload_port": true, "use_1200bps_touch": false, "wait_for_upload_port": false diff --git a/buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json b/buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json new file mode 100644 index 0000000000..0f0927d28e --- /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/boards/marlin_MKS_ROBIN2.json b/buildroot/share/PlatformIO/boards/marlin_MKS_ROBIN2.json new file mode 100644 index 0000000000..325001df1b --- /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/boards/marlin_STM32G0B1VE.json b/buildroot/share/PlatformIO/boards/marlin_STM32G0B1VE.json new file mode 100644 index 0000000000..a3ac6ea679 --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_STM32G0B1VE.json @@ -0,0 +1,47 @@ +{ + "build": { + "core": "stm32", + "cpu": "cortex-m0plus", + "extra_flags": "-DSTM32G0xx -DSTM32G0B1xx", + "f_cpu": "64000000L", + "framework_extra_flags": { + "arduino": "-D__CORTEX_SC=0" + }, + "mcu": "stm32g0b1vet6", + "product_line": "STM32G0B1xx", + "variant": "MARLIN_G0B1VE" + }, + "debug": { + "default_tools": [ + "stlink" + ], + "jlink_device": "STM32G0B1VE", + "onboard_tools": [ + "stlink" + ], + "openocd_target": "stm32g0x", + "svd_path": "STM32G0B1.svd" + }, + "frameworks": [ + "arduino", + "cmsis", + "libopencm3", + "stm32cube", + "zephyr" + ], + "name": "STM32G0B1VE", + "upload": { + "maximum_ram_size": 147456, + "maximum_size": 524288, + "protocol": "stlink", + "protocols": [ + "stlink", + "jlink", + "cmsis-dap", + "blackmagic", + "mbed" + ] + }, + "url": "https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-mainstream-mcus/stm32g0-series/stm32g0x1.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 0000000000..44a37e94ec --- /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": "stm32h723vgt6", + "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/boards/marlin_STM32H723ZE.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json new file mode 100644 index 0000000000..f4bb75b5da --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json @@ -0,0 +1,61 @@ +{ + "build": { + "core": "stm32", + "cpu": "cortex-m7", + "extra_flags": "-DSTM32H7xx -DSTM32H723xx", + "f_cpu": "550000000L", + "mcu": "stm32h723zet6", + "product_line": "STM32H723xx", + "variant": "MARLIN_H723ZE" + }, + "connectivity": [ + "can", + "ethernet" + ], + "debug": { + "jlink_device": "STM32H723ZE", + "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": "STM32H723ZE (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/stm32h723ze.html", + "vendor": "ST" +} diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H743Vx.json b/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json similarity index 97% rename from buildroot/share/PlatformIO/boards/marlin_STM32H743Vx.json rename to buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json index 4ec34e5b35..56e853cad4 100644 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H743Vx.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/ldscripts/creality.ld b/buildroot/share/PlatformIO/ldscripts/creality.ld index 785345543c..8b330c9457 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/ldscripts/creality256k.ld b/buildroot/share/PlatformIO/ldscripts/creality256k.ld new file mode 100644 index 0000000000..1ed03caa0a --- /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/buildroot/share/PlatformIO/ldscripts/sovol.ld b/buildroot/share/PlatformIO/ldscripts/sovol.ld new file mode 100644 index 0000000000..785345543c --- /dev/null +++ b/buildroot/share/PlatformIO/ldscripts/sovol.ld @@ -0,0 +1,14 @@ +MEMORY +{ + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K - 40 + rom (rx) : ORIGIN = 0x08007000, LENGTH = 512K - 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/buildroot/share/PlatformIO/scripts/common-cxxflags.py b/buildroot/share/PlatformIO/scripts/common-cxxflags.py index da86a25c98..bd6199117f 100644 --- a/buildroot/share/PlatformIO/scripts/common-cxxflags.py +++ b/buildroot/share/PlatformIO/scripts/common-cxxflags.py @@ -7,7 +7,7 @@ import pioutil if pioutil.is_pio_build(): Import("env") - env.Replace(PROGNAME="%s_DW7.4.8" % (str(env["PIOENV"]))) + env.Replace(PROGNAME="%s_DW7.4.9" % (str(env["PIOENV"]))) cxxflags = [ # "-Wno-incompatible-pointer-types", diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index da2d380a82..2def0d88b6 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 @@ -54,21 +54,21 @@ #define HAS_MENU_BACKLASH #endif #if ENABLED(LCD_BED_TRAMMING) - #define HAS_MENU_BED_CORNERS + #define HAS_MENU_BED_TRAMMING #endif #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) #define HAS_MENU_FILAMENT #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #define HAS_MENU_MEDIA #endif #if ENABLED(MIXING_EXTRUDER) @@ -99,9 +99,230 @@ #define HAS_MENU_TOUCH_SCREEN #endif #if ENABLED(ASSISTED_TRAMMING_WIZARD) - #define HAS_MENU_TRAMMING + #define HAS_MENU_TRAMMING_WIZARD #endif #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 + #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 + #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 + #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 + #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 91331d8f7a..faa44292a8 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 @@ -53,20 +55,22 @@ if pioutil.is_pio_build(): # 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) - 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: for dep in re.split(r',\s*', line): lib_name = re.sub(r'@([~^]|[<>]=?)?[\d.]+', '', dep.strip()).split('=').pop(0) lib_re = re.compile('(?!^' + lib_name + '\\b)') + if not 'lib_deps' in feat: feat['lib_deps'] = {} feat['lib_deps'] = list(filter(lib_re.match, feat['lib_deps'])) + [dep] blab("[%s] lib_deps = %s" % (feature, dep), 3) @@ -90,7 +94,7 @@ if pioutil.is_pio_build(): 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(): @@ -127,6 +131,7 @@ if pioutil.is_pio_build(): def apply_features_config(): load_features() blab("========== Apply enabled features...") + build_filters = ' '.join(env.GetProjectOption('build_src_filter')) for feature in FEATURE_CONFIG: if not env.MarlinHas(feature): continue @@ -171,25 +176,89 @@ if pioutil.is_pio_build(): 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) - 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['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. 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) + 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.... + 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)), 3) + else: + 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, 3) + 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)), 3) + else: + 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, 2) + 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 build_src_filter != "": build_src_filter += ' ' + build_src_filter += "+<" + x + ">" + + #blab("Final build_src_filter: " + build_src_filter, 3) + else: + build_src_filter = build_filters + + # Update in PlatformIO + 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 # @@ -212,7 +281,7 @@ if pioutil.is_pio_build(): # 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 @@ -225,6 +294,8 @@ if pioutil.is_pio_build(): elif val in env['MARLIN_FEATURES']: some_on = env.MarlinHas(val) + #blab("%s is %s" % (feature, str(some_on)), 2) + return some_on validate_pio() diff --git a/buildroot/share/PlatformIO/scripts/configuration.py b/buildroot/share/PlatformIO/scripts/configuration.py index 42fc91038e..250d9bbd7f 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}") @@ -88,9 +98,10 @@ def fetch_example(url): if not url.startswith('http'): brch = "bugfix-2.1.x" if '@' in url: url, brch = map(str.strip, url.split('@')) + if url == 'examples/default': url = 'default' url = f"https://raw.githubusercontent.com/MarlinFirmware/Configurations/{brch}/config/{url}" url = url.replace("%", "%25").replace(" ", "%20") - + # Find a suitable fetch command if shutil.which("curl") is not None: fetch = "curl -L -s -S -f -o" @@ -103,7 +114,7 @@ def fetch_example(url): import os # Reset configurations to default - os.system("git reset --hard HEAD") + os.system("git checkout HEAD Marlin/*.h") # Try to fetch the remote files gotfile = False @@ -191,7 +202,7 @@ def apply_config_ini(cp): # For 'examples/' fetch an example set from GitHub. # For https?:// do a direct fetch of the URL. - if ckey.startswith('examples/') or ckey.startswith('http:'): + if ckey.startswith('examples/') or ckey.startswith('http'): fetch_example(ckey) ckey = 'base' diff --git a/buildroot/share/PlatformIO/scripts/download_mks_assets.py b/buildroot/share/PlatformIO/scripts/download_mks_assets.py index 661fb2e438..0186f59896 100644 --- a/buildroot/share/PlatformIO/scripts/download_mks_assets.py +++ b/buildroot/share/PlatformIO/scripts/download_mks_assets.py @@ -14,7 +14,7 @@ if pioutil.is_pio_build(): 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 @@ if pioutil.is_pio_build(): 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/share/PlatformIO/scripts/generic_create_variant.py b/buildroot/share/PlatformIO/scripts/generic_create_variant.py index 49d4c98d3e..2dd65399bb 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 @@ if pioutil.is_pio_build(): 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 @@ if pioutil.is_pio_build(): 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) diff --git a/buildroot/share/PlatformIO/scripts/marlin.py b/buildroot/share/PlatformIO/scripts/marlin.py index 586679b0d1..df0ecd42f8 100644 --- a/buildroot/share/PlatformIO/scripts/marlin.py +++ b/buildroot/share/PlatformIO/scripts/marlin.py @@ -16,7 +16,8 @@ def copytree(src, dst, symlinks=False, ignore=None): shutil.copy2(item, dst / item.name) def replace_define(field, value): - for define in env['CPPDEFINES']: + envdefs = env['CPPDEFINES'].copy() + for define in envdefs: if define[0] == field: env['CPPDEFINES'].remove(define) env['CPPDEFINES'].append((field, value)) diff --git a/buildroot/share/PlatformIO/scripts/preflight-checks.py b/buildroot/share/PlatformIO/scripts/preflight-checks.py index 8d04d33e52..26c4c0470e 100644 --- a/buildroot/share/PlatformIO/scripts/preflight-checks.py +++ b/buildroot/share/PlatformIO/scripts/preflight-checks.py @@ -71,10 +71,10 @@ if pioutil.is_pio_build(): config = env.GetProjectConfig() 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" % \ -# ( build_env, motherboard, ", ".join([ e[4:] for e in board_envs if e.startswith("env:") ]) ) -# raise SystemExit(err) + # if not result: + # 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) # # Check for Config files in two common incorrect places @@ -127,10 +127,12 @@ if pioutil.is_pio_build(): # # Check FILAMENT_RUNOUT_SCRIPT has a %c parammeter when required # - #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_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']: + 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() diff --git a/buildroot/share/PlatformIO/scripts/random-bin.py b/buildroot/share/PlatformIO/scripts/random-bin.py index b13fc1c809..b31d35ddd6 100644 --- a/buildroot/share/PlatformIO/scripts/random-bin.py +++ b/buildroot/share/PlatformIO/scripts/random-bin.py @@ -7,5 +7,5 @@ if pioutil.is_pio_build(): from datetime import datetime Import("env") env_name = str(env["PIOENV"]) - env['PROGNAME'] = "firmware_%s_DW7.4.8" % (env_name) + env['PROGNAME'] = "firmware_%s_DW7.4.9" % (env_name) #env['PROGNAME'] = datetime.now().strftime("firmware-%Y%m%d-%H%M%S") diff --git a/buildroot/share/PlatformIO/scripts/schema.py b/buildroot/share/PlatformIO/scripts/schema.py index 103aa1f072..afac7b5d27 100755 --- a/buildroot/share/PlatformIO/scripts/schema.py +++ b/buildroot/share/PlatformIO/scripts/schema.py @@ -190,7 +190,7 @@ def extract(): 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/share/PlatformIO/scripts/signature.py b/buildroot/share/PlatformIO/scripts/signature.py index 4fc0084e57..84312da01b 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 @@ -71,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 @@ -255,7 +255,7 @@ def compute_build_signature(env): 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: diff --git a/buildroot/share/PlatformIO/variants/MARLIN_ARCHIM/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_ARCHIM/variant.h index 11f8f63bfb..c073e9bbdd 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_ARCHIM/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_ARCHIM/variant.h @@ -24,10 +24,10 @@ *----------------------------------------------------------------------------*/ /** Frequency of the board main oscillator */ -#define VARIANT_MAINOSC 12000000 +#define VARIANT_MAINOSC 12000000 /** Master clock frequency */ -#define VARIANT_MCK 84000000 +#define VARIANT_MCK 84000000 /*---------------------------------------------------------------------------- * Headers @@ -119,13 +119,13 @@ extern "C"{ #define BOARD_SPI_DEFAULT_SS BOARD_SPI_SS3 #define BOARD_PIN_TO_SPI_PIN(x) \ - (x==BOARD_SPI_SS0 ? PIN_SPI_SS0 : \ - (x==BOARD_SPI_SS1 ? PIN_SPI_SS1 : \ - (x==BOARD_SPI_SS2 ? PIN_SPI_SS2 : PIN_SPI_SS3 ))) + (x==BOARD_SPI_SS0 ? PIN_SPI_SS0 : \ + (x==BOARD_SPI_SS1 ? PIN_SPI_SS1 : \ + (x==BOARD_SPI_SS2 ? PIN_SPI_SS2 : PIN_SPI_SS3 ))) #define BOARD_PIN_TO_SPI_CHANNEL(x) \ - (x==BOARD_SPI_SS0 ? 0 : \ - (x==BOARD_SPI_SS1 ? 1 : \ - (x==BOARD_SPI_SS2 ? 2 : 3))) + (x==BOARD_SPI_SS0 ? 0 : \ + (x==BOARD_SPI_SS1 ? 1 : \ + (x==BOARD_SPI_SS2 ? 2 : 3))) static const uint8_t SS = BOARD_SPI_SS0; static const uint8_t SS1 = BOARD_SPI_SS1; @@ -195,7 +195,7 @@ static const uint8_t DAC0 = 66; static const uint8_t DAC1 = 67; static const uint8_t CANRX = 68; static const uint8_t CANTX = 69; -#define ADC_RESOLUTION 12 +#define ADC_RESOLUTION 12 /* * Complementary CAN pins @@ -212,21 +212,21 @@ static const uint8_t CAN1TX = 89; /* * DACC */ -#define DACC_INTERFACE DACC -#define DACC_INTERFACE_ID ID_DACC -#define DACC_RESOLUTION 12 +#define DACC_INTERFACE DACC +#define DACC_INTERFACE_ID ID_DACC +#define DACC_RESOLUTION 12 #define DACC_ISR_HANDLER DACC_Handler #define DACC_ISR_ID DACC_IRQn /* * PWM */ -#define PWM_INTERFACE PWM -#define PWM_INTERFACE_ID ID_PWM -#define PWM_FREQUENCY 31000 -#define PWM_MAX_DUTY_CYCLE 255 -#define PWM_MIN_DUTY_CYCLE 0 -#define PWM_RESOLUTION 8 +#define PWM_INTERFACE PWM +#define PWM_INTERFACE_ID ID_PWM +#define PWM_FREQUENCY 31000 +#define PWM_MAX_DUTY_CYCLE 255 +#define PWM_MIN_DUTY_CYCLE 0 +#define PWM_RESOLUTION 8 /* * TC @@ -236,7 +236,7 @@ static const uint8_t CAN1TX = 89; #define TC_FREQUENCY 100000 #define TC_MAX_DUTY_CYCLE 255 #define TC_MIN_DUTY_CYCLE 0 -#define TC_RESOLUTION 8 +#define TC_RESOLUTION 8 #ifdef __cplusplus } @@ -281,4 +281,3 @@ extern USARTClass Serial3; #define SERIAL_PORT_HARDWARE3 Serial3 #endif /* _VARIANT_ARDUINO_DUE_X_ */ - diff --git a/buildroot/share/PlatformIO/variants/MARLIN_ARTILLERY_RUBY/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_ARTILLERY_RUBY/variant.h index ca7a53d782..f32ff3c28d 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_ARTILLERY_RUBY/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_ARTILLERY_RUBY/variant.h @@ -121,6 +121,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_BTT002/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_BTT002/variant.h index 068d0b9ee5..88b6e45292 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_BTT002/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_BTT002/variant.h @@ -272,6 +272,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_E3_RRF/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_E3_RRF/variant.h index edc1c91c53..90e9998d10 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_E3_RRF/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_E3_RRF/variant.h @@ -267,6 +267,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_GTR_V1/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_GTR_V1/variant.h index 2c70693991..01f19a7933 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_GTR_V1/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_GTR_V1/variant.h @@ -280,7 +280,7 @@ extern "C" { #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. +// Used when the user instantiates 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 @@ -295,6 +295,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_SKR_PRO_11/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_SKR_PRO_11/variant.h index b5cf0bad9d..56bc3bdd9e 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_SKR_PRO_11/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BIGTREE_SKR_PRO_11/variant.h @@ -280,7 +280,7 @@ extern "C" { #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. +// Used when the user instantiates 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 @@ -295,6 +295,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BTT_EBB42_V1_1/variant_MARLIN_BTT_EBB42_V1_1.h b/buildroot/share/PlatformIO/variants/MARLIN_BTT_EBB42_V1_1/variant_MARLIN_BTT_EBB42_V1_1.h index ff75bc1e48..9373e2fa3b 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BTT_EBB42_V1_1/variant_MARLIN_BTT_EBB42_V1_1.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BTT_EBB42_V1_1/variant_MARLIN_BTT_EBB42_V1_1.h @@ -155,6 +155,8 @@ #define SERIAL_UART_INSTANCE 4 #endif +#define FLASH_BANK_NUMBER FLASH_BANK_1 + // Default pin used for generic 'Serial' instance // Mandatory for Firmata #ifndef PIN_SERIAL_RX diff --git a/buildroot/share/PlatformIO/variants/MARLIN_BTT_SKR_SE_BX/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_BTT_SKR_SE_BX/variant.h index 285ad662e0..f03ba32637 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_BTT_SKR_SE_BX/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_BTT_SKR_SE_BX/variant.h @@ -195,6 +195,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RC/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RC/variant.h index b5a4e5ef80..722a29d00d 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RC/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RC/variant.h @@ -112,7 +112,7 @@ extern "C" { #define PIN_SERIAL_RX PA10 #define PIN_SERIAL_TX PA9 -// Used when user instanciate a hardware Serial using its peripheral name. +// Used when the user instantiates 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 @@ -123,6 +123,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ @@ -148,4 +149,4 @@ extern "C" { #define SERIAL_PORT_HARDWARE_OPEN Serial2 #endif -#endif /* _VARIANT_ARDUINO_STM32_ */ \ No newline at end of file +#endif /* _VARIANT_ARDUINO_STM32_ */ 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 0000000000..418ef5aa7a --- /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 0000000000..f5db451e6f --- /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 0000000000..1dd047bb90 --- /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 0000000000..881b72167e --- /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 0000000000..d603ad6ef1 --- /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 0000000000..591571bf2c --- /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/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 d9e759f5d0..d9076b4dfb 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_F103Rx/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/variant.h index 8f17d052bb..4a0245e7e9 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/variant.h @@ -148,6 +148,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103VE_LONGER/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F103VE_LONGER/variant.h index 8e4f248c2e..3fac64958c 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103VE_LONGER/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103VE_LONGER/variant.h @@ -148,6 +148,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/ldscript.ld index 3013b09607..ac7ac2e904 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/ldscript.ld +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/ldscript.ld @@ -4,7 +4,7 @@ ** File : LinkerScript.ld ** -** Author : Auto-generated by STM32CubeIDE +** Author : Auto-generated by STM32CubeIDE ** ** Abstract : Linker script for STM32F103V(8/B/C/E/F/GTx Device from STM32F1 series ** 64/128/256/512/768/1024Kbytes FLASH @@ -54,15 +54,15 @@ ENTRY(Reset_Handler) /* Highest address of the user mode stack */ -_estack = 0x20000000 + LD_MAX_DATA_SIZE; /* end of "RAM" Ram type memory */ +_estack = 0x20000000 + LD_MAX_DATA_SIZE; /* end of "RAM" Ram type memory */ _Min_Heap_Size = 0x200; /* required amount of heap */ _Min_Stack_Size = 0x400; /* required amount of stack */ /* Memories definition */ MEMORY { - RAM (xrw) : ORIGIN = 0x20000000, LENGTH = LD_MAX_DATA_SIZE - FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET + RAM (xrw) : ORIGIN = 0x20000000, LENGTH = LD_MAX_DATA_SIZE + FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET } /* Sections */ @@ -103,9 +103,9 @@ SECTIONS } >FLASH .ARM.extab : { - . = ALIGN(4); - *(.ARM.extab* .gnu.linkonce.armextab.*) - . = ALIGN(4); + . = ALIGN(4); + *(.ARM.extab* .gnu.linkonce.armextab.*) + . = ALIGN(4); } >FLASH .ARM : { . = ALIGN(4); diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/variant.h index e01d67fd59..4061db4e26 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Vx/variant.h @@ -158,6 +158,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/ldscript.ld index cac12da5c2..d995458f95 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/ldscript.ld +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/ldscript.ld @@ -1,10 +1,9 @@ /* ****************************************************************************** ** - ** File : LinkerScript.ld ** -** Author : Auto-generated by STM32CubeIDE +** Author : Auto-generated by STM32CubeIDE ** ** Abstract : Linker script for STM32F103Z(C/D/E/G/GTx Device from STM32F1 series ** 256/386/512K/786/1024bytes FLASH @@ -54,7 +53,7 @@ ENTRY(Reset_Handler) /* Highest address of the user mode stack */ -_estack = 0x20000000 + LD_MAX_DATA_SIZE; /* end of "RAM" Ram type memory */ +_estack = 0x20000000 + LD_MAX_DATA_SIZE; /* end of "RAM" Ram type memory */ _Min_Heap_Size = 0x200; /* required amount of heap */ _Min_Stack_Size = 0x400; /* required amount of stack */ @@ -62,7 +61,7 @@ _Min_Stack_Size = 0x400; /* required amount of stack */ MEMORY { RAM (xrw) : ORIGIN = 0x20000000, LENGTH = LD_MAX_DATA_SIZE - FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET + FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET } /* Sections */ @@ -103,9 +102,9 @@ SECTIONS } >FLASH .ARM.extab : { - . = ALIGN(4); - *(.ARM.extab* .gnu.linkonce.armextab.*) - . = ALIGN(4); + . = ALIGN(4); + *(.ARM.extab* .gnu.linkonce.armextab.*) + . = ALIGN(4); } >FLASH .ARM : { . = ALIGN(4); diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/variant.h index 330a7efbf8..8de1e062f9 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Zx/variant.h @@ -205,6 +205,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F401RC/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_F401RC/ldscript.ld index c7e67d311e..d028dfc000 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F401RC/ldscript.ld +++ b/buildroot/share/PlatformIO/variants/MARLIN_F401RC/ldscript.ld @@ -28,10 +28,10 @@ ENTRY(Reset_Handler) /* Highest address of the user mode stack */ -_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */ +_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */ -_Min_Heap_Size = 0x200; /* required amount of heap */ -_Min_Stack_Size = 0x400; /* required amount of stack */ +_Min_Heap_Size = 0x200; /* required amount of heap */ +_Min_Stack_Size = 0x400; /* required amount of stack */ /* Memories definition */ MEMORY diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F407VE/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F407VE/variant.h index df8bf064fc..df45a5dbbb 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F407VE/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F407VE/variant.h @@ -326,6 +326,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c index d0905853a9..de796f4ef5 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 diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F446VE/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F446VE/variant.h index 855616f66b..b2111d04f2 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F446VE/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F446VE/variant.h @@ -159,6 +159,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F446Zx_TRONXY/variant.cpp b/buildroot/share/PlatformIO/variants/MARLIN_F446Zx_TRONXY/variant.cpp index 2d94ee763a..7e18e33f7e 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F446Zx_TRONXY/variant.cpp +++ b/buildroot/share/PlatformIO/variants/MARLIN_F446Zx_TRONXY/variant.cpp @@ -173,15 +173,15 @@ uint32_t myvar[] = {1,2,3,4,5,6,7,8}; void myshow(int fre, int times) // YSZ-WORK { uint32_t index = 10; - RCC->AHB1ENR |= 1 << 6; // port G clock - GPIOG->MODER &= ~(3UL << 2 * index); // clear old mode - GPIOG->MODER |= 1 << 2 * index; // mode is output - GPIOG->OSPEEDR &= ~(3UL << 2 * index) // Clear old output speed - GPIOG->OSPEEDR |= 2 << 2 * index; // Set output speed - GPIOG->OTYPER &= ~(1UL << index) // clear old output - GPIOG->OTYPER |= 0 << index; // Set the output mode to push-pull - GPIOG->PUPDR &= ~(3 << 2 * index) // Clear the original settings first - GPIOG->PUPDR |= 1 << 2 * index; // Set new up and down + RCC->AHB1ENR |= 1 << 6; // port G clock + GPIOG->MODER &= ~(3UL << 2 * index); // clear old mode + GPIOG->MODER |= 1 << 2 * index; // mode is output + GPIOG->OSPEEDR &= ~(3UL << 2 * index); // Clear old output speed + GPIOG->OSPEEDR |= 2 << 2 * index; // Set output speed + GPIOG->OTYPER &= ~(1UL << index); // clear old output + GPIOG->OTYPER |= 0 << index; // Set the output mode to push-pull + GPIOG->PUPDR &= ~(3 << 2 * index); // Clear the original settings first + GPIOG->PUPDR |= 1 << 2 * index; // Set new up and down while (times != 0) { GPIOG->BSRR = 1UL << index; for (int i = 0; i < fre; i++) diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F4x7Vx/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_F4x7Vx/variant.h index 0b78be627f..d6f8e9fe83 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F4x7Vx/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F4x7Vx/variant.h @@ -176,6 +176,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_FLY_F407ZG/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_FLY_F407ZG/variant.h index 2bfce85e21..80d5d3e009 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_FLY_F407ZG/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_FLY_F407ZG/variant.h @@ -37,121 +37,120 @@ extern "C" { * Pins *----------------------------------------------------------------------------*/ - -#define PA1 0 -#define PA2 1 -#define PA3 2 -#define PA4 3 -#define PA5 4 -#define PA6 5 -#define PA7 6 -#define PA8 7 -#define PA9 8 -#define PA10 9 -#define PA11 10 -#define PA12 11 -#define PA13 12 -#define PA14 13 -#define PA15 14 -#define PB0 15 -#define PB1 16 -#define PB2 17 -#define PB3 18 -#define PB4 19 -#define PB5 20 -#define PB6 21 -#define PB7 22 -#define PB8 23 -#define PB9 24 -#define PB10 25 -#define PB11 26 -#define PB12 27 -#define PB13 28 -#define PB14 29 -#define PB15 30 -#define PC2 31 -#define PC3 32 -#define PC4 33 -#define PC5 34 -#define PC6 35 -#define PC7 36 -#define PC8 37 -#define PC9 38 -#define PC10 39 -#define PC11 40 -#define PC12 41 -#define PC13 42 -#define PC14 43 -#define PC15 44 -#define PD0 45 -#define PD1 46 -#define PD2 47 -#define PD3 48 -#define PD4 49 -#define PD5 50 -#define PD6 51 -#define PD7 52 -#define PD8 53 -#define PD9 54 -#define PD10 55 -#define PD11 56 -#define PD12 57 -#define PD13 58 -#define PD14 59 -#define PD15 60 -#define PE0 61 -#define PE1 62 -#define PE11 63 -#define PE3 64 -#define PE4 65 -#define PE5 66 -#define PE6 67 -#define PE7 68 -#define PE8 69 -#define PE9 70 -#define PE10 71 +#define PA1 0 +#define PA2 1 +#define PA3 2 +#define PA4 3 +#define PA5 4 +#define PA6 5 +#define PA7 6 +#define PA8 7 +#define PA9 8 +#define PA10 9 +#define PA11 10 +#define PA12 11 +#define PA13 12 +#define PA14 13 +#define PA15 14 +#define PB0 15 +#define PB1 16 +#define PB2 17 +#define PB3 18 +#define PB4 19 +#define PB5 20 +#define PB6 21 +#define PB7 22 +#define PB8 23 +#define PB9 24 +#define PB10 25 +#define PB11 26 +#define PB12 27 +#define PB13 28 +#define PB14 29 +#define PB15 30 +#define PC2 31 +#define PC3 32 +#define PC4 33 +#define PC5 34 +#define PC6 35 +#define PC7 36 +#define PC8 37 +#define PC9 38 +#define PC10 39 +#define PC11 40 +#define PC12 41 +#define PC13 42 +#define PC14 43 +#define PC15 44 +#define PD0 45 +#define PD1 46 +#define PD2 47 +#define PD3 48 +#define PD4 49 +#define PD5 50 +#define PD6 51 +#define PD7 52 +#define PD8 53 +#define PD9 54 +#define PD10 55 +#define PD11 56 +#define PD12 57 +#define PD13 58 +#define PD14 59 +#define PD15 60 +#define PE0 61 +#define PE1 62 +#define PE11 63 +#define PE3 64 +#define PE4 65 +#define PE5 66 +#define PE6 67 +#define PE7 68 +#define PE8 69 +#define PE9 70 +#define PE10 71 #define PE2 72 -#define PE12 73 -#define PE13 74 -#define PE14 75 -#define PE15 76 -#define PF0 77 -#define PF1 78 -#define PF2 79 -#define PF6 80 -#define PF7 81 -#define PF8 82 -#define PF9 83 -#define PF11 84 -#define PF12 85 -#define PF13 86 -#define PF14 87 -#define PF15 88 -#define PG0 89 -#define PG1 90 -#define PG2 91 -#define PG3 92 -#define PG4 93 -#define PG5 94 -#define PG6 95 -#define PG7 96 -#define PG8 97 -#define PG9 98 -#define PG10 99 -#define PG11 100 -#define PG12 101 -#define PG13 102 -#define PG14 103 -#define PG15 104 -#define PH0 105 -#define PH1 106 -#define PA0 107 -#define PC1 108 -#define PC0 109 -#define PF10 110 -#define PF5 111 -#define PF4 112 -#define PF3 113 +#define PE12 73 +#define PE13 74 +#define PE14 75 +#define PE15 76 +#define PF0 77 +#define PF1 78 +#define PF2 79 +#define PF6 80 +#define PF7 81 +#define PF8 82 +#define PF9 83 +#define PF11 84 +#define PF12 85 +#define PF13 86 +#define PF14 87 +#define PF15 88 +#define PG0 89 +#define PG1 90 +#define PG2 91 +#define PG3 92 +#define PG4 93 +#define PG5 94 +#define PG6 95 +#define PG7 96 +#define PG8 97 +#define PG9 98 +#define PG10 99 +#define PG11 100 +#define PG12 101 +#define PG13 102 +#define PG14 103 +#define PG15 104 +#define PH0 105 +#define PH1 106 +#define PA0 107 +#define PC1 108 +#define PC0 109 +#define PF10 110 +#define PF5 111 +#define PF4 112 +#define PF3 113 // This must be a literal #define NUM_DIGITAL_PINS 114 @@ -212,6 +211,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ @@ -234,5 +234,5 @@ extern "C" { // pins are NOT connected to anything by default. #define SERIAL_PORT_MONITOR Serial #define SERIAL_PORT_HARDWARE Serial1 -#endif +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/variant.h index d4982113a0..ca3664daa1 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/variant.h @@ -95,7 +95,7 @@ extern "C" { // Timer Definitions #define TIMER_TONE TIM2 // TIMER_TONE must be defined in this file -#define TIMER_SERVO TIM5 // TIMER_SERVO must be defined in this file +#define TIMER_SERVO TIM3 // TIMER_SERVO must be defined in this file #define TIMER_SERIAL TIM11 // TIMER_SERIAL must be defined in this file // UART Definitions @@ -110,7 +110,7 @@ extern "C" { #define PIN_SERIAL_RX PA10 #define PIN_SERIAL_TX PA9 -// Used when user instantiate a hardware Serial using its peripheral name. +// Used when the user instantiates 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 @@ -121,6 +121,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/PeripheralPins.c index 5c7c301f82..f8ec838146 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/PeripheralPins.c +++ b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/PeripheralPins.c @@ -47,10 +47,10 @@ WEAK const PinMap PinMap_ADC[] = { //{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 LCD RX + {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_IN2 LCD RX //{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 LCD TX + {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_IN3 LCD TX //{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 @@ -191,7 +191,7 @@ WEAK const PinMap PinMap_PWM[] = { {PD_15, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 FAN2_PIN //{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 FAN_PIN + {PE_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N FAN0_PIN {PE_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 FAN1_PIN {PE_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N HEATER_BED_PIN //{PE_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 diff --git a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/variant.h index 727c0d07d8..abcbba8595 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_SPIDER_KING407/variant.h @@ -37,121 +37,120 @@ extern "C" { * Pins *----------------------------------------------------------------------------*/ - -#define PA1 0 -#define PA2 1 -#define PA3 2 -#define PA4 3 -#define PA5 4 -#define PA6 5 -#define PA7 6 -#define PA8 7 -#define PA9 8 -#define PA10 9 -#define PA11 10 -#define PA12 11 -#define PA13 12 -#define PA14 13 -#define PA15 14 -#define PB0 15 -#define PB1 16 -#define PB2 17 -#define PB3 18 -#define PB4 19 -#define PB5 20 -#define PB6 21 -#define PB7 22 -#define PB8 23 -#define PB9 24 -#define PB10 25 -#define PB11 26 -#define PB12 27 -#define PB13 28 -#define PB14 29 -#define PB15 30 -#define PC2 31 -#define PC3 32 -#define PC4 33 -#define PC5 34 -#define PC6 35 -#define PC7 36 -#define PC8 37 -#define PC9 38 -#define PC10 39 -#define PC11 40 -#define PC12 41 -#define PC13 42 -#define PC14 43 -#define PC15 44 -#define PD0 45 -#define PD1 46 -#define PD2 47 -#define PD3 48 -#define PD4 49 -#define PD5 50 -#define PD6 51 -#define PD7 52 -#define PD8 53 -#define PD9 54 -#define PD10 55 -#define PD11 56 -#define PD12 57 -#define PD13 58 -#define PD14 59 -#define PD15 60 -#define PE0 61 -#define PE1 62 -#define PE11 63 -#define PE3 64 -#define PE4 65 -#define PE5 66 -#define PE6 67 -#define PE7 68 -#define PE8 69 -#define PE9 70 -#define PE10 71 +#define PA1 0 +#define PA2 1 +#define PA3 2 +#define PA4 3 +#define PA5 4 +#define PA6 5 +#define PA7 6 +#define PA8 7 +#define PA9 8 +#define PA10 9 +#define PA11 10 +#define PA12 11 +#define PA13 12 +#define PA14 13 +#define PA15 14 +#define PB0 15 +#define PB1 16 +#define PB2 17 +#define PB3 18 +#define PB4 19 +#define PB5 20 +#define PB6 21 +#define PB7 22 +#define PB8 23 +#define PB9 24 +#define PB10 25 +#define PB11 26 +#define PB12 27 +#define PB13 28 +#define PB14 29 +#define PB15 30 +#define PC2 31 +#define PC3 32 +#define PC4 33 +#define PC5 34 +#define PC6 35 +#define PC7 36 +#define PC8 37 +#define PC9 38 +#define PC10 39 +#define PC11 40 +#define PC12 41 +#define PC13 42 +#define PC14 43 +#define PC15 44 +#define PD0 45 +#define PD1 46 +#define PD2 47 +#define PD3 48 +#define PD4 49 +#define PD5 50 +#define PD6 51 +#define PD7 52 +#define PD8 53 +#define PD9 54 +#define PD10 55 +#define PD11 56 +#define PD12 57 +#define PD13 58 +#define PD14 59 +#define PD15 60 +#define PE0 61 +#define PE1 62 +#define PE11 63 +#define PE3 64 +#define PE4 65 +#define PE5 66 +#define PE6 67 +#define PE7 68 +#define PE8 69 +#define PE9 70 +#define PE10 71 #define PE2 72 -#define PE12 73 -#define PE13 74 -#define PE14 75 -#define PE15 76 -#define PF0 77 -#define PF1 78 -#define PF2 79 -#define PF6 80 -#define PF7 81 -#define PF8 82 -#define PF9 83 -#define PF11 84 -#define PF12 85 -#define PF13 86 -#define PF14 87 -#define PF15 88 -#define PG0 89 -#define PG1 90 -#define PG2 91 -#define PG3 92 -#define PG4 93 -#define PG5 94 -#define PG6 95 -#define PG7 96 -#define PG8 97 -#define PG9 98 -#define PG10 99 -#define PG11 100 -#define PG12 101 -#define PG13 102 -#define PG14 103 -#define PG15 104 -#define PH0 105 -#define PH1 106 -#define PA0 107 -#define PC1 108 -#define PC0 109 -#define PF10 110 -#define PF5 111 -#define PF4 112 -#define PF3 113 +#define PE12 73 +#define PE13 74 +#define PE14 75 +#define PE15 76 +#define PF0 77 +#define PF1 78 +#define PF2 79 +#define PF6 80 +#define PF7 81 +#define PF8 82 +#define PF9 83 +#define PF11 84 +#define PF12 85 +#define PF13 86 +#define PF14 87 +#define PF15 88 +#define PG0 89 +#define PG1 90 +#define PG2 91 +#define PG3 92 +#define PG4 93 +#define PG5 94 +#define PG6 95 +#define PG7 96 +#define PG8 97 +#define PG9 98 +#define PG10 99 +#define PG11 100 +#define PG12 101 +#define PG13 102 +#define PG14 103 +#define PG15 104 +#define PH0 105 +#define PH1 106 +#define PA0 107 +#define PC1 108 +#define PC0 109 +#define PF10 110 +#define PF5 111 +#define PF4 112 +#define PF3 113 // This must be a literal #define NUM_DIGITAL_PINS 114 @@ -196,7 +195,7 @@ extern "C" { #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. +// Used when the user instantiates 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 @@ -210,6 +209,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ @@ -230,8 +230,7 @@ extern "C" { // // 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_MONITOR Serial +#define SERIAL_PORT_HARDWARE Serial1 #define SERIAL_PORT_HARDWARE_OPEN Serial2 #endif - diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/PeripheralPins.c index eb95de1495..3187367a2d 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/PeripheralPins.c +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/PeripheralPins.c @@ -218,6 +218,7 @@ WEAK const PinMap PinMap_UART_TX[] = { {PC_12, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, {PD_3, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, {PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, {PF_2, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART2)}, {NC, NP, 0} }; @@ -252,6 +253,7 @@ WEAK const PinMap PinMap_UART_RX[] = { {PC_11_ALT1, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART4)}, {PD_2, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, {PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, {NC, NP, 0} }; #endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/variant_MARLIN_STM32G0B1RE.cpp b/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/variant_MARLIN_STM32G0B1RE.cpp index d18509f35f..fa4ebfa713 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/variant_MARLIN_STM32G0B1RE.cpp +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1RE/variant_MARLIN_STM32G0B1RE.cpp @@ -130,14 +130,7 @@ WEAK void SystemClock_Config(void) RCC_PeriphCLKInitTypeDef PeriphClkInit = {0}; // Reset clock registers (in case bootloader has changed them) - RCC->CR |= RCC_CR_HSION; - while (!(RCC->CR & RCC_CR_HSIRDY)) - ; - RCC->CFGR = 0x00000000; - RCC->CR = RCC_CR_HSION; - while (RCC->CR & RCC_CR_PLLRDY) - ; - RCC->PLLCFGR = 0x00001000; + SystemInit(); /** Configure the main internal regulator output voltage */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PeripheralPins.c new file mode 100644 index 0000000000..a6b1e44237 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PeripheralPins.c @@ -0,0 +1,480 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ +/* + * Automatically generated from STM32G0B1V(B-C-E)Ix.xml, STM32G0B1V(B-C-E)Tx.xml + * STM32G0B1V(C-E)Ix.xml, STM32G0B1V(C-E)Tx.xml + * STM32G0C1V(C-E)Ix.xml, STM32G0C1V(C-E)Tx.xml + * CubeMX DB release 6.0.30 + */ +#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, 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 + {PB_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_IN10 + {PB_10, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_IN11 + {PB_11, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_IN15 + {PB_12, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 16, 0)}, // ADC1_IN16 + {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // ADC1_IN17 + {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC1_IN18 + {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[] = { + {PA_6, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_6_ALT1, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C3)}, + {PA_10, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PA_10_ALT1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_10_R, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PA_10_R_ALT1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_12, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PB_4, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PB_4_ALT1, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C3)}, + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PB_14, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PC_1, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C3)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_I2C_MODULE_ENABLED +WEAK const PinMap PinMap_I2C_SCL[] = { + {PA_7, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_7_ALT1, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C3)}, + {PA_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PA_9_ALT1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_9_R, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PA_9_R_ALT1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PA_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PB_3, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF8_I2C2)}, + {PB_3_ALT1, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C3)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, + {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PB_13, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C2)}, + {PC_0, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C3)}, + {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_AF2_TIM2, 1, 0)}, // TIM2_CH1 + {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 2, 0)}, // TIM2_CH2 + {PA_1_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 1, 1)}, // TIM15_CH1N + {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 3, 0)}, // TIM2_CH3 + {PA_2_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 1, 0)}, // TIM15_CH1 + {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 4, 0)}, // TIM2_CH4 + {PA_3_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 2, 0)}, // TIM15_CH2 + {PA_4, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM14, 1, 0)}, // TIM14_CH1 + {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 1, 0)}, // TIM2_CH1 + {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 1, 0)}, // TIM3_CH1 + {PA_6_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM16, 1, 0)}, // TIM16_CH1 + {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 1, 1)}, // TIM1_CH1N + {PA_7_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 2, 0)}, // TIM3_CH2 + {PA_7_ALT2, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM14, 1, 0)}, // TIM14_CH1 + {PA_7_ALT3, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM17, 1, 0)}, // TIM17_CH1 + {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 1, 0)}, // TIM1_CH1 + {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 0)}, // TIM1_CH2 + {PA_9_R, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 0)}, // TIM1_CH2 + {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 0)}, // TIM1_CH3 + {PA_10_R, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 0)}, // TIM1_CH3 + {PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 4, 0)}, // TIM1_CH4 + {PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 1, 0)}, // TIM2_CH1 + {PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 1)}, // TIM1_CH2N + {PB_0_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 3, 0)}, // TIM3_CH3 + {PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 1)}, // TIM1_CH3N + {PB_1_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 4, 0)}, // TIM3_CH4 + {PB_1_ALT2, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_TIM14, 1, 0)}, // TIM14_CH1 + {PB_3, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PB_3_ALT1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 2, 0)}, // TIM2_CH2 + {PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 1, 0)}, // TIM3_CH1 + {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 2, 0)}, // TIM3_CH2 + {PB_6, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PB_6_ALT1, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM4, 1, 0)}, // TIM4_CH1 + {PB_6_ALT2, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM16, 1, 1)}, // TIM16_CH1N + {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM4, 2, 0)}, // TIM4_CH2 + {PB_7_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM17, 1, 1)}, // TIM17_CH1N + {PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM4, 3, 0)}, // TIM4_CH3 + {PB_8_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM16, 1, 0)}, // TIM16_CH1 + {PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM4, 4, 0)}, // TIM4_CH4 + {PB_9_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM17, 1, 0)}, // TIM17_CH1 + {PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 3, 0)}, // TIM2_CH3 + {PB_11, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 4, 0)}, // TIM2_CH4 + {PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 1, 1)}, // TIM1_CH1N + {PB_13_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 1, 1)}, // TIM15_CH1N + {PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 1)}, // TIM1_CH2N + {PB_14_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 1, 0)}, // TIM15_CH1 + {PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 1)}, // TIM1_CH3N + {PB_15_ALT1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 1)}, // TIM15_CH1N + {PB_15_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM15, 2, 0)}, // TIM15_CH2 + {PC_1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM15, 1, 0)}, // TIM15_CH1 + {PC_2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM15, 2, 0)}, // TIM15_CH2 + {PC_4, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 1, 0)}, // TIM2_CH1 + {PC_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 2, 0)}, // TIM2_CH2 + {PC_6, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 3, 0)}, // TIM2_CH3 + {PC_6_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 1, 0)}, // TIM3_CH1 + {PC_7, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 4, 0)}, // TIM2_CH4 + {PC_7_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 2, 0)}, // TIM3_CH2 + {PC_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 1, 0)}, // TIM1_CH1 + {PC_8_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 3, 0)}, // TIM3_CH3 + {PC_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 0)}, // TIM1_CH2 + {PC_9_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 4, 0)}, // TIM3_CH4 + {PC_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 0)}, // TIM1_CH3 + {PC_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 4, 0)}, // TIM1_CH4 + {PC_12, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM14, 1, 0)}, // TIM14_CH1 + {PD_0, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM16, 1, 0)}, // TIM16_CH1 + {PD_1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM17, 1, 0)}, // TIM17_CH1 + {PD_2, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 1, 1)}, // TIM1_CH1N + {PD_3, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 2, 1)}, // TIM1_CH2N + {PD_4, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM1, 3, 1)}, // TIM1_CH3N + {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_0, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_TIM16, 1, 0)}, // TIM16_CH1 + {PE_1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_TIM17, 1, 0)}, // TIM17_CH1 + {PE_3, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 1, 0)}, // TIM3_CH1 + {PE_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 2, 0)}, // TIM3_CH2 + {PE_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 3, 0)}, // TIM3_CH3 + {PE_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM3, 4, 0)}, // TIM3_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 + {PF_0, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM14, 1, 0)}, // TIM14_CH1 + {PF_1, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM15, 1, 1)}, // TIM15_CH1N + {PF_12, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_TIM15, 1, 0)}, // TIM15_CH1 + {PF_13, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_TIM15, 2, 0)}, // TIM15_CH2 + {NC, NP, 0} +}; +#endif + +//*** UART *** + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_TX[] = { + {PA_0, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)}, + {PA_2, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, + {PA_2_ALT1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)}, + {PA_4, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {PA_5, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PA_9_R, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PA_14, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PA_14_ALT1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)}, + {PB_0, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART5)}, + {PB_2, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_3, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PB_6, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PB_6_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART1)}, + {PB_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_8_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PB_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_11, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PC_0, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PC_0_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART6)}, + {PC_1, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PC_4, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PC_4_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PC_6, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PC_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PC_10_ALT1, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART4)}, + {PC_12, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PD_3, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PE_8, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART4)}, + {PE_10, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PF_2, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART2)}, + {PF_4, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PF_9, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_RX[] = { + {PA_1, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)}, + {PA_3, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, + {PA_3_ALT1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)}, + {PA_5, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PA_10_R, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PA_13, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PA_15, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)}, + {PB_0, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_1, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART5)}, + {PB_4, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PB_7, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PB_7_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART1)}, + {PB_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_9_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PB_10, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PB_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PC_0, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PC_1, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PC_1_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART6)}, + {PC_5, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PC_5_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PC_7, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PC_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PC_11_ALT1, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART4)}, + {PD_2, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PE_9, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART4)}, + {PE_11, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PF_3, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART2)}, + {PF_5, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PF_10, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {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_AF1_USART2)}, + {PA_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {PA_12, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PA_15, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_USART3)}, + {PA_15_ALT1, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)}, + {PB_1, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, + {PB_1_ALT1, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PB_1_ALT2, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_3, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, + {PB_5, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART5)}, + {PB_12, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PB_14, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_14_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PC_9, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PD_2, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PD_4, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_4_ALT1, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PD_12, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PD_15, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART2)}, + {PE_7, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PF_2, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PF_3, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {PF_6, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PF_11, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {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_AF1_USART2)}, + {PA_6, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, + {PA_6_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PA_6_ALT2, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {PA_11, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)}, + {PB_0, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_LPUART2)}, + {PB_4, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, + {PB_6, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART5)}, + {PB_7, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)}, + {PB_13, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PB_13_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)}, + {PB_15, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PC_8, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART2)}, + {PD_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART2)}, + {PD_5, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PD_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART3)}, + {PD_14, LPUART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART2)}, + {PF_7, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_LPUART1)}, + {PF_7_ALT1, USART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART5)}, + {PF_12, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_USART6)}, + {NC, NP, 0} +}; +#endif + +//*** SPI *** + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_MOSI[] = { + {PA_2, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_4, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PA_10_R, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PA_12, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_5_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SPI3)}, + {PB_7, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PB_11, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PC_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI3)}, + {PD_4, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PD_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI1)}, + {PE_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_MISO[] = { + {PA_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI2)}, + {PA_9_R, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI2)}, + {PA_11, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_2, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SPI3)}, + {PB_6, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI2)}, + {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PC_2, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI3)}, + {PD_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PD_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI1)}, + {PE_14, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_SCLK[] = { + {PA_0, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI2)}, + {PA_1, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PB_3_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SPI3)}, + {PB_8, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {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_AF0_SPI2)}, + {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI3)}, + {PD_1, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PD_8, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI1)}, + {PE_13, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_SSEL[] = { + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SPI3)}, + {PA_8, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {PA_15_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SPI3)}, + {PB_0, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {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_AF0_SPI2)}, + {PD_0, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI2)}, + {PD_9, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_SPI1)}, + {PE_12, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, + {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_AF3_FDCAN1)}, + {PB_0, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PB_5, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PB_8, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PB_12, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PC_2, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PC_4, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_0, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_12, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_14, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {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_AF3_FDCAN1)}, + {PB_1, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PB_6, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PB_9, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PB_13, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PC_3, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {PC_5, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_1, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_13, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN1)}, + {PD_15, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF3_FDCAN2)}, + {NC, NP, 0} +}; +#endif + +//*** No ETHERNET *** + +//*** No QUADSPI *** + +//*** USB *** + +#if defined(HAL_PCD_MODULE_ENABLED) || defined(HAL_HCD_MODULE_ENABLED) +WEAK const PinMap PinMap_USB_DRD_FS[] = { + {PA_4, USB_DRD_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_USB)}, // USB_NOE + {PA_11, USB_DRD_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_DM + {PA_12, USB_DRD_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_DP + {PA_13, USB_DRD_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_USB)}, // USB_NOE + {PA_15, USB_DRD_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_USB)}, // USB_NOE + {PC_9, USB_DRD_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_USB)}, // USB_NOE + {NC, NP, 0} +}; +#endif + +//*** No SD *** + +#endif /* !CUSTOM_PERIPHERAL_PINS */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PinNamesVar.h new file mode 100644 index 0000000000..7d35869fe7 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/PinNamesVar.h @@ -0,0 +1,91 @@ +/* Remap pin name */ +PA_9_R = PA_9 | PREMAP, +PA_10_R = PA_10 | PREMAP, + +/* Alternate pin name */ +PA_1_ALT1 = PA_1 | ALT1, +PA_2_ALT1 = PA_2 | ALT1, +PA_3_ALT1 = PA_3 | ALT1, +PA_4_ALT1 = PA_4 | ALT1, +PA_6_ALT1 = PA_6 | ALT1, +PA_6_ALT2 = PA_6 | ALT2, +PA_7_ALT1 = PA_7 | ALT1, +PA_7_ALT2 = PA_7 | ALT2, +PA_7_ALT3 = PA_7 | ALT3, +PA_9_ALT1 = PA_9 | ALT1, +PA_9_R_ALT1 = PA_9_R | ALT1, +PA_10_ALT1 = PA_10 | ALT1, +PA_10_R_ALT1 = PA_10_R | ALT1, +PA_14_ALT1 = PA_14 | ALT1, +PA_15_ALT1 = PA_15 | ALT1, +PB_0_ALT1 = PB_0 | ALT1, +PB_1_ALT1 = PB_1 | ALT1, +PB_1_ALT2 = PB_1 | ALT2, +PB_3_ALT1 = PB_3 | ALT1, +PB_4_ALT1 = PB_4 | ALT1, +PB_5_ALT1 = PB_5 | ALT1, +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_9_ALT1 = PB_9 | ALT1, +PB_13_ALT1 = PB_13 | ALT1, +PB_14_ALT1 = PB_14 | ALT1, +PB_15_ALT1 = PB_15 | ALT1, +PB_15_ALT2 = PB_15 | ALT2, +PC_0_ALT1 = PC_0 | ALT1, +PC_1_ALT1 = PC_1 | ALT1, +PC_4_ALT1 = PC_4 | ALT1, +PC_5_ALT1 = PC_5 | ALT1, +PC_6_ALT1 = PC_6 | ALT1, +PC_7_ALT1 = PC_7 | ALT1, +PC_8_ALT1 = PC_8 | ALT1, +PC_9_ALT1 = PC_9 | ALT1, +PC_10_ALT1 = PC_10 | ALT1, +PC_11_ALT1 = PC_11 | ALT1, +PD_4_ALT1 = PD_4 | ALT1, +PF_7_ALT1 = PF_7 | ALT1, + +/* SYS_WKUP */ +#ifdef PWR_WAKEUP_PIN1 + SYS_WKUP1 = PA_0, +#endif +#ifdef PWR_WAKEUP_PIN2 + SYS_WKUP2 = PC_13, +#endif +#ifdef PWR_WAKEUP_PIN3 + SYS_WKUP3 = PE_6, +#endif +#ifdef PWR_WAKEUP_PIN4 + SYS_WKUP4 = PA_2, +#endif +#ifdef PWR_WAKEUP_PIN5 + SYS_WKUP5 = PC_5, +#endif +#ifdef PWR_WAKEUP_PIN6 + SYS_WKUP6 = PB_5, +#endif +#ifdef PWR_WAKEUP_PIN7 + SYS_WKUP7 = NC, +#endif +#ifdef PWR_WAKEUP_PIN8 + SYS_WKUP8 = NC, +#endif + +/* USB */ +#ifdef USBCON + USB_DM = PA_11, + USB_DP = PA_12, + #ifdef USB_NOE_PA_4 + USB_NOE = PA_4, + #endif + #ifdef USB_NOE_PA_13 + USB_NOE = PA_13, + #endif + #ifdef USB_NOE_PA_15 + USB_NOE = PA_15, + #endif + #ifdef USB_NOE_PC_9 + USB_NOE = PC_9, + #endif +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/ldscript.ld new file mode 100644 index 0000000000..db07355fb7 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/ldscript.ld @@ -0,0 +1,177 @@ +/** + ****************************************************************************** + * @file LinkerScript.ld + * @author Auto-generated by STM32CubeIDE + * @brief Linker script for STM32G0B1VETx Device from STM32G0 series + * 512Kbytes FLASH + * 144Kbytes RAM + * + * Set heap size, stack size and stack location according + * to application requirements. + * + * Set memory bank area and size if external memory is used + ****************************************************************************** + * @attention + * + *

© 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 + * + ****************************************************************************** + */ + +/* Entry Point */ +ENTRY(Reset_Handler) + +/* Highest address of the user mode stack */ +_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */ + +_Min_Heap_Size = 0x200; /* required amount of heap */ +_Min_Stack_Size = 0x400; /* required amount of stack */ + +/* Memories definition */ +MEMORY +{ + RAM (xrw) : ORIGIN = 0x20000000, LENGTH = LD_MAX_DATA_SIZE + FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET +} + +/* Sections */ +SECTIONS +{ + /* The startup code into "FLASH" Rom type memory */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data into "FLASH" Rom type memory */ + .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 into "FLASH" Rom type memory */ + .rodata : + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab : { + . = ALIGN(4); + *(.ARM.extab* .gnu.linkonce.armextab.*) + . = ALIGN(4); + } >FLASH + + .ARM : { + . = ALIGN(4); + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + . = ALIGN(4); + } >FLASH + + .preinit_array : + { + . = ALIGN(4); + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + . = ALIGN(4); + } >FLASH + + .init_array : + { + . = ALIGN(4); + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + . = ALIGN(4); + } >FLASH + + .fini_array : + { + . = ALIGN(4); + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + . = ALIGN(4); + } >FLASH + + /* Used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections into "RAM" Ram type memory */ + .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 AT> FLASH + + /* Uninitialized data section into "RAM" Ram type memory */ + . = 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" Ram type memory left */ + ._user_heap_stack : + { + . = ALIGN(8); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(8); + } >RAM + + /* Remove information from the compiler libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.cpp b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.cpp new file mode 100644 index 0000000000..8bf88aed49 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.cpp @@ -0,0 +1,213 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ + +#if defined(STM32G0B1xx) +#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/A10 + PB_3, // D19 + PB_4, // D20 + PB_5, // D21 + PB_6, // D22 + PB_7, // D23 + PB_8, // D24 + PB_9, // D25 + PB_10, // D26/A11 + PB_11, // D27/A12 + PB_12, // D28/A13 + PB_13, // D29 + PB_14, // D30 + PB_15, // D31 + PC_0, // D32 + PC_1, // D33 + PC_2, // D34 + PC_3, // D35 + PC_4, // D36/A14 + PC_5, // D37/A15 + PC_6, // D38 + PC_7, // D39 + PC_8, // D40 + PC_9, // D41 + PC_10, // D42 + PC_11, // D43 + PC_12, // D44 + PC_13, // D45 + PC_14, // D46 + PC_15, // D47 + PD_0, // D48 + PD_1, // D49 + PD_2, // D50 + PD_3, // D51 + PD_4, // D52 + PD_5, // D53 + PD_6, // D54 + PD_7, // D55 + PD_8, // D56 + PD_9, // D57 + PD_10, // D58 + PD_11, // D59 + PD_12, // D60 + PD_13, // D61 + PD_14, // D62 + PD_15, // D63 + PE_0, // D64 + PE_1, // D65 + PE_2, // D66 + PE_3, // D67 + PE_4, // D68 + PE_5, // D69 + PE_6, // D70 + PE_7, // D71 + PE_8, // D72 + PE_9, // D73 + PE_10, // D74 + PE_11, // D75 + PE_12, // D76 + PE_13, // D77 + PE_14, // D78 + PE_15, // D79 + PF_0, // D80 + PF_1, // D81 + PF_2, // D82 + PF_3, // D83 + PF_4, // D84 + PF_5, // D85 + PF_6, // D86 + PF_7, // D87 + PF_8, // D88 + PF_9, // D89 + PF_10, // D90 + PF_11, // D91 + PF_12, // D92 + PF_13, // D93 + PA_9_R, // D94 + PA_10_R // D95 +}; + +// 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 + 18, // A10, PB2 + 26, // A11, PB10 + 27, // A12, PB11 + 28, // A13, PB12 + 36, // A14, PC4 + 37 // A15, PC5 +}; + +// ---------------------------------------------------------------------------- + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief System Clock Configuration + * The system Clock is configured as follows : + * System Clock source = PLL (HSE) + * SYSCLK(Hz) = 64000000 + * HCLK(Hz) = 64000000 + * AHB Prescaler = 1 + * APB1 Prescaler = 1 + * PLL_M = 1 + * PLL_N = 24 + * PLL_R = 3 + * PLL_P = 2 + * PLL_Q = 4 + * USB(Hz) = 48000000 (PLLQ) + * @param None + * @retval None + */ +WEAK void SystemClock_Config(void) +{ + RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + RCC_PeriphCLKInitTypeDef PeriphClkInit = {0}; + + // Reset clock registers (in case bootloader has changed them) + SystemInit(); + + /** Configure the main internal regulator output voltage + */ + HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1); + /** Initializes the RCC Oscillators according to the specified parameters + * in the RCC_OscInitTypeDef structure. + */ + 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 = RCC_PLLM_DIV1; + RCC_OscInitStruct.PLL.PLLN = 24; + RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; + RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV4; + RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV3; + 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_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) + { + Error_Handler(); + } + /** Initializes the peripherals clocks + */ + PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USB; + PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_PLL; + if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK) + { + Error_Handler(); + } +} + +#ifdef __cplusplus +} +#endif +#endif /* STM32G0B1xx */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.h b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.h new file mode 100644 index 0000000000..e6f2251db0 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_G0B1VE/variant_MARLIN_STM32G0B1VE.h @@ -0,0 +1,258 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ +#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 PIN_A10 +#define PB3 19 +#define PB4 20 +#define PB5 21 +#define PB6 22 +#define PB7 23 +#define PB8 24 +#define PB9 25 +#define PB10 PIN_A11 +#define PB11 PIN_A12 +#define PB12 PIN_A13 +#define PB13 29 +#define PB14 30 +#define PB15 31 +#define PC0 32 +#define PC1 33 +#define PC2 34 +#define PC3 35 +#define PC4 PIN_A14 +#define PC5 PIN_A15 +#define PC6 38 +#define PC7 39 +#define PC8 40 +#define PC9 41 +#define PC10 42 +#define PC11 43 +#define PC12 44 +#define PC13 45 +#define PC14 46 +#define PC15 47 +#define PD0 48 +#define PD1 49 +#define PD2 50 +#define PD3 51 +#define PD4 52 +#define PD5 53 +#define PD6 54 +#define PD7 55 +#define PD8 56 +#define PD9 57 +#define PD10 58 +#define PD11 59 +#define PD12 60 +#define PD13 61 +#define PD14 62 +#define PD15 63 +#define PE0 64 +#define PE1 65 +#define PE2 66 +#define PE3 67 +#define PE4 68 +#define PE5 69 +#define PE6 70 +#define PE7 71 +#define PE8 72 +#define PE9 73 +#define PE10 74 +#define PE11 75 +#define PE12 76 +#define PE13 77 +#define PE14 78 +#define PE15 79 +#define PF0 80 +#define PF1 81 +#define PF2 82 +#define PF3 83 +#define PF4 84 +#define PF5 85 +#define PF6 86 +#define PF7 87 +#define PF8 88 +#define PF9 89 +#define PF10 90 +#define PF11 91 +#define PF12 92 +#define PF13 93 +#define PA9_R 94 +#define PA10_R 95 + +// Alternate pins number +#define PA1_ALT1 (PA1 | ALT1) +#define PA2_ALT1 (PA2 | ALT1) +#define PA3_ALT1 (PA3 | ALT1) +#define PA4_ALT1 (PA4 | ALT1) +#define PA6_ALT1 (PA6 | ALT1) +#define PA6_ALT2 (PA6 | ALT2) +#define PA7_ALT1 (PA7 | ALT1) +#define PA7_ALT2 (PA7 | ALT2) +#define PA7_ALT3 (PA7 | ALT3) +#define PA9_ALT1 (PA9 | ALT1) +#define PA9_R_ALT1 (PA9_R | ALT1) +#define PA10_ALT1 (PA10 | ALT1) +#define PA10_R_ALT1 (PA10_R | ALT1) +#define PA14_ALT1 (PA14 | ALT1) +#define PA15_ALT1 (PA15 | ALT1) +#define PB0_ALT1 (PB0 | ALT1) +#define PB1_ALT1 (PB1 | ALT1) +#define PB1_ALT2 (PB1 | ALT2) +#define PB3_ALT1 (PB3 | ALT1) +#define PB4_ALT1 (PB4 | ALT1) +#define PB5_ALT1 (PB5 | ALT1) +#define PB6_ALT1 (PB6 | ALT1) +#define PB6_ALT2 (PB6 | ALT2) +#define PB7_ALT1 (PB7 | ALT1) +#define PB8_ALT1 (PB8 | ALT1) +#define PB9_ALT1 (PB9 | ALT1) +#define PB13_ALT1 (PB13 | ALT1) +#define PB14_ALT1 (PB14 | ALT1) +#define PB15_ALT1 (PB15 | ALT1) +#define PB15_ALT2 (PB15 | ALT2) +#define PC0_ALT1 (PC0 | ALT1) +#define PC1_ALT1 (PC1 | ALT1) +#define PC4_ALT1 (PC4 | ALT1) +#define PC5_ALT1 (PC5 | ALT1) +#define PC6_ALT1 (PC6 | ALT1) +#define PC7_ALT1 (PC7 | ALT1) +#define PC8_ALT1 (PC8 | ALT1) +#define PC9_ALT1 (PC9 | ALT1) +#define PC10_ALT1 (PC10 | ALT1) +#define PC11_ALT1 (PC11 | ALT1) +#define PD4_ALT1 (PD4 | ALT1) +#define PF7_ALT1 (PF7 | ALT1) + +#define NUM_DIGITAL_PINS 96 +#define NUM_REMAP_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 PB0 +#endif +#ifndef PIN_SPI_SS3 + #define PIN_SPI_SS3 PD9 +#endif +#ifndef PIN_SPI_MOSI + #define PIN_SPI_MOSI PA2 +#endif +#ifndef PIN_SPI_MISO + #define PIN_SPI_MISO PA6 +#endif +#ifndef PIN_SPI_SCK + #define PIN_SPI_SCK PA1 +#endif + +// I2C definitions +#ifndef PIN_WIRE_SDA + #define PIN_WIRE_SDA PA6 +#endif +#ifndef PIN_WIRE_SCL + #define PIN_WIRE_SCL PA7 +#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 + +/*---------------------------------------------------------------------------- + * 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/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c new file mode 100644 index 0000000000..e484edd1ad --- /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 0000000000..3bd0ed8fcd --- /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 0000000000..6322861033 --- /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 0000000000..bfeb0f9abc --- /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 0000000000..8b67905680 --- /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/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PeripheralPins.c new file mode 100644 index 0000000000..70048173e7 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PeripheralPins.c @@ -0,0 +1,688 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ +/* + * Automatically generated from STM32H723ZETx.xml, STM32H723ZGTx.xml + * STM32H733ZGTx.xml + * CubeMX DB release 6.0.30 + */ +#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 + {PF_3, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC3_INP5 + {PF_4, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC3_INP9 + {PF_5, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC3_INP4 + {PF_6, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC3_INP8 + {PF_7, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC3_INP3 + {PF_8, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC3_INP7 + {PF_9, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC3_INP2 + {PF_10, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC3_INP6 + {PF_11, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_INP2 + {PF_12, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_INP6 + {PF_13, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC2_INP2 + {PF_14, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC2_INP6 + {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)}, + {PF_0, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PF_0_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, + {PF_15, 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)}, + {PF_1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PF_1_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, + {PF_14, 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 + {PF_0, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 1, 0)}, // TIM23_CH1 + {PF_1, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 2, 0)}, // TIM23_CH2 + {PF_2, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 3, 0)}, // TIM23_CH3 + {PF_3, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 4, 0)}, // TIM23_CH4 + {PF_6, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 0)}, // TIM16_CH1 + {PF_6_ALT1, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 1, 0)}, // TIM23_CH1 + {PF_7, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 0)}, // TIM17_CH1 + {PF_7_ALT1, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 2, 0)}, // TIM23_CH2 + {PF_8, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + {PF_8_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 1)}, // TIM16_CH1N + {PF_8_ALT2, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 3, 0)}, // TIM23_CH3 + {PF_9, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + {PF_9_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 1)}, // TIM17_CH1N + {PF_9_ALT2, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 4, 0)}, // TIM23_CH4 + {PF_11, TIM24, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_TIM24, 1, 0)}, // TIM24_CH1 + {PF_12, TIM24, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_TIM24, 2, 0)}, // TIM24_CH2 + {PF_13, TIM24, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_TIM24, 3, 0)}, // TIM24_CH3 + {PF_14, TIM24, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_TIM24, 4, 0)}, // TIM24_CH4 + {PG_12, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 1, 0)}, // TIM23_CH1 + {PG_13, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 2, 0)}, // TIM23_CH2 + {PG_14, TIM23, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF13_TIM23, 3, 0)}, // TIM23_CH3 + {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)}, + {PF_7, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {PG_1, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PG_12, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, + {PG_14, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {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)}, + {PF_6, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {PG_0, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PG_9, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PG_11, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, + {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)}, + {PF_8, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {PG_8, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PG_12, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PG_14, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, + {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)}, + {PF_9, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {PG_13, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, + {PG_13_ALT1, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PG_15, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {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)}, + {PF_9, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI5)}, + {PF_11, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI5)}, + {PG_14, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {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)}, + {PF_8, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI5)}, + {PG_9, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PG_12, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {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)}, + {PF_7, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI5)}, + {PG_11, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PG_13, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {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)}, + {PF_6, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI5)}, + {PG_8, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {PG_10, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {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)}, + {PF_6, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF2_FDCAN3)}, + {PG_10, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF2_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)}, + {PF_7, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF2_FDCAN3)}, + {PG_9, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF2_FDCAN3)}, + {NC, NP, 0} +}; +#endif + +//*** ETHERNET *** + +#ifdef HAL_ETH_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 + {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_12, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD1 + {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 + {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 + {PF_0, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_IO0 + {PF_8, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_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 + {PF_1, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_IO1 + {PF_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_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 + {PF_2, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_IO2 + {PF_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_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 + {PF_3, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_IO3 + {PF_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_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 + {PG_0, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_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 + {PG_1, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_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 + {PG_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 + {PG_10, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_OCTOSPIM_P2)}, // OCTOSPIM_P2_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 + {PG_11, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_IO7 + {PG_14, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_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 + {PF_4, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P2)}, // OCTOSPIM_P2_CLK + {PF_10, 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 + {PG_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS + {PG_12, OCTOSPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_OCTOSPIM_P2)}, // OCTOSPIM_P2_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 + {PG_9, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_SDMMC2)}, // SDMMC2_D0 + {PG_10, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_SDMMC2)}, // SDMMC2_D1 + {PG_11, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D2 + {PG_12, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D3 + {PG_13, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D6 + {PG_14, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D7 + {NC, NP, 0} +}; +#endif + +#endif /* !CUSTOM_PERIPHERAL_PINS */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PinNamesVar.h new file mode 100644 index 0000000000..ad9d80a625 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PinNamesVar.h @@ -0,0 +1,117 @@ +/* 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, +PF_0_ALT1 = PF_0 | ALT1, +PF_1_ALT1 = PF_1 | ALT1, +PF_6_ALT1 = PF_6 | ALT1, +PF_7_ALT1 = PF_7 | ALT1, +PF_8_ALT1 = PF_8 | ALT1, +PF_8_ALT2 = PF_8 | ALT2, +PF_9_ALT1 = PF_9 | ALT1, +PF_9_ALT2 = PF_9 | ALT2, +PG_13_ALT1 = PG_13 | 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_H723ZE/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/ldscript.ld new file mode 100644 index 0000000000..6322861033 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/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_H723ZE/variant_MARLIN_STM32H723ZE.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.cpp new file mode 100644 index 0000000000..4506cf5ce6 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.cpp @@ -0,0 +1,317 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ +#if defined(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 + PF_0, // D78 + PF_1, // D79 + PF_2, // D80 + PF_3, // D81/A14 + PF_4, // D82/A15 + PF_5, // D83/A16 + PF_6, // D84/A17 + PF_7, // D85/A18 + PF_8, // D86/A19 + PF_9, // D87/A20 + PF_10, // D88/A21 + PF_11, // D89/A22 + PF_12, // D90/A23 + PF_13, // D91/A24 + PF_14, // D92/A25 + PF_15, // D93 + PG_0, // D94 + PG_1, // D95 + PG_2, // D96 + PG_3, // D97 + PG_4, // D98 + PG_5, // D99 + PG_6, // D100 + PG_7, // D101 + PG_8, // D102 + PG_9, // D103 + PG_10, // D104 + PG_11, // D105 + PG_12, // D106 + PG_13, // D107 + PG_14, // D108 + PG_15, // D109 + PH_0, // D110 + PH_1, // D111 + PC_2_C, // D112/A26 + PC_3_C // D113/A27 +}; + +// 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 + 81, // A14, PF3 + 82, // A15, PF4 + 83, // A16, PF5 + 84, // A17, PF6 + 85, // A18, PF7 + 86, // A19, PF8 + 87, // A20, PF9 + 88, // A21, PF10 + 89, // A22, PF11 + 90, // A23, PF12 + 91, // A24, PF13 + 92, // A25, PF14 + 112, // A26, PC2_C + 113 // A27, 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_H723ZE/variant_MARLIN_STM32H723ZE.h b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.h new file mode 100644 index 0000000000..d443f5c1fd --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.h @@ -0,0 +1,308 @@ +/* + ******************************************************************************* + * 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 + * + ******************************************************************************* + */ +#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 PF0 78 +#define PF1 79 +#define PF2 80 +#define PF3 PIN_A14 +#define PF4 PIN_A15 +#define PF5 PIN_A16 +#define PF6 PIN_A17 +#define PF7 PIN_A18 +#define PF8 PIN_A19 +#define PF9 PIN_A20 +#define PF10 PIN_A21 +#define PF11 PIN_A22 +#define PF12 PIN_A23 +#define PF13 PIN_A24 +#define PF14 PIN_A25 +#define PF15 93 +#define PG0 94 +#define PG1 95 +#define PG2 96 +#define PG3 97 +#define PG4 98 +#define PG5 99 +#define PG6 100 +#define PG7 101 +#define PG8 102 +#define PG9 103 +#define PG10 104 +#define PG11 105 +#define PG12 106 +#define PG13 107 +#define PG14 108 +#define PG15 109 +#define PH0 110 +#define PH1 111 +#define PC2_C PIN_A26 +#define PC3_C PIN_A27 + +// 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 PF0_ALT1 (PF0 | ALT1) +#define PF1_ALT1 (PF1 | ALT1) +#define PF6_ALT1 (PF6 | ALT1) +#define PF7_ALT1 (PF7 | ALT1) +#define PF8_ALT1 (PF8 | ALT1) +#define PF8_ALT2 (PF8 | ALT2) +#define PF9_ALT1 (PF9 | ALT1) +#define PF9_ALT2 (PF9 | ALT2) +#define PG13_ALT1 (PG13 | ALT1) + +#define NUM_DIGITAL_PINS 114 +#define NUM_DUALPAD_PINS 2 +#define NUM_ANALOG_INPUTS 28 + +// 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 PG10 +#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/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 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 0000000000..4ea275d4cf --- /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 0000000000..b4bb9d45f8 --- /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 0000000000..ef621d57bf --- /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 0000000000..f7e09b8ef0 --- /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 0000000000..1486b21830 --- /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 0000000000..cdb0dc2677 --- /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/share/PlatformIO/variants/MARLIN_LERDGE/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_LERDGE/variant.h index e7bc7c0bc1..e71bb1c5c8 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_LERDGE/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_LERDGE/variant.h @@ -218,6 +218,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MEGA_EXTENDED/pins_arduino.h b/buildroot/share/PlatformIO/variants/MARLIN_MEGA_EXTENDED/pins_arduino.h index 1129f8edae..f6bc62d57b 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_MEGA_EXTENDED/pins_arduino.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_MEGA_EXTENDED/pins_arduino.h @@ -118,324 +118,324 @@ static const uint8_t A15 = PIN_A15; #ifdef ARDUINO_MAIN const uint16_t PROGMEM port_to_mode_PGM[] = { - NOT_A_PORT, - (uint16_t) &DDRA, - (uint16_t) &DDRB, - (uint16_t) &DDRC, - (uint16_t) &DDRD, - (uint16_t) &DDRE, - (uint16_t) &DDRF, - (uint16_t) &DDRG, - (uint16_t) &DDRH, - NOT_A_PORT, - (uint16_t) &DDRJ, - (uint16_t) &DDRK, - (uint16_t) &DDRL, + NOT_A_PORT, + (uint16_t) &DDRA, + (uint16_t) &DDRB, + (uint16_t) &DDRC, + (uint16_t) &DDRD, + (uint16_t) &DDRE, + (uint16_t) &DDRF, + (uint16_t) &DDRG, + (uint16_t) &DDRH, + NOT_A_PORT, + (uint16_t) &DDRJ, + (uint16_t) &DDRK, + (uint16_t) &DDRL, }; const uint16_t PROGMEM port_to_output_PGM[] = { - NOT_A_PORT, - (uint16_t) &PORTA, - (uint16_t) &PORTB, - (uint16_t) &PORTC, - (uint16_t) &PORTD, - (uint16_t) &PORTE, - (uint16_t) &PORTF, - (uint16_t) &PORTG, - (uint16_t) &PORTH, - NOT_A_PORT, - (uint16_t) &PORTJ, - (uint16_t) &PORTK, - (uint16_t) &PORTL, + NOT_A_PORT, + (uint16_t) &PORTA, + (uint16_t) &PORTB, + (uint16_t) &PORTC, + (uint16_t) &PORTD, + (uint16_t) &PORTE, + (uint16_t) &PORTF, + (uint16_t) &PORTG, + (uint16_t) &PORTH, + NOT_A_PORT, + (uint16_t) &PORTJ, + (uint16_t) &PORTK, + (uint16_t) &PORTL, }; const uint16_t PROGMEM port_to_input_PGM[] = { - NOT_A_PIN, - (uint16_t) &PINA, - (uint16_t) &PINB, - (uint16_t) &PINC, - (uint16_t) &PIND, - (uint16_t) &PINE, - (uint16_t) &PINF, - (uint16_t) &PING, - (uint16_t) &PINH, - NOT_A_PIN, - (uint16_t) &PINJ, - (uint16_t) &PINK, - (uint16_t) &PINL, + NOT_A_PIN, + (uint16_t) &PINA, + (uint16_t) &PINB, + (uint16_t) &PINC, + (uint16_t) &PIND, + (uint16_t) &PINE, + (uint16_t) &PINF, + (uint16_t) &PING, + (uint16_t) &PINH, + NOT_A_PIN, + (uint16_t) &PINJ, + (uint16_t) &PINK, + (uint16_t) &PINL, }; const uint8_t PROGMEM digital_pin_to_port_PGM[] = { - // PORTLIST - // ------------------------------------------- - PE , // PE 0 ** 0 ** USART0_RX - PE , // PE 1 ** 1 ** USART0_TX - PE , // PE 4 ** 2 ** PWM2 - PE , // PE 5 ** 3 ** PWM3 - PG , // PG 5 ** 4 ** PWM4 - PE , // PE 3 ** 5 ** PWM5 - PH , // PH 3 ** 6 ** PWM6 - PH , // PH 4 ** 7 ** PWM7 - PH , // PH 5 ** 8 ** PWM8 - PH , // PH 6 ** 9 ** PWM9 - PB , // PB 4 ** 10 ** PWM10 - PB , // PB 5 ** 11 ** PWM11 - PB , // PB 6 ** 12 ** PWM12 - PB , // PB 7 ** 13 ** PWM13 - PJ , // PJ 1 ** 14 ** USART3_TX - PJ , // PJ 0 ** 15 ** USART3_RX - PH , // PH 1 ** 16 ** USART2_TX - PH , // PH 0 ** 17 ** USART2_RX - PD , // PD 3 ** 18 ** USART1_TX - PD , // PD 2 ** 19 ** USART1_RX - PD , // PD 1 ** 20 ** I2C_SDA - PD , // PD 0 ** 21 ** I2C_SCL - PA , // PA 0 ** 22 ** D22 - PA , // PA 1 ** 23 ** D23 - PA , // PA 2 ** 24 ** D24 - PA , // PA 3 ** 25 ** D25 - PA , // PA 4 ** 26 ** D26 - PA , // PA 5 ** 27 ** D27 - PA , // PA 6 ** 28 ** D28 - PA , // PA 7 ** 29 ** D29 - PC , // PC 7 ** 30 ** D30 - PC , // PC 6 ** 31 ** D31 - PC , // PC 5 ** 32 ** D32 - PC , // PC 4 ** 33 ** D33 - PC , // PC 3 ** 34 ** D34 - PC , // PC 2 ** 35 ** D35 - PC , // PC 1 ** 36 ** D36 - PC , // PC 0 ** 37 ** D37 - PD , // PD 7 ** 38 ** D38 - PG , // PG 2 ** 39 ** D39 - PG , // PG 1 ** 40 ** D40 - PG , // PG 0 ** 41 ** D41 - PL , // PL 7 ** 42 ** D42 - PL , // PL 6 ** 43 ** D43 - PL , // PL 5 ** 44 ** D44 - PL , // PL 4 ** 45 ** D45 - PL , // PL 3 ** 46 ** D46 - PL , // PL 2 ** 47 ** D47 - PL , // PL 1 ** 48 ** D48 - PL , // PL 0 ** 49 ** D49 - PB , // PB 3 ** 50 ** SPI_MISO - PB , // PB 2 ** 51 ** SPI_MOSI - PB , // PB 1 ** 52 ** SPI_SCK - PB , // PB 0 ** 53 ** SPI_SS - PF , // PF 0 ** 54 ** A0 - PF , // PF 1 ** 55 ** A1 - PF , // PF 2 ** 56 ** A2 - PF , // PF 3 ** 57 ** A3 - PF , // PF 4 ** 58 ** A4 - PF , // PF 5 ** 59 ** A5 - PF , // PF 6 ** 60 ** A6 - PF , // PF 7 ** 61 ** A7 - PK , // PK 0 ** 62 ** A8 - PK , // PK 1 ** 63 ** A9 - PK , // PK 2 ** 64 ** A10 - PK , // PK 3 ** 65 ** A11 - PK , // PK 4 ** 66 ** A12 - PK , // PK 5 ** 67 ** A13 - PK , // PK 6 ** 68 ** A14 - PK , // PK 7 ** 69 ** A15 - PG , // PG 4 ** 70 ** D70 - PG , // PG 3 ** 71 ** D71 - PJ , // PJ 2 ** 72 ** D72 - PJ , // PJ 3 ** 73 ** D73 - PJ , // PJ 7 ** 74 ** D74 - PJ , // PJ 4 ** 75 ** D75 - PJ , // PJ 5 ** 76 ** D76 - PJ , // PJ 6 ** 77 ** D77 - PE , // PE 2 ** 78 ** D78 - PE , // PE 6 ** 79 ** D79 - PE , // PE 7 ** 80 ** D80 - PD , // PD 4 ** 81 ** D81 - PD , // PD 5 ** 82 ** D82 - PD , // PD 6 ** 83 ** D83 - PH , // PH 2 ** 84 ** D84 - PH , // PH 7 ** 85 ** D85 + // PORTLIST + // ------------------------------------------- + PE , // PE 0 ** 0 ** USART0_RX + PE , // PE 1 ** 1 ** USART0_TX + PE , // PE 4 ** 2 ** PWM2 + PE , // PE 5 ** 3 ** PWM3 + PG , // PG 5 ** 4 ** PWM4 + PE , // PE 3 ** 5 ** PWM5 + PH , // PH 3 ** 6 ** PWM6 + PH , // PH 4 ** 7 ** PWM7 + PH , // PH 5 ** 8 ** PWM8 + PH , // PH 6 ** 9 ** PWM9 + PB , // PB 4 ** 10 ** PWM10 + PB , // PB 5 ** 11 ** PWM11 + PB , // PB 6 ** 12 ** PWM12 + PB , // PB 7 ** 13 ** PWM13 + PJ , // PJ 1 ** 14 ** USART3_TX + PJ , // PJ 0 ** 15 ** USART3_RX + PH , // PH 1 ** 16 ** USART2_TX + PH , // PH 0 ** 17 ** USART2_RX + PD , // PD 3 ** 18 ** USART1_TX + PD , // PD 2 ** 19 ** USART1_RX + PD , // PD 1 ** 20 ** I2C_SDA + PD , // PD 0 ** 21 ** I2C_SCL + PA , // PA 0 ** 22 ** D22 + PA , // PA 1 ** 23 ** D23 + PA , // PA 2 ** 24 ** D24 + PA , // PA 3 ** 25 ** D25 + PA , // PA 4 ** 26 ** D26 + PA , // PA 5 ** 27 ** D27 + PA , // PA 6 ** 28 ** D28 + PA , // PA 7 ** 29 ** D29 + PC , // PC 7 ** 30 ** D30 + PC , // PC 6 ** 31 ** D31 + PC , // PC 5 ** 32 ** D32 + PC , // PC 4 ** 33 ** D33 + PC , // PC 3 ** 34 ** D34 + PC , // PC 2 ** 35 ** D35 + PC , // PC 1 ** 36 ** D36 + PC , // PC 0 ** 37 ** D37 + PD , // PD 7 ** 38 ** D38 + PG , // PG 2 ** 39 ** D39 + PG , // PG 1 ** 40 ** D40 + PG , // PG 0 ** 41 ** D41 + PL , // PL 7 ** 42 ** D42 + PL , // PL 6 ** 43 ** D43 + PL , // PL 5 ** 44 ** D44 + PL , // PL 4 ** 45 ** D45 + PL , // PL 3 ** 46 ** D46 + PL , // PL 2 ** 47 ** D47 + PL , // PL 1 ** 48 ** D48 + PL , // PL 0 ** 49 ** D49 + PB , // PB 3 ** 50 ** SPI_MISO + PB , // PB 2 ** 51 ** SPI_MOSI + PB , // PB 1 ** 52 ** SPI_SCK + PB , // PB 0 ** 53 ** SPI_SS + PF , // PF 0 ** 54 ** A0 + PF , // PF 1 ** 55 ** A1 + PF , // PF 2 ** 56 ** A2 + PF , // PF 3 ** 57 ** A3 + PF , // PF 4 ** 58 ** A4 + PF , // PF 5 ** 59 ** A5 + PF , // PF 6 ** 60 ** A6 + PF , // PF 7 ** 61 ** A7 + PK , // PK 0 ** 62 ** A8 + PK , // PK 1 ** 63 ** A9 + PK , // PK 2 ** 64 ** A10 + PK , // PK 3 ** 65 ** A11 + PK , // PK 4 ** 66 ** A12 + PK , // PK 5 ** 67 ** A13 + PK , // PK 6 ** 68 ** A14 + PK , // PK 7 ** 69 ** A15 + PG , // PG 4 ** 70 ** D70 + PG , // PG 3 ** 71 ** D71 + PJ , // PJ 2 ** 72 ** D72 + PJ , // PJ 3 ** 73 ** D73 + PJ , // PJ 7 ** 74 ** D74 + PJ , // PJ 4 ** 75 ** D75 + PJ , // PJ 5 ** 76 ** D76 + PJ , // PJ 6 ** 77 ** D77 + PE , // PE 2 ** 78 ** D78 + PE , // PE 6 ** 79 ** D79 + PE , // PE 7 ** 80 ** D80 + PD , // PD 4 ** 81 ** D81 + PD , // PD 5 ** 82 ** D82 + PD , // PD 6 ** 83 ** D83 + PH , // PH 2 ** 84 ** D84 + PH , // PH 7 ** 85 ** D85 }; const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { - // PIN IN PORT - // ------------------------------------------- - _BV( 0 ) , // PE 0 ** 0 ** USART0_RX - _BV( 1 ) , // PE 1 ** 1 ** USART0_TX - _BV( 4 ) , // PE 4 ** 2 ** PWM2 - _BV( 5 ) , // PE 5 ** 3 ** PWM3 - _BV( 5 ) , // PG 5 ** 4 ** PWM4 - _BV( 3 ) , // PE 3 ** 5 ** PWM5 - _BV( 3 ) , // PH 3 ** 6 ** PWM6 - _BV( 4 ) , // PH 4 ** 7 ** PWM7 - _BV( 5 ) , // PH 5 ** 8 ** PWM8 - _BV( 6 ) , // PH 6 ** 9 ** PWM9 - _BV( 4 ) , // PB 4 ** 10 ** PWM10 - _BV( 5 ) , // PB 5 ** 11 ** PWM11 - _BV( 6 ) , // PB 6 ** 12 ** PWM12 - _BV( 7 ) , // PB 7 ** 13 ** PWM13 - _BV( 1 ) , // PJ 1 ** 14 ** USART3_TX - _BV( 0 ) , // PJ 0 ** 15 ** USART3_RX - _BV( 1 ) , // PH 1 ** 16 ** USART2_TX - _BV( 0 ) , // PH 0 ** 17 ** USART2_RX - _BV( 3 ) , // PD 3 ** 18 ** USART1_TX - _BV( 2 ) , // PD 2 ** 19 ** USART1_RX - _BV( 1 ) , // PD 1 ** 20 ** I2C_SDA - _BV( 0 ) , // PD 0 ** 21 ** I2C_SCL - _BV( 0 ) , // PA 0 ** 22 ** D22 - _BV( 1 ) , // PA 1 ** 23 ** D23 - _BV( 2 ) , // PA 2 ** 24 ** D24 - _BV( 3 ) , // PA 3 ** 25 ** D25 - _BV( 4 ) , // PA 4 ** 26 ** D26 - _BV( 5 ) , // PA 5 ** 27 ** D27 - _BV( 6 ) , // PA 6 ** 28 ** D28 - _BV( 7 ) , // PA 7 ** 29 ** D29 - _BV( 7 ) , // PC 7 ** 30 ** D30 - _BV( 6 ) , // PC 6 ** 31 ** D31 - _BV( 5 ) , // PC 5 ** 32 ** D32 - _BV( 4 ) , // PC 4 ** 33 ** D33 - _BV( 3 ) , // PC 3 ** 34 ** D34 - _BV( 2 ) , // PC 2 ** 35 ** D35 - _BV( 1 ) , // PC 1 ** 36 ** D36 - _BV( 0 ) , // PC 0 ** 37 ** D37 - _BV( 7 ) , // PD 7 ** 38 ** D38 - _BV( 2 ) , // PG 2 ** 39 ** D39 - _BV( 1 ) , // PG 1 ** 40 ** D40 - _BV( 0 ) , // PG 0 ** 41 ** D41 - _BV( 7 ) , // PL 7 ** 42 ** D42 - _BV( 6 ) , // PL 6 ** 43 ** D43 - _BV( 5 ) , // PL 5 ** 44 ** D44 - _BV( 4 ) , // PL 4 ** 45 ** D45 - _BV( 3 ) , // PL 3 ** 46 ** D46 - _BV( 2 ) , // PL 2 ** 47 ** D47 - _BV( 1 ) , // PL 1 ** 48 ** D48 - _BV( 0 ) , // PL 0 ** 49 ** D49 - _BV( 3 ) , // PB 3 ** 50 ** SPI_MISO - _BV( 2 ) , // PB 2 ** 51 ** SPI_MOSI - _BV( 1 ) , // PB 1 ** 52 ** SPI_SCK - _BV( 0 ) , // PB 0 ** 53 ** SPI_SS - _BV( 0 ) , // PF 0 ** 54 ** A0 - _BV( 1 ) , // PF 1 ** 55 ** A1 - _BV( 2 ) , // PF 2 ** 56 ** A2 - _BV( 3 ) , // PF 3 ** 57 ** A3 - _BV( 4 ) , // PF 4 ** 58 ** A4 - _BV( 5 ) , // PF 5 ** 59 ** A5 - _BV( 6 ) , // PF 6 ** 60 ** A6 - _BV( 7 ) , // PF 7 ** 61 ** A7 - _BV( 0 ) , // PK 0 ** 62 ** A8 - _BV( 1 ) , // PK 1 ** 63 ** A9 - _BV( 2 ) , // PK 2 ** 64 ** A10 - _BV( 3 ) , // PK 3 ** 65 ** A11 - _BV( 4 ) , // PK 4 ** 66 ** A12 - _BV( 5 ) , // PK 5 ** 67 ** A13 - _BV( 6 ) , // PK 6 ** 68 ** A14 - _BV( 7 ) , // PK 7 ** 69 ** A15 - _BV( 4 ) , // PG 4 ** 70 ** D70 - _BV( 3 ) , // PG 3 ** 71 ** D71 - _BV( 2 ) , // PJ 2 ** 72 ** D72 - _BV( 3 ) , // PJ 3 ** 73 ** D73 - _BV( 7 ) , // PJ 7 ** 74 ** D74 - _BV( 4 ) , // PJ 4 ** 75 ** D75 - _BV( 5 ) , // PJ 5 ** 76 ** D76 - _BV( 6 ) , // PJ 6 ** 77 ** D77 - _BV( 2 ) , // PE 2 ** 78 ** D78 - _BV( 6 ) , // PE 6 ** 79 ** D79 - _BV( 7 ) , // PE 7 ** 80 ** D80 - _BV( 4 ) , // PD 4 ** 81 ** D81 - _BV( 5 ) , // PD 5 ** 82 ** D82 - _BV( 6 ) , // PD 6 ** 83 ** D83 - _BV( 2 ) , // PH 2 ** 84 ** D84 - _BV( 7 ) , // PH 7 ** 85 ** D85 + // PIN IN PORT + // ------------------------------------------- + _BV( 0 ) , // PE 0 ** 0 ** USART0_RX + _BV( 1 ) , // PE 1 ** 1 ** USART0_TX + _BV( 4 ) , // PE 4 ** 2 ** PWM2 + _BV( 5 ) , // PE 5 ** 3 ** PWM3 + _BV( 5 ) , // PG 5 ** 4 ** PWM4 + _BV( 3 ) , // PE 3 ** 5 ** PWM5 + _BV( 3 ) , // PH 3 ** 6 ** PWM6 + _BV( 4 ) , // PH 4 ** 7 ** PWM7 + _BV( 5 ) , // PH 5 ** 8 ** PWM8 + _BV( 6 ) , // PH 6 ** 9 ** PWM9 + _BV( 4 ) , // PB 4 ** 10 ** PWM10 + _BV( 5 ) , // PB 5 ** 11 ** PWM11 + _BV( 6 ) , // PB 6 ** 12 ** PWM12 + _BV( 7 ) , // PB 7 ** 13 ** PWM13 + _BV( 1 ) , // PJ 1 ** 14 ** USART3_TX + _BV( 0 ) , // PJ 0 ** 15 ** USART3_RX + _BV( 1 ) , // PH 1 ** 16 ** USART2_TX + _BV( 0 ) , // PH 0 ** 17 ** USART2_RX + _BV( 3 ) , // PD 3 ** 18 ** USART1_TX + _BV( 2 ) , // PD 2 ** 19 ** USART1_RX + _BV( 1 ) , // PD 1 ** 20 ** I2C_SDA + _BV( 0 ) , // PD 0 ** 21 ** I2C_SCL + _BV( 0 ) , // PA 0 ** 22 ** D22 + _BV( 1 ) , // PA 1 ** 23 ** D23 + _BV( 2 ) , // PA 2 ** 24 ** D24 + _BV( 3 ) , // PA 3 ** 25 ** D25 + _BV( 4 ) , // PA 4 ** 26 ** D26 + _BV( 5 ) , // PA 5 ** 27 ** D27 + _BV( 6 ) , // PA 6 ** 28 ** D28 + _BV( 7 ) , // PA 7 ** 29 ** D29 + _BV( 7 ) , // PC 7 ** 30 ** D30 + _BV( 6 ) , // PC 6 ** 31 ** D31 + _BV( 5 ) , // PC 5 ** 32 ** D32 + _BV( 4 ) , // PC 4 ** 33 ** D33 + _BV( 3 ) , // PC 3 ** 34 ** D34 + _BV( 2 ) , // PC 2 ** 35 ** D35 + _BV( 1 ) , // PC 1 ** 36 ** D36 + _BV( 0 ) , // PC 0 ** 37 ** D37 + _BV( 7 ) , // PD 7 ** 38 ** D38 + _BV( 2 ) , // PG 2 ** 39 ** D39 + _BV( 1 ) , // PG 1 ** 40 ** D40 + _BV( 0 ) , // PG 0 ** 41 ** D41 + _BV( 7 ) , // PL 7 ** 42 ** D42 + _BV( 6 ) , // PL 6 ** 43 ** D43 + _BV( 5 ) , // PL 5 ** 44 ** D44 + _BV( 4 ) , // PL 4 ** 45 ** D45 + _BV( 3 ) , // PL 3 ** 46 ** D46 + _BV( 2 ) , // PL 2 ** 47 ** D47 + _BV( 1 ) , // PL 1 ** 48 ** D48 + _BV( 0 ) , // PL 0 ** 49 ** D49 + _BV( 3 ) , // PB 3 ** 50 ** SPI_MISO + _BV( 2 ) , // PB 2 ** 51 ** SPI_MOSI + _BV( 1 ) , // PB 1 ** 52 ** SPI_SCK + _BV( 0 ) , // PB 0 ** 53 ** SPI_SS + _BV( 0 ) , // PF 0 ** 54 ** A0 + _BV( 1 ) , // PF 1 ** 55 ** A1 + _BV( 2 ) , // PF 2 ** 56 ** A2 + _BV( 3 ) , // PF 3 ** 57 ** A3 + _BV( 4 ) , // PF 4 ** 58 ** A4 + _BV( 5 ) , // PF 5 ** 59 ** A5 + _BV( 6 ) , // PF 6 ** 60 ** A6 + _BV( 7 ) , // PF 7 ** 61 ** A7 + _BV( 0 ) , // PK 0 ** 62 ** A8 + _BV( 1 ) , // PK 1 ** 63 ** A9 + _BV( 2 ) , // PK 2 ** 64 ** A10 + _BV( 3 ) , // PK 3 ** 65 ** A11 + _BV( 4 ) , // PK 4 ** 66 ** A12 + _BV( 5 ) , // PK 5 ** 67 ** A13 + _BV( 6 ) , // PK 6 ** 68 ** A14 + _BV( 7 ) , // PK 7 ** 69 ** A15 + _BV( 4 ) , // PG 4 ** 70 ** D70 + _BV( 3 ) , // PG 3 ** 71 ** D71 + _BV( 2 ) , // PJ 2 ** 72 ** D72 + _BV( 3 ) , // PJ 3 ** 73 ** D73 + _BV( 7 ) , // PJ 7 ** 74 ** D74 + _BV( 4 ) , // PJ 4 ** 75 ** D75 + _BV( 5 ) , // PJ 5 ** 76 ** D76 + _BV( 6 ) , // PJ 6 ** 77 ** D77 + _BV( 2 ) , // PE 2 ** 78 ** D78 + _BV( 6 ) , // PE 6 ** 79 ** D79 + _BV( 7 ) , // PE 7 ** 80 ** D80 + _BV( 4 ) , // PD 4 ** 81 ** D81 + _BV( 5 ) , // PD 5 ** 82 ** D82 + _BV( 6 ) , // PD 6 ** 83 ** D83 + _BV( 2 ) , // PH 2 ** 84 ** D84 + _BV( 7 ) , // PH 7 ** 85 ** D85 }; const uint8_t PROGMEM digital_pin_to_timer_PGM[] = { - // TIMERS - // ------------------------------------------- - NOT_ON_TIMER , // PE 0 ** 0 ** USART0_RX - NOT_ON_TIMER , // PE 1 ** 1 ** USART0_TX - TIMER3B , // PE 4 ** 2 ** PWM2 - TIMER3C , // PE 5 ** 3 ** PWM3 - TIMER0B , // PG 5 ** 4 ** PWM4 - TIMER3A , // PE 3 ** 5 ** PWM5 - TIMER4A , // PH 3 ** 6 ** PWM6 - TIMER4B , // PH 4 ** 7 ** PWM7 - TIMER4C , // PH 5 ** 8 ** PWM8 - TIMER2B , // PH 6 ** 9 ** PWM9 - TIMER2A , // PB 4 ** 10 ** PWM10 - TIMER1A , // PB 5 ** 11 ** PWM11 - TIMER1B , // PB 6 ** 12 ** PWM12 - TIMER0A , // PB 7 ** 13 ** PWM13 - NOT_ON_TIMER , // PJ 1 ** 14 ** USART3_TX - NOT_ON_TIMER , // PJ 0 ** 15 ** USART3_RX - NOT_ON_TIMER , // PH 1 ** 16 ** USART2_TX - NOT_ON_TIMER , // PH 0 ** 17 ** USART2_RX - NOT_ON_TIMER , // PD 3 ** 18 ** USART1_TX - NOT_ON_TIMER , // PD 2 ** 19 ** USART1_RX - NOT_ON_TIMER , // PD 1 ** 20 ** I2C_SDA - NOT_ON_TIMER , // PD 0 ** 21 ** I2C_SCL - NOT_ON_TIMER , // PA 0 ** 22 ** D22 - NOT_ON_TIMER , // PA 1 ** 23 ** D23 - NOT_ON_TIMER , // PA 2 ** 24 ** D24 - NOT_ON_TIMER , // PA 3 ** 25 ** D25 - NOT_ON_TIMER , // PA 4 ** 26 ** D26 - NOT_ON_TIMER , // PA 5 ** 27 ** D27 - NOT_ON_TIMER , // PA 6 ** 28 ** D28 - NOT_ON_TIMER , // PA 7 ** 29 ** D29 - NOT_ON_TIMER , // PC 7 ** 30 ** D30 - NOT_ON_TIMER , // PC 6 ** 31 ** D31 - NOT_ON_TIMER , // PC 5 ** 32 ** D32 - NOT_ON_TIMER , // PC 4 ** 33 ** D33 - NOT_ON_TIMER , // PC 3 ** 34 ** D34 - NOT_ON_TIMER , // PC 2 ** 35 ** D35 - NOT_ON_TIMER , // PC 1 ** 36 ** D36 - NOT_ON_TIMER , // PC 0 ** 37 ** D37 - NOT_ON_TIMER , // PD 7 ** 38 ** D38 - NOT_ON_TIMER , // PG 2 ** 39 ** D39 - NOT_ON_TIMER , // PG 1 ** 40 ** D40 - NOT_ON_TIMER , // PG 0 ** 41 ** D41 - NOT_ON_TIMER , // PL 7 ** 42 ** D42 - NOT_ON_TIMER , // PL 6 ** 43 ** D43 - TIMER5C , // PL 5 ** 44 ** D44 - TIMER5B , // PL 4 ** 45 ** D45 - TIMER5A , // PL 3 ** 46 ** D46 - NOT_ON_TIMER , // PL 2 ** 47 ** D47 - NOT_ON_TIMER , // PL 1 ** 48 ** D48 - NOT_ON_TIMER , // PL 0 ** 49 ** D49 - NOT_ON_TIMER , // PB 3 ** 50 ** SPI_MISO - NOT_ON_TIMER , // PB 2 ** 51 ** SPI_MOSI - NOT_ON_TIMER , // PB 1 ** 52 ** SPI_SCK - NOT_ON_TIMER , // PB 0 ** 53 ** SPI_SS - NOT_ON_TIMER , // PF 0 ** 54 ** A0 - NOT_ON_TIMER , // PF 1 ** 55 ** A1 - NOT_ON_TIMER , // PF 2 ** 56 ** A2 - NOT_ON_TIMER , // PF 3 ** 57 ** A3 - NOT_ON_TIMER , // PF 4 ** 58 ** A4 - NOT_ON_TIMER , // PF 5 ** 59 ** A5 - NOT_ON_TIMER , // PF 6 ** 60 ** A6 - NOT_ON_TIMER , // PF 7 ** 61 ** A7 - NOT_ON_TIMER , // PK 0 ** 62 ** A8 - NOT_ON_TIMER , // PK 1 ** 63 ** A9 - NOT_ON_TIMER , // PK 2 ** 64 ** A10 - NOT_ON_TIMER , // PK 3 ** 65 ** A11 - NOT_ON_TIMER , // PK 4 ** 66 ** A12 - NOT_ON_TIMER , // PK 5 ** 67 ** A13 - NOT_ON_TIMER , // PK 6 ** 68 ** A14 - NOT_ON_TIMER , // PK 7 ** 69 ** A15 - NOT_ON_TIMER , // PG 4 ** 70 ** D70 - NOT_ON_TIMER , // PG 3 ** 71 ** D71 - NOT_ON_TIMER , // PJ 2 ** 72 ** D72 - NOT_ON_TIMER , // PJ 3 ** 73 ** D73 - NOT_ON_TIMER , // PJ 7 ** 74 ** D74 - NOT_ON_TIMER , // PJ 4 ** 75 ** D75 - NOT_ON_TIMER , // PJ 5 ** 76 ** D76 - NOT_ON_TIMER , // PJ 6 ** 77 ** D77 - NOT_ON_TIMER , // PE 2 ** 78 ** D78 - NOT_ON_TIMER , // PE 6 ** 79 ** D79 - NOT_ON_TIMER , // PE 7 ** 80 ** D80 - NOT_ON_TIMER , // PD 4 ** 81 ** D81 - NOT_ON_TIMER , // PD 5 ** 82 ** D82 - NOT_ON_TIMER , // PD 6 ** 83 ** D83 - NOT_ON_TIMER , // PH 2 ** 84 ** D84 - NOT_ON_TIMER , // PH 7 ** 85 ** D85 + // TIMERS + // ------------------------------------------- + NOT_ON_TIMER , // PE 0 ** 0 ** USART0_RX + NOT_ON_TIMER , // PE 1 ** 1 ** USART0_TX + TIMER3B , // PE 4 ** 2 ** PWM2 + TIMER3C , // PE 5 ** 3 ** PWM3 + TIMER0B , // PG 5 ** 4 ** PWM4 + TIMER3A , // PE 3 ** 5 ** PWM5 + TIMER4A , // PH 3 ** 6 ** PWM6 + TIMER4B , // PH 4 ** 7 ** PWM7 + TIMER4C , // PH 5 ** 8 ** PWM8 + TIMER2B , // PH 6 ** 9 ** PWM9 + TIMER2A , // PB 4 ** 10 ** PWM10 + TIMER1A , // PB 5 ** 11 ** PWM11 + TIMER1B , // PB 6 ** 12 ** PWM12 + TIMER0A , // PB 7 ** 13 ** PWM13 + NOT_ON_TIMER , // PJ 1 ** 14 ** USART3_TX + NOT_ON_TIMER , // PJ 0 ** 15 ** USART3_RX + NOT_ON_TIMER , // PH 1 ** 16 ** USART2_TX + NOT_ON_TIMER , // PH 0 ** 17 ** USART2_RX + NOT_ON_TIMER , // PD 3 ** 18 ** USART1_TX + NOT_ON_TIMER , // PD 2 ** 19 ** USART1_RX + NOT_ON_TIMER , // PD 1 ** 20 ** I2C_SDA + NOT_ON_TIMER , // PD 0 ** 21 ** I2C_SCL + NOT_ON_TIMER , // PA 0 ** 22 ** D22 + NOT_ON_TIMER , // PA 1 ** 23 ** D23 + NOT_ON_TIMER , // PA 2 ** 24 ** D24 + NOT_ON_TIMER , // PA 3 ** 25 ** D25 + NOT_ON_TIMER , // PA 4 ** 26 ** D26 + NOT_ON_TIMER , // PA 5 ** 27 ** D27 + NOT_ON_TIMER , // PA 6 ** 28 ** D28 + NOT_ON_TIMER , // PA 7 ** 29 ** D29 + NOT_ON_TIMER , // PC 7 ** 30 ** D30 + NOT_ON_TIMER , // PC 6 ** 31 ** D31 + NOT_ON_TIMER , // PC 5 ** 32 ** D32 + NOT_ON_TIMER , // PC 4 ** 33 ** D33 + NOT_ON_TIMER , // PC 3 ** 34 ** D34 + NOT_ON_TIMER , // PC 2 ** 35 ** D35 + NOT_ON_TIMER , // PC 1 ** 36 ** D36 + NOT_ON_TIMER , // PC 0 ** 37 ** D37 + NOT_ON_TIMER , // PD 7 ** 38 ** D38 + NOT_ON_TIMER , // PG 2 ** 39 ** D39 + NOT_ON_TIMER , // PG 1 ** 40 ** D40 + NOT_ON_TIMER , // PG 0 ** 41 ** D41 + NOT_ON_TIMER , // PL 7 ** 42 ** D42 + NOT_ON_TIMER , // PL 6 ** 43 ** D43 + TIMER5C , // PL 5 ** 44 ** D44 + TIMER5B , // PL 4 ** 45 ** D45 + TIMER5A , // PL 3 ** 46 ** D46 + NOT_ON_TIMER , // PL 2 ** 47 ** D47 + NOT_ON_TIMER , // PL 1 ** 48 ** D48 + NOT_ON_TIMER , // PL 0 ** 49 ** D49 + NOT_ON_TIMER , // PB 3 ** 50 ** SPI_MISO + NOT_ON_TIMER , // PB 2 ** 51 ** SPI_MOSI + NOT_ON_TIMER , // PB 1 ** 52 ** SPI_SCK + NOT_ON_TIMER , // PB 0 ** 53 ** SPI_SS + NOT_ON_TIMER , // PF 0 ** 54 ** A0 + NOT_ON_TIMER , // PF 1 ** 55 ** A1 + NOT_ON_TIMER , // PF 2 ** 56 ** A2 + NOT_ON_TIMER , // PF 3 ** 57 ** A3 + NOT_ON_TIMER , // PF 4 ** 58 ** A4 + NOT_ON_TIMER , // PF 5 ** 59 ** A5 + NOT_ON_TIMER , // PF 6 ** 60 ** A6 + NOT_ON_TIMER , // PF 7 ** 61 ** A7 + NOT_ON_TIMER , // PK 0 ** 62 ** A8 + NOT_ON_TIMER , // PK 1 ** 63 ** A9 + NOT_ON_TIMER , // PK 2 ** 64 ** A10 + NOT_ON_TIMER , // PK 3 ** 65 ** A11 + NOT_ON_TIMER , // PK 4 ** 66 ** A12 + NOT_ON_TIMER , // PK 5 ** 67 ** A13 + NOT_ON_TIMER , // PK 6 ** 68 ** A14 + NOT_ON_TIMER , // PK 7 ** 69 ** A15 + NOT_ON_TIMER , // PG 4 ** 70 ** D70 + NOT_ON_TIMER , // PG 3 ** 71 ** D71 + NOT_ON_TIMER , // PJ 2 ** 72 ** D72 + NOT_ON_TIMER , // PJ 3 ** 73 ** D73 + NOT_ON_TIMER , // PJ 7 ** 74 ** D74 + NOT_ON_TIMER , // PJ 4 ** 75 ** D75 + NOT_ON_TIMER , // PJ 5 ** 76 ** D76 + NOT_ON_TIMER , // PJ 6 ** 77 ** D77 + NOT_ON_TIMER , // PE 2 ** 78 ** D78 + NOT_ON_TIMER , // PE 6 ** 79 ** D79 + NOT_ON_TIMER , // PE 7 ** 80 ** D80 + NOT_ON_TIMER , // PD 4 ** 81 ** D81 + NOT_ON_TIMER , // PD 5 ** 82 ** D82 + NOT_ON_TIMER , // PD 6 ** 83 ** D83 + NOT_ON_TIMER , // PH 2 ** 84 ** D84 + NOT_ON_TIMER , // PH 7 ** 85 ** D85 }; #endif 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 0000000000..63763e9db7 --- /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 0000000000..2424885937 --- /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 0000000000..3640bd1616 --- /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 0000000000..e83d35496a --- /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 0000000000..cfc7f0affd --- /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 0000000000..51c2935798 --- /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/buildroot/share/PlatformIO/variants/MARLIN_MKS_SKIPR_V1/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_MKS_SKIPR_V1/variant.h index 51a9e92286..0b6e6142ba 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_MKS_SKIPR_V1/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_SKIPR_V1/variant.h @@ -167,6 +167,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/PeripheralPins.c index 03d75bbfa8..edefd00f7a 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/PeripheralPins.c +++ b/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/PeripheralPins.c @@ -161,7 +161,7 @@ WEAK const PinMap PinMap_PWM[] = { //{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 LCD_PINS_ENABLE + //{PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N LCD_PINS_EN //{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 @@ -292,7 +292,7 @@ WEAK const PinMap PinMap_USB_OTG_HS[] = { //{PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_ID CS (LCD) //{PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_HS_VBUS LCD_PINS_D4 //{PB_14, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DM MISO (LCD) - //{PB_15, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DP LCD_PINS_ENABLE + //{PB_15, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DP LCD_PINS_EN #else //{PA_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D0 Z_STEP //{PA_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_CK SPI-SCK diff --git a/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/variant.h index 30c3d95349..5232a1eaf2 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/variant.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_TH3D_EZBOARD_V2/variant.h @@ -121,6 +121,7 @@ extern "C" { #ifdef __cplusplus } // extern "C" #endif + /*---------------------------------------------------------------------------- * Arduino objects - C++ only *----------------------------------------------------------------------------*/ 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 80261d3027..5664a1ad2c 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 6ffa244746..24458fe79a 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 diff --git a/buildroot/share/cmake/CMakeLists.txt b/buildroot/share/cmake/CMakeLists.txt index 9d3f24f990..b861f79b95 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}) - - 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) + 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) 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/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(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() #====================================================================# diff --git a/buildroot/share/dwin/bin/README.md b/buildroot/share/dwin/bin/README.md index 9d513bc0c8..a00d679bf8 100644 --- a/buildroot/share/dwin/bin/README.md +++ b/buildroot/share/dwin/bin/README.md @@ -4,7 +4,7 @@ Tools for processing `.ICO` files used by DWIN displays. ## Introduction -The DWIN LCDs that come with the Creality Ender 3 v2 and other 3D printers contain image and container files stored on them which are used to draw various the UI elements. +The DWIN LCDs that come with the Creality Ender-3 v2 and other 3D printers contain image and container files stored on them which are used to draw various the UI elements. Standard `.JPG` files can be installed for things like the boot screen, and `.ICO` files can contain several images within a structured file format. @@ -42,15 +42,15 @@ These tools must be run from a terminal with access to an installed Python 3 and Pillow is most easily installed with pip: - python3 -m pip install pillow + python3 -m pip install pillow ## Examples These tools process an `.ICO` file that you specify. The safest method is to create a folder and copy your `.ICO` file there. For example: - $ mkdir hackicons - $ cp 9.ICO hackicons - $ cd hackicons + $ mkdir hackicons + $ cp 9.ICO hackicons + $ cd hackicons The following explanations will refer back to this layout. @@ -64,19 +64,19 @@ If you want to edit the individual icons stored in an ICO file (or add more imag In this example we're extracting the constituent JPEG files from `9.ICO` and storing them in a folder named `icons`. As each file is extracted the script reports its index number, byte offset, size, dimensions, and filename: - $ cd buildroot/share/dwin - $ ./bin/splitIco.py 9.ICO icons-9 - Splitting 9.ICO into dir icons - Splitting Entry Data... - 00: offset: 0x001000 len: 0x10a2 width: 130 height: 17 - Wrote 4258 bytes to icons/000-ICON_LOGO.jpg - 01: offset: 0x0020a2 len: 0x0eac width: 110 height: 100 - Wrote 3756 bytes to icons/001-ICON_Print_0.jpg - 02: offset: 0x002f4e len: 0x0eaa width: 110 height: 100 - Wrote 3754 bytes to icons/002-ICON_Print_1.jpg - ... - 91: offset: 0x0345fc len: 0x0d89 width: 110 height: 100 - Wrote 3465 bytes to icons/091-ICON_Info_1.jpg + $ cd buildroot/share/dwin + $ ./bin/splitIco.py 9.ICO icons-9 + Splitting 9.ICO into dir icons + Splitting Entry Data... + 00: offset: 0x001000 len: 0x10a2 width: 130 height: 17 + Wrote 4258 bytes to icons/000-ICON_LOGO.jpg + 01: offset: 0x0020a2 len: 0x0eac width: 110 height: 100 + Wrote 3756 bytes to icons/001-ICON_Print_0.jpg + 02: offset: 0x002f4e len: 0x0eaa width: 110 height: 100 + Wrote 3754 bytes to icons/002-ICON_Print_1.jpg + ... + 91: offset: 0x0345fc len: 0x0d89 width: 110 height: 100 + Wrote 3465 bytes to icons/091-ICON_Info_1.jpg Once the individual JPEG files have been saved they can be edited using common graphics applications like Photoshop. JPEG files are inherently lossy and will usually contain ugly artifacts, so cleanup may be needed before they are re-exported. Keep the limits of bank size in mind when exporting images and try to find the best balance between compressed size and image quality. @@ -84,9 +84,9 @@ Once the individual JPEG files have been saved they can be edited using common g After editing images you'll create a new `9.ICO` archive with `makeIco.py` like so: - $ cd buildroot/share/dwin - $ ./bin/makeIco.py icons-3 3.ICO - Making .ico file '3.ICO' from contents of 'icons-3' - Scanning icon directory icons-3 - ...Scanned 16 icon files - Scanning done. 16 icons included. + $ cd buildroot/share/dwin + $ ./bin/makeIco.py icons-3 3.ICO + Making .ico file '3.ICO' from contents of 'icons-3' + Scanning icon directory icons-3 + ...Scanned 16 icon files + Scanning done. 16 icons included. diff --git a/buildroot/share/fonts/bdf2u8g/Makefile b/buildroot/share/fonts/bdf2u8g/Makefile new file mode 100644 index 0000000000..cb00c7bb74 --- /dev/null +++ b/buildroot/share/fonts/bdf2u8g/Makefile @@ -0,0 +1,15 @@ +CFLAGS = -g -Wall +#CFLAGS = -O4 -Wall + +SRC = bdf2u8g.c + +OBJ = $(SRC:.c=.o) + +bdf2u8g: $(OBJ) + $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ) -o bdf2u8g.exe + +clean: + -rm $(OBJ) bdf2u8g.exe + +test: + ./bdf2u8g.exe -f 2 ../bdf/9x18.bdf u8g_aafont_9x18 u8g_aafont_9x18.c diff --git a/buildroot/share/fonts/bdf2u8g/bdf2u8g.c b/buildroot/share/fonts/bdf2u8g/bdf2u8g.c new file mode 100644 index 0000000000..0421bbd87f --- /dev/null +++ b/buildroot/share/fonts/bdf2u8g/bdf2u8g.c @@ -0,0 +1,1214 @@ +/* + general font collections + http://www.smashingmagazine.com/2007/11/08/40-excellent-freefonts-for-professional-design/ + http://techmagazine.ws/most-popular-free-quality-fonts/ + http://openfontlibrary.org/ + bitmap font collections + http://www.orgdot.com/aliasfonts/ (includes links) + http://www.04.jp.org/ + http://www.miniml.com + http://www.fontspace.com/010bus + + http://en.wikipedia.org/wiki/Unicode_typeface + da könnten auch ein paar fonts dabei sein, die die m2tklib sonderzeichen beinhalten: + Caslon Roman http://en.wikipedia.org/wiki/Caslon_Roman + Charis Sil http://en.wikipedia.org/wiki/Charis_SIL + DejaVu Sans http://en.wikipedia.org/wiki/DejaVu_fonts + Doulos http://en.wikipedia.org/wiki/Doulos_SIL + Free Serif http://en.wikipedia.org/wiki/FreeSerif http://ftp.gnu.org/gnu/freefont/ + --> keine box, aber es gibt pfeile/invertierte pfeile und kreise für m2tklib + Gentium Plus ???? http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=Gentium_download#02b091ae + --> keine graphic + GNU Unifont http://en.wikipedia.org/wiki/GNU_Unifont, http://unifoundry.com/unifont.html + + Titus cyberbit Basic http://en.wikipedia.org/wiki/TITUS_Cyberbit_Basic + + fonts + Gentium + http://openfontlibrary.org/font/gentium + license: OFL + Old-Standard + http://openfontlibrary.org/font/old-standard + license: OFL + Hanuman + http://openfontlibrary.org/font/hanumanb + license: OFL + FreeUniversal + http://openfontlibrary.org/font/freeuniversal + license: OFL + FriendShip-Code <--- nicht so sicher... + http://openfontlibrary.org/font/friendship-code + license: CC-BY-SA + LinuxLibertine + http://de.wikipedia.org/wiki/Linux_Libertine + http://sourceforge.net/projects/linuxlibertine/files/linuxlibertine/5.1.3-2/ + license: OFL + DidactGothic + source: http://openfontlibrary.org/ + judson + source: http://openfontlibrary.org/ + unicons + source: http://openfontlibrary.org/ + license: OFL + suggested pt: 26, 30 + org_V01, fixed_V0 + source: http://www.orgdot.com/aliasfonts/ + license: open source, individual, cite required + suggested pt: 8 + 04b_03b.zip 04b_03.zip 04b_09.zip 04b_11.zip 04b_19.zip 04b_21.zip 04b_25.zip 04b_30.zip + source: http://www.04.jp.org/ + license: "Freeware: You may use them as you like" + 7px4bus + source: http://www.fontspace.com/010bus + license: Licensed as: Freeware, Commercial use allowed! + suggested 7pt + 8pxbus + source: http://www.fontspace.com/010bus + license: Licensed as: Freeware, Commercial use allowed! + suggested 8pt + +*/ + +/* + only supports metric set "0" + assume DWIDTH second arg to be 0 for all glyphs + assumes that (0,0) of the BBX is placed on the base line + assumes ISO10646 encoding of the BDF file + + font information + offset + 0 font format + 1 FONTBOUNDINGBOX width unsigned + 2 FONTBOUNDINGBOX height unsigned + 3 FONTBOUNDINGBOX x-offset signed + 4 FONTBOUNDINGBOX y-offset signed + 5 capital A height unsigned + 6 start 'A' + 8 start 'a' + 10 encoding start + 11 encoding end + 12 descent 'g' negative: below baseline + 13 font max ascent + 14 font min decent negative: below baseline + 15 xascent (ascent of "(") + 16 xdescent (descent of ")") + +format 0 + glyph information + offset + 0 BBX width unsigned + 1 BBX height unsigned + 2 data size unsigned (BBX width + 7)/8 * BBX height + 3 DWIDTH signed + 4 BBX xoffset signed + 5 BBX yoffset signed + +format 1 + 0 BBX xoffset signed --> upper 4 Bit + 0 BBX yoffset signed --> lower 4 Bit + 1 BBX width unsigned --> upper 4 Bit + 1 BBX height unsigned --> lower 4 Bit + 2 data size unsigned -(BBX width + 7)/8 * BBX height --> lower 4 Bit + 2 DWIDTH signed --> upper 4 Bit + byte 0 == 255 indicates empty glyph + +format 2 + like format 0, but 4 gray levels for the glyph (4 pixel per byte in the glyph data) + + The glyph bitmap size is defined by BBX width and BBX height + number of bytes in the bitmap data (BBX width + 7)/8 * BBX height (format 0 and 1) + + draw_text(x,y,str) + get_text_frame(x,y,str, &x1, &y1, &width, &height) + frame( x1, y1, width, height) + underline( x1, y-1, width ) + + size of the surrounding bbox + + width = - xoffset(c1) + DWIDTH(c1) + DWIDTH(c2) + ... + DWIDTH(cn-1) + width(cn) + xoffset(cn) + height = FONTBOUNDINGBOX height + x1 = x + xoffset(c1) + y1 = y + yoffset(c1) + +ISO-8859-1 was incorporated as the first 256 code points of ISO/IEC 10646 and Unicode. + +*/ + +#include +#include +#include +#include + +#define BDF2U8G_COMPACT_OUTPUT +#define BDF2U8G_VERSION "1.01" +//#define VERBOSE + +/*=== forward declaration ===*/ +void bdf_aa_ClearDoShow(void); +void bdf_aa_Do(void); + +/*=== result data ===*/ +#define DATA_BUF_SIZE (1024 * 64) +unsigned char data_buf[DATA_BUF_SIZE]; +int data_pos = 0; + +void data_Init(void) { + data_pos = 0; +} + +void data_Put(unsigned char c) { + data_buf[data_pos] = c; + data_pos++; +} + +void data_Write(FILE *out_fp, const char *indent) { + int i; + int bytes_per_line = 16; + for (i = 0; i < data_pos; i++) { + fprintf(out_fp, "0x%02X", data_buf[i]); + if (i + 1 != data_pos) + fprintf(out_fp, ","); + if ((i + 1) % bytes_per_line == 0) + fprintf(out_fp, "\n%s", indent); + } +} + +/*=== low level parser ===*/ +#define P_BUF_SIZE (1024 * 4) +int p_current_char; +const char *p_line; +char p_buf[P_BUF_SIZE]; + +/* put next char into p_current_char */ +static int p_next_char(void) { + p_current_char = *p_line; + if (p_current_char == '\0') + return 0; + p_line++; + return 1; +} + +int p_first_char(const char *line) { + p_line = line; + return p_next_char(); +} + +void p_err(const char *msg) { +} + +int p_skip_space(void) { + for (;;) { + if (p_current_char == 0 || p_current_char > 32) + break; + if (p_next_char() == 0) + return 0; + } + return 1; +} + +/* put identifier into p_buf */ +int p_get_identifier(void) { + int i = 0; + if (p_current_char == '\0') + return p_err("unexpected EOF (expected identifier)"), 0; + for (;;) { + if (p_current_char <= 32) + break; + p_buf[i++] = p_current_char; + if (p_next_char() == 0) + break; + } + p_buf[i++] = '\0'; + p_skip_space(); + return 1; +} + +/* put identifier into p_buf */ +int p_get_identifier_with_blank(void) { + int i = 0; + for (;;) { + if (p_current_char < 32) + break; + p_buf[i++] = p_current_char; + if (p_next_char() == 0) + break; + } + p_buf[i++] = '\0'; + p_skip_space(); + return 1; +} + +int p_get_string(void) { + int i = 0; + if (p_current_char == '\0') + return 0; + if (p_current_char != '\"') + return p_err("\" expected"), 0; + if (p_next_char() == 0) + return p_err("unexpected EOF (\")"), 0; + for (;;) { + if (p_current_char == '\\') { + if (p_next_char() == 0) + return p_err("unexpected EOF (\\)"), 0; + } + else if (p_current_char == '\"') { + p_next_char(); + break; + } + p_buf[i++] = p_current_char; + if (p_next_char() == 0) + return p_err("unexpected EOF (\")"), 0; + } + p_buf[i] = '\0'; + return 1; +} + +int p_get_any(void) { + if (p_current_char == '\"') + return p_get_string(); + return p_get_identifier(); +} + +int p_get_val(void) { + p_get_any(); + return atoi(p_buf); +} + +int p_get_hex(void) { + int value = 0; + if (p_current_char >= '0' && p_current_char <= '9') + value = p_current_char - '0'; + else if (p_current_char >= 'a' && p_current_char <= 'f') + value = p_current_char - 'a' + 10; + else if (p_current_char >= 'A' && p_current_char <= 'F') + value = p_current_char - 'A' + 10; + p_next_char(); + return value; +} + +int p_get_hex_byte(void) { + int v; + v = p_get_hex(); + v *= 16; + v += p_get_hex(); + return v; +} + +/*=== encoding mapping ===*/ +/* the internal u8g index number (0..255) is mapped to the unicode number */ +/* for the conversion we need the reverse search */ +/* 0 is special and means not found */ +int map_u8g_to_unicode[256]; + +int map_UnicodeToU8G(int unicode) { + int i; + for (i = 0; i < 256; i++) + if (map_u8g_to_unicode[i] == unicode) + return i; + return 0; +} + +void map_Init(void) { + int i; + map_u8g_to_unicode[0] = 0; + for (i = 0; i < 256; i++) map_u8g_to_unicode[i] = i; +} + +void map_UpperLowerPage(int lower_page, int upper_page, int shift, int upper_shift) { + int i; + int encoding; + int tmp[256]; + // map_u8g_to_unicode[0] = 0; + for (i = 0; i < 128; i++) { + encoding = i + lower_page * 128; + map_u8g_to_unicode[i] = encoding; + } + + for (i = 128; i < 256; i++) { + encoding = i - 128 + upper_page * 128; + if (i + upper_shift < 256) + map_u8g_to_unicode[i + upper_shift] = encoding; + } + + for (i = 0; i < 256; i++) tmp[i] = map_u8g_to_unicode[i]; + + for (i = 0; i < shift; i++) map_u8g_to_unicode[i] = -1; + + for (i = shift; i < 256; i++) map_u8g_to_unicode[i] = tmp[(i + 256 - shift) % 256]; + /* + printf("map_u8g_to_unicode[ 32 ] = %d\n", map_u8g_to_unicode[ 32 ]); + printf("map_u8g_to_unicode[ 33 ] = %d\n", map_u8g_to_unicode[ 33 ]); + */ +} + +/*=== store bdf file positions ===*/ + +long bdf_last_line_start_pos; +long bdf_encoding_pos[256]; + +void bdf_InitFilePos(void) { + int i; + for (i = 0; i < 256; i++) bdf_encoding_pos[i] = 0; +} + +void bdf_SetFilePos(FILE *fp, int encoding) { + if (encoding < 0) + return; + if (bdf_encoding_pos[encoding] == 0L) + return; + fseek(fp, bdf_encoding_pos[encoding], SEEK_SET); + // fprintf(stderr, "setting file for encoding %d to pos %ld\n", encoding, bdf_encoding_pos[encoding]); +} + +int bdf_IsEncodingAvailable(int encoding) { + if (bdf_encoding_pos[encoding] == 0L) + // printf("encoding %d not availabe\n", encoding); + return 0; + return 1; +} + +void bdf_StoreFilePos(int encoding, long pos) { + // if ( encoding == 33 ) + // printf("encoding %d at pos %ld\n", encoding, pos); + if (bdf_encoding_pos[encoding] != 0L) + return; + bdf_encoding_pos[encoding] = pos; +} + +/*=== bdf file read ===*/ + +int bdf_font_format = 0; + +#define BDF_STATE_FONT_DATA 0 +#define BDF_STATE_ENCODING 1 + +int bdf_state = BDF_STATE_FONT_DATA; +int bdf_requested_encoding = 0; + +#define BDF_LINE_MAX (1024 * 4) +#define BDF_LINE_STATE_KEYWORDS 0 +#define BDF_LINE_STATE_BITMAP 1 +#define BDF_MAX_HEIGHT 200 +#define BDF_AA_OFFSET 1 + +char bdf_copyright[BDF_LINE_MAX]; +char bdf_font[BDF_LINE_MAX]; +unsigned char bdf_bitmap_line[BDF_MAX_HEIGHT][20]; +unsigned char bdf_aa_bitmap_line[BDF_MAX_HEIGHT + 2 * BDF_AA_OFFSET][(20 + 2 * BDF_AA_OFFSET) * 8]; + +int bdf_line_state = BDF_LINE_STATE_KEYWORDS; +int bdf_line_bm_line = 0; + +int bdf_font_size; /* point font size */ + +int bdf_font_width; /* FONTBOUNDINGBOX arg 1 */ +int bdf_font_height; /* FONTBOUNDINGBOX arg 2 */ +int bdf_font_x; /* FONTBOUNDINGBOX arg 3 */ +int bdf_font_y; /* FONTBOUNDINGBOX arg 4 */ + +int bdf_capital_A_height; +int bdf_capital_1_height; +int bdf_lower_g_descent; + +int bdf_char_width; /* BBX arg 1 */ +int bdf_char_max_width; +int bdf_char_height; /* BBX arg 2 */ +int bdf_char_ascent; /* defined as BBX arg 2 + BBX arg 4 */ +int bdf_char_xascent; +int bdf_char_xdescent; +int bdf_char_max_ascent; +int bdf_char_max_height; +int bdf_char_x; /* BBX arg 3 */ +int bdf_char_max_x; +int bdf_char_min_x; +int bdf_char_y; /* BBX arg 4 */ +int bdf_char_max_y; +int bdf_char_min_y; + +int bdf_delta_x_default = -1; +int bdf_delta_x = -1; /* DWIDTH arg 1 */ +int bdf_delta_max_x; +int bdf_delta_min_x; +int bdf_delta_y; /* DWIDTH arg 2 */ +int bdf_delta_max_y; +int bdf_delta_min_y; + +int bdf_glyph_data_len; +int bdf_glyph_data_max_len; + +int bdf_encoding; + +int bdf_encoding_65_pos; +int bdf_encoding_97_pos; +int bdf_is_encoding_successfully_done; + +char bdf_info[32000 * 2]; + +int bdf_is_put_glyph_completed = 0; /* indicator, when the glyph has been processed */ + +void bdf_ResetMax(void) { + bdf_char_max_width = 0; + bdf_char_max_height = 0; + bdf_char_max_x = 0; + bdf_char_max_y = 0; + bdf_delta_max_x = 0; + bdf_delta_max_y = 0; + bdf_char_min_x = 0; + bdf_char_min_y = 0; + bdf_delta_min_x = 0; + bdf_delta_min_y = 0; + bdf_glyph_data_max_len = 0; + bdf_char_max_ascent = 0; + bdf_char_xascent = 0; + bdf_char_xdescent = 0; +} + +void bdf_UpdateMax(void) { + if (bdf_char_max_width < bdf_char_width) + bdf_char_max_width = bdf_char_width; + if (bdf_char_max_height < bdf_char_height) + bdf_char_max_height = bdf_char_height; + + if (bdf_char_max_x < bdf_char_x) + bdf_char_max_x = bdf_char_x; + + if (bdf_char_max_y < bdf_char_y) + bdf_char_max_y = bdf_char_y; + + if (bdf_delta_max_x < bdf_delta_x) + bdf_delta_max_x = bdf_delta_x; + if (bdf_delta_max_y < bdf_delta_y) + bdf_delta_max_y = bdf_delta_y; + + if (bdf_char_min_x > bdf_char_x) + bdf_char_min_x = bdf_char_x; + + if (bdf_char_min_y > bdf_char_y) + bdf_char_min_y = bdf_char_y; + + if (bdf_delta_min_x > bdf_delta_x) + bdf_delta_min_x = bdf_delta_x; + if (bdf_delta_min_y > bdf_delta_y) + bdf_delta_min_y = bdf_delta_y; + + if (bdf_glyph_data_max_len < bdf_glyph_data_len) + bdf_glyph_data_max_len = bdf_glyph_data_len; + + if (bdf_char_max_ascent < bdf_char_ascent) + bdf_char_max_ascent = bdf_char_ascent; +} + +void bdf_ShowGlyph(void) { + #ifdef VERBOSE + int x, y, byte, bit; + int gx, gy; + char *p; + gy = bdf_char_height - 1 + bdf_char_y; + printf("bbx %d %d %d %d encoding %d\n", bdf_char_width, bdf_char_height, bdf_char_x, bdf_char_y, bdf_encoding); + for (y = 0; y < bdf_line_bm_line; y++) { + printf("%02d ", gy); + gx = bdf_char_x; + for (x = 0; x < bdf_char_width; x++) { + byte = x >> 3; + bit = 7 - (x & 7); + if ((bdf_bitmap_line[y][byte] & (1 << bit)) == 0) + p = " ."; + else + p = " *"; + if (gy == 0 && gx == 0) + p = " o"; + printf("%s", p); + gx++; + } + printf(" "); + for (x = 0; x < ((bdf_char_width + 7) / 8); x++) printf( "%02X", bdf_bitmap_line[y][x]); + gy--; + printf("\n"); + } + #else + printf("bbx %d %d %d %d encoding %d\n", bdf_char_width, bdf_char_height, bdf_char_x, bdf_char_y, bdf_encoding); + fflush(stdout); + #endif +} + +void bdf_ClearGlyphBuffer(void) { + int x, y; + for (y = 0; y < BDF_MAX_HEIGHT; y++) + for (x = 0; x < 20; x++) bdf_bitmap_line[y][x] = 0; +} + +void bdf_PutGlyph(void) { + int len; + int y, x; + + if (bdf_state == BDF_STATE_ENCODING) { + //if (bdf_char_width == 0 && bdf_char_height == 0) bdf_char_y = 0; + + bdf_char_ascent = bdf_char_height + bdf_char_y; + //printf("h:%d w:%d ascent: %d\n", bdf_char_height, bdf_char_width, bdf_char_ascent); + + if (bdf_encoding == 'A') + bdf_capital_A_height = bdf_char_height; + if (bdf_encoding == '1') + bdf_capital_1_height = bdf_char_height; + + if (bdf_encoding == 'g') + bdf_lower_g_descent = bdf_char_y; + + if (bdf_char_xascent < bdf_capital_A_height) + bdf_char_xascent = bdf_capital_A_height; + if (bdf_char_xascent < bdf_capital_1_height) + bdf_char_xascent = bdf_capital_1_height; + if (bdf_encoding == '(') + if (bdf_char_xascent < bdf_char_ascent) + bdf_char_xascent = bdf_char_ascent; + if (bdf_encoding == '[') + if (bdf_char_xascent < bdf_char_ascent) + bdf_char_xascent = bdf_char_ascent; + + if (bdf_char_xdescent > bdf_lower_g_descent) + bdf_char_xdescent = bdf_lower_g_descent; + if (bdf_encoding == '(') + if (bdf_char_xdescent > bdf_char_y) + bdf_char_xdescent = bdf_char_y; + if (bdf_encoding == '[') + if (bdf_char_xdescent > bdf_char_y) + bdf_char_xdescent = bdf_char_y; + + if (bdf_requested_encoding != bdf_encoding) + return; + + assert( bdf_line_bm_line == bdf_char_height); + + bdf_ShowGlyph(); + #ifdef VERBOSE + bdf_aa_ClearDoShow(); + #endif + + bdf_UpdateMax(); + + if (bdf_font_format <= 1) + len = (bdf_char_width + 7) / 8 * bdf_char_height; + else + len = (bdf_char_width + 2 * BDF_AA_OFFSET + 3) / 4 * (bdf_char_height + 2 * BDF_AA_OFFSET); + if (len > 255) { + fprintf(stderr, "Glyph with encoding %d is too large (%d > 255)\n", bdf_encoding, len); + exit(1); + } + + bdf_glyph_data_len = len; + + /* + format 0 and format 2 + glyph information + offset + 0 BBX width unsigned + 1 BBX height unsigned + 2 data size unsigned (BBX width + 7)/8 * BBX height + 3 DWIDTH signed + 4 BBX xoffset signed + 5 BBX yoffset signed + */ + + if (bdf_font_format == 0) { + data_Put(bdf_char_width); + data_Put(bdf_char_height); + data_Put(bdf_glyph_data_len); + data_Put(bdf_delta_x); + data_Put(bdf_char_x); + data_Put(bdf_char_y); + // data_Put(bdf_encoding); + bdf_is_encoding_successfully_done = 1; + } + else if (bdf_font_format == 2) { + data_Put(bdf_char_width + 2 * BDF_AA_OFFSET); + data_Put(bdf_char_height + 2 * BDF_AA_OFFSET); + data_Put(bdf_glyph_data_len); + data_Put(bdf_delta_x); + data_Put(bdf_char_x - BDF_AA_OFFSET); + data_Put(bdf_char_y - BDF_AA_OFFSET); + // data_Put(bdf_encoding); + bdf_is_encoding_successfully_done = 1; + } + else { + /** + * format 1 + * 0 BBX xoffset signed --> upper 4 Bit + * 0 BBX yoffset signed --> lower 4 Bit + * 1 BBX width unsigned --> upper 4 Bit + * 1 BBX height unsigned --> lower 4 Bit + * 2 data size unsigned -(BBX width + 7)/8 * BBX height --> lower 4 Bit + * 2 DWIDTH signed --> upper 4 Bit + * byte 0 == 255 indicates empty glyph + */ + if (bdf_glyph_data_len < 0 || bdf_glyph_data_len > 15) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (data len = %d)\n", bdf_encoding, bdf_glyph_data_len); + exit(1); + } + if (bdf_delta_x < 0 || bdf_delta_x > 15) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (DWIDTH = %d)\n", bdf_encoding, bdf_delta_x); + exit(1); + } + if (bdf_char_x < 0 || bdf_char_x > 15) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (x-off = %d)\n", bdf_encoding, bdf_char_x); + exit(1); + } + if (bdf_char_y < -2 || bdf_char_y > 13) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (y-off = %d [%d..%d])\n", bdf_encoding, bdf_char_y, bdf_char_min_y, bdf_char_max_y); + exit(1); + } + if (bdf_char_width < 0 || bdf_char_width > 15) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (width = %d)\n", bdf_encoding, bdf_char_width); + exit(1); + } + if (bdf_char_height < 0 || bdf_char_height > 15) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (height = %d)\n", bdf_encoding, bdf_char_height); + exit(1); + } + // data_Put(bdf_encoding); + if (((bdf_char_x << 4) | (bdf_char_y + 2)) == 255) { + fprintf(stderr, "Glyph with encoding %d does not fit for format 1 (skip mark generated)\n", bdf_encoding); + exit(1); + } + data_Put((bdf_char_x << 4) | (bdf_char_y + 2)); + data_Put((bdf_char_width << 4) | bdf_char_height ); + data_Put((bdf_delta_x << 4) | bdf_glyph_data_len ); + bdf_is_encoding_successfully_done = 1; + } + + sprintf(bdf_info + strlen(bdf_info), "/* encoding %d %c, bbx %d %d %d %d asc %d dx %d*/\n", + bdf_encoding, + bdf_encoding > 32 && bdf_encoding <= 'z' ? bdf_encoding : ' ', + bdf_char_width, + bdf_char_height, + bdf_char_x, + bdf_char_y, + bdf_char_ascent, + bdf_delta_x); + + if (bdf_font_format <= 1) { + for (y = 0; y < bdf_char_height; y++) + for (x = 0; x < ((bdf_char_width + 7) / 8); x++) { + data_Put(bdf_bitmap_line[y][x]); + len--; + } + assert( len == 0 ); + bdf_is_put_glyph_completed = 1; + } + else { /* format == 2 */ + int b, cnt; + bdf_aa_Do(); + for (y = 0; y < bdf_char_height + 2 * BDF_AA_OFFSET; y++) { + b = 0; + cnt = 0; + for (x = 0; x < bdf_char_width + 2 * BDF_AA_OFFSET; x++) { + b <<= 2; + b |= bdf_aa_bitmap_line[y][x] & 3; + cnt++; + if (cnt == 4) { + data_Put(b); + b = 0; + cnt = 0; + len--; + } + } + + if (cnt != 0) { + b <<= 2 * (4 - cnt); + data_Put(b); + b = 0; + cnt = 0; + len--; + } + } + assert( len == 0 ); + } + } +} + +/*=========================================================================*/ +/* Glyph Clipping */ + +int bdf_IsColZero(int x) { + int y, byte, bit; + for (y = 0; y < bdf_char_height; y++) { + byte = x >> 3; + bit = 7 - (x & 7); + if ((bdf_bitmap_line[y][byte] & (1 << bit)) != 0) + return 0; + } + return 1; +} + +int bdf_IsRowZero(int y) { + int x, byte, bit; + for (x = 0; x < bdf_char_width; x++) { + byte = x >> 3; + bit = 7 - (x & 7); + if ((bdf_bitmap_line[y][byte] & (1 << bit)) != 0) + return 0; + } + return 1; +} + +void bdf_DeleteFirstCol(void) { + int m = (bdf_char_width + 7) / 8; + int x, y; + for (y = 0; y < bdf_char_height; y++) + for (x = 0; x < m; x++) { + bdf_bitmap_line[y][x] <<= 1; + bdf_bitmap_line[y][x] |= bdf_bitmap_line[y][x + 1] >> 7; + } +} + +void bdf_DeleteFirstRow(void) { + int m = (bdf_char_width + 7) / 8; + int x, y; + for (y = 0; y + 1 < bdf_char_height; y++) + for (x = 0; x < m; x++) + bdf_bitmap_line[y][x] = bdf_bitmap_line[y + 1][x]; +} + +void bdf_ReduceGlyph(void) { + while (bdf_char_width > 0) { + if (bdf_IsColZero(bdf_char_width - 1) == 0) + break; + bdf_char_width--; + } + + while (bdf_char_height > 0) { + if (bdf_IsRowZero(bdf_char_height - 1) == 0) + break; + bdf_line_bm_line--; + bdf_char_height--; + bdf_char_y++; + } + + while (bdf_IsColZero(0) != 0 && bdf_char_width > 0) { + bdf_DeleteFirstCol(); + bdf_char_x++; + bdf_char_width--; + } + + while (bdf_char_height > 0) { + if (bdf_IsRowZero(0) == 0) + break; + bdf_DeleteFirstRow(); + bdf_line_bm_line--; + bdf_char_height--; + } +} + +/*=========================================================================*/ +/* Anti Aliasing / Graylevel Glyph */ + +int bdf_GetXYVal(int x, int y) { + int byte, bit; + + if (x < 0) return 0; + if (y < 0) return 0; + if (x >= bdf_char_width) return 0; + if (y >= bdf_char_height) return 0; + + byte = x >> 3; + bit = 7 - (x & 7); + if ((bdf_bitmap_line[y][byte] & (1 << bit)) != 0) return 1; + return 0; +} + +void bdf_aa_Clear(void) { + int x, y; + for (y = 0; y < BDF_MAX_HEIGHT + 2 * BDF_AA_OFFSET; y++) + for (x = 0; x < (20 + 2 * BDF_AA_OFFSET) * 8; x++) + bdf_aa_bitmap_line[y][x] = 0; +} + +void bdf_aa_SetXYVal(int x, int y, int val) { + bdf_aa_bitmap_line[y][x] = val; +} + +int bdf_aa_matrix[9] = { + 1, 3, 1, + 3, 4, 3, + 1, 3, 1 +}; +int bdf_aa_sum = 20; +int bdf_aa_gray_levels = 4; + +void bdf_aa_Do(void) { + int x, y, val, sx, sy, sum, gray; + bdf_aa_Clear(); + for (y = 0; y < bdf_char_height + 2 * BDF_AA_OFFSET; y++) + for (x = 0; x < bdf_char_width + 2 * BDF_AA_OFFSET; x++) { + if (bdf_GetXYVal(x - BDF_AA_OFFSET, y - BDF_AA_OFFSET) == 0) { + sum = 0; + for (sy = -BDF_AA_OFFSET; sy <= BDF_AA_OFFSET; sy++) + for (sx = -BDF_AA_OFFSET; sx <= BDF_AA_OFFSET; sx++) { + val = bdf_GetXYVal(x + sx - BDF_AA_OFFSET, y + sy - BDF_AA_OFFSET); + val *= bdf_aa_matrix[(sy + BDF_AA_OFFSET) * (2 * BDF_AA_OFFSET + 1) + sx + BDF_AA_OFFSET]; + sum += val; + } + if (sum <= 5) + gray = 0; + else + gray = (sum * (bdf_aa_gray_levels - 1) + (bdf_aa_sum / 2)) / bdf_aa_sum; + if (gray >= bdf_aa_gray_levels) + gray = bdf_aa_gray_levels - 1; + } + else { + gray = bdf_aa_gray_levels - 1; + } + bdf_aa_SetXYVal(x, y, gray); + } +} + +void bdf_aa_Show(void) { + int x, y; + if (bdf_font_format == 2) { + for (y = 0; y < bdf_char_height + 2 * BDF_AA_OFFSET; y++) { + for (x = 0; x < bdf_char_width + 2 * BDF_AA_OFFSET; x++) + switch (bdf_aa_bitmap_line[y][x]) { + case 0: printf("."); break; + case 1: printf("-"); break; + case 2: printf("+"); break; + case 3: printf("#"); break; + } + printf("\n"); + } + } +} + +void bdf_aa_ClearDoShow(void) { + bdf_aa_Do(); + bdf_aa_Show(); +} + +/*=========================================================================*/ +/* Parser */ + +void bdf_ReadLine(const char *s) { + /* + if ( bdf_line_state == BDF_LINE_STATE_BITMAP && bdf_requested_encoding != bdf_encoding && *s != 'E' ) + return; + */ + + if (p_first_char(s) == 0) return; + if (p_skip_space() == 0) return; + + if (bdf_line_state == BDF_LINE_STATE_KEYWORDS) { + p_get_identifier(); + if (strcmp(p_buf, "COPYRIGHT") == 0) { + p_get_any(); + strcpy(bdf_copyright, p_buf); + } + else if (strcmp(p_buf, "FONT") == 0) { + /* p_get_any(); */ + p_get_identifier_with_blank(); + strcpy(bdf_font, p_buf); + } + else if (strcmp(p_buf, "SIZE") == 0) { + bdf_font_size = p_get_val(); + } + else if (strcmp(p_buf, "ENCODING") == 0) { + bdf_encoding = map_UnicodeToU8G(p_get_val()); + bdf_StoreFilePos(bdf_encoding, bdf_last_line_start_pos); + } + else if (strcmp(p_buf, "DWIDTH") == 0) { + bdf_delta_x = p_get_val(); + bdf_delta_y = p_get_val(); + } + else if (strcmp(p_buf, "FONTBOUNDINGBOX") == 0) { + bdf_font_width = p_get_val(); + bdf_font_height = p_get_val(); + bdf_font_x = p_get_val(); + bdf_font_y = p_get_val(); + } + else if (strcmp(p_buf, "BBX") == 0) { + bdf_char_width = p_get_val(); + bdf_char_height = p_get_val(); + bdf_char_x = p_get_val(); + bdf_char_y = p_get_val(); + bdf_char_ascent = bdf_char_height + bdf_char_y; + // printf("h:%d w:%d ascent: %d\n", bdf_char_height, bdf_char_width, bdf_char_ascent); + } + else if (strcmp(p_buf, "CHARS") == 0) { + if (bdf_delta_x < 0) + bdf_delta_x = 0; + if (bdf_delta_x_default < 0) + bdf_delta_x_default = bdf_delta_x; + } + else if (strcmp(p_buf, "STARTCHAR") == 0) { + if (bdf_delta_x_default < 0) + bdf_delta_x_default = 0; + bdf_delta_x = bdf_delta_x_default; + } + else if (strcmp(p_buf, "BITMAP") == 0) { + bdf_line_state = BDF_LINE_STATE_BITMAP; + bdf_line_bm_line = 0; + } + } + else if (bdf_line_state == BDF_LINE_STATE_BITMAP) { + if (strncmp(s, "ENDCHAR", 7) == 0) { + bdf_ReduceGlyph(); + bdf_PutGlyph(); + bdf_line_state = BDF_LINE_STATE_KEYWORDS; + bdf_line_bm_line = 0; + } + else if (bdf_requested_encoding == bdf_encoding) { + int i = 0; + for (;;) { + if (p_current_char < '0') break; + bdf_bitmap_line[bdf_line_bm_line][i] = p_get_hex_byte(); + i++; + } + bdf_line_bm_line++; + assert(bdf_line_bm_line < BDF_MAX_HEIGHT); + } + } +} + +int bdf_ReadFP(FILE *fp) { + static char bdf_line[BDF_LINE_MAX]; + bdf_is_put_glyph_completed = 0; + for (;;) { + bdf_last_line_start_pos = ftell(fp); + if (fgets(bdf_line, BDF_LINE_MAX - 1, fp) == NULL) + break; + bdf_ReadLine(bdf_line); + if (bdf_is_put_glyph_completed != 0) + break; + } + return 1; +} + +int bdf_ReadFile(const char *filename, int encoding) { + int r; + FILE *fp; + fp = fopen(filename, "rb"); + if (fp != NULL) { + bdf_SetFilePos(fp, encoding); + r = bdf_ReadFP(fp); + fclose(fp); + return r; + } + return 0; /* open error */ +} + +void bdf_GenerateFontData(const char *filename, int begin, int end) { + bdf_state = BDF_STATE_FONT_DATA; + bdf_ReadFile(filename, -1); + /** + * font information + * + * offset + * 0 font format + * 1 FONTBOUNDINGBOX width unsigned + * 2 FONTBOUNDINGBOX height unsigned + * 3 FONTBOUNDINGBOX x-offset signed + * 4 FONTBOUNDINGBOX y-offset signed + * 5 Capital A Height unsigned + * 6 position of encoding 65 'A' high byte first + * 8 position of encoding 97 'a' high byte first + */ + data_Put(bdf_font_format); + data_Put(bdf_font_width); + data_Put(bdf_font_height); + data_Put(bdf_font_x); + data_Put(bdf_font_y); + data_Put(bdf_capital_A_height > 0 ? bdf_capital_A_height : bdf_capital_1_height); + data_Put(0); + data_Put(0); + data_Put(0); + data_Put(0); + data_Put(begin); + data_Put(end); /* will be overwritten later */ + data_Put(0); /* lower g descent */ + data_Put(0); /* max ascent */ + data_Put(0); /* min y = descent */ + data_Put(0); /* x ascent */ + data_Put(0); /* x descent */ +} + +void bdf_GenerateGlyph(const char *filename, int encoding) { + bdf_ClearGlyphBuffer(); + bdf_requested_encoding = encoding; + bdf_state = BDF_STATE_ENCODING; + bdf_ReadFile(filename, encoding); +} + +void bdf_Generate(const char *filename, int begin, int end) { + int i; + int last_valid_encoding; + + bdf_encoding_65_pos = 0; + bdf_encoding_97_pos = 0; + + bdf_InitFilePos(); + bdf_ResetMax(); + bdf_info[0] = '\0'; + bdf_font[0] = '\0'; + bdf_copyright[0] = '\0'; + + bdf_GenerateFontData(filename, begin, end); + for (i = begin; i <= end; i++) { + + if (i == 65) bdf_encoding_65_pos = data_pos; + if (i == 97) bdf_encoding_97_pos = data_pos; + + bdf_is_encoding_successfully_done = 0; + if (bdf_IsEncodingAvailable(i)) + bdf_GenerateGlyph(filename, i); + if (bdf_is_encoding_successfully_done == 0) + data_Put(255); /* no char encoding */ + if (bdf_is_encoding_successfully_done != 0) + last_valid_encoding = i; + } + /* data_Put(255); obsolete, not required any more for format 0 */ /* encoding 255, end of font data (format 0) */ + + data_buf[5] = bdf_capital_A_height > 0 ? bdf_capital_A_height : bdf_capital_1_height; + + data_buf[6] = (bdf_encoding_65_pos >> 8); + data_buf[7] = (bdf_encoding_65_pos & 255); + data_buf[8] = (bdf_encoding_97_pos >> 8); + data_buf[9] = (bdf_encoding_97_pos & 255); + + data_buf[12] = bdf_lower_g_descent; + data_buf[13] = bdf_char_max_ascent; + data_buf[14] = bdf_char_min_y; + data_buf[15] = bdf_char_xascent; + data_buf[16] = bdf_char_xdescent; + + if (0) data_buf[11] = last_valid_encoding; + +} + +void bdf_WriteC(const char *outname, const char *fontname) { + int capital_ascent; + FILE *out_fp; + out_fp = fopen(outname, "wb"); + assert( out_fp != NULL ); + + capital_ascent = bdf_capital_A_height > 0 ? bdf_capital_A_height : bdf_capital_1_height; + + fprintf(out_fp, "/*\n"); + fprintf(out_fp, " Fontname: %s\n", bdf_font); + fprintf(out_fp, " Copyright: %s\n", bdf_copyright); + fprintf(out_fp, " Capital A Height: %d, '1' Height: %d\n", bdf_capital_A_height, bdf_capital_1_height); + fprintf(out_fp, " Calculated Max Values w=%2d h=%2d x=%2d y=%2d dx=%2d dy=%2d ascent=%2d len=%2d\n", + bdf_char_max_width, bdf_char_max_height, bdf_char_max_x, bdf_char_max_y, bdf_delta_max_x, bdf_delta_max_y, + bdf_char_max_ascent, bdf_glyph_data_max_len); + fprintf(out_fp, " Font Bounding box w=%2d h=%2d x=%2d y=%2d\n", + bdf_font_width, bdf_font_height, bdf_font_x, bdf_font_y); + fprintf(out_fp, " Calculated Min Values x=%2d y=%2d dx=%2d dy=%2d\n", + bdf_char_min_x, bdf_char_min_y, bdf_delta_min_x, bdf_delta_min_y); + + fprintf(out_fp, " Pure Font ascent =%2d descent=%2d\n", capital_ascent, bdf_lower_g_descent); + fprintf(out_fp, " X Font ascent =%2d descent=%2d\n", bdf_char_xascent, bdf_char_xdescent); + fprintf(out_fp, " Max Font ascent =%2d descent=%2d\n", bdf_char_max_ascent, bdf_char_min_y); + + fprintf(out_fp, "*/\n"); + fprintf(out_fp, "const u8g_fntpgm_uint8_t %s[%d] U8G_FONT_SECTION(\"%s\") = {\n", fontname, data_pos, fontname); + fprintf(out_fp, " "); + data_Write(out_fp, " "); + fprintf(out_fp, "};\n"); + #ifndef BDF2U8G_COMPACT_OUTPUT + fprintf(out_fp, "%s\n", bdf_info); + #endif + + fclose(out_fp); +} + +int ga_argc; +char **ga_argv; + +void ga_remove_arg(void) { + if (ga_argc == 0) return; + ga_argc--; + ga_argv++; +} + +int ga_is_arg(char opt) { + if (ga_argc == 0) return 0; + if (ga_argv[0] == NULL) return 0; + if (ga_argv[0][0] != '-') return 0; + if (ga_argv[0][1] != opt) return 0; + ga_remove_arg(); + return 1; +} + +int main(int argc, char **argv) { + int lower_page = 0; + int upper_page = 1; + int mapping_shift = 0; + int upper_mapping_shift = 0; + int begin = 32; + int end = 255; + + if (argc < 4) { + printf("bdf to u8glib font format converter v" BDF2U8G_VERSION "\n"); + printf("%s [-l page] [-u page] [-s shift] [-S upper-shift] [-b begin] [-e end] [-f format] fontfile fontname outputfile\n", argv[0]); + return 1; + } + + ga_argc = argc; + ga_argv = argv; + ga_remove_arg(); /* remove program name */ + + for (;;) { + if (ga_is_arg('l')) { + lower_page = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('u')) { + upper_page = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('s')) { + mapping_shift = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('S')) { + upper_mapping_shift = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('b')) { + begin = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('e')) { + end = atoi(ga_argv[0]); + ga_remove_arg(); + } + else if (ga_is_arg('f')) { + bdf_font_format = atoi(ga_argv[0]); + ga_remove_arg(); + } + else { + break; + } + } + + printf("encoding range %d..%d\n", begin, end); + + data_Init(); + map_Init(); + map_UpperLowerPage(lower_page, upper_page, mapping_shift, upper_mapping_shift); + + /* + puts(bdf_font); + puts(bdf_copyright); + if (ga_argc < 3) { + printf("from page %d to page %d\n", lower_page, upper_page); + return 1; + } + */ + + bdf_Generate(ga_argv[0], begin, end); + bdf_WriteC(ga_argv[2], ga_argv[1]); + + printf("input file '%s'\n", ga_argv[0]); + printf("u8g font name '%s'\n", ga_argv[1]); + printf("output file '%s'\n", ga_argv[2]); + + return 0; +} diff --git a/buildroot/share/fonts/genallfont.sh b/buildroot/share/fonts/genallfont.sh index ebb99b273f..5d85c88a18 100755 --- a/buildroot/share/fonts/genallfont.sh +++ b/buildroot/share/fonts/genallfont.sh @@ -24,19 +24,9 @@ my_getpath() { echo -n "${DN}" [[ -z "$FN" ]] || echo -n "/${FN}" } -#DN_EXEC=`echo "$0" | ${EXEC_AWK} -F/ '{b=$1; for (i=2; i < NF; i ++) {b=b "/" $(i)}; print b}'` + DN_EXEC=$(dirname $(my_getpath "$0") ) -EXEC_WXGGEN="${DN_EXEC}/uxggenpages.sh" - -# -# Locate the bdf2u8g command -# -EXEC_BDF2U8G=`which bdf2u8g` -[ -x "${EXEC_BDF2U8G}" ] || EXEC_BDF2U8G="${DN_EXEC}/bdf2u8g" -[ -x "${EXEC_BDF2U8G}" ] || EXEC_BDF2U8G="${PWD}/bdf2u8g" -[ -x "${EXEC_BDF2U8G}" ] || { EOL=$'\n' ; echo "ERR: Can't find bdf2u8g!${EOL}See uxggenpages.md for bdf2u8g build instructions." >&2 ; exit 1; } - # # Get language arguments # @@ -55,33 +45,43 @@ OLDWD=`pwd` [[ -f "Configuration.h" ]] || { echo -n "cd to the 'Marlin' folder to run " ; basename $0 ; exit 1; } # -# Compile the 'genpages' command in-place +# Compile the 'genpages.exe' and 'bdf2u8g.exe' commands in-place # -(cd ${DN_EXEC}; cc -o genpages genpages.c getline.c) +if [[ ! -x "${DN_EXEC}/genpages/genpages.exe" ]]; then + echo "Building genpages.exe..." + ( cd ${DN_EXEC}/genpages ; cc -o genpages.exe genpages.c getline.c ) + [[ -x "${DN_EXEC}/genpages/genpages.exe" ]] || { echo "Build of genpages.exe failed" ; exit 1 ; } +fi + +if [[ ! -x "${DN_EXEC}/bdf2u8g/bdf2u8g.exe" ]]; then + echo "Building bdf2u8g.exe..." + ( cd ${DN_EXEC}/bdf2u8g ; make ) + [[ -x "${DN_EXEC}/bdf2u8g/bdf2u8g.exe" ]] || { echo "Build of bdf2u8g.exe failed" ; exit 1 ; } +fi # # By default loop through all languages # -LANGS_DEFAULT="an bg ca cz da de el el_CY en es eu fi fr gl hr hu it jp_kana ko_KR nl pl pt pt_br ro ru sk sv tr uk vi zh_CN zh_TW test" +LANGS_DEFAULT="an bg ca cz da de el el_CY en es eu fi fr fr_na gl hr hu it jp_kana ko_KR nl pl pt pt_br ro ru sk sv tr uk vi zh_CN zh_TW test" # # Generate data for language list MARLIN_LANGS or all if not provided # -for LANG in ${LANG_ARG:=$LANGS_DEFAULT} ; do - echo "Generating Marlin language data for '${LANG}'" >&2 - case "$LANG" in +for ALANG in ${LANG_ARG:=$LANGS_DEFAULT} ; do + echo "Generating Marlin language data for '${ALANG}'" >&2 + case "$ALANG" in zh_* ) FONTFILE="wenquanyi_12pt" ;; ko_* ) FONTFILE="${DN_EXEC}/NanumGothic.bdf" ;; * ) FONTFILE="${DN_EXEC}/marlin-6x12-3.bdf" ;; esac - DN_WORK=`mktemp -d` + DN_WORK=$(mktemp -d) cp Configuration.h ${DN_WORK}/ - cp src/lcd/language/language_${LANG}.h ${DN_WORK}/ + cp src/lcd/language/language_${ALANG}.h ${DN_WORK}/ cd "${DN_WORK}" - ${EXEC_WXGGEN} "${FONTFILE}" + ${DN_EXEC}/uxggenpages.sh "${FONTFILE}" $ALANG sed -i fontutf8-data.h -e 's|fonts//|fonts/|g' -e 's|fonts//|fonts/|g' -e 's|[/0-9a-zA-Z_\-]*buildroot/share/fonts|buildroot/share/fonts|' 2>/dev/null cd - >/dev/null - mv ${DN_WORK}/fontutf8-data.h src/lcd/dogm/fontdata/langdata_${LANG}.h + mv ${DN_WORK}/fontutf8-data.h src/lcd/dogm/fontdata/langdata_${ALANG}.h rm -rf ${DN_WORK} done @@ -89,9 +89,10 @@ done # Generate default ASCII font (char range 0-255): # Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h # +EXEC_BDF2U8G="${DN_EXEC}/bdf2u8g/bdf2u8g.exe" #if [ "${MARLIN_LANGS}" == "${LANGS_DEFAULT}" ]; then if [ 1 = 1 ]; then - DN_WORK=`mktemp -d` + DN_WORK=$(mktemp -d) cd ${DN_WORK} ${EXEC_BDF2U8G} -b 1 -e 127 ${FN_FONT} ISO10646_1_5x7 tmp1.h >/dev/null ${EXEC_BDF2U8G} -b 1 -e 255 ${FN_FONT} ISO10646_1_5x7 tmp2.h >/dev/null @@ -103,7 +104,7 @@ if [ 1 = 1 ]; then cat <src/lcd/dogm/fontdata/fontdata_ISO10646_1.h /** * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] * * Based on Sprinter and grbl. * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm @@ -139,6 +140,4 @@ EOF fi -(cd ${DN_EXEC}; rm genpages) - cd "$OLDWD" diff --git a/buildroot/share/fonts/genpages.c b/buildroot/share/fonts/genpages/genpages.c similarity index 99% rename from buildroot/share/fonts/genpages.c rename to buildroot/share/fonts/genpages/genpages.c index 8009e553fa..dea5b05c5c 100644 --- a/buildroot/share/fonts/genpages.c +++ b/buildroot/share/fonts/genpages/genpages.c @@ -66,7 +66,7 @@ wchar_t get_val_utf82uni(uint8_t *pstart) { */ uint8_t* get_utf8_value(uint8_t *pstart, wchar_t *pval) { uint32_t val = 0; - const uint8_t *p = pstart; + uint8_t *p = pstart; /*size_t maxlen = strlen(pstart);*/ assert(NULL != pstart); diff --git a/buildroot/share/fonts/getline.c b/buildroot/share/fonts/genpages/getline.c similarity index 100% rename from buildroot/share/fonts/getline.c rename to buildroot/share/fonts/genpages/getline.c diff --git a/buildroot/share/fonts/getline.h b/buildroot/share/fonts/genpages/getline.h similarity index 100% rename from buildroot/share/fonts/getline.h rename to buildroot/share/fonts/genpages/getline.h diff --git a/buildroot/share/fonts/get-bdf2u8g.sh b/buildroot/share/fonts/get-bdf2u8g.sh deleted file mode 100755 index 5851bf93e3..0000000000 --- a/buildroot/share/fonts/get-bdf2u8g.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash - -##################################################################### -# get-bdf2u8g.sh for Marlin -# -# This script downloads, patches, and builds bdf2u8g -# License: CC-SA -# -# Execute from within buildroot/share/fonts -# -##################################################################### - -HERE=$(pwd) - -for CMD in curl unzip patch make; do - which $CMD >/dev/null || { echo "'$CMD' is required for this script." ; exit 1 ; } -done - -[[ $HERE =~ 'buildroot/share/fonts'$ ]] || { echo "Change to buildroot/share/fonts to run $(basename $0)" ; exit 1; } - -# Download u8glib -curl -LJO https://github.com/olikraus/u8glib/archive/master.zip -unzip u8glib-master.zip >/dev/null 2>&1 - -# Patch and build bdf2u8g -cd u8glib-master/tools/font/bdf2u8g -patch -p0 <../../../../u8glib-bdf2u8g.patch bdf2u8g.c >/dev/null 2>&1 -make >/dev/null 2>&1 -mv bdf2u8g ../../../../ - -# Clean up -cd - -rm -rf u8glib-master* - -cd "$HERE" diff --git a/buildroot/share/fonts/make_lang_na.sh b/buildroot/share/fonts/make_lang_na.sh new file mode 100755 index 0000000000..d7453e2820 --- /dev/null +++ b/buildroot/share/fonts/make_lang_na.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +# +# make_lang_na.sh +# +# Create non-accented language files given a list of accented language files. +# + +which gsed >/dev/null || { echo "gsed is required for this script." ; exit 1 ; } +which perl >/dev/null || { echo "perl is required for this script." ; exit 1 ; } + +# +# Get language arguments +# +[ $# ] || { echo "One or more language codes (such as 'fr') must be supplied." ; exit 1 ; } + +LANG_ARG="$@" + +# +# Change to working directory 'Marlin' +# +OLDWD=`pwd` +[[ $(basename "$OLDWD") != 'Marlin' && -d "Marlin" ]] && cd Marlin +[[ -f "Configuration.h" ]] || { echo -n "cd to the 'Marlin' folder to run " ; basename $0 ; exit 1; } + +# +# Generate a non-accented language file +# +for ALANG in $LANG_ARG ; do + echo "Generating a non-accented language for '${ALANG}'" >&2 + OUTFILE=src/lcd/language/language_${ALANG}_na.h + cp src/lcd/language/language_${ALANG}.h $OUTFILE + perl -pi -e 's/\s*#define DISPLAY_CHARSET_.+\n*//g' $OUTFILE + perl -pi -e 's/\s*constexpr .+ CHARSIZE.+\n*//g' $OUTFILE + perl -pi -e "s/namespace Language_${ALANG}/#define DISPLAY_CHARSET_ISO10646_1\n#define NOT_EXTENDED_ISO10646_1_5X7\n\nnamespace Language_${ALANG}_na/" $OUTFILE + gsed -i 'y/āáǎàâäēéěèêīíǐìïîōóǒòöôūúǔùǖǘǚǜüûĀÁǍÀĒÉĚÈÊĪÍǏÌÎŌÓǑÒÔŪÚǓÙǕǗǙǛÜÛÇçÑñ/aaaaaaeeeeeiiiiiioooooouuuuuuuuuuAAAAEEEEEIIIIIOOOOOUUUUUUUUUUCcNn/' $OUTFILE + perl -pi -e 's/ß/ss/g' $OUTFILE +done + +cd "$OLDWD" diff --git a/buildroot/share/fonts/u8glib-bdf2u8g.patch b/buildroot/share/fonts/u8glib-bdf2u8g.patch deleted file mode 100644 index 1201e99800..0000000000 --- a/buildroot/share/fonts/u8glib-bdf2u8g.patch +++ /dev/null @@ -1,32 +0,0 @@ -178c178 -< fprintf(out_fp, "%d", data_buf[i]); ---- -> fprintf(out_fp, "0x%02x", data_buf[i]); -180c180 -< fprintf(out_fp, "%3d", data_buf[i]); ---- -> fprintf(out_fp, "0x%02x", data_buf[i]); -487c487,488 -< int bdf_delta_x; /* DWIDTH arg 1 */ ---- -> int bdf_delta_x_default = -1; -> int bdf_delta_x = -1; /* DWIDTH arg 1 */ -1097a1099,1114 -> else if ( strcmp(p_buf, "CHARS") == 0 ) -> { -> if (bdf_delta_x < 0) { -> bdf_delta_x = 0; -> } -> if (bdf_delta_x_default < 0) { -> bdf_delta_x_default = bdf_delta_x; -> } -> } -> else if ( strcmp(p_buf, "STARTCHAR") == 0 ) -> { -> if (bdf_delta_x_default < 0) { -> bdf_delta_x_default = 0; -> } -> bdf_delta_x = bdf_delta_x_default; -> } -1293d1309 -< fprintf(out_fp, "#include \"u8g.h\"\n"); diff --git a/buildroot/share/fonts/uxggenpages.sh b/buildroot/share/fonts/uxggenpages.sh index 047d3ae661..2d39297b8f 100755 --- a/buildroot/share/fonts/uxggenpages.sh +++ b/buildroot/share/fonts/uxggenpages.sh @@ -1,12 +1,12 @@ #!/usr/bin/env bash ##################################################################### -# genpages.sh for u8g +# uxggenpages.sh for u8g # # This script will generate u8g c files for specified fonts # # Copyright 2015-2018 Yunhui Fu -# License: GPL/BSD +# License: BSD ##################################################################### my_getpath() { @@ -31,16 +31,11 @@ DN_EXEC=$(dirname $(my_getpath "$0") ) ##################################################################### -EXEC_GENPAGES=${DN_EXEC}/genpages -[ -x "${EXEC_GENPAGES}" ] || EXEC_GENPAGES="$(my_getpath ${DN_EXEC}/../../../genpages)" -[ -x "${EXEC_GENPAGES}" ] || EXEC_GENPAGES=$(which genpages) +EXEC_GENPAGES=${DN_EXEC}/genpages/genpages.exe [ -x "${EXEC_GENPAGES}" ] || { echo "Error: genpages not found!" ; exit 1; } -#echo "EXEC_GENPAGES=${EXEC_GENPAGES}" -EXEC_BDF2U8G=${DN_EXEC}/bdf2u8g -[ -x "${EXEC_BDF2U8G}" ] || EXEC_BDF2U8G="${DN_EXEC}/../../../bdf2u8g" -[ -x "${EXEC_BDF2U8G}" ] || EXEC_BDF2U8G=$(which bdf2u8g) -[ -x "${EXEC_BDF2U8G}" ] || { echo "Error: bdf2u8g not found!" ; echo "Please compile u8glib/tools/font/bdf2u8g/bdf2u8g and link to it from here!"; exit 1; } +EXEC_BDF2U8G=${DN_EXEC}/bdf2u8g/bdf2u8g.exe +[ -x "${EXEC_BDF2U8G}" ] || { echo "Error: bdf2u8g not found!" ; exit 1; } DN_CUR=$(pwd) DN_DATA=$(pwd)/datatmp @@ -56,6 +51,7 @@ FN_FONT_BASE="marlin-6x12-3" #FN_FONT_BASE=wenquanyi_9pt FN_FONT="${1:-}" +LANG="$2" DN_FONT0=`dirname ${FN_FONT}` DN_FONT="$(my_getpath ${DN_FONT0})" FN_FONT="$(my_getpath "${DN_FONT}")/"`basename ${FN_FONT}` @@ -151,14 +147,14 @@ grep -Hrn _UxGT . | grep '"' \ ${EXEC_BDF2U8G} -u ${PAGE} -b ${BEGIN} -e ${END} ${FN_FONT} fontpage_${PAGE}_${BEGIN}_${END} ${DN_DATA}/fontpage_${PAGE}_${BEGIN}_${END}.h > /dev/null 2>&1 ; fi ; \ grep -A 10000000000 u8g_fntpgm_uint8_t ${DN_DATA}/fontpage_${PAGE}_${BEGIN}_${END}.h >> tmpa ; \ - echo " FONTDATA_ITEM(${PAGE}, ${BEGIN}, ${END}, fontpage_${PAGE}_${BEGIN}_${END}), // '${UTF8BEGIN}' -- '${UTF8END}'" >> tmpb ;\ + echo " FONTDATA_ITEM(${PAGE}, ${BEGIN}, ${END}, fontpage_${PAGE}_${BEGIN}_${END}), // '${UTF8BEGIN}' -- '${UTF8END}'" >> tmpb ;\ done TMPA=$(cat tmpa) TMPB=$(cat tmpb) EOL=$'\n' -[[ ! "$TMPA" == "" ]] && TMPA="$EOL$TMPA$EOL" +[[ ! "$TMPA" == "" ]] && TMPA="$TMPA$EOL$EOL" [[ ! "$TMPB" == "" ]] && TMPB="$EOL$TMPB$EOL" rm -f tmpa tmpb "proc.awk" @@ -169,8 +165,9 @@ cat <fontutf8-data.h * Contents will be REPLACED by future processing! * Use genallfont.sh to generate font data for updated languages. */ -#include -$TMPA -#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data } -static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {$TMPB}; +#pragma once + +#include "langdata.h" + +${TMPA}static const uxg_fontinfo_t g_fontinfo_${LANG}[] PROGMEM = {${TMPB}}; EOF diff --git a/buildroot/share/git/mfadd b/buildroot/share/git/mfadd index 30be1ec0f7..d6fc07bde0 100755 --- a/buildroot/share/git/mfadd +++ b/buildroot/share/git/mfadd @@ -29,7 +29,7 @@ REPO=${INFO[2]} set -e -echo "Adding and fetching $USER..." +echo "Adding and fetching $USER/$REPO..." git remote add "$USER" "git@github.com:$USER/$REPO.git" >/dev/null 2>&1 || echo "Remote exists." git fetch "$USER" diff --git a/buildroot/share/git/mfconfig b/buildroot/share/git/mfconfig index 8528859446..0c4a0de5c8 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 } diff --git a/buildroot/share/pixmaps/logo/marlin-240x250.png b/buildroot/share/pixmaps/logo/marlin-240x250.png new file mode 100644 index 0000000000..2a6b692306 Binary files /dev/null and b/buildroot/share/pixmaps/logo/marlin-240x250.png differ diff --git a/buildroot/share/scripts/MarlinBinaryProtocol.py b/buildroot/share/scripts/MarlinBinaryProtocol.py index ecf9df35e2..dca5e167f7 100644 --- a/buildroot/share/scripts/MarlinBinaryProtocol.py +++ b/buildroot/share/scripts/MarlinBinaryProtocol.py @@ -11,11 +11,14 @@ import sys 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 @@ class FileTransferProtocol(object): 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 @@ class FileTransferProtocol(object): 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/__init__.py b/buildroot/share/scripts/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/buildroot/share/scripts/createSpeedLookupTable.py b/buildroot/share/scripts/createSpeedLookupTable.py index da24c7c811..70ed953e54 100755 --- a/buildroot/share/scripts/createSpeedLookupTable.py +++ b/buildroot/share/scripts/createSpeedLookupTable.py @@ -19,34 +19,36 @@ args = parser.parse_args() cpu_freq = args.cpu_freq * 1000000 timer_freq = cpu_freq / args.divider -print("#ifndef SPEED_LOOKUPTABLE_H") -print("#define SPEED_LOOKUPTABLE_H") +print("#pragma once") print() -print('#include "MarlinCore.h"') +print("#if F_CPU == %d" % cpu_freq) print() -print("const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {") -a = [ timer_freq / ((i*256)+(args.cpu_freq*2)) for i in range(256) ] +print(" const struct { uint16_t base; uint8_t gain; } speed_lookuptable_fast[256] PROGMEM = {") +a = [0 for i in range(8)] + [ int(0.5 + float(timer_freq) / (i*256)) for i in range(8, 256) ] +b = [0 for i in range(8)] + [ a[i] - a[i+1] for i in range(8, 255) ] +b.append(b[-1]) +for i in range(32): + print(" ", end='') + for j in range(8): + print("{ %5d, %5d }," % (a[8*i+j], b[8*i+j]), end='') + if j < 7: print(" ", end='') + if i == 0: print(" // dummy first row") + else: print() +print(" };") +print() + +print(" const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {") +a = [ int(0.5 + float(timer_freq) / ((i*8)+(args.cpu_freq*2))) for i in range(256) ] b = [ a[i] - a[i+1] for i in range(255) ] b.append(b[-1]) for i in range(32): - print(" ", end=' ') + print(" ", end='') for j in range(8): - print("{%d, %d}," % (a[8*i+j], b[8*i+j]), end=' ') + print("{ %5d, %5d }," % (a[8*i+j], b[8*i+j]), end='') + if j < 7: print(" ", end='') print() -print("};") -print() - -print("const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {") -a = [ timer_freq / ((i*8)+(args.cpu_freq*2)) for i in range(256) ] -b = [ a[i] - a[i+1] for i in range(255) ] -b.append(b[-1]) -for i in range(32): - print(" ", end=' ') - for j in range(8): - print("{%d, %d}," % (a[8*i+j], b[8*i+j]), end=' ') - print() -print("};") +print(" };") print() print("#endif") diff --git a/buildroot/share/scripts/createTemperatureLookupMarlin.py b/buildroot/share/scripts/createTemperatureLookupMarlin.py index 02981f1015..5902e91a87 100755 --- a/buildroot/share/scripts/createTemperatureLookupMarlin.py +++ b/buildroot/share/scripts/createTemperatureLookupMarlin.py @@ -50,7 +50,7 @@ class Thermistor: if c < 0: print("//////////////////////////////////////////////////////////////////////////////////////") - print("// WARNING: negative coefficient 'c'! Something may be wrong with the measurements! //") + print("// WARNING: Negative coefficient 'c'! Something may be wrong with the measurements! //") print("//////////////////////////////////////////////////////////////////////////////////////") c = -c self.c1 = a # Steinhart-Hart coefficients @@ -93,8 +93,8 @@ def main(argv): r2 = 1641.9 # resistance at middle temperature (1.6 KOhm) t3 = 250 # high temperature in Kelvin (250 degC) r3 = 226.15 # resistance at high temperature (226.15 Ohm) - rp = 4700; # pull-up resistor (4.7 kOhm) - num_temps = 36; # number of entries for look-up table + rp = 4700 # pull-up resistor (4.7 kOhm) + num_temps = 36 # number of entries for look-up table try: opts, args = getopt.getopt(argv, "h", ["help", "rp=", "t1=", "t2=", "t3=", "num-temps="]) @@ -125,13 +125,13 @@ def main(argv): num_temps = int(arg) t = Thermistor(rp, t1, r1, t2, r2, t3, r3) - increment = int((ARES-1)/(num_temps-1)); - step = (TMIN-TMAX) / (num_temps-1) - low_bound = t.temp(ARES-1); - up_bound = t.temp(1); + increment = int((ARES - 1) / (num_temps - 1)) + step = int((TMIN - TMAX) / (num_temps - 1)) + low_bound = t.temp(ARES - 1) + up_bound = t.temp(1) min_temp = int(TMIN if TMIN > low_bound else low_bound) max_temp = int(TMAX if TMAX < up_bound else up_bound) - temps = list(range(max_temp, TMIN+step, step)); + temps = list(range(max_temp, TMIN + step, step)) print("// Thermistor lookup table for Marlin") print("// ./createTemperatureLookupMarlin.py --rp=%s --t1=%s:%s --t2=%s:%s --t3=%s:%s --num-temps=%s" % (rp, t1, r1, t2, r2, t3, r3, num_temps)) diff --git a/buildroot/share/scripts/findMissingTranslations.sh b/buildroot/share/scripts/findMissingTranslations.sh index 24a2a910a2..366075d5b9 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)" ;; 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 "" ;; + 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 diff --git a/buildroot/share/scripts/get_test_targets.py b/buildroot/share/scripts/get_test_targets.py new file mode 100644 index 0000000000..f51951ae12 --- /dev/null +++ b/buildroot/share/scripts/get_test_targets.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +""" +Extract the builds used in Github CI, so that we can run them locally +""" +import yaml + +# Set the yaml file to parse +yaml_file = '.github/workflows/test-builds.yml' + +# Parse the yaml file, and load it into a dictionary (github_configuration) +with open(yaml_file) as f: + github_configuration = yaml.safe_load(f) + +# Print out the test platforms +print(' '.join(github_configuration['jobs']['test_builds']['strategy']['matrix']['test-platform'])) diff --git a/buildroot/share/scripts/languageExport.py b/buildroot/share/scripts/languageExport.py new file mode 100755 index 0000000000..46485aa124 --- /dev/null +++ b/buildroot/share/scripts/languageExport.py @@ -0,0 +1,153 @@ +#!/usr/bin/env python3 +''' +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 +OUTDIR = 'out-csv' + +# 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 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, tallflag = False, 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, 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: + # 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 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('$$$', '""') + # 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) + +# 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(',') + 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 + # + Path.mkdir(Path(OUTDIR), exist_ok=True) + + for lang in langcodes: + 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') + +else: + # + # Export one large sheet containing all languages + # + with open("languages.csv", 'w', encoding='utf-8') as f: + header = ['name'] + for lang in langcodes: + lname = lang + ' ' + namebyid(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') diff --git a/buildroot/share/scripts/languageImport.py b/buildroot/share/scripts/languageImport.py new file mode 100755 index 0000000000..a535040ad0 --- /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 0000000000..789561e7b9 --- /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 '' diff --git a/buildroot/share/scripts/pinsformat.js b/buildroot/share/scripts/pinsformat.js index a82c2f2659..1ce0d75d9a 100755 --- a/buildroot/share/scripts/pinsformat.js +++ b/buildroot/share/scripts/pinsformat.js @@ -27,9 +27,9 @@ String.prototype.rpad = function(len, chr) { return s; }; -const mpatt = [ '-?\\d+', 'P[A-I]\\d+', 'P\\d_\\d+' ], - definePatt = new RegExp(`^\\s*(//)?#define\\s+[A-Z_][A-Z0-9_]+\\s+(${mpatt[0]}|${mpatt[1]}|${mpatt[2]})\\s*(//.*)?$`, 'gm'), - ppad = [ 3, 4, 5 ], +const mpatt = [ '-?\\d{1,3}', 'P[A-I]\\d+', 'P\\d_\\d+', 'Pin[A-Z]\\d\\b' ], + definePatt = new RegExp(`^\\s*(//)?#define\\s+[A-Z_][A-Z0-9_]+\\s+(${mpatt[0]}|${mpatt[1]}|${mpatt[2]}|${mpatt[3]})\\s*(//.*)?$`, 'gm'), + ppad = [ 3, 4, 5, 5 ], col_comment = 50, col_value_rj = col_comment - 3; @@ -55,7 +55,7 @@ else // Find the pin pattern so non-pin defines can be skipped function get_pin_pattern(txt) { - var r, m = 0, match_count = [ 0, 0, 0 ]; + var r, m = 0, match_count = [ 0, 0, 0, 0 ]; definePatt.lastIndex = 0; while ((r = definePatt.exec(txt)) !== null) { let ind = -1; @@ -65,7 +65,7 @@ function get_pin_pattern(txt) { return r[2].match(p); }) ) { const m = ++match_count[ind]; - if (m >= 10) { + if (m >= 5) { return { match: mpatt[ind], pad:ppad[ind] }; } } @@ -79,7 +79,8 @@ function process_text(txt) { if (!patt) return txt; const pindefPatt = new RegExp(`^(\\s*(//)?#define)\\s+([A-Z_][A-Z0-9_]+)\\s+(${patt.match})\\s*(//.*)?$`), noPinPatt = new RegExp(`^(\\s*(//)?#define)\\s+([A-Z_][A-Z0-9_]+)\\s+(-1)\\s*(//.*)?$`), - skipPatt = new RegExp('^(\\s*(//)?#define)\\s+(AT90USB|USBCON|BOARD_.+|.+_MACHINE_NAME|.+_SERIAL)\\s+(.+)\\s*(//.*)?$'), + skipPatt1 = new RegExp('^(\\s*(//)?#define)\\s+(AT90USB|USBCON|(BOARD|DAC|FLASH|HAS|IS|USE)_.+|.+_(ADDRESS|AVAILABLE|BAUDRATE|CLOCK|CONNECTION|DEFAULT|FREQ|ITEM|MODULE|NAME|ONLY|PERIOD|RANGE|RATE|SERIAL|SIZE|SPI|STATE|STEP|TIMER))\\s+(.+)\\s*(//.*)?$'), + skipPatt2 = new RegExp('^(\\s*(//)?#define)\\s+([A-Z_][A-Z0-9_]+)\\s+(0x[0-9A-Fa-f]+|\d+|.+[a-z].+)\\s*(//.*)?$'), aliasPatt = new RegExp('^(\\s*(//)?#define)\\s+([A-Z_][A-Z0-9_]+)\\s+([A-Z_][A-Z0-9_()]+)\\s*(//.*)?$'), switchPatt = new RegExp('^(\\s*(//)?#define)\\s+([A-Z_][A-Z0-9_]+)\\s*(//.*)?$'), undefPatt = new RegExp('^(\\s*(//)?#undef)\\s+([A-Z_][A-Z0-9_]+)\\s*(//.*)?$'), @@ -96,6 +97,12 @@ function process_text(txt) { // Comments in column 45 line = ''.rpad(col_comment) + r[1]; + else if (skipPatt1.exec(line) !== null) { + // + // #define SKIP_ME + // + if (do_log) console.log("skip:", line); + } else if ((r = pindefPatt.exec(line)) !== null) { // // #define MY_PIN [pin] @@ -115,7 +122,7 @@ function process_text(txt) { line = line.rpad(col_value_lj) + '-1'; if (r[5]) line = line.rpad(col_comment) + r[5]; } - else if ((r = skipPatt.exec(line)) !== null) { + else if (skipPatt2.exec(line) !== null) { // // #define SKIP_ME // 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 0000000000..5a6b32d78b --- /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/share/scripts/upload.py b/buildroot/share/scripts/upload.py index af15a82590..c97605e3f4 100644 --- a/buildroot/share/scripts/upload.py +++ b/buildroot/share/scripts/upload.py @@ -7,17 +7,6 @@ import serial 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 Upload(source, target, env): # "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 diff --git a/buildroot/share/vscode/avrdude_linux.conf b/buildroot/share/vscode/avrdude_linux.conf index ff429a028c..f889e3e142 100644 --- a/buildroot/share/vscode/avrdude_linux.conf +++ b/buildroot/share/vscode/avrdude_linux.conf @@ -240,8 +240,8 @@ #define AT86RF401 0xD0 #define AT89START 0xE0 -#define AT89S51 0xE0 -#define AT89S52 0xE1 +#define AT89S51 0xE0 +#define AT89S52 0xE1 # The following table lists the devices in the original AVR910 # appnote: @@ -293,15 +293,15 @@ # in the Internet. These add the following codes (only devices that # actually exist are listed): -# ATmega8515 0x3A -# ATmega128 0x43 -# ATmega64 0x45 -# ATtiny26 0x5E -# ATmega8535 0x69 -# ATmega32 0x72 -# ATmega16 0x74 -# ATmega8 0x76 -# ATmega169 0x78 +# ATmega8515 0x3A +# ATmega128 0x43 +# ATmega64 0x45 +# ATtiny26 0x5E +# ATmega8535 0x69 +# ATmega32 0x72 +# ATmega16 0x74 +# ATmega8 0x76 +# ATmega169 0x78 # # Overall avrdude defaults @@ -894,63 +894,63 @@ programmer # This is an HVSP-only device. part - id = "t11"; - desc = "ATtiny11"; - stk500_devcode = 0x11; - signature = 0x1e 0x90 0x04; - chip_erase_delay = 20000; + id = "t11"; + desc = "ATtiny11"; + stk500_devcode = 0x11; + signature = 0x1e 0x90 0x04; + chip_erase_delay = 20000; - timeout = 200; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + timeout = 200; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - blocksize = 64; - readsize = 256; - delay = 5; - ; + memory "eeprom" + size = 64; + blocksize = 64; + readsize = 256; + delay = 5; + ; - memory "flash" - size = 1024; - blocksize = 128; - readsize = 256; - delay = 3; - ; + memory "flash" + size = 1024; + blocksize = 128; + readsize = 256; + delay = 3; + ; - memory "signature" - size = 3; - ; + memory "signature" + size = 3; + ; - memory "lock" - size = 1; - ; + memory "lock" + size = 1; + ; - memory "calibration" - size = 1; - ; + memory "calibration" + size = 1; + ; - memory "fuse" - size = 1; - ; + memory "fuse" + size = 1; + ; ; #------------------------------------------------------------ @@ -958,132 +958,132 @@ part #------------------------------------------------------------ part - id = "t12"; - desc = "ATtiny12"; - stk500_devcode = 0x12; - avr910_devcode = 0x55; - signature = 0x1e 0x90 0x05; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t12"; + desc = "ATtiny12"; + stk500_devcode = 0x12; + avr910_devcode = 0x55; + signature = 0x1e 0x90 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 8; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 8; + blocksize = 64; + readsize = 256; + ; - memory "flash" - size = 1024; - min_write_delay = 4500; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 1024; + min_write_delay = 4500; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x o o o o o o o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1091,170 +1091,170 @@ part #------------------------------------------------------------ part - id = "t13"; - desc = "ATtiny13"; - has_debugwire = yes; - flash_instr = 0xB4, 0x0E, 0x1E; - eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x0E, 0xB4, 0x0E, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x14; - signature = 0x1e 0x90 0x07; - chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t13"; + desc = "ATtiny13"; + has_debugwire = yes; + flash_instr = 0xB4, 0x0E, 0x1E; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x0E, 0xB4, 0x0E, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; + signature = 0x1e 0x90 0x07; + chip_erase_delay = 4000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = + hvsp_controlstack = 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 90; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 90; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x x a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 1024; - page_size = 32; - num_pages = 32; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 1024; + page_size = 32; + num_pages = 32; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; ; @@ -1264,132 +1264,132 @@ part #------------------------------------------------------------ part - id = "t15"; - desc = "ATtiny15"; - stk500_devcode = 0x13; - avr910_devcode = 0x56; - signature = 0x1e 0x90 0x06; - chip_erase_delay = 8200; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t15"; + desc = "ATtiny15"; + stk500_devcode = 0x13; + avr910_devcode = 0x56; + signature = 0x1e 0x90 0x06; + chip_erase_delay = 8200; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 5; - synchcycles = 6; - latchcycles = 16; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 5; + synchcycles = 6; + latchcycles = 16; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - min_write_delay = 8200; - max_write_delay = 8200; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 8200; + max_write_delay = 8200; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - size = 1024; - min_write_delay = 4100; - max_write_delay = 4100; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 1024; + min_write_delay = 4100; + max_write_delay = 4100; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x o o o o x x o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o x x o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x i i i i 1 1 i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i 1 1 i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1397,114 +1397,114 @@ part #------------------------------------------------------------ part - id = "1200"; - desc = "AT90S1200"; - stk500_devcode = 0x33; - avr910_devcode = 0x13; - signature = 0x1e 0x90 0x01; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "1200"; + desc = "AT90S1200"; + stk500_devcode = 0x33; + avr910_devcode = 0x13; + signature = 0x1e 0x90 0x01; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 1; - bytedelay = 0; - pollindex = 0; - pollvalue = 0xFF; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 1; + bytedelay = 0; + pollindex = 0; + pollvalue = 0xFF; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 64; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 32; - readsize = 256; - ; - memory "flash" - size = 1024; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 20; + blocksize = 32; + readsize = 256; + ; + memory "flash" + size = 1024; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x02; - delay = 15; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + mode = 0x02; + delay = 15; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -1512,112 +1512,112 @@ part #------------------------------------------------------------ part - id = "4414"; - desc = "AT90S4414"; - stk500_devcode = 0x50; - avr910_devcode = 0x28; - signature = 0x1e 0x92 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "4414"; + desc = "AT90S4414"; + stk500_devcode = 0x50; + avr910_devcode = 0x28; + signature = 0x1e 0x92 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1625,112 +1625,112 @@ part #------------------------------------------------------------ part - id = "2313"; - desc = "AT90S2313"; - stk500_devcode = 0x40; - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "2313"; + desc = "AT90S2313"; + stk500_devcode = 0x40; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 128; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 2048; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1738,126 +1738,126 @@ part #------------------------------------------------------------ part - id = "2333"; + id = "2333"; ##### WARNING: No XML file for device 'AT90S2333'! ##### - desc = "AT90S2333"; - stk500_devcode = 0x42; - avr910_devcode = 0x34; - signature = 0x1e 0x91 0x05; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + desc = "AT90S2333"; + stk500_devcode = 0x42; + avr910_devcode = 0x34; + signature = 0x1e 0x91 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; - memory "flash" - size = 2048; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - pwroff_after_write = yes; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; @@ -1866,122 +1866,122 @@ part #------------------------------------------------------------ part - id = "2343"; - desc = "AT90S2343"; - stk500_devcode = 0x43; - avr910_devcode = 0x4c; - signature = 0x1e 0x91 0x03; - chip_erase_delay = 18000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "2343"; + desc = "AT90S2343"; + stk500_devcode = 0x43; + avr910_devcode = 0x4c; + signature = 0x1e 0x91 0x03; + chip_erase_delay = 18000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 0; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 0; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 2048; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 128; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x o o o x x x x o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 128; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x o o o x x x x o"; + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; @@ -1990,123 +1990,123 @@ part #------------------------------------------------------------ part - id = "4433"; - desc = "AT90S4433"; - stk500_devcode = 0x51; - avr910_devcode = 0x30; - signature = 0x1e 0x92 0x03; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "4433"; + desc = "AT90S4433"; + stk500_devcode = 0x51; + avr910_devcode = 0x30; + signature = 0x1e 0x92 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - pwroff_after_write = yes; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -2114,82 +2114,82 @@ part #------------------------------------------------------------ part - id = "4434"; + id = "4434"; ##### WARNING: No XML file for device 'AT90S4434'! ##### - desc = "AT90S4434"; - stk500_devcode = 0x52; - avr910_devcode = 0x6c; - signature = 0x1e 0x92 0x02; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + desc = "AT90S4434"; + stk500_devcode = 0x52; + avr910_devcode = 0x6c; + signature = 0x1e 0x92 0x02; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -2197,113 +2197,113 @@ part #------------------------------------------------------------ part - id = "8515"; - desc = "AT90S8515"; - stk500_devcode = 0x60; - avr910_devcode = 0x38; - signature = 0x1e 0x93 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "8515"; + desc = "AT90S8515"; + stk500_devcode = 0x60; + avr910_devcode = 0x38; + signature = 0x1e 0x93 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 512; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 8192; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -2311,120 +2311,120 @@ part #------------------------------------------------------------ part - id = "8535"; - desc = "AT90S8535"; - stk500_devcode = 0x61; - avr910_devcode = 0x68; - signature = 0x1e 0x93 0x03; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "8535"; + desc = "AT90S8535"; + stk500_devcode = 0x61; + avr910_devcode = 0x68; + signature = 0x1e 0x93 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 8192; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", "x x x x x x x x x x x x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", "x x x x x x x x o o x x x x x x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -2432,138 +2432,138 @@ part #------------------------------------------------------------ part - id = "m103"; - desc = "ATMEGA103"; - stk500_devcode = 0xB1; - avr910_devcode = 0x41; - signature = 0x1e 0x97 0x01; - chip_erase_delay = 112000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m103"; + desc = "ATMEGA103"; + stk500_devcode = 0xB1; + avr910_devcode = 0x41; + signature = 0x1e 0x97 0x01; + chip_erase_delay = 112000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x8E, 0x9E, 0x2E, 0x3E, 0xAE, 0xBE, - 0x4E, 0x5E, 0xCE, 0xDE, 0x6E, 0x7E, 0xEE, 0xDE, - 0x66, 0x76, 0xE6, 0xF6, 0x6A, 0x7A, 0xEA, 0x7A, - 0x7F, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 10; + pp_controlstack = + 0x0E, 0x1E, 0x8E, 0x9E, 0x2E, 0x3E, 0xAE, 0xBE, + 0x4E, 0x5E, 0xCE, 0xDE, 0x6E, 0x7E, 0xEE, 0xDE, + 0x66, 0x76, 0xE6, 0xF6, 0x6A, 0x7A, 0xEA, 0x7A, + 0x7F, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 10; - memory "eeprom" - size = 4096; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; + memory "eeprom" + size = 4096; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 22000; - max_write_delay = 56000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 22000; + max_write_delay = 56000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x11; - delay = 70; - blocksize = 256; - readsize = 256; - ; + mode = 0x11; + delay = 70; + blocksize = 256; + readsize = 256; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o x o 1 o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o x o 1 o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -2572,177 +2572,177 @@ part #------------------------------------------------------------ part - id = "m64"; - desc = "ATMEGA64"; - has_jtag = yes; - stk500_devcode = 0xA0; - avr910_devcode = 0x45; - signature = 0x1e 0x96 0x02; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m64"; + desc = "ATMEGA64"; + has_jtag = yes; + stk500_devcode = 0xA0; + avr910_devcode = 0x45; + signature = 0x1e 0x96 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x22; - spmcr = 0x68; - allowfullpagebitstream = yes; + idr = 0x22; + spmcr = 0x68; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 20; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -2753,177 +2753,177 @@ part #------------------------------------------------------------ part - id = "m128"; - desc = "ATMEGA128"; - has_jtag = yes; - stk500_devcode = 0xB2; - avr910_devcode = 0x43; - signature = 0x1e 0x97 0x02; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m128"; + desc = "ATMEGA128"; + has_jtag = yes; + stk500_devcode = 0xB2; + avr910_devcode = 0x43; + signature = 0x1e 0x97 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x22; - spmcr = 0x68; - rampz = 0x3b; - allowfullpagebitstream = yes; + idr = 0x22; + spmcr = 0x68; + rampz = 0x3b; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -2931,189 +2931,189 @@ part #------------------------------------------------------------ part - id = "c128"; - desc = "AT90CAN128"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c128"; + desc = "AT90CAN128"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x97 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x97 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -3121,189 +3121,189 @@ part #------------------------------------------------------------ part - id = "c64"; - desc = "AT90CAN64"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c64"; + desc = "AT90CAN64"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x96 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x96 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -3311,189 +3311,189 @@ part #------------------------------------------------------------ part - id = "c32"; - desc = "AT90CAN32"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c32"; + desc = "AT90CAN32"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x95 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x95 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 256; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 256; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -3502,174 +3502,174 @@ part #------------------------------------------------------------ part - id = "m16"; - desc = "ATMEGA16"; - has_jtag = yes; - stk500_devcode = 0x82; - avr910_devcode = 0x74; - signature = 0x1e 0x94 0x03; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m16"; + desc = "ATMEGA16"; + has_jtag = yes; + stk500_devcode = 0x82; + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x03; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 100; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 100; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "calibration" - size = 4; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "calibration" + size = 4; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; @@ -3680,187 +3680,187 @@ part # close to ATmega16 part - id = "m164p"; - desc = "ATMEGA164P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x94 0x0a; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m164p"; + desc = "ATMEGA164P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -3871,187 +3871,187 @@ part # similar to ATmega164P part - id = "m324p"; - desc = "ATMEGA324P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x95 0x08; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m324p"; + desc = "ATMEGA324P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x95 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4062,187 +4062,187 @@ part # similar to ATmega164 part - id = "m644"; - desc = "ATMEGA644"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x96 0x09; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m644"; + desc = "ATMEGA644"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x09; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -4252,187 +4252,187 @@ part # similar to ATmega164p part - id = "m644p"; - desc = "ATMEGA644P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x96 0x0a; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m644p"; + desc = "ATMEGA644P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4444,187 +4444,187 @@ part # similar to ATmega164p part - id = "m1284p"; - desc = "ATMEGA1284P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x97 0x05; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m1284p"; + desc = "ATMEGA1284P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x97 0x05; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4634,193 +4634,193 @@ part #------------------------------------------------------------ part - id = "m162"; - desc = "ATMEGA162"; - has_jtag = yes; - stk500_devcode = 0x83; - avr910_devcode = 0x63; - signature = 0x1e 0x94 0x04; - chip_erase_delay = 9000; - pagel = 0xd7; - bs2 = 0xa0; + id = "m162"; + desc = "ATMEGA162"; + has_jtag = yes; + stk500_devcode = 0x83; + avr910_devcode = 0x63; + signature = 0x1e 0x94 0x04; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; - idr = 0x04; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x04; + spmcr = 0x57; + allowfullpagebitstream = yes; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; - ; + ; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "hfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "efuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "lock" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; + memory "signature" + size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4830,157 +4830,157 @@ part #------------------------------------------------------------ part - id = "m163"; - desc = "ATMEGA163"; - stk500_devcode = 0x81; - avr910_devcode = 0x64; - signature = 0x1e 0x94 0x02; - chip_erase_delay = 32000; - pagel = 0xd7; - bs2 = 0xa0; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m163"; + desc = "ATMEGA163"; + stk500_devcode = 0x81; + avr910_devcode = 0x64; + signature = 0x1e 0x94 0x02; + chip_erase_delay = 32000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 30; - programfusepulsewidth = 0; - programfusepolltimeout = 2; - programlockpulsewidth = 0; - programlockpolltimeout = 2; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; memory "eeprom" - size = 512; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + size = 512; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 16000; - max_write_delay = 16000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 16000; + max_write_delay = 16000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x11; - delay = 20; - blocksize = 128; - readsize = 256; - ; + mode = 0x11; + delay = 20; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o x x o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o x x o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i 1 1 i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i 1 1 i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x 1 o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x 1 o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x 0 x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x 0 x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -4988,179 +4988,179 @@ part #------------------------------------------------------------ part - id = "m169"; - desc = "ATMEGA169"; - has_jtag = yes; - stk500_devcode = 0x85; - avr910_devcode = 0x78; - signature = 0x1e 0x94 0x05; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m169"; + desc = "ATMEGA169"; + has_jtag = yes; + stk500_devcode = 0x85; + avr910_devcode = 0x78; + signature = 0x1e 0x94 0x05; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5168,182 +5168,182 @@ part #------------------------------------------------------------ part - id = "m329"; - desc = "ATMEGA329"; - has_jtag = yes; + id = "m329"; + desc = "ATMEGA329"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x03; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5352,182 +5352,182 @@ part # Identical to ATmega329 except of the signature part - id = "m329p"; - desc = "ATMEGA329P"; - has_jtag = yes; + id = "m329p"; + desc = "ATMEGA329P"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x0b; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x0b; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5537,182 +5537,182 @@ part # identical to ATmega329 part - id = "m3290"; - desc = "ATMEGA3290"; - has_jtag = yes; + id = "m3290"; + desc = "ATMEGA3290"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x04; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a3 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5722,182 +5722,182 @@ part # identical to ATmega3290 except of the signature part - id = "m3290p"; - desc = "ATMEGA3290P"; - has_jtag = yes; + id = "m3290p"; + desc = "ATMEGA3290P"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x0c; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x0c; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a3 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5905,182 +5905,182 @@ part #------------------------------------------------------------ part - id = "m649"; - desc = "ATMEGA649"; - has_jtag = yes; + id = "m649"; + desc = "ATMEGA649"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x96 0x03; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -6090,192 +6090,192 @@ part # identical to ATmega649 part - id = "m6490"; - desc = "ATMEGA6490"; - has_jtag = yes; + id = "m6490"; + desc = "ATMEGA6490"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x96 0x04; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -6283,174 +6283,174 @@ part #------------------------------------------------------------ part - id = "m32"; - desc = "ATMEGA32"; - has_jtag = yes; - stk500_devcode = 0x91; - avr910_devcode = 0x72; - signature = 0x1e 0x95 0x02; - chip_erase_delay = 9000; - pagel = 0xd7; - bs2 = 0xa0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m32"; + desc = "ATMEGA32"; + has_jtag = yes; + stk500_devcode = 0x91; + avr910_devcode = 0x72; + signature = 0x1e 0x95 0x02; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -6458,138 +6458,138 @@ part #------------------------------------------------------------ part - id = "m161"; - desc = "ATMEGA161"; - stk500_devcode = 0x80; - avr910_devcode = 0x60; - signature = 0x1e 0x94 0x01; - chip_erase_delay = 28000; - pagel = 0xd7; - bs2 = 0xa0; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m161"; + desc = "ATMEGA161"; + stk500_devcode = 0x80; + avr910_devcode = 0x60; + signature = 0x1e 0x94 0x01; + chip_erase_delay = 28000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 30; - programfusepulsewidth = 0; - programfusepolltimeout = 2; - programlockpulsewidth = 0; - programlockpolltimeout = 2; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; memory "eeprom" - size = 512; - min_write_delay = 3400; - max_write_delay = 3400; - readback_p1 = 0xff; - readback_p2 = 0xff; + size = 512; + min_write_delay = 3400; + max_write_delay = 3400; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 14000; - max_write_delay = 14000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 14000; + max_write_delay = 14000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 16; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 16; + blocksize = 128; + readsize = 256; + ; - memory "fuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x o x o o o o o"; + memory "fuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x o x o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x 1 i 1 i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x 1 i 1 i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6598,158 +6598,158 @@ part #------------------------------------------------------------ part - id = "m8"; - desc = "ATMEGA8"; - stk500_devcode = 0x70; - avr910_devcode = 0x76; - signature = 0x1e 0x93 0x07; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 10000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8"; + desc = "ATMEGA8"; + stk500_devcode = 0x70; + avr910_devcode = 0x76; + signature = 0x1e 0x93 0x07; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 10000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - page_size = 4; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + page_size = 4; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 20; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6759,154 +6759,154 @@ part #------------------------------------------------------------ part - id = "m8515"; - desc = "ATMEGA8515"; - stk500_devcode = 0x63; - avr910_devcode = 0x3A; - signature = 0x1e 0x93 0x06; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8515"; + desc = "ATMEGA8515"; + stk500_devcode = 0x63; + avr910_devcode = 0x3A; + signature = 0x1e 0x93 0x06; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6917,156 +6917,156 @@ part #------------------------------------------------------------ part - id = "m8535"; - desc = "ATMEGA8535"; - stk500_devcode = 0x64; - avr910_devcode = 0x69; - signature = 0x1e 0x93 0x08; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8535"; + desc = "ATMEGA8535"; + stk500_devcode = 0x64; + avr910_devcode = 0x69; + signature = 0x1e 0x93 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -7075,153 +7075,153 @@ part #------------------------------------------------------------ part - id = "t26"; - desc = "ATTINY26"; - stk500_devcode = 0x21; - avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x09; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t26"; + desc = "ATTINY26"; + stk500_devcode = 0x21; + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x09; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 16; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 16; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x x x x i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x x x x i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; @@ -7232,185 +7232,185 @@ part # Close to ATtiny26 part - id = "t261"; - desc = "ATTINY261"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t261"; + desc = "ATTINY261"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x0c; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x91 0x0c; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 128; - page_size = 4; - num_pages = 32; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 128; + page_size = 4; + num_pages = 32; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7421,185 +7421,185 @@ part # Close to ATtiny261 part - id = "t461"; - desc = "ATTINY461"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t461"; + desc = "ATTINY461"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x92 0x08; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x92 0x08; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 256; - page_size = 4; - num_pages = 64; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 256; + page_size = 4; + num_pages = 64; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7610,185 +7610,185 @@ part # Close to ATtiny461 part - id = "t861"; - desc = "ATTINY861"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t861"; + desc = "ATTINY861"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x93 0x0d; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x93 0x0d; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 512; - num_pages = 128; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 512; + num_pages = 128; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7798,185 +7798,185 @@ part #------------------------------------------------------------ part - id = "m48"; - desc = "ATMEGA48"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x59; + id = "m48"; + desc = "ATMEGA48"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x59; # avr910_devcode = 0x; - signature = 0x1e 0x92 0x05; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 45000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x92 0x05; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 45000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 256; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 256; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x x", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -7985,185 +7985,185 @@ part #------------------------------------------------------------ part - id = "m88"; - desc = "ATMEGA88"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x73; + id = "m88"; + desc = "ATMEGA88"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x73; # avr910_devcode = 0x; - signature = 0x1e 0x93 0x0a; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x93 0x0a; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 512; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8171,187 +8171,187 @@ part #------------------------------------------------------------ part - id = "m168"; - desc = "ATMEGA168"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x86; - # avr910_devcode = 0x; - signature = 0x1e 0x94 0x06; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m168"; + desc = "ATMEGA168"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x94 0x06; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 512; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; - ; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8359,185 +8359,185 @@ part #------------------------------------------------------------ part - id = "t88"; - desc = "attiny88"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x73; + id = "t88"; + desc = "attiny88"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x73; # avr910_devcode = 0x; - signature = 0x1e 0x93 0x11; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x93 0x11; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 64; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 64; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 64; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 64; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8545,100 +8545,100 @@ part #------------------------------------------------------------ part - id = "m328p"; - desc = "ATMEGA328P"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + id = "m328p"; + desc = "ATMEGA328P"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x86; - # avr910_devcode = 0x; - signature = 0x1e 0x95 0x0F; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x95 0x0F; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 1024; + memory "eeprom" + paged = no; + page_size = 4; + size = 1024; min_write_delay = 3600; max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x a9 a8", + " 0 0 0 x x x a9 a8", " a7 a6 a5 a4 a3 a2 a1 a0", " i i i i i i i i"; loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; writepage = " 1 1 0 0 0 0 1 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; min_write_delay = 4500; max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + readback_p1 = 0xff; + readback_p2 = 0xff; read_lo = " 0 0 1 0 0 0 0 0", " 0 0 a13 a12 a11 a10 a9 a8", " a7 a6 a5 a4 a3 a2 a1 a0", @@ -8650,82 +8650,82 @@ part " o o o o o o o o"; loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; - ; + ; - memory "lfuse" + memory "lfuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + "x x x x x x x x o o o o o o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" + memory "hfuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + "x x x x x x x x o o o o o o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" + memory "efuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + "x x x x x x x x x x x x x o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" + memory "lock" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + "x x x x x x x x x x o o o o o o"; write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" + memory "calibration" size = 1; read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" + memory "signature" size = 3; read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8733,186 +8733,186 @@ part #------------------------------------------------------------ part - id = "t2313"; - desc = "ATtiny2313"; - has_debugwire = yes; - flash_instr = 0xB2, 0x0F, 0x1F; - eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x23; + id = "t2313"; + desc = "ATtiny2313"; + has_debugwire = yes; + flash_instr = 0xB2, 0x0F, 0x1F; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x23; ## Use the ATtiny26 devcode: - avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x0a; - pagel = 0xD4; - bs2 = 0xD6; - reset = io; - chip_erase_delay = 9000; + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x0a; + pagel = 0xD4; + bs2 = 0xD6; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0E, 0x1E, 0x2E, 0x3E, 0x2E, 0x3E, - 0x4E, 0x5E, 0x4E, 0x5E, 0x6E, 0x7E, 0x6E, 0x7E, - 0x26, 0x36, 0x66, 0x76, 0x2A, 0x3A, 0x6A, 0x7A, - 0x2E, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0E, 0x1E, 0x2E, 0x3E, 0x2E, 0x3E, + 0x4E, 0x5E, 0x4E, 0x5E, 0x6E, 0x7E, 0x6E, 0x7E, + 0x26, 0x36, 0x66, 0x76, 0x2A, 0x3A, 0x6A, 0x7A, + 0x2E, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; # The information in the data sheet of April/2004 is wrong, this works: - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; # The information in the data sheet of April/2004 is wrong, this works: - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; # The information in the data sheet of April/2004 is wrong, this works: - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny2313 has Signature Bytes: 0x1E 0x91 0x0A. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; # The Tiny2313 has calibration data for both 4 MHz and 8 MHz. # The information in the data sheet of April/2004 is wrong, this works: - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8920,181 +8920,181 @@ part #------------------------------------------------------------ part - id = "pwm2"; - desc = "AT90PWM2"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm2"; + desc = "AT90PWM2"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x81; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9104,181 +9104,181 @@ part # Completely identical to AT90PWM2 (including the signature!) part - id = "pwm3"; - desc = "AT90PWM3"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm3"; + desc = "AT90PWM3"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x81; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9287,180 +9287,180 @@ part # Same as AT90PWM2 but different signature. part - id = "pwm2b"; - desc = "AT90PWM2B"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm2b"; + desc = "AT90PWM2B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x83; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9470,180 +9470,180 @@ part # Completely identical to AT90PWM2B (including the signature!) part - id = "pwm3b"; - desc = "AT90PWM3B"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm3b"; + desc = "AT90PWM3B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x83; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9651,179 +9651,179 @@ part #------------------------------------------------------------ part - id = "t25"; - desc = "ATtiny25"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t25"; + desc = "ATtiny25"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x08; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x08; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny25 has Signature Bytes: 0x1E 0x91 0x08. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9831,178 +9831,178 @@ part #------------------------------------------------------------ part - id = "t45"; - desc = "ATtiny45"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x14; + id = "t45"; + desc = "ATtiny45"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x92 0x06; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x06; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = + hvsp_controlstack = 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 256; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny45 has Signature Bytes: 0x1E 0x92 0x08. (Data sheet 2586C-AVR-06/05 (doc2586.pdf) indicates otherwise!) - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10010,179 +10010,179 @@ part #------------------------------------------------------------ part - id = "t85"; - desc = "ATtiny85"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t85"; + desc = "ATtiny85"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x93 0x0b; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0b; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny85 has Signature Bytes: 0x1E 0x93 0x08. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10191,187 +10191,187 @@ part # Almost same as ATmega1280, except for different memory sizes part - id = "m640"; - desc = "ATMEGA640"; - signature = 0x1e 0x96 0x08; - has_jtag = yes; + id = "m640"; + desc = "ATMEGA640"; + signature = 0x1e 0x96 0x08; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10379,187 +10379,187 @@ part #------------------------------------------------------------ part - id = "m1280"; - desc = "ATMEGA1280"; - signature = 0x1e 0x97 0x03; - has_jtag = yes; + id = "m1280"; + desc = "ATMEGA1280"; + signature = 0x1e 0x97 0x03; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10568,187 +10568,187 @@ part # Identical to ATmega1280 part - id = "m1281"; - desc = "ATMEGA1281"; - signature = 0x1e 0x97 0x04; - has_jtag = yes; + id = "m1281"; + desc = "ATMEGA1281"; + signature = 0x1e 0x97 0x04; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10756,192 +10756,192 @@ part #------------------------------------------------------------ part - id = "m2560"; - desc = "ATMEGA2560"; - signature = 0x1e 0x98 0x01; - has_jtag = yes; + id = "m2560"; + desc = "ATMEGA2560"; + signature = 0x1e 0x98 0x01; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 262144; - page_size = 256; - num_pages = 1024; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - load_ext_addr = " 0 1 0 0 1 1 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 a16", - " 0 0 0 0 0 0 0 0"; + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10949,192 +10949,192 @@ part #------------------------------------------------------------ part - id = "m2561"; - desc = "ATMEGA2561"; - signature = 0x1e 0x98 0x02; - has_jtag = yes; + id = "m2561"; + desc = "ATMEGA2561"; + signature = 0x1e 0x98 0x02; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 262144; - page_size = 256; - num_pages = 1024; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - load_ext_addr = " 0 1 0 0 1 1 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 a16", - " 0 0 0 0 0 0 0 0"; + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11143,187 +11143,187 @@ part # Identical to ATmega2561 but half the ROM part - id = "m128rfa1"; - desc = "ATMEGA128RFA1"; - signature = 0x1e 0xa7 0x01; - has_jtag = yes; + id = "m128rfa1"; + desc = "ATMEGA128RFA1"; + signature = 0x1e 0xa7 0x01; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xE2; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xE2; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11331,181 +11331,181 @@ part #------------------------------------------------------------ part - id = "t24"; - desc = "ATtiny24"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t24"; + desc = "ATtiny24"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x0b; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x0b; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny24 has Signature Bytes: 0x1E 0x91 0x0B. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11513,181 +11513,181 @@ part #------------------------------------------------------------ part - id = "t44"; - desc = "ATtiny44"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t44"; + desc = "ATtiny44"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x92 0x07; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x07; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 256; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny44 has Signature Bytes: 0x1E 0x92 0x07. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11695,182 +11695,182 @@ part #------------------------------------------------------------ part - id = "t84"; - desc = "ATtiny84"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t84"; + desc = "ATtiny84"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x93 0x0c; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0c; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny84 has Signature Bytes: 0x1E 0x93 0x0C. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11878,187 +11878,187 @@ part #------------------------------------------------------------ part - id = "m32u4"; - desc = "ATmega32U4"; - signature = 0x1e 0x95 0x87; - has_jtag = yes; + id = "m32u4"; + desc = "ATmega32U4"; + signature = 0x1e 0x95 0x87; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12066,187 +12066,187 @@ part #------------------------------------------------------------ part - id = "usb646"; - desc = "AT90USB646"; - signature = 0x1e 0x96 0x82; - has_jtag = yes; + id = "usb646"; + desc = "AT90USB646"; + signature = 0x1e 0x96 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12255,187 +12255,187 @@ part # identical to AT90USB646 part - id = "usb647"; - desc = "AT90USB647"; - signature = 0x1e 0x96 0x82; - has_jtag = yes; + id = "usb647"; + desc = "AT90USB647"; + signature = 0x1e 0x96 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12443,187 +12443,187 @@ part #------------------------------------------------------------ part - id = "usb1286"; - desc = "AT90USB1286"; - signature = 0x1e 0x97 0x82; - has_jtag = yes; + id = "usb1286"; + desc = "AT90USB1286"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12632,187 +12632,187 @@ part # identical to AT90USB1286 part - id = "usb1287"; - desc = "AT90USB1287"; - signature = 0x1e 0x97 0x82; - has_jtag = yes; + id = "usb1287"; + desc = "AT90USB1287"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -12821,179 +12821,179 @@ part #------------------------------------------------------------ part - id = "usb162"; - desc = "AT90USB162"; - has_jtag = no; - has_debugwire = yes; - signature = 0x1e 0x94 0x82; - chip_erase_delay = 9000; - reset = io; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; - pagel = 0xD7; - bs2 = 0xC6; + id = "usb162"; + desc = "AT90USB162"; + has_jtag = no; + has_debugwire = yes; + signature = 0x1e 0x94 0x82; + chip_erase_delay = 9000; + reset = io; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + pagel = 0xD7; + bs2 = 0xC6; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - num_pages = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + num_pages = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x i i i i i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13005,179 +13005,179 @@ part # num_pages = 64; part - id = "usb82"; - desc = "AT90USB82"; - has_jtag = no; - has_debugwire = yes; - signature = 0x1e 0x93 0x82; - chip_erase_delay = 9000; - reset = io; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; - pagel = 0xD7; - bs2 = 0xC6; + id = "usb82"; + desc = "AT90USB82"; + has_jtag = no; + has_debugwire = yes; + signature = 0x1e 0x93 0x82; + chip_erase_delay = 9000; + reset = io; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + pagel = 0xD7; + bs2 = 0xC6; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - num_pages = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + num_pages = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 8192; - page_size = 128; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 8192; + page_size = 128; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x i i i i i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13185,188 +13185,188 @@ part #------------------------------------------------------------ part - id = "m325"; - desc = "ATMEGA325"; - signature = 0x1e 0x95 0x05; - has_jtag = yes; + id = "m325"; + desc = "ATMEGA325"; + signature = 0x1e 0x95 0x05; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13374,188 +13374,188 @@ part #------------------------------------------------------------ part - id = "m645"; - desc = "ATMEGA645"; - signature = 0x1E 0x96 0x05; - has_jtag = yes; + id = "m645"; + desc = "ATMEGA645"; + signature = 0x1E 0x96 0x05; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 0 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " 0 0 0 0 0 0 0 0"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13563,188 +13563,188 @@ part #------------------------------------------------------------ part - id = "m3250"; - desc = "ATMEGA3250"; - signature = 0x1E 0x95 0x06; - has_jtag = yes; + id = "m3250"; + desc = "ATMEGA3250"; + signature = 0x1E 0x95 0x06; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13752,188 +13752,188 @@ part #------------------------------------------------------------ part - id = "m6450"; - desc = "ATMEGA6450"; - signature = 0x1E 0x96 0x06; - has_jtag = yes; + id = "m6450"; + desc = "ATMEGA6450"; + signature = 0x1E 0x96 0x06; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 0 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " 0 0 0 0 0 0 0 0"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13941,96 +13941,96 @@ part #------------------------------------------------------------ part - id = "x64a1"; - desc = "ATXMEGA64A1"; - signature = 0x1e 0x96 0x4e; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a1"; + desc = "ATXMEGA64A1"; + signature = 0x1e 0x96 0x4e; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14038,96 +14038,96 @@ part #------------------------------------------------------------ part - id = "x128a1"; - desc = "ATXMEGA128A1"; - signature = 0x1e 0x97 0x4c; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a1"; + desc = "ATXMEGA128A1"; + signature = 0x1e 0x97 0x4c; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14135,96 +14135,96 @@ part #------------------------------------------------------------ part - id = "x128a1d"; - desc = "ATXMEGA128A1REVD"; - signature = 0x1e 0x97 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a1d"; + desc = "ATXMEGA128A1REVD"; + signature = 0x1e 0x97 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14232,96 +14232,96 @@ part #------------------------------------------------------------ part - id = "x192a1"; - desc = "ATXMEGA192A1"; - signature = 0x1e 0x97 0x4e; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x192a1"; + desc = "ATXMEGA192A1"; + signature = 0x1e 0x97 0x4e; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00030000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00030000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0082e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0082e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00830000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00830000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00032000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00032000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14329,96 +14329,96 @@ part #------------------------------------------------------------ part - id = "x256a1"; - desc = "ATXMEGA256A1"; - signature = 0x1e 0x98 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a1"; + desc = "ATXMEGA256A1"; + signature = 0x1e 0x98 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14426,96 +14426,96 @@ part #------------------------------------------------------------ part - id = "x64a3"; - desc = "ATXMEGA64A3"; - signature = 0x1e 0x96 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a3"; + desc = "ATXMEGA64A3"; + signature = 0x1e 0x96 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14523,96 +14523,96 @@ part #------------------------------------------------------------ part - id = "x128a3"; - desc = "ATXMEGA128A3"; - signature = 0x1e 0x97 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a3"; + desc = "ATXMEGA128A3"; + signature = 0x1e 0x97 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14620,96 +14620,96 @@ part #------------------------------------------------------------ part - id = "x192a3"; - desc = "ATXMEGA192A3"; - signature = 0x1e 0x97 0x44; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x192a3"; + desc = "ATXMEGA192A3"; + signature = 0x1e 0x97 0x44; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00030000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00030000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0082e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0082e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00830000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00830000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00032000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00032000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14717,96 +14717,96 @@ part #------------------------------------------------------------ part - id = "x256a3"; - desc = "ATXMEGA256A3"; - signature = 0x1e 0x98 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a3"; + desc = "ATXMEGA256A3"; + signature = 0x1e 0x98 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14814,96 +14814,96 @@ part #------------------------------------------------------------ part - id = "x256a3b"; - desc = "ATXMEGA256A3B"; - signature = 0x1e 0x98 0x43; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a3b"; + desc = "ATXMEGA256A3B"; + signature = 0x1e 0x98 0x43; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14911,96 +14911,96 @@ part #------------------------------------------------------------ part - id = "x16a4"; - desc = "ATXMEGA16A4"; - signature = 0x1e 0x94 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x16a4"; + desc = "ATXMEGA16A4"; + signature = 0x1e 0x94 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0400; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0400; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00004000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00004000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x00803000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x00803000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00804000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00804000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00005000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00005000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -15008,96 +15008,96 @@ part #------------------------------------------------------------ part - id = "x32a4"; - desc = "ATXMEGA32A4"; - signature = 0x1e 0x95 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x32a4"; + desc = "ATXMEGA32A4"; + signature = 0x1e 0x95 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0400; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0400; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00008000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00008000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x00807000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x00807000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00808000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00808000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00009000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00009000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -15105,96 +15105,96 @@ part #------------------------------------------------------------ part - id = "x64a4"; - desc = "ATXMEGA64A4"; - signature = 0x1e 0x96 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a4"; + desc = "ATXMEGA64A4"; + signature = 0x1e 0x96 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -15202,96 +15202,96 @@ part #------------------------------------------------------------ part - id = "x128a4"; - desc = "ATXMEGA128A4"; - signature = 0x1e 0x97 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a4"; + desc = "ATXMEGA128A4"; + signature = 0x1e 0x97 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; @@ -15300,20 +15300,20 @@ part #------------------------------------------------------------ part - id = "ucr2"; - desc = "32UC3A0512"; - signature = 0xED 0xC0 0x3F; - has_jtag = yes; - is_avr32 = yes; + id = "ucr2"; + desc = "32UC3A0512"; + signature = 0xED 0xC0 0x3F; + has_jtag = yes; + is_avr32 = yes; - memory "flash" - paged = yes; - page_size = 512; # bytes - readsize = 512; # bytes - num_pages = 1024; # could be set dynamicly - size = 0x00080000; # could be set dynamicly - offset = 0x80000000; - ; + memory "flash" + paged = yes; + page_size = 512; # bytes + readsize = 512; # bytes + num_pages = 1024; # could be set dynamicly + size = 0x00080000; # could be set dynamicly + offset = 0x80000000; + ; ; #------------------------------------------------------------ @@ -15321,38 +15321,38 @@ part #------------------------------------------------------------ part - id = "t4"; - desc = "ATtiny4"; - signature = 0x1e 0x8f 0x0a; - has_tpi = yes; + id = "t4"; + desc = "ATtiny4"; + signature = 0x1e 0x8f 0x0a; + has_tpi = yes; - memory "flash" - size = 512; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 512; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15361,38 +15361,38 @@ part #------------------------------------------------------------ part - id = "t5"; - desc = "ATtiny5"; - signature = 0x1e 0x8f 0x09; - has_tpi = yes; + id = "t5"; + desc = "ATtiny5"; + signature = 0x1e 0x8f 0x09; + has_tpi = yes; - memory "flash" - size = 512; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 512; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15401,38 +15401,38 @@ part #------------------------------------------------------------ part - id = "t8"; - desc = "ATtiny9"; - signature = 0x1e 0x90 0x08; - has_tpi = yes; + id = "t8"; + desc = "ATtiny9"; + signature = 0x1e 0x90 0x08; + has_tpi = yes; - memory "flash" - size = 1024; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 1024; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15441,38 +15441,38 @@ part #------------------------------------------------------------ part - id = "t10"; - desc = "ATtiny10"; - signature = 0x1e 0x90 0x03; - has_tpi = yes; + id = "t10"; + desc = "ATtiny10"; + signature = 0x1e 0x90 0x03; + has_tpi = yes; - memory "flash" - size = 1024; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 1024; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; diff --git a/buildroot/share/vscode/avrdude_macOS.conf b/buildroot/share/vscode/avrdude_macOS.conf index 6147a2259a..c3235eed2b 100644 --- a/buildroot/share/vscode/avrdude_macOS.conf +++ b/buildroot/share/vscode/avrdude_macOS.conf @@ -240,8 +240,8 @@ #define AT86RF401 0xD0 #define AT89START 0xE0 -#define AT89S51 0xE0 -#define AT89S52 0xE1 +#define AT89S51 0xE0 +#define AT89S52 0xE1 # The following table lists the devices in the original AVR910 # appnote: @@ -293,15 +293,15 @@ # in the Internet. These add the following codes (only devices that # actually exist are listed): -# ATmega8515 0x3A -# ATmega128 0x43 -# ATmega64 0x45 -# ATtiny26 0x5E -# ATmega8535 0x69 -# ATmega32 0x72 -# ATmega16 0x74 -# ATmega8 0x76 -# ATmega169 0x78 +# ATmega8515 0x3A +# ATmega128 0x43 +# ATmega64 0x45 +# ATtiny26 0x5E +# ATmega8535 0x69 +# ATmega32 0x72 +# ATmega16 0x74 +# ATmega8 0x76 +# ATmega169 0x78 # # Overall avrdude defaults @@ -688,63 +688,63 @@ programmer # This is an HVSP-only device. part - id = "t11"; - desc = "ATtiny11"; - stk500_devcode = 0x11; - signature = 0x1e 0x90 0x04; - chip_erase_delay = 20000; + id = "t11"; + desc = "ATtiny11"; + stk500_devcode = 0x11; + signature = 0x1e 0x90 0x04; + chip_erase_delay = 20000; - timeout = 200; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + timeout = 200; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - blocksize = 64; - readsize = 256; - delay = 5; - ; + memory "eeprom" + size = 64; + blocksize = 64; + readsize = 256; + delay = 5; + ; - memory "flash" - size = 1024; - blocksize = 128; - readsize = 256; - delay = 3; - ; + memory "flash" + size = 1024; + blocksize = 128; + readsize = 256; + delay = 3; + ; - memory "signature" - size = 3; - ; + memory "signature" + size = 3; + ; - memory "lock" - size = 1; - ; + memory "lock" + size = 1; + ; - memory "calibration" - size = 1; - ; + memory "calibration" + size = 1; + ; - memory "fuse" - size = 1; - ; + memory "fuse" + size = 1; + ; ; #------------------------------------------------------------ @@ -752,132 +752,132 @@ part #------------------------------------------------------------ part - id = "t12"; - desc = "ATtiny12"; - stk500_devcode = 0x12; - avr910_devcode = 0x55; - signature = 0x1e 0x90 0x05; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t12"; + desc = "ATtiny12"; + stk500_devcode = 0x12; + avr910_devcode = 0x55; + signature = 0x1e 0x90 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 8; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 8; + blocksize = 64; + readsize = 256; + ; - memory "flash" - size = 1024; - min_write_delay = 4500; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 1024; + min_write_delay = 4500; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x o o o o o o o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -885,170 +885,170 @@ part #------------------------------------------------------------ part - id = "t13"; - desc = "ATtiny13"; - has_debugwire = yes; - flash_instr = 0xB4, 0x0E, 0x1E; - eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x0E, 0xB4, 0x0E, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x14; - signature = 0x1e 0x90 0x07; - chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t13"; + desc = "ATtiny13"; + has_debugwire = yes; + flash_instr = 0xB4, 0x0E, 0x1E; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x0E, 0xB4, 0x0E, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; + signature = 0x1e 0x90 0x07; + chip_erase_delay = 4000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = + hvsp_controlstack = 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 90; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 90; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x x a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 1024; - page_size = 32; - num_pages = 32; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 1024; + page_size = 32; + num_pages = 32; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 0 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; ; @@ -1058,132 +1058,132 @@ part #------------------------------------------------------------ part - id = "t15"; - desc = "ATtiny15"; - stk500_devcode = 0x13; - avr910_devcode = 0x56; - signature = 0x1e 0x90 0x06; - chip_erase_delay = 8200; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t15"; + desc = "ATtiny15"; + stk500_devcode = 0x13; + avr910_devcode = 0x56; + signature = 0x1e 0x90 0x06; + chip_erase_delay = 8200; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 5; - synchcycles = 6; - latchcycles = 16; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 5; + synchcycles = 6; + latchcycles = 16; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 64; - min_write_delay = 8200; - max_write_delay = 8200; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 8200; + max_write_delay = 8200; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - size = 1024; - min_write_delay = 4100; - max_write_delay = 4100; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 1024; + min_write_delay = 4100; + max_write_delay = 4100; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x o o o o x x o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o x x o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x i i i i 1 1 i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i 1 1 i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1191,114 +1191,114 @@ part #------------------------------------------------------------ part - id = "1200"; - desc = "AT90S1200"; - stk500_devcode = 0x33; - avr910_devcode = 0x13; - signature = 0x1e 0x90 0x01; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "1200"; + desc = "AT90S1200"; + stk500_devcode = 0x33; + avr910_devcode = 0x13; + signature = 0x1e 0x90 0x01; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 1; - bytedelay = 0; - pollindex = 0; - pollvalue = 0xFF; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 1; + bytedelay = 0; + pollindex = 0; + pollvalue = 0xFF; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 64; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 64; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 32; - readsize = 256; - ; - memory "flash" - size = 1024; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 20; + blocksize = 32; + readsize = 256; + ; + memory "flash" + size = 1024; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x02; - delay = 15; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + mode = 0x02; + delay = 15; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -1306,112 +1306,112 @@ part #------------------------------------------------------------ part - id = "4414"; - desc = "AT90S4414"; - stk500_devcode = 0x50; - avr910_devcode = 0x28; - signature = 0x1e 0x92 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "4414"; + desc = "AT90S4414"; + stk500_devcode = 0x50; + avr910_devcode = 0x28; + signature = 0x1e 0x92 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1419,112 +1419,112 @@ part #------------------------------------------------------------ part - id = "2313"; - desc = "AT90S2313"; - stk500_devcode = 0x40; - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "2313"; + desc = "AT90S2313"; + stk500_devcode = 0x40; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 128; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 2048; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -1532,126 +1532,126 @@ part #------------------------------------------------------------ part - id = "2333"; + id = "2333"; ##### WARNING: No XML file for device 'AT90S2333'! ##### - desc = "AT90S2333"; - stk500_devcode = 0x42; - avr910_devcode = 0x34; - signature = 0x1e 0x91 0x05; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + desc = "AT90S2333"; + stk500_devcode = 0x42; + avr910_devcode = 0x34; + signature = 0x1e 0x91 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; - memory "flash" - size = 2048; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - pwroff_after_write = yes; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; @@ -1660,122 +1660,122 @@ part #------------------------------------------------------------ part - id = "2343"; - desc = "AT90S2343"; - stk500_devcode = 0x43; - avr910_devcode = 0x4c; - signature = 0x1e 0x91 0x03; - chip_erase_delay = 18000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "2343"; + desc = "AT90S2343"; + stk500_devcode = 0x43; + avr910_devcode = 0x4c; + signature = 0x1e 0x91 0x03; + chip_erase_delay = 18000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, - 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, - 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 0; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 50; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 0; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; - memory "flash" - size = 2048; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 128; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x o o o x x x x o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 128; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x o o o x x x x o"; + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; @@ -1784,123 +1784,123 @@ part #------------------------------------------------------------ part - id = "4433"; - desc = "AT90S4433"; - stk500_devcode = 0x51; - avr910_devcode = 0x30; - signature = 0x1e 0x92 0x03; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "4433"; + desc = "AT90S4433"; + stk500_devcode = 0x51; + avr910_devcode = 0x30; + signature = 0x1e 0x92 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - pwroff_after_write = yes; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -1908,82 +1908,82 @@ part #------------------------------------------------------------ part - id = "4434"; + id = "4434"; ##### WARNING: No XML file for device 'AT90S4434'! ##### - desc = "AT90S4434"; - stk500_devcode = 0x52; - avr910_devcode = 0x6c; - signature = 0x1e 0x92 0x02; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + desc = "AT90S4434"; + stk500_devcode = 0x52; + avr910_devcode = 0x6c; + signature = 0x1e 0x92 0x02; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - memory "eeprom" - size = 256; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - ; - memory "flash" - size = 4096; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o o o o o o"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", - "x x x x x x x x x x x x x x x x"; - ; - memory "lock" - size = 1; - min_write_delay = 9000; - max_write_delay = 20000; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; ; #------------------------------------------------------------ @@ -1991,113 +1991,113 @@ part #------------------------------------------------------------ part - id = "8515"; - desc = "AT90S8515"; - stk500_devcode = 0x60; - avr910_devcode = 0x38; - signature = 0x1e 0x93 0x01; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "8515"; + desc = "AT90S8515"; + stk500_devcode = 0x60; + avr910_devcode = 0x38; + signature = 0x1e 0x93 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 512; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 8192; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x7f; - readback_p2 = 0x7f; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -2105,120 +2105,120 @@ part #------------------------------------------------------------ part - id = "8535"; - desc = "AT90S8535"; - stk500_devcode = 0x61; - avr910_devcode = 0x68; - signature = 0x1e 0x93 0x03; - chip_erase_delay = 20000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "8535"; + desc = "AT90S8535"; + stk500_devcode = 0x61; + avr910_devcode = 0x68; + signature = 0x1e 0x93 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0x00; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "flash" - size = 8192; - min_write_delay = 9000; - max_write_delay = 20000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write_lo = " 0 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - write_hi = " 0 1 0 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 128; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "fuse" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", "x x x x x x x x x x x x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", "x x x x x x x x o o x x x x x x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + min_write_delay = 9000; + max_write_delay = 9000; + ; ; #------------------------------------------------------------ @@ -2226,138 +2226,138 @@ part #------------------------------------------------------------ part - id = "m103"; - desc = "ATMEGA103"; - stk500_devcode = 0xB1; - avr910_devcode = 0x41; - signature = 0x1e 0x97 0x01; - chip_erase_delay = 112000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m103"; + desc = "ATMEGA103"; + stk500_devcode = 0xB1; + avr910_devcode = 0x41; + signature = 0x1e 0x97 0x01; + chip_erase_delay = 112000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x8E, 0x9E, 0x2E, 0x3E, 0xAE, 0xBE, - 0x4E, 0x5E, 0xCE, 0xDE, 0x6E, 0x7E, 0xEE, 0xDE, - 0x66, 0x76, 0xE6, 0xF6, 0x6A, 0x7A, 0xEA, 0x7A, - 0x7F, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 15; - chiperasepolltimeout = 0; - programfusepulsewidth = 2; - programfusepolltimeout = 0; - programlockpulsewidth = 0; - programlockpolltimeout = 10; + pp_controlstack = + 0x0E, 0x1E, 0x8E, 0x9E, 0x2E, 0x3E, 0xAE, 0xBE, + 0x4E, 0x5E, 0xCE, 0xDE, 0x6E, 0x7E, 0xEE, 0xDE, + 0x66, 0x76, 0xE6, 0xF6, 0x6A, 0x7A, 0xEA, 0x7A, + 0x7F, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 10; - memory "eeprom" - size = 4096; - min_write_delay = 4000; - max_write_delay = 9000; - readback_p1 = 0x80; - readback_p2 = 0x7f; + memory "eeprom" + size = 4096; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 22000; - max_write_delay = 56000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 22000; + max_write_delay = 56000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x11; - delay = 70; - blocksize = 256; - readsize = 256; - ; + mode = 0x11; + delay = 70; + blocksize = 256; + readsize = 256; + ; - memory "fuse" - size = 1; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x x o x o 1 o o"; + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o x o 1 o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x o o x"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -2366,177 +2366,177 @@ part #------------------------------------------------------------ part - id = "m64"; - desc = "ATMEGA64"; - has_jtag = yes; - stk500_devcode = 0xA0; - avr910_devcode = 0x45; - signature = 0x1e 0x96 0x02; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m64"; + desc = "ATMEGA64"; + has_jtag = yes; + stk500_devcode = 0xA0; + avr910_devcode = 0x45; + signature = 0x1e 0x96 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x22; - spmcr = 0x68; - allowfullpagebitstream = yes; + idr = 0x22; + spmcr = 0x68; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 20; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -2547,177 +2547,177 @@ part #------------------------------------------------------------ part - id = "m128"; - desc = "ATMEGA128"; - has_jtag = yes; - stk500_devcode = 0xB2; - avr910_devcode = 0x43; - signature = 0x1e 0x97 0x02; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m128"; + desc = "ATMEGA128"; + has_jtag = yes; + stk500_devcode = 0xB2; + avr910_devcode = 0x43; + signature = 0x1e 0x97 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x22; - spmcr = 0x68; - rampz = 0x3b; - allowfullpagebitstream = yes; + idr = 0x22; + spmcr = 0x68; + rampz = 0x3b; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 12; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -2725,189 +2725,189 @@ part #------------------------------------------------------------ part - id = "c128"; - desc = "AT90CAN128"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c128"; + desc = "AT90CAN128"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x97 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x97 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -2915,189 +2915,189 @@ part #------------------------------------------------------------ part - id = "c64"; - desc = "AT90CAN64"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c64"; + desc = "AT90CAN64"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x96 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x96 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -3105,189 +3105,189 @@ part #------------------------------------------------------------ part - id = "c32"; - desc = "AT90CAN32"; - has_jtag = yes; - stk500_devcode = 0xB3; + id = "c32"; + desc = "AT90CAN32"; + has_jtag = yes; + stk500_devcode = 0xB3; # avr910_devcode = 0x43; - signature = 0x1e 0x95 0x81; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x95 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - eecr = 0x3f; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 256; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 256; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -3296,174 +3296,174 @@ part #------------------------------------------------------------ part - id = "m16"; - desc = "ATMEGA16"; - has_jtag = yes; - stk500_devcode = 0x82; - avr910_devcode = 0x74; - signature = 0x1e 0x94 0x03; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m16"; + desc = "ATMEGA16"; + has_jtag = yes; + stk500_devcode = 0x82; + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x03; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 100; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 100; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "calibration" - size = 4; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "calibration" + size = 4; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; @@ -3474,187 +3474,187 @@ part # close to ATmega16 part - id = "m164p"; - desc = "ATMEGA164P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x94 0x0a; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m164p"; + desc = "ATMEGA164P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -3665,187 +3665,187 @@ part # similar to ATmega164P part - id = "m324p"; - desc = "ATMEGA324P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x95 0x08; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m324p"; + desc = "ATMEGA324P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x95 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -3856,187 +3856,187 @@ part # similar to ATmega164 part - id = "m644"; - desc = "ATMEGA644"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x96 0x09; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m644"; + desc = "ATMEGA644"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x09; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -4046,187 +4046,187 @@ part # similar to ATmega164p part - id = "m644p"; - desc = "ATMEGA644P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x96 0x0a; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m644p"; + desc = "ATMEGA644P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4238,187 +4238,187 @@ part # similar to ATmega164p part - id = "m1284p"; - desc = "ATMEGA1284P"; - has_jtag = yes; - stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one - avr910_devcode = 0x74; - signature = 0x1e 0x97 0x05; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m1284p"; + desc = "ATMEGA1284P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x97 0x05; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4428,193 +4428,193 @@ part #------------------------------------------------------------ part - id = "m162"; - desc = "ATMEGA162"; - has_jtag = yes; - stk500_devcode = 0x83; - avr910_devcode = 0x63; - signature = 0x1e 0x94 0x04; - chip_erase_delay = 9000; - pagel = 0xd7; - bs2 = 0xa0; + id = "m162"; + desc = "ATMEGA162"; + has_jtag = yes; + stk500_devcode = 0x83; + avr910_devcode = 0x63; + signature = 0x1e 0x94 0x04; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; - idr = 0x04; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x04; + spmcr = 0x57; + allowfullpagebitstream = yes; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; - ; + ; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "hfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "efuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 16000; - max_write_delay = 16000; + memory "lock" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; + memory "signature" + size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -4624,157 +4624,157 @@ part #------------------------------------------------------------ part - id = "m163"; - desc = "ATMEGA163"; - stk500_devcode = 0x81; - avr910_devcode = 0x64; - signature = 0x1e 0x94 0x02; - chip_erase_delay = 32000; - pagel = 0xd7; - bs2 = 0xa0; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m163"; + desc = "ATMEGA163"; + stk500_devcode = 0x81; + avr910_devcode = 0x64; + signature = 0x1e 0x94 0x02; + chip_erase_delay = 32000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 30; - programfusepulsewidth = 0; - programfusepolltimeout = 2; - programlockpulsewidth = 0; - programlockpolltimeout = 2; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; memory "eeprom" - size = 512; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + size = 512; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 16000; - max_write_delay = 16000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 16000; + max_write_delay = 16000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x11; - delay = 20; - blocksize = 128; - readsize = 256; - ; + mode = 0x11; + delay = 20; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o x x o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o x x o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i 1 1 i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i 1 1 i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x 1 o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x 1 o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x 1 1 1 1 1 i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x 0 x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x 0 x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -4782,179 +4782,179 @@ part #------------------------------------------------------------ part - id = "m169"; - desc = "ATMEGA169"; - has_jtag = yes; - stk500_devcode = 0x85; - avr910_devcode = 0x78; - signature = 0x1e 0x94 0x05; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m169"; + desc = "ATMEGA169"; + has_jtag = yes; + stk500_devcode = 0x85; + avr910_devcode = 0x78; + signature = 0x1e 0x94 0x05; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -4962,182 +4962,182 @@ part #------------------------------------------------------------ part - id = "m329"; - desc = "ATMEGA329"; - has_jtag = yes; + id = "m329"; + desc = "ATMEGA329"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x03; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5146,182 +5146,182 @@ part # Identical to ATmega329 except of the signature part - id = "m329p"; - desc = "ATMEGA329P"; - has_jtag = yes; + id = "m329p"; + desc = "ATMEGA329P"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x0b; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x0b; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5331,182 +5331,182 @@ part # identical to ATmega329 part - id = "m3290"; - desc = "ATMEGA3290"; - has_jtag = yes; + id = "m3290"; + desc = "ATMEGA3290"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x04; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a3 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5516,182 +5516,182 @@ part # identical to ATmega3290 except of the signature part - id = "m3290p"; - desc = "ATMEGA3290P"; - has_jtag = yes; + id = "m3290p"; + desc = "ATMEGA3290P"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x95 0x0c; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x0c; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a3 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5699,182 +5699,182 @@ part #------------------------------------------------------------ part - id = "m649"; - desc = "ATMEGA649"; - has_jtag = yes; + id = "m649"; + desc = "ATMEGA649"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x96 0x03; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -5884,192 +5884,192 @@ part # identical to ATmega649 part - id = "m6490"; - desc = "ATMEGA6490"; - has_jtag = yes; + id = "m6490"; + desc = "ATMEGA6490"; + has_jtag = yes; # stk500_devcode = 0x85; # no STK500 support, only STK500v2 # avr910_devcode = 0x?; # try the ATmega169 one: - avr910_devcode = 0x75; - signature = 0x1e 0x96 0x04; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; + idr = 0x31; + spmcr = 0x57; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -6077,174 +6077,174 @@ part #------------------------------------------------------------ part - id = "m32"; - desc = "ATMEGA32"; - has_jtag = yes; - stk500_devcode = 0x91; - avr910_devcode = 0x72; - signature = 0x1e 0x95 0x02; - chip_erase_delay = 9000; - pagel = 0xd7; - bs2 = 0xa0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m32"; + desc = "ATMEGA32"; + has_jtag = yes; + stk500_devcode = 0x91; + avr910_devcode = 0x72; + signature = 0x1e 0x95 0x02; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = yes; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x a9 a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -6252,138 +6252,138 @@ part #------------------------------------------------------------ part - id = "m161"; - desc = "ATMEGA161"; - stk500_devcode = 0x80; - avr910_devcode = 0x60; - signature = 0x1e 0x94 0x01; - chip_erase_delay = 28000; - pagel = 0xd7; - bs2 = 0xa0; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m161"; + desc = "ATMEGA161"; + stk500_devcode = 0x80; + avr910_devcode = 0x60; + signature = 0x1e 0x94 0x01; + chip_erase_delay = 28000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 0; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 30; - programfusepulsewidth = 0; - programfusepolltimeout = 2; - programlockpulsewidth = 0; - programlockpolltimeout = 2; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; memory "eeprom" - size = 512; - min_write_delay = 3400; - max_write_delay = 3400; - readback_p1 = 0xff; - readback_p2 = 0xff; + size = 512; + min_write_delay = 3400; + max_write_delay = 3400; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " x x x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 5; - blocksize = 128; - readsize = 256; - ; + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 14000; - max_write_delay = 14000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 14000; + max_write_delay = 14000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 16; - blocksize = 128; - readsize = 256; - ; + mode = 0x21; + delay = 16; + blocksize = 128; + readsize = 256; + ; - memory "fuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 x x x x x x x x", - "x x x x x x x x x o x o o o o o"; + memory "fuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x o x o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", - "x x x x x x x x 1 i 1 i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x 1 i 1 i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6392,158 +6392,158 @@ part #------------------------------------------------------------ part - id = "m8"; - desc = "ATMEGA8"; - stk500_devcode = 0x70; - avr910_devcode = 0x76; - signature = 0x1e 0x93 0x07; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 10000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8"; + desc = "ATMEGA8"; + stk500_devcode = 0x70; + avr910_devcode = 0x76; + signature = 0x1e 0x93 0x07; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 10000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - page_size = 4; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + page_size = 4; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 20; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 20; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6553,154 +6553,154 @@ part #------------------------------------------------------------ part - id = "m8515"; - desc = "ATMEGA8515"; - stk500_devcode = 0x63; - avr910_devcode = 0x3A; - signature = 0x1e 0x93 0x06; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8515"; + desc = "ATMEGA8515"; + stk500_devcode = 0x63; + avr910_devcode = 0x3A; + signature = 0x1e 0x93 0x06; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6711,156 +6711,156 @@ part #------------------------------------------------------------ part - id = "m8535"; - desc = "ATMEGA8535"; - stk500_devcode = 0x64; - avr910_devcode = 0x69; - signature = 0x1e 0x93 0x08; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m8535"; + desc = "ATMEGA8535"; + stk500_devcode = 0x64; + avr910_devcode = 0x69; + signature = 0x1e 0x93 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 6; - togglevtg = 0; - poweroffdelay = 0; - resetdelayms = 0; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 x x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 128; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 2000; - max_write_delay = 2000; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -6869,153 +6869,153 @@ part #------------------------------------------------------------ part - id = "t26"; - desc = "ATTINY26"; - stk500_devcode = 0x21; - avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x09; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "t26"; + desc = "ATTINY26"; + stk500_devcode = 0x21; + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x09; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - mode = 0x04; - delay = 10; - blocksize = 64; - readsize = 256; - ; + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x21; - delay = 6; - blocksize = 16; - readsize = 256; - ; + mode = 0x21; + delay = 6; + blocksize = 16; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x x x x i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x x x x i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 4; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; ; @@ -7026,185 +7026,185 @@ part # Close to ATtiny26 part - id = "t261"; - desc = "ATTINY261"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t261"; + desc = "ATTINY261"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x0c; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x91 0x0c; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 128; - page_size = 4; - num_pages = 32; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 128; + page_size = 4; + num_pages = 32; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 x x x x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x x a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7215,185 +7215,185 @@ part # Close to ATtiny261 part - id = "t461"; - desc = "ATTINY461"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t461"; + desc = "ATTINY461"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x92 0x08; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x92 0x08; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 256; - page_size = 4; - num_pages = 64; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 256; + page_size = 4; + num_pages = 64; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7404,185 +7404,185 @@ part # Close to ATtiny461 part - id = "t861"; - desc = "ATTINY861"; - has_debugwire = yes; - flash_instr = 0xB4, 0x00, 0x10; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t861"; + desc = "ATTINY861"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; # stk500_devcode = 0x21; # avr910_devcode = 0x5e; - signature = 0x1e 0x93 0x0d; - pagel = 0xb3; - bs2 = 0xb2; - chip_erase_delay = 4000; + signature = 0x1e 0x93 0x0d; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 0; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; - pp_controlstack = - 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, - 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, - 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, - 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 2; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - size = 512; - num_pages = 128; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4000; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + size = 512; + num_pages = 128; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 x x x x x x x x", - "x x x x x x x x x x x x x x o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", - "x x x x x x x x x x x x x x x x"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; - min_write_delay = 4500; - max_write_delay = 4500; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; @@ -7592,185 +7592,185 @@ part #------------------------------------------------------------ part - id = "m48"; - desc = "ATMEGA48"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x59; + id = "m48"; + desc = "ATMEGA48"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x59; # avr910_devcode = 0x; - signature = 0x1e 0x92 0x05; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 45000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x92 0x05; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 45000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 256; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 256; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x x", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x x x o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -7779,185 +7779,185 @@ part #------------------------------------------------------------ part - id = "m88"; - desc = "ATMEGA88"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x73; + id = "m88"; + desc = "ATMEGA88"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x73; # avr910_devcode = 0x; - signature = 0x1e 0x93 0x0a; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x93 0x0a; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 512; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -7965,187 +7965,187 @@ part #------------------------------------------------------------ part - id = "m168"; - desc = "ATMEGA168"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x86; - # avr910_devcode = 0x; - signature = 0x1e 0x94 0x06; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + id = "m168"; + desc = "ATMEGA168"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x94 0x06; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 512; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; - ; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8153,185 +8153,185 @@ part #------------------------------------------------------------ part - id = "t88"; - desc = "attiny88"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x73; + id = "t88"; + desc = "attiny88"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x73; # avr910_devcode = 0x; - signature = 0x1e 0x93 0x11; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + signature = 0x1e 0x93 0x11; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 64; - min_write_delay = 3600; - max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + memory "eeprom" + paged = no; + page_size = 4; + size = 64; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 64; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 64; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; - memory "lfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + ; - memory "lock" - size = 1; - min_write_delay = 4500; - max_write_delay = 4500; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8339,100 +8339,100 @@ part #------------------------------------------------------------ part - id = "m328p"; - desc = "ATMEGA328P"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + id = "m328p"; + desc = "ATMEGA328P"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x86; - # avr910_devcode = 0x; - signature = 0x1e 0x95 0x0F; - pagel = 0xd7; - bs2 = 0xc2; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x95 0x0F; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = + pp_controlstack = 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - resetdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; - page_size = 4; - size = 1024; + memory "eeprom" + paged = no; + page_size = 4; + size = 1024; min_write_delay = 3600; max_write_delay = 3600; - readback_p1 = 0xff; - readback_p2 = 0xff; + readback_p1 = 0xff; + readback_p2 = 0xff; read = " 1 0 1 0 0 0 0 0", - " 0 0 0 x x x a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; write = " 1 1 0 0 0 0 0 0", - " 0 0 0 x x x a9 a8", + " 0 0 0 x x x a9 a8", " a7 a6 a5 a4 a3 a2 a1 a0", " i i i i i i i i"; loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; writepage = " 1 1 0 0 0 0 1 0", - " 0 0 x x x x a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 5; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; min_write_delay = 4500; max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; + readback_p1 = 0xff; + readback_p2 = 0xff; read_lo = " 0 0 1 0 0 0 0 0", " 0 0 a13 a12 a11 a10 a9 a8", " a7 a6 a5 a4 a3 a2 a1 a0", @@ -8444,82 +8444,82 @@ part " o o o o o o o o"; loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; writepage = " 0 1 0 0 1 1 0 0", - " 0 0 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; - ; + ; - memory "lfuse" + memory "lfuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; + "x x x x x x x x o o o o o o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + "x x x x x x x x i i i i i i i i"; + ; - memory "hfuse" + memory "hfuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; + "x x x x x x x x o o o o o o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; - ; + "x x x x x x x x i i i i i i i i"; + ; - memory "efuse" + memory "efuse" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x x x x x x o o o"; + "x x x x x x x x x x x x x o o o"; write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; - ; + "x x x x x x x x x x x x x i i i"; + ; - memory "lock" + memory "lock" size = 1; min_write_delay = 4500; max_write_delay = 4500; read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + "x x x x x x x x x x o o o o o o"; write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - ; + "x x x x x x x x 1 1 i i i i i i"; + ; - memory "calibration" + memory "calibration" size = 1; read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" + memory "signature" size = 3; read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8527,186 +8527,186 @@ part #------------------------------------------------------------ part - id = "t2313"; - desc = "ATtiny2313"; - has_debugwire = yes; - flash_instr = 0xB2, 0x0F, 0x1F; - eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x23; + id = "t2313"; + desc = "ATtiny2313"; + has_debugwire = yes; + flash_instr = 0xB2, 0x0F, 0x1F; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x23; ## Use the ATtiny26 devcode: - avr910_devcode = 0x5e; - signature = 0x1e 0x91 0x0a; - pagel = 0xD4; - bs2 = 0xD6; - reset = io; - chip_erase_delay = 9000; + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x0a; + pagel = 0xD4; + bs2 = 0xD6; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0E, 0x1E, 0x2E, 0x3E, 0x2E, 0x3E, - 0x4E, 0x5E, 0x4E, 0x5E, 0x6E, 0x7E, 0x6E, 0x7E, - 0x26, 0x36, 0x66, 0x76, 0x2A, 0x3A, 0x6A, 0x7A, - 0x2E, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0E, 0x1E, 0x2E, 0x3E, 0x2E, 0x3E, + 0x4E, 0x5E, 0x4E, 0x5E, 0x6E, 0x7E, 0x6E, 0x7E, + 0x26, 0x36, 0x66, 0x76, 0x2A, 0x3A, 0x6A, 0x7A, + 0x2E, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; # The information in the data sheet of April/2004 is wrong, this works: - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; # The information in the data sheet of April/2004 is wrong, this works: - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; # The information in the data sheet of April/2004 is wrong, this works: - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny2313 has Signature Bytes: 0x1E 0x91 0x0A. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; # The Tiny2313 has calibration data for both 4 MHz and 8 MHz. # The information in the data sheet of April/2004 is wrong, this works: - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8714,181 +8714,181 @@ part #------------------------------------------------------------ part - id = "pwm2"; - desc = "AT90PWM2"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm2"; + desc = "AT90PWM2"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x81; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -8898,181 +8898,181 @@ part # Completely identical to AT90PWM2 (including the signature!) part - id = "pwm3"; - desc = "AT90PWM3"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm3"; + desc = "AT90PWM3"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x81; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; # AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9081,180 +9081,180 @@ part # Same as AT90PWM2 but different signature. part - id = "pwm2b"; - desc = "AT90PWM2B"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm2b"; + desc = "AT90PWM2B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x83; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9264,180 +9264,180 @@ part # Completely identical to AT90PWM2B (including the signature!) part - id = "pwm3b"; - desc = "AT90PWM3B"; - has_debugwire = yes; - flash_instr = 0xB6, 0x01, 0x11; - eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, - 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, - 0x99, 0xF9, 0xBB, 0xAF; - stk500_devcode = 0x65; + id = "pwm3b"; + desc = "AT90PWM3B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; ## avr910_devcode = ?; - signature = 0x1e 0x93 0x83; - pagel = 0xD8; - bs2 = 0xE2; - reset = io; - chip_erase_delay = 9000; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 64; - readsize = 256; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9445,179 +9445,179 @@ part #------------------------------------------------------------ part - id = "t25"; - desc = "ATtiny25"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t25"; + desc = "ATtiny25"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x08; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x08; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny25 has Signature Bytes: 0x1E 0x91 0x08. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9625,178 +9625,178 @@ part #------------------------------------------------------------ part - id = "t45"; - desc = "ATtiny45"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; - stk500_devcode = 0x14; + id = "t45"; + desc = "ATtiny45"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x92 0x06; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x06; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = + hvsp_controlstack = 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 256; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny45 has Signature Bytes: 0x1E 0x92 0x08. (Data sheet 2586C-AVR-06/05 (doc2586.pdf) indicates otherwise!) - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9804,179 +9804,179 @@ part #------------------------------------------------------------ part - id = "t85"; - desc = "ATtiny85"; - has_debugwire = yes; - flash_instr = 0xB4, 0x02, 0x12; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t85"; + desc = "ATtiny85"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x93 0x0b; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0b; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x a8", " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny85 has Signature Bytes: 0x1E 0x93 0x08. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 2; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -9985,187 +9985,187 @@ part # Almost same as ATmega1280, except for different memory sizes part - id = "m640"; - desc = "ATMEGA640"; - signature = 0x1e 0x96 0x08; - has_jtag = yes; + id = "m640"; + desc = "ATMEGA640"; + signature = 0x1e 0x96 0x08; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10173,187 +10173,187 @@ part #------------------------------------------------------------ part - id = "m1280"; - desc = "ATMEGA1280"; - signature = 0x1e 0x97 0x03; - has_jtag = yes; + id = "m1280"; + desc = "ATMEGA1280"; + signature = 0x1e 0x97 0x03; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10362,187 +10362,187 @@ part # Identical to ATmega1280 part - id = "m1281"; - desc = "ATMEGA1281"; - signature = 0x1e 0x97 0x04; - has_jtag = yes; + id = "m1281"; + desc = "ATMEGA1281"; + signature = 0x1e 0x97 0x04; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10550,192 +10550,192 @@ part #------------------------------------------------------------ part - id = "m2560"; - desc = "ATMEGA2560"; - signature = 0x1e 0x98 0x01; - has_jtag = yes; + id = "m2560"; + desc = "ATMEGA2560"; + signature = 0x1e 0x98 0x01; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 262144; - page_size = 256; - num_pages = 1024; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - load_ext_addr = " 0 1 0 0 1 1 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 a16", - " 0 0 0 0 0 0 0 0"; + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10743,192 +10743,192 @@ part #------------------------------------------------------------ part - id = "m2561"; - desc = "ATMEGA2561"; - signature = 0x1e 0x98 0x02; - has_jtag = yes; + id = "m2561"; + desc = "ATMEGA2561"; + signature = 0x1e 0x98 0x02; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 262144; - page_size = 256; - num_pages = 1024; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - load_ext_addr = " 0 1 0 0 1 1 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 a16", - " 0 0 0 0 0 0 0 0"; + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -10937,187 +10937,187 @@ part # Identical to ATmega2561 but half the ROM part - id = "m128rfa1"; - desc = "ATMEGA128RFA1"; - signature = 0x1e 0xa7 0x01; - has_jtag = yes; + id = "m128rfa1"; + desc = "ATMEGA128RFA1"; + signature = 0x1e 0xa7 0x01; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xE2; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xE2; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x a11 a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11125,181 +11125,181 @@ part #------------------------------------------------------------ part - id = "t24"; - desc = "ATtiny24"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t24"; + desc = "ATtiny24"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x91 0x0b; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x0b; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 128; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 2048; - page_size = 32; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x x a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny24 has Signature Bytes: 0x1E 0x91 0x0B. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11307,181 +11307,181 @@ part #------------------------------------------------------------ part - id = "t44"; - desc = "ATtiny44"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t44"; + desc = "ATtiny44"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x92 0x07; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x07; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 256; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 256; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", - "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 4096; - page_size = 64; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny44 has Signature Bytes: 0x1E 0x92 0x07. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11489,182 +11489,182 @@ part #------------------------------------------------------------ part - id = "t84"; - desc = "ATtiny84"; - has_debugwire = yes; - flash_instr = 0xB4, 0x07, 0x17; - eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, - 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, - 0x99, 0xE1, 0xBB, 0xAC; + id = "t84"; + desc = "ATtiny84"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; ## no STK500 devcode in XML file, use the ATtiny45 one - stk500_devcode = 0x14; + stk500_devcode = 0x14; ## avr910_devcode = ?; ## Try the AT90S2313 devcode: - avr910_devcode = 0x20; - signature = 0x1e 0x93 0x0c; - reset = io; - chip_erase_delay = 4500; + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0c; + reset = io; + chip_erase_delay = 4500; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - hvsp_controlstack = - 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, - 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, - 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, - 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; - hventerstabdelay = 100; - hvspcmdexedelay = 0; - synchcycles = 6; - latchcycles = 1; - togglevtg = 1; - poweroffdelay = 25; - resetdelayms = 0; - resetdelayus = 70; - hvleavestabdelay = 100; - resetdelay = 25; - chiperasepolltimeout = 40; - chiperasetime = 0; - programfusepolltimeout = 25; - programlockpolltimeout = 25; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; - memory "eeprom" - size = 512; - paged = no; - page_size = 4; - min_write_delay = 4000; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", - "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; - write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", - "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x x x x", " x a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 4; - readsize = 256; - ; - memory "flash" - paged = yes; - size = 8192; - page_size = 64; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 x x x x x", - " x x x a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 32; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; # ATtiny84 has Signature Bytes: 0x1E 0x93 0x0C. - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; - memory "lock" - size = 1; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x x x x x x x i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x x x x i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11672,187 +11672,187 @@ part #------------------------------------------------------------ part - id = "m32u4"; - desc = "ATmega32U4"; - signature = 0x1e 0x95 0x87; - has_jtag = yes; + id = "m32u4"; + desc = "ATmega32U4"; + signature = 0x1e 0x95 0x87; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -11860,187 +11860,187 @@ part #------------------------------------------------------------ part - id = "usb646"; - desc = "AT90USB646"; - signature = 0x1e 0x96 0x82; - has_jtag = yes; + id = "usb646"; + desc = "AT90USB646"; + signature = 0x1e 0x96 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12049,187 +12049,187 @@ part # identical to AT90USB646 part - id = "usb647"; - desc = "AT90USB647"; - signature = 0x1e 0x96 0x82; - has_jtag = yes; + id = "usb647"; + desc = "AT90USB647"; + signature = 0x1e 0x96 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x x a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12237,187 +12237,187 @@ part #------------------------------------------------------------ part - id = "usb1286"; - desc = "AT90USB1286"; - signature = 0x1e 0x97 0x82; - has_jtag = yes; + id = "usb1286"; + desc = "AT90USB1286"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12426,187 +12426,187 @@ part # identical to AT90USB1286 part - id = "usb1287"; - desc = "AT90USB1287"; - signature = 0x1e 0x97 0x82; - has_jtag = yes; + id = "usb1287"; + desc = "AT90USB1287"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; # stk500_devcode = 0xB2; # avr910_devcode = 0x43; - chip_erase_delay = 9000; - pagel = 0xD7; - bs2 = 0xA0; - reset = dedicated; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", - "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - rampz = 0x3b; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 4096; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " x x x x a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 a2 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", + writepage = " 1 1 0 0 0 0 1 0", " 0 0 x x x a10 a9 a8", " a7 a6 a5 a4 a3 0 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 131072; - page_size = 256; - num_pages = 512; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 x x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 256; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x x x x x i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 x x x x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 x x x x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; @@ -12615,179 +12615,179 @@ part #------------------------------------------------------------ part - id = "usb162"; - desc = "AT90USB162"; - has_jtag = no; - has_debugwire = yes; - signature = 0x1e 0x94 0x82; - chip_erase_delay = 9000; - reset = io; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; - pagel = 0xD7; - bs2 = 0xC6; + id = "usb162"; + desc = "AT90USB162"; + has_jtag = no; + has_debugwire = yes; + signature = 0x1e 0x94 0x82; + chip_erase_delay = 9000; + reset = io; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + pagel = 0xD7; + bs2 = 0xC6; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - num_pages = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + num_pages = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 16384; - page_size = 128; - num_pages = 128; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x i i i i i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12799,179 +12799,179 @@ part # num_pages = 64; part - id = "usb82"; - desc = "AT90USB82"; - has_jtag = no; - has_debugwire = yes; - signature = 0x1e 0x93 0x82; - chip_erase_delay = 9000; - reset = io; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "x x x x x x x x x x x x x x x x"; - chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", - "x x x x x x x x x x x x x x x x"; - pagel = 0xD7; - bs2 = 0xC6; + id = "usb82"; + desc = "AT90USB82"; + has_jtag = no; + has_debugwire = yes; + signature = 0x1e 0x93 0x82; + chip_erase_delay = 9000; + reset = io; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + pagel = 0xD7; + bs2 = 0xC6; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 512; - num_pages = 128; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0x00; - readback_p2 = 0x00; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + num_pages = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", + loadpage_lo = " 1 1 0 0 0 0 0 1", " 0 0 0 0 0 0 0 0", " 0 0 0 0 0 0 a1 a0", " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", " x x x x x x x x"; - mode = 0x41; - delay = 20; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 8192; - page_size = 128; - num_pages = 64; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0x00; - readback_p2 = 0x00; - read_lo = " 0 0 1 0 0 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 8192; + page_size = 128; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " x x x x x x x x", - " x x a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - "a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 x x x x x x", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; - mode = 0x41; - delay = 6; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; - memory "lfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "x x x x x x x x i i i i i i i i"; + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "x x x x x x x x i i i i i i i i"; + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x i i i i i i i i"; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "x x x x x x x x o o o o o o o o"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", - "x x x x x x x x 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "calibration" - size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", - "x x x x x x a1 a0 o o o o o o o o"; - ; + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -12979,188 +12979,188 @@ part #------------------------------------------------------------ part - id = "m325"; - desc = "ATMEGA325"; - signature = 0x1e 0x95 0x05; - has_jtag = yes; + id = "m325"; + desc = "ATMEGA325"; + signature = 0x1e 0x95 0x05; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13168,188 +13168,188 @@ part #------------------------------------------------------------ part - id = "m645"; - desc = "ATMEGA645"; - signature = 0x1E 0x96 0x05; - has_jtag = yes; + id = "m645"; + desc = "ATMEGA645"; + signature = 0x1E 0x96 0x05; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 0 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 8; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " 0 0 0 0 0 0 0 0"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13357,188 +13357,188 @@ part #------------------------------------------------------------ part - id = "m3250"; - desc = "ATMEGA3250"; - signature = 0x1E 0x95 0x06; - has_jtag = yes; + id = "m3250"; + desc = "ATMEGA3250"; + signature = 0x1E 0x95 0x06; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 4; /* for parallel programming */ - size = 1024; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 0 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 0 a9 a8", - " a7 a6 a5 a4 a3 a2 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 32768; - page_size = 128; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " 0 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " x x x x x x x x"; + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13546,188 +13546,188 @@ part #------------------------------------------------------------ part - id = "m6450"; - desc = "ATMEGA6450"; - signature = 0x1E 0x96 0x06; - has_jtag = yes; + id = "m6450"; + desc = "ATMEGA6450"; + signature = 0x1E 0x96 0x06; + has_jtag = yes; # stk500_devcode = 0x??; # No STK500v1 support? # avr910_devcode = 0x??; # Try the ATmega16 one - avr910_devcode = 0x74; - pagel = 0xd7; - bs2 = 0xa0; - chip_erase_delay = 9000; - pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", - "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - chip_erase = "1 0 1 0 1 1 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"; + chip_erase = "1 0 1 0 1 1 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"; - timeout = 200; - stabdelay = 100; - cmdexedelay = 25; - synchloops = 32; - bytedelay = 0; - pollindex = 3; - pollvalue = 0x53; - predelay = 1; - postdelay = 1; - pollmethod = 1; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; - pp_controlstack = - 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, - 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, - 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, - 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; - hventerstabdelay = 100; - progmodedelay = 0; - latchcycles = 5; - togglevtg = 1; - poweroffdelay = 15; - resetdelayms = 1; - resetdelayus = 0; - hvleavestabdelay = 15; - chiperasepulsewidth = 0; - chiperasepolltimeout = 10; - programfusepulsewidth = 0; - programfusepolltimeout = 5; - programlockpulsewidth = 0; - programlockpolltimeout = 5; + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; - idr = 0x31; - spmcr = 0x57; - allowfullpagebitstream = no; + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; - memory "eeprom" - paged = no; /* leave this "no" */ - page_size = 8; /* for parallel programming */ - size = 2048; - min_write_delay = 9000; - max_write_delay = 9000; - readback_p1 = 0xff; - readback_p2 = 0xff; - read = " 1 0 1 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - write = " 1 1 0 0 0 0 0 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_lo = " 1 1 0 0 0 0 0 1", - " 0 0 0 0 0 0 0 0", - " 0 0 0 0 0 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; - writepage = " 1 1 0 0 0 0 1 0", - " 0 0 0 0 0 a10 a9 a8", - " a7 a6 a5 a4 a3 0 0 0", - " x x x x x x x x"; + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; - mode = 0x41; - delay = 10; - blocksize = 4; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; - memory "flash" - paged = yes; - size = 65536; - page_size = 256; - num_pages = 256; - min_write_delay = 4500; - max_write_delay = 4500; - readback_p1 = 0xff; - readback_p2 = 0xff; - read_lo = " 0 0 1 0 0 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - read_hi = " 0 0 1 0 1 0 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " o o o o o o o o"; + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; - loadpage_lo = " 0 1 0 0 0 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - loadpage_hi = " 0 1 0 0 1 0 0 0", - " 0 0 0 0 0 0 0 0", - " a7 a6 a5 a4 a3 a2 a1 a0", - " i i i i i i i i"; + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; - writepage = " 0 1 0 0 1 1 0 0", - " a15 a14 a13 a12 a11 a10 a9 a8", - " a7 a6 a5 a4 a3 a2 a1 a0", - " 0 0 0 0 0 0 0 0"; + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; - mode = 0x41; - delay = 10; - blocksize = 128; - readsize = 256; - ; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; - memory "lock" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", - "x x x x x x x x x x o o o o o o"; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 1 1 i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "lfuse" - size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "hfuse" - size = 1; - read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", - "0 0 0 0 0 0 0 0 i i i i i i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "efuse" - size = 1; + memory "efuse" + size = 1; - read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; - write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", - "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; - min_write_delay = 9000; - max_write_delay = 9000; - ; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; - memory "signature" - size = 3; - read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 a1 a0 o o o o o o o o"; - ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; - memory "calibration" - size = 1; + memory "calibration" + size = 1; - read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", - "0 0 0 0 0 0 0 0 o o o o o o o o"; - ; + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; ; #------------------------------------------------------------ @@ -13735,96 +13735,96 @@ part #------------------------------------------------------------ part - id = "x64a1"; - desc = "ATXMEGA64A1"; - signature = 0x1e 0x96 0x4e; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a1"; + desc = "ATXMEGA64A1"; + signature = 0x1e 0x96 0x4e; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -13832,96 +13832,96 @@ part #------------------------------------------------------------ part - id = "x128a1"; - desc = "ATXMEGA128A1"; - signature = 0x1e 0x97 0x4c; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a1"; + desc = "ATXMEGA128A1"; + signature = 0x1e 0x97 0x4c; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -13929,96 +13929,96 @@ part #------------------------------------------------------------ part - id = "x128a1d"; - desc = "ATXMEGA128A1REVD"; - signature = 0x1e 0x97 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a1d"; + desc = "ATXMEGA128A1REVD"; + signature = 0x1e 0x97 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14026,96 +14026,96 @@ part #------------------------------------------------------------ part - id = "x192a1"; - desc = "ATXMEGA192A1"; - signature = 0x1e 0x97 0x4e; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x192a1"; + desc = "ATXMEGA192A1"; + signature = 0x1e 0x97 0x4e; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00030000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00030000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0082e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0082e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00830000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00830000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00032000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00032000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14123,96 +14123,96 @@ part #------------------------------------------------------------ part - id = "x256a1"; - desc = "ATXMEGA256A1"; - signature = 0x1e 0x98 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a1"; + desc = "ATXMEGA256A1"; + signature = 0x1e 0x98 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14220,96 +14220,96 @@ part #------------------------------------------------------------ part - id = "x64a3"; - desc = "ATXMEGA64A3"; - signature = 0x1e 0x96 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a3"; + desc = "ATXMEGA64A3"; + signature = 0x1e 0x96 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14317,96 +14317,96 @@ part #------------------------------------------------------------ part - id = "x128a3"; - desc = "ATXMEGA128A3"; - signature = 0x1e 0x97 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a3"; + desc = "ATXMEGA128A3"; + signature = 0x1e 0x97 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14414,96 +14414,96 @@ part #------------------------------------------------------------ part - id = "x192a3"; - desc = "ATXMEGA192A3"; - signature = 0x1e 0x97 0x44; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x192a3"; + desc = "ATXMEGA192A3"; + signature = 0x1e 0x97 0x44; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00030000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00030000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0082e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0082e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00830000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00830000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00032000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00032000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14511,96 +14511,96 @@ part #------------------------------------------------------------ part - id = "x256a3"; - desc = "ATXMEGA256A3"; - signature = 0x1e 0x98 0x42; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a3"; + desc = "ATXMEGA256A3"; + signature = 0x1e 0x98 0x42; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14608,96 +14608,96 @@ part #------------------------------------------------------------ part - id = "x256a3b"; - desc = "ATXMEGA256A3B"; - signature = 0x1e 0x98 0x43; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x256a3b"; + desc = "ATXMEGA256A3B"; + signature = 0x1e 0x98 0x43; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x1000; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x1000; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00040000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00040000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0083e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0083e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00840000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00840000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00042000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00042000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14705,96 +14705,96 @@ part #------------------------------------------------------------ part - id = "x16a4"; - desc = "ATXMEGA16A4"; - signature = 0x1e 0x94 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x16a4"; + desc = "ATXMEGA16A4"; + signature = 0x1e 0x94 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0400; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0400; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00004000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00004000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x00803000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x00803000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00804000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00804000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00005000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00005000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14802,96 +14802,96 @@ part #------------------------------------------------------------ part - id = "x32a4"; - desc = "ATXMEGA32A4"; - signature = 0x1e 0x95 0x41; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x32a4"; + desc = "ATXMEGA32A4"; + signature = 0x1e 0x95 0x41; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0400; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0400; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00008000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00008000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x00807000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x00807000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00808000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00808000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00009000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00009000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14899,96 +14899,96 @@ part #------------------------------------------------------------ part - id = "x64a4"; - desc = "ATXMEGA64A4"; - signature = 0x1e 0x96 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x64a4"; + desc = "ATXMEGA64A4"; + signature = 0x1e 0x96 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00010000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00010000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00001000; - offset = 0x0080f000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00001000; + offset = 0x0080f000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00001000; - offset = 0x00810000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00001000; + offset = 0x00810000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00011000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00011000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; #------------------------------------------------------------ @@ -14996,96 +14996,96 @@ part #------------------------------------------------------------ part - id = "x128a4"; - desc = "ATXMEGA128A4"; - signature = 0x1e 0x97 0x46; - has_jtag = yes; - has_pdi = yes; - nvm_base = 0x01c0; + id = "x128a4"; + desc = "ATXMEGA128A4"; + signature = 0x1e 0x97 0x46; + has_jtag = yes; + has_pdi = yes; + nvm_base = 0x01c0; - memory "eeprom" - size = 0x0800; - offset = 0x08c0000; - page_size = 0x20; - readsize = 0x100; - ; + memory "eeprom" + size = 0x0800; + offset = 0x08c0000; + page_size = 0x20; + readsize = 0x100; + ; - memory "application" - size = 0x00020000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "application" + size = 0x00020000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "apptable" - size = 0x00002000; - offset = 0x0081e000; - page_size = 0x100; - readsize = 0x100; - ; + memory "apptable" + size = 0x00002000; + offset = 0x0081e000; + page_size = 0x100; + readsize = 0x100; + ; - memory "boot" - size = 0x00002000; - offset = 0x00820000; - page_size = 0x100; - readsize = 0x100; - ; + memory "boot" + size = 0x00002000; + offset = 0x00820000; + page_size = 0x100; + readsize = 0x100; + ; - memory "flash" - size = 0x00022000; - offset = 0x0800000; - page_size = 0x100; - readsize = 0x100; - ; + memory "flash" + size = 0x00022000; + offset = 0x0800000; + page_size = 0x100; + readsize = 0x100; + ; - memory "prodsig" - size = 0x200; - offset = 0x8e0200; - page_size = 0x100; - readsize = 0x100; - ; + memory "prodsig" + size = 0x200; + offset = 0x8e0200; + page_size = 0x100; + readsize = 0x100; + ; - memory "usersig" - size = 0x200; - offset = 0x8e0400; - page_size = 0x100; - readsize = 0x100; - ; + memory "usersig" + size = 0x200; + offset = 0x8e0400; + page_size = 0x100; + readsize = 0x100; + ; - memory "signature" - size = 3; - offset = 0x1000090; - ; + memory "signature" + size = 3; + offset = 0x1000090; + ; - memory "fuse0" - size = 1; - offset = 0x8f0020; - ; + memory "fuse0" + size = 1; + offset = 0x8f0020; + ; - memory "fuse1" - size = 1; - offset = 0x8f0021; - ; + memory "fuse1" + size = 1; + offset = 0x8f0021; + ; - memory "fuse2" - size = 1; - offset = 0x8f0022; - ; + memory "fuse2" + size = 1; + offset = 0x8f0022; + ; - memory "fuse4" - size = 1; - offset = 0x8f0024; - ; + memory "fuse4" + size = 1; + offset = 0x8f0024; + ; - memory "fuse5" - size = 1; - offset = 0x8f0025; - ; + memory "fuse5" + size = 1; + offset = 0x8f0025; + ; - memory "lock" - size = 1; - offset = 0x8f0027; - ; + memory "lock" + size = 1; + offset = 0x8f0027; + ; ; @@ -15094,20 +15094,20 @@ part #------------------------------------------------------------ part - id = "ucr2"; - desc = "32UC3A0512"; - signature = 0xED 0xC0 0x3F; - has_jtag = yes; - is_avr32 = yes; + id = "ucr2"; + desc = "32UC3A0512"; + signature = 0xED 0xC0 0x3F; + has_jtag = yes; + is_avr32 = yes; - memory "flash" - paged = yes; - page_size = 512; # bytes - readsize = 512; # bytes - num_pages = 1024; # could be set dynamicly - size = 0x00080000; # could be set dynamicly - offset = 0x80000000; - ; + memory "flash" + paged = yes; + page_size = 512; # bytes + readsize = 512; # bytes + num_pages = 1024; # could be set dynamicly + size = 0x00080000; # could be set dynamicly + offset = 0x80000000; + ; ; #------------------------------------------------------------ @@ -15115,38 +15115,38 @@ part #------------------------------------------------------------ part - id = "t4"; - desc = "ATtiny4"; - signature = 0x1e 0x8f 0x0a; - has_tpi = yes; + id = "t4"; + desc = "ATtiny4"; + signature = 0x1e 0x8f 0x0a; + has_tpi = yes; - memory "flash" - size = 512; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 512; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15155,38 +15155,38 @@ part #------------------------------------------------------------ part - id = "t5"; - desc = "ATtiny5"; - signature = 0x1e 0x8f 0x09; - has_tpi = yes; + id = "t5"; + desc = "ATtiny5"; + signature = 0x1e 0x8f 0x09; + has_tpi = yes; - memory "flash" - size = 512; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 512; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15195,38 +15195,38 @@ part #------------------------------------------------------------ part - id = "t8"; - desc = "ATtiny9"; - signature = 0x1e 0x90 0x08; - has_tpi = yes; + id = "t8"; + desc = "ATtiny9"; + signature = 0x1e 0x90 0x08; + has_tpi = yes; - memory "flash" - size = 1024; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 1024; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; @@ -15235,38 +15235,38 @@ part #------------------------------------------------------------ part - id = "t10"; - desc = "ATtiny10"; - signature = 0x1e 0x90 0x03; - has_tpi = yes; + id = "t10"; + desc = "ATtiny10"; + signature = 0x1e 0x90 0x03; + has_tpi = yes; - memory "flash" - size = 1024; - offset = 0x4000; - page_size = 16; - blocksize = 128; - ; + memory "flash" + size = 1024; + offset = 0x4000; + page_size = 16; + blocksize = 128; + ; - memory "signature" - size = 3; - offset = 0x3fc0; - ; + memory "signature" + size = 3; + offset = 0x3fc0; + ; - memory "fuse" - size = 1; - offset = 0x3f40; - blocksize = 4; - ; + memory "fuse" + size = 1; + offset = 0x3f40; + blocksize = 4; + ; - memory "calibration" - size = 1; - offset = 0x3f80; - ; + memory "calibration" + size = 1; + offset = 0x3f80; + ; - memory "lockbits" - size = 1; - offset = 0x3f00; - ; + memory "lockbits" + size = 1; + offset = 0x3f00; + ; ; diff --git a/buildroot/tests/BIGTREE_BTT002 b/buildroot/tests/BIGTREE_BTT002 index 7288c5ef52..5398d30fea 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/BIGTREE_GTR_V1_0 b/buildroot/tests/BIGTREE_GTR_V1_0 index 9b0897b9ba..6904b9f70a 100755 --- a/buildroot/tests/BIGTREE_GTR_V1_0 +++ b/buildroot/tests/BIGTREE_GTR_V1_0 @@ -18,7 +18,8 @@ opt_set E0_AUTO_FAN_PIN PC10 E1_AUTO_FAN_PIN PC11 E2_AUTO_FAN_PIN PC12 NEOPIXEL_ FIL_RUNOUT_PIN 3 FIL_RUNOUT2_PIN 4 FIL_RUNOUT3_PIN 5 FIL_RUNOUT4_PIN 6 FIL_RUNOUT5_PIN 7 FIL_RUNOUT6_PIN 8 FIL_RUNOUT7_PIN 9 FIL_RUNOUT8_PIN 10 \ FILAMENT_RUNOUT_SCRIPT '"M600 T%c"' opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER BLTOUCH NEOPIXEL_LED Z_SAFE_HOMING NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE \ - FILAMENT_RUNOUT_SENSOR FIL_RUNOUT4_PULLUP FIL_RUNOUT8_PULLUP FILAMENT_CHANGE_RESUME_ON_INSERT PAUSE_REHEAT_FAST_RESUME + FILAMENT_RUNOUT_SENSOR FIL_RUNOUT4_PULLUP FIL_RUNOUT8_PULLUP FILAMENT_CHANGE_RESUME_ON_INSERT PAUSE_REHEAT_FAST_RESUME \ + LCD_BED_TRAMMING BED_TRAMMING_USE_PROBE exec_test $1 $2 "BigTreeTech GTR | 8 Extruders | Auto-Fan | Mixed TMC Drivers | Runout Sensors w/ distinct states" "$3" restore_configs @@ -27,7 +28,7 @@ opt_set MOTHERBOARD BOARD_BTT_GTR_V1_0 SERIAL_PORT -1 \ Z_DRIVER_TYPE A4988 Z2_DRIVER_TYPE A4988 Z3_DRIVER_TYPE A4988 Z4_DRIVER_TYPE A4988 \ DEFAULT_Kp_LIST '{ 22.2, 20.0, 21.0, 19.0, 18.0 }' DEFAULT_Ki_LIST '{ 1.08 }' DEFAULT_Kd_LIST '{ 114.0, 112.0, 110.0, 108.0 }' opt_enable TOOLCHANGE_FILAMENT_SWAP TOOLCHANGE_MIGRATION_FEATURE TOOLCHANGE_FS_SLOW_FIRST_PRIME TOOLCHANGE_FS_PRIME_FIRST_USED \ - PID_PARAMS_PER_HOTEND Z_MULTI_ENDSTOPS + PID_PARAMS_PER_HOTEND Z_MULTI_ENDSTOPS TC_GCODE_USE_GLOBAL_X TC_GCODE_USE_GLOBAL_Y exec_test $1 $2 "BigTreeTech GTR | 6 Extruders | Quad Z + Endstops" "$3" restore_configs @@ -41,7 +42,7 @@ opt_set MOTHERBOARD BOARD_BTT_GTR_V1_0 SERIAL_PORT -1 \ MPC_AMBIENT_XFER_COEFF '{ 0.068f, 0.068f, 0.068f }' \ MPC_AMBIENT_XFER_COEFF_FAN255 '{ 0.097f, 0.097f, 0.097f }' \ FILAMENT_HEAT_CAPACITY_PERMM '{ 5.6e-3f, 3.6e-3f, 5.6e-3f }' -opt_enable SWITCHING_TOOLHEAD TOOL_SENSOR MPCTEMP MPC_EDIT_MENU MPC_AUTOTUNE_MENU +opt_enable SWITCHING_TOOLHEAD TOOL_SENSOR MPCTEMP MPC_EDIT_MENU MPC_AUTOTUNE MPC_AUTOTUNE_MENU opt_disable PIDTEMP exec_test $1 $2 "BigTreeTech GTR | MPC | Switching Toolhead | Tool Sensors" "$3" diff --git a/buildroot/tests/DUE b/buildroot/tests/DUE index 8f09d8dd72..4e8fc76796 100755 --- a/buildroot/tests/DUE +++ b/buildroot/tests/DUE @@ -12,7 +12,8 @@ opt_set MOTHERBOARD BOARD_RAMPS4DUE_EFB \ TEMP_SENSOR_0 -2 TEMP_SENSOR_BED 2 \ GRID_MAX_POINTS_X 16 \ E0_AUTO_FAN_PIN 8 FANMUX0_PIN 53 EXTRUDER_AUTO_FAN_SPEED 100 \ - TEMP_SENSOR_CHAMBER 3 TEMP_CHAMBER_PIN 6 HEATER_CHAMBER_PIN 45 + TEMP_SENSOR_CHAMBER 3 TEMP_CHAMBER_PIN 6 HEATER_CHAMBER_PIN 45 \ + TRAMMING_POINT_XY '{{20,20},{20,20},{20,20},{20,20},{20,20}}' TRAMMING_POINT_NAME_5 '"Point 5"' opt_enable S_CURVE_ACCELERATION EEPROM_SETTINGS GCODE_MACROS \ FIX_MOUNTED_PROBE Z_SAFE_HOMING CODEPENDENT_XY_HOMING \ ASSISTED_TRAMMING REPORT_TRAMMING_MM ASSISTED_TRAMMING_WAIT_POSITION \ @@ -36,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 @@ -46,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/FYSETC_F6 b/buildroot/tests/FYSETC_F6 index 24fe550157..713408b550 100755 --- a/buildroot/tests/FYSETC_F6 +++ b/buildroot/tests/FYSETC_F6 @@ -7,11 +7,27 @@ set -e # -# Build with the default configurations +# Build with the default config plus DGUS_LCD_UI FYSETC # 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" "$3" +exec_test $1 $2 "DGUS (FYSETC)" "$3" + +# +# Test DGUS_LCD_UI RELOADED +# +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 "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 @@ -20,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 @@ -30,12 +46,12 @@ restore_configs opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ LCD_LANGUAGE vi LCD_LANGUAGE_2 fr \ X_DRIVER_TYPE TMC2160 Y_DRIVER_TYPE TMC5160 Z_DRIVER_TYPE TMC2208_STANDALONE E0_DRIVER_TYPE TMC2130 \ - X_MIN_ENDSTOP_INVERTING true Y_MIN_ENDSTOP_INVERTING true + X_MIN_ENDSTOP_HIT_STATE LOW Y_MIN_ENDSTOP_HIT_STATE LOW 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 -exec_test $1 $2 "RAMPS | Mixed TMC | Sensorless | RRDFGSC | Games" "$3" + 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) @@ -50,13 +66,13 @@ exec_test $1 $2 "RAMPS 1.3 | DELTA | FLSUN AC Config" "$3" use_example_configs SCARA/Morgan opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ LCD_LANGUAGE es \ - X_MAX_ENDSTOP_INVERTING false \ + 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 SQUARE_WAVE_STEPPING -exec_test $1 $2 "FYSETC_F6 | SCARA | Mixed TMC | EEPROM" "$3" + 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 restore_configs diff --git a/buildroot/tests/I3DBEEZ9_V1 b/buildroot/tests/I3DBEEZ9_V1 new file mode 100755 index 0000000000..7c11d2e6c8 --- /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/buildroot/tests/LERDGEK b/buildroot/tests/LERDGEK index 1aca42c18a..b0806e9085 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 diff --git a/buildroot/tests/LPC1768 b/buildroot/tests/LPC1768 index 2e680b60d7..53fc6f6d7f 100755 --- a/buildroot/tests/LPC1768 +++ b/buildroot/tests/LPC1768 @@ -17,7 +17,7 @@ restore_configs opt_set MOTHERBOARD BOARD_RAMPS_14_RE_ARM_EFB SERIAL_PORT_3 3 \ NEOPIXEL_TYPE NEO_RGB RGB_LED_R_PIN P2_12 RGB_LED_G_PIN P1_23 RGB_LED_B_PIN P1_22 RGB_LED_W_PIN P1_24 opt_enable FYSETC_MINI_12864_2_1 SDSUPPORT SDCARD_READONLY SERIAL_PORT_2 RGBW_LED E_DUAL_STEPPER_DRIVERS \ - NEOPIXEL_LED NEOPIXEL_IS_SEQUENTIAL NEOPIXEL_STARTUP_TEST NEOPIXEL_BKGD_INDEX_FIRST NEOPIXEL_BKGD_INDEX_LAST NEOPIXEL_BKGD_COLOR NEOPIXEL_BKGD_ALWAYS_ON + NEOPIXEL_LED NEOPIXEL_IS_SEQUENTIAL NEOPIXEL_STARTUP_TEST NEOPIXEL_BKGD_INDEX_FIRST NEOPIXEL_BKGD_INDEX_LAST NEOPIXEL_BKGD_COLOR NEOPIXEL_BKGD_TIMEOUT_COLOR NEOPIXEL_BKGD_ALWAYS_ON exec_test $1 $2 "ReARM EFB VIKI2, SDSUPPORT, 2 Serial ports (USB CDC + UART0), NeoPixel" "$3" #restore_configs @@ -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 \ @@ -44,10 +44,10 @@ 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_ZPROBE_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 \ + 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/LPC1769 b/buildroot/tests/LPC1769 index ec5c824450..9987d155ad 100755 --- a/buildroot/tests/LPC1769 +++ b/buildroot/tests/LPC1769 @@ -14,13 +14,13 @@ 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 } }" -opt_enable TFTGLCD_PANEL_SPI SDSUPPORT ADAPTIVE_FAN_SLOWING TEMP_TUNING_MAINTAIN_FAN \ +opt_enable TFTGLCD_PANEL_SPI SDSUPPORT ADAPTIVE_FAN_SLOWING REPORT_ADAPTIVE_FAN_SLOWING TEMP_TUNING_MAINTAIN_FAN \ MAX31865_SENSOR_OHMS_0 MAX31865_CALIBRATION_OHMS_0 \ - FIX_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR G29_RETRY_AND_RECOVER Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE \ + MAG_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR G29_RETRY_AND_RECOVER Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE \ BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET BED_TRAMMING_USE_PROBE BED_TRAMMING_VERIFY_RAISED \ 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 \ @@ -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 \ @@ -43,13 +43,25 @@ 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 \ - X_DRIVER_TYPE TMC2130 Y_DRIVER_TYPE TMC2130 Z_DRIVER_TYPE TMC2130 + 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 }' \ + DEFAULT_MAX_ACCELERATION '{ 3000, 3000, 100, 10000, 3000 }' \ + MANUAL_FEEDRATE '{ 50*60, 50*60, 4*60, 2*60, 50*60 }' \ + AXIS_RELATIVE_MODES '{ false, false, false, false, false }' \ + 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 \ + 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" "$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/NUCLEO_F767ZI b/buildroot/tests/NUCLEO_F767ZI index 9e23246606..a331618a09 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 diff --git a/buildroot/tests/SAMD21_minitronics20 b/buildroot/tests/SAMD21_minitronics20 index 420495bb76..ae9fa55ea4 100755 --- a/buildroot/tests/SAMD21_minitronics20 +++ b/buildroot/tests/SAMD21_minitronics20 @@ -24,9 +24,8 @@ opt_enable ENDSTOP_INTERRUPTS_FEATURE BLTOUCH Z_MIN_PROBE_REPEATABILITY_TEST \ STATUS_MESSAGE_SCROLLING SET_PROGRESS_MANUALLY SHOW_REMAINING_TIME SET_REMAINING_TIME \ 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_ZPROBE_GFX_OVERLAY \ - LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS SENSORLESS_HOMING \ - SQUARE_WAVE_STEPPING + MOVE_Z_WHEN_IDLE BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ + 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 ef67e061fe..312bd627ba 100755 --- a/buildroot/tests/SAMD51_grandcentral_m4 +++ b/buildroot/tests/SAMD51_grandcentral_m4 @@ -24,9 +24,10 @@ opt_enable ENDSTOP_INTERRUPTS_FEATURE S_CURVE_ACCELERATION BLTOUCH Z_MIN_PROBE_R STATUS_MESSAGE_SCROLLING SET_PROGRESS_MANUALLY SHOW_REMAINING_TIME SET_REMAINING_TIME \ 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_ZPROBE_GFX_OVERLAY \ - LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS SENSORLESS_HOMING \ - SQUARE_WAVE_STEPPING TMC_DEBUG + MOVE_Z_WHEN_IDLE BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ + 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" # clean up diff --git a/buildroot/tests/STM32F103RC_btt b/buildroot/tests/STM32F103RC_btt index 16419cbfa2..8df20740c4 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 @@ -12,8 +12,8 @@ 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 -exec_test $1 $2 "BigTreeTech SKR Mini E3 1.0 - Basic Config with TMC2209 HW Serial" "$3" +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 restore_configs diff --git a/buildroot/tests/STM32F103RC_btt_USB b/buildroot/tests/STM32F103RC_btt_USB index 8381de0ea6..3981466c46 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 diff --git a/buildroot/tests/STM32F103RC_fysetc b/buildroot/tests/STM32F103RC_fysetc new file mode 100755 index 0000000000..93b0fedf3d --- /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 0e78c73188..09dba7ef61 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/buildroot/tests/STM32F103RE_creality b/buildroot/tests/STM32F103RE_creality index 8c0a40d8ae..9115d62d1b 100644 --- a/buildroot/tests/STM32F103RE_creality +++ b/buildroot/tests/STM32F103RE_creality @@ -11,25 +11,26 @@ 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 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 \ + 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 -exec_test $1 $2 "Ender-3 S1 with ProUI (PIDTEMP)" "$3" - -opt_disable PIDTEMP -opt_enable MPCTEMP -exec_test $1 $2 "Ender-3 S1 with ProUI (MPCTEMP)" "$3" +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 opt_set MOTHERBOARD BOARD_CREALITY_V452 SERIAL_PORT 1 @@ -38,5 +39,12 @@ opt_enable NOZZLE_AS_PROBE Z_SAFE_HOMING Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN FAN_ PROBE_ACTIVATION_SWITCH PROBE_TARE PROBE_TARE_ONLY_WHILE_INACTIVE exec_test $1 $2 "Creality V4.5.2 PROBE_ACTIVATION_SWITCH, Probe Tare" "$3" +restore_configs +opt_set MOTHERBOARD BOARD_CREALITY_V422 SERIAL_PORT 1 DGUS_LCD_UI IA_CREALITY +opt_enable NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE LCD_BED_TRAMMING CLASSIC_JERK BABYSTEPPING \ + AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY FAN_SOFT_PWM +opt_add NO_CREALITY_422_DRIVER_WARNING NO_AUTO_ASSIGN_WARNING +exec_test $1 $2 "Creality V4.2.2 with IA_CREALITY" "$3" + # clean up restore_configs diff --git a/buildroot/tests/STM32F401RC_creality b/buildroot/tests/STM32F401RC_creality index 380711d061..fbc5194d60 100644 --- a/buildroot/tests/STM32F401RC_creality +++ b/buildroot/tests/STM32F401RC_creality @@ -9,7 +9,7 @@ set -e use_example_configs "Creality/Ender-3 V2/CrealityV422/MarlinUI" opt_add SDCARD_EEPROM_EMULATION AUTO_BED_LEVELING_BILINEAR Z_SAFE_HOMING opt_set MOTHERBOARD BOARD_CREALITY_V24S1_301F4 -exec_test $1 $2 "Ender 3 v2 with MarlinUI" "$3" +exec_test $1 $2 "Ender-3 v2 with MarlinUI" "$3" # clean up restore_configs diff --git a/buildroot/tests/at90usb1286_cdc b/buildroot/tests/at90usb1286_cdc index 01d752db8b..7dcf8d541a 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 75672a6a51..a753097694 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 diff --git a/buildroot/tests/linux_native b/buildroot/tests/linux_native index 0153687eac..268de8fd2b 100755 --- a/buildroot/tests/linux_native +++ b/buildroot/tests/linux_native @@ -10,7 +10,7 @@ set -e # Build with the default configurations # restore_configs -opt_set MOTHERBOARD BOARD_LINUX_RAMPS TEMP_SENSOR_BED 1 +opt_set MOTHERBOARD BOARD_SIMULATED TEMP_SENSOR_BED 1 opt_enable PIDTEMPBED EEPROM_SETTINGS BAUD_RATE_GCODE exec_test $1 $2 "Linux with EEPROM" "$3" diff --git a/buildroot/tests/mega1280 b/buildroot/tests/mega1280 index 5bf37289ba..7e99ee4a60 100755 --- a/buildroot/tests/mega1280 +++ b/buildroot/tests/mega1280 @@ -40,7 +40,8 @@ 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 +opt_add DEBUG_DXC_MODE exec_test $1 $2 "ZRIB_V52 | DUAL_X_CARRIAGE" "$3" # @@ -55,8 +56,8 @@ exec_test $1 $2 "RAMPS | DELTA | RRD LCD | DELTA_AUTO_CALIBRATION | DELTA_CALIBR # use_example_configs delta/generic opt_set LCD_LANGUAGE cz \ - Z_MIN_PROBE_ENDSTOP_INVERTING false \ - Z_MIN_ENDSTOP_INVERTING false + Z_MIN_PROBE_ENDSTOP_HIT_STATE HIGH \ + Z_MIN_ENDSTOP_HIT_STATE HIGH opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR BLTOUCH exec_test $1 $2 "DELTA | RRD LCD | ABL Bilinear | BLTOUCH" "$3" diff --git a/buildroot/tests/mega2560 b/buildroot/tests/mega2560 index f97b9e093d..aa15f055a0 100644 --- a/buildroot/tests/mega2560 +++ b/buildroot/tests/mega2560 @@ -26,11 +26,11 @@ ci_src_filter -y use_example_configs AnimationExample opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO LCD_LANGUAGE fr SAVED_POSITIONS 4 DEFAULT_EJERK 10 \ EXTRUDERS 5 TEMP_SENSOR_1 1 TEMP_SENSOR_2 5 TEMP_SENSOR_3 20 TEMP_SENSOR_4 1000 TEMP_SENSOR_BED 1 -opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_VALIDATION ENABLE_LEVELING_FADE_HEIGHT SKEW_CORRECTION \ +opt_enable AUTO_BED_LEVELING_UBL AVOID_OBSTACLES RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_VALIDATION ENABLE_LEVELING_FADE_HEIGHT SKEW_CORRECTION \ 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" @@ -44,7 +44,8 @@ opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO LCD_LANGUAGE jp_kana DEFAULT_EJERK 10 \ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER LIGHTWEIGHT_UI SHOW_CUSTOM_BOOTSCREEN BOOT_MARLIN_LOGO_SMALL \ SET_PROGRESS_MANUALLY SET_PROGRESS_PERCENT PRINT_PROGRESS_SHOW_DECIMALS SHOW_REMAINING_TIME STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES \ SDSUPPORT LONG_FILENAME_WRITE_SUPPORT SDCARD_SORT_ALPHA NO_SD_AUTOSTART USB_FLASH_DRIVE_SUPPORT CANCEL_OBJECTS \ - Z_PROBE_SLED AUTO_BED_LEVELING_UBL UBL_HILBERT_CURVE RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_VALIDATION ENABLE_LEVELING_FADE_HEIGHT \ + Z_PROBE_SLED AUTO_BED_LEVELING_UBL UBL_HILBERT_CURVE UBL_TILT_ON_MESH_POINTS UBL_TILT_ON_MESH_POINTS_3POINT \ + RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_VALIDATION ENABLE_LEVELING_FADE_HEIGHT \ EEPROM_SETTINGS EEPROM_CHITCHAT GCODE_MACROS CUSTOM_MENU_MAIN \ MULTI_NOZZLE_DUPLICATION CLASSIC_JERK LIN_ADVANCE QUICK_HOME \ NANODLP_Z_SYNC I2C_POSITION_ENCODERS M114_DETAIL \ @@ -53,7 +54,6 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER LIGHTWEIGHT_UI SHOW_CUS opt_disable SEGMENT_LEVELED_MOVES exec_test $1 $2 "Azteeg X3 Pro | EXTRUDERS 5 | RRDFGSC | UBL | LIN_ADVANCE | Sled Probe | Skew | JP-Kana | Babystep offsets ..." "$3" - # # 5 runout sensors with distinct states # @@ -63,25 +63,40 @@ opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO NUM_SERVOS 1 \ NUM_RUNOUT_SENSORS 5 FIL_RUNOUT2_PIN 44 FIL_RUNOUT3_PIN 45 FIL_RUNOUT4_PIN 46 FIL_RUNOUT5_PIN 47 \ FIL_RUNOUT_ENABLED '{ true, true, true, true, true }' FIL_RUNOUT_MODE '{ 1, 2, 7, 0, 1 }' FIL_RUNOUT_DISTANCE_MM '{ 15, 15, 15, 15, 15 }' opt_enable VIKI2 BOOT_MARLIN_LOGO_ANIMATED SDSUPPORT AUTO_REPORT_SD_STATUS \ - Z_PROBE_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE \ + Z_PROBE_SERVO_NR Z_SERVO_ANGLES Z_SERVO_MEASURE_ANGLE DEACTIVATE_SERVOS_AFTER_MOVE Z_SERVO_DEACTIVATE_AFTER_STOW \ + AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE PROBE_PT_1 PROBE_PT_2 PROBE_PT_3 \ EEPROM_SETTINGS EEPROM_CHITCHAT M114_DETAIL AUTO_REPORT_POSITION \ NO_VOLUMETRICS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES AUTOTEMP G38_PROBE_TARGET JOYSTICK \ DIRECT_STEPPING DETECT_BROKEN_ENDSTOP \ FILAMENT_RUNOUT_SENSOR NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE Z_SAFE_HOMING FIL_RUNOUT3_PULLUP -exec_test $1 $2 "Multiple runout sensors (x5) | Distinct runout states" "$3" +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 # restore_configs -opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO MIXING_STEPPERS 5 LCD_LANGUAGE ru REDUNDANT_PART_COOLING_FAN 1 \ +opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO MIXING_STEPPERS 5 LCD_LANGUAGE ru \ + 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 \ FIL_RUNOUT_ENABLED '{ true, true, true, true, true }' FIL_RUNOUT_MODE '{ 1, 2, 7, 0, 1 }' FIL_RUNOUT_DISTANCE_MM '{ 15, 15, 15, 15, 15 }' opt_enable MIXING_EXTRUDER GRADIENT_MIX GRADIENT_VTOOL CR10_STOCKDISPLAY \ USE_CONTROLLER_FAN CONTROLLER_FAN_EDITABLE CONTROLLER_FAN_IGNORE_Z \ FILAMENT_RUNOUT_SENSOR ADVANCED_PAUSE_FEATURE NOZZLE_PARK_FEATURE INPUT_SHAPING_X INPUT_SHAPING_Y -opt_disable DISABLE_INACTIVE_EXTRUDER +opt_disable DISABLE_OTHER_EXTRUDERS exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping | Greek" "$3" # @@ -126,7 +141,7 @@ exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping #opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2 #opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT #exec_test $1 $2 "Stuff" "$3" -# # +# # G3D_PANEL with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING # #restore_configs @@ -177,9 +192,9 @@ exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping #opt_enable LCM1602 #exec_test $1 $2 "Stuff" "$3" -# # -# # Test Laser features with 12864 LCD -# # +# +# Test Laser features with 12864 LCD +# # restore_configs # opt_set MOTHERBOARD BOARD_RAMPS_14_EFB EXTRUDERS 0 LCD_LANGUAGE en TEMP_SENSOR_COOLER 1 TEMP_SENSOR_1 0 SERIAL_PORT_2 2 \ # DEFAULT_AXIS_STEPS_PER_UNIT '{ 80, 80, 400 }' \ @@ -191,9 +206,9 @@ exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping # LASER_FEATURE LASER_SAFETY_TIMEOUT_MS LASER_COOLANT_FLOW_METER AIR_EVACUATION AIR_EVACUATION_PIN AIR_ASSIST AIR_ASSIST_PIN LASER_SYNCHRONOUS_M106_M107 # exec_test $1 $2 "MEGA2560 RAMPS | Laser Options | 12864 | Meatpack | Fan Sync | SERIAL_PORT_2 " "$3" -# # -# # Test Laser features with 44780 LCD -# # +# +# Test Laser features with 44780 LCD +# # restore_configs # opt_set MOTHERBOARD BOARD_RAMPS_14_EFB EXTRUDERS 0 LCD_LANGUAGE en TEMP_SENSOR_COOLER 1 TEMP_SENSOR_1 0 \ # DEFAULT_AXIS_STEPS_PER_UNIT '{ 80, 80, 400 }' \ @@ -205,9 +220,9 @@ exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping # LASER_FEATURE LASER_SAFETY_TIMEOUT_MS LASER_COOLANT_FLOW_METER AIR_EVACUATION AIR_EVACUATION_PIN AIR_ASSIST AIR_ASSIST_PIN # exec_test $1 $2 "MEGA2560 RAMPS | Laser Feature | Air Evacuation | Air Assist | Cooler | Laser Safety Timeout | Flowmeter | 44780 LCD " "$3" -# # -# # Test redundant temperature sensors + MAX TC + Backlight Timeout -# # +# +# Test redundant temperature sensors + MAX TC + Backlight Timeout +# # restore_configs # opt_set MOTHERBOARD BOARD_RAMPS_14_EFB EXTRUDERS 1 \ # TEMP_SENSOR_0 -2 TEMP_SENSOR_REDUNDANT -2 \ @@ -218,9 +233,9 @@ exec_test $1 $2 "Azteeg X3 | Mixing Extruder (x5) | Gradient Mix | Input Shaping # opt_disable PIDTEMP # exec_test $1 $2 "MEGA2560 RAMPS | Redundant temperature sensor | 2x MAX6675 | BL Timeout" "$3" -# # -# # Polargraph Config -# # +# +# Polargraph Config +# # use_example_configs Polargraph # exec_test $1 $2 "RUMBA | POLARGRAPH | RRD LCD" "$3" diff --git a/buildroot/tests/melzi_optiboot b/buildroot/tests/melzi_optiboot new file mode 100755 index 0000000000..086fcc9169 --- /dev/null +++ b/buildroot/tests/melzi_optiboot @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# +# Build tests for melzi_optiboot +# + +# exit on first failure +set -e + +# +# Ender-2 +# +use_example_configs Creality/Ender-2 +exec_test $1 $2 "Ender-2" "$3" + +# clean up +restore_configs diff --git a/buildroot/tests/mks_robin_pro2 b/buildroot/tests/mks_robin_pro2 new file mode 100755 index 0000000000..3919437433 --- /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 diff --git a/buildroot/tests/mks_tinybee b/buildroot/tests/mks_tinybee index 8b5aa0f075..0351946d0a 100755 --- a/buildroot/tests/mks_tinybee +++ b/buildroot/tests/mks_tinybee @@ -21,12 +21,12 @@ exec_test $1 "$2" "MKS TinyBee with ESP3D_WIFISUPPORT" "$3" # restore_configs opt_set MOTHERBOARD BOARD_MKS_TINYBEE \ - LCD_LANGUAGE en \ - 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 + LCD_LANGUAGE en \ + LCD_INFO_SCREEN_STYLE 0 \ + DISPLAY_CHARSET_HD44780 WESTERN \ + NEOPIXEL_TYPE NEO_RGB +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/buildroot/tests/rambo b/buildroot/tests/rambo index 2a523f87a3..d977fe1b42 100644 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -15,9 +15,9 @@ opt_set MOTHERBOARD BOARD_RAMBO \ TEMP_SENSOR_PROBE 1 TEMP_PROBE_PIN 12 \ TEMP_SENSOR_CHAMBER 3 TEMP_CHAMBER_PIN 3 HEATER_CHAMBER_PIN 45 \ GRID_MAX_POINTS_X 16 AUTO_POWER_E_TEMP 80 \ - FANMUX0_PIN 53 NUM_RUNOUT_SENSORS 1 + 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 \ @@ -25,7 +25,7 @@ opt_enable USE_ZMAX_PLUG REPRAP_DISCOUNT_SMART_CONTROLLER LCD_PROGRESS_BAR LCD_P NEOPIXEL_LED NEOPIXEL_PIN CASE_LIGHT_ENABLE CASE_LIGHT_USE_NEOPIXEL CASE_LIGHT_MENU \ PID_PARAMS_PER_HOTEND PID_AUTOTUNE_MENU PID_EDIT_MENU PID_EXTRUSION_SCALING LCD_SHOW_E_TOTAL \ PRINTCOUNTER SERVICE_NAME_1 SERVICE_INTERVAL_1 LCD_BED_TRAMMING BED_TRAMMING_INCLUDE_CENTER \ - NOZZLE_PARK_FEATURE FILAMENT_RUNOUT_SENSOR FILAMENT_RUNOUT_DISTANCE_MM \ + NOZZLE_PARK_FEATURE FILAMENT_RUNOUT_SENSOR FILAMENT_RUNOUT_DISTANCE_MM FILAMENT_MOTION_SENSOR FILAMENT_SWITCH_AND_MOTION \ ADVANCED_PAUSE_FEATURE FILAMENT_LOAD_UNLOAD_GCODES FILAMENT_UNLOAD_ALL_EXTRUDERS \ PASSWORD_FEATURE PASSWORD_ON_STARTUP PASSWORD_ON_SD_PRINT_MENU PASSWORD_AFTER_SD_PRINT_END PASSWORD_AFTER_SD_PRINT_ABORT \ AUTO_BED_LEVELING_BILINEAR Z_MIN_PROBE_REPEATABILITY_TEST DISTINCT_E_FACTORS \ @@ -35,7 +35,7 @@ opt_enable USE_ZMAX_PLUG REPRAP_DISCOUNT_SMART_CONTROLLER LCD_PROGRESS_BAR LCD_P 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" @@ -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 @@ -74,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 # @@ -98,8 +105,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" # @@ -115,17 +122,17 @@ 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 \ - BABYSTEPPING BABYSTEP_DISPLAY_TOTAL FILAMENT_LCD_DISPLAY \ +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 \ 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_INACTIVE_EXTRUDER +opt_disable DISABLE_OTHER_EXTRUDERS exec_test $1 $2 "Rambo | CoreXY, Gradient Mix | Endstop Int. | Home Y > X | FW Retract ..." "$3" # clean up diff --git a/buildroot/tests/rumba32 b/buildroot/tests/rumba32 index 833769d0b9..c3d7603e4e 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 diff --git a/buildroot/tests/teensy31 b/buildroot/tests/teensy31 index 7465a67fdd..5043bb9644 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" # @@ -33,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 bcb8e944a1..4a752c7f5a 100755 --- a/buildroot/tests/teensy35 +++ b/buildroot/tests/teensy35 @@ -24,11 +24,11 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT SDCARD_SORT_A LCD_INFO_MENU LCD_PRINTER_INFO_IS_BOOTSCREEN LARGE_MOVE_ITEMS TURBO_BACK_MENU_ITEM PREHEAT_SHORTCUT_MENU_ITEM \ FILAMENT_WIDTH_SENSOR FILAMENT_LCD_DISPLAY CALIBRATION_GCODE BAUD_RATE_GCODE SOUND_MENU_ITEM \ FIX_MOUNTED_PROBE Z_SAFE_HOMING AUTO_BED_LEVELING_BILINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE \ - BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET BABYSTEP_ZPROBE_GFX_OVERLAY \ + BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ 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" # @@ -68,7 +68,7 @@ exec_test $1 $2 "PARKING_EXTRUDER with LCD" "$3" restore_configs opt_set MOTHERBOARD BOARD_TEENSY35_36 MIXING_STEPPERS 2 opt_enable MIXING_EXTRUDER DIRECT_MIXING_IN_G1 GRADIENT_MIX GRADIENT_VTOOL REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER -opt_disable DISABLE_INACTIVE_EXTRUDER +opt_disable DISABLE_OTHER_EXTRUDERS exec_test $1 $2 "Mixing Extruder" "$3" # @@ -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_MIN_ENDSTOP_INVERTING true Y_MIN_ENDSTOP_INVERTING true \ + 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 USE_ZMIN_PLUG 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" # @@ -103,7 +104,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 56bd5043c7..894abc15b9 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" @@ -71,7 +71,7 @@ exec_test $1 $2 "Ethernet, EEPROM, Magnetic Parking Extruder, No LCD" "$3" restore_configs opt_set MOTHERBOARD BOARD_TEENSY41 MIXING_STEPPERS 2 opt_enable MIXING_EXTRUDER DIRECT_MIXING_IN_G1 GRADIENT_MIX GRADIENT_VTOOL -opt_disable DISABLE_INACTIVE_EXTRUDER +opt_disable DISABLE_OTHER_EXTRUDERS exec_test $1 $2 "Mixing Extruder" "$3" # @@ -88,9 +88,9 @@ exec_test $1 $2 "Mixing Extruder" "$3" restore_configs opt_set MOTHERBOARD BOARD_TEENSY41 \ X_DRIVER_TYPE TMC5160 Y_DRIVER_TYPE TMC5160 \ - X_MIN_ENDSTOP_INVERTING true Y_MIN_ENDSTOP_INVERTING true \ + 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" diff --git a/buildroot/web-ui/data/www/webmarlin.js b/buildroot/web-ui/data/www/webmarlin.js index 943f7b9c08..3eb5139fb1 100644 --- a/buildroot/web-ui/data/www/webmarlin.js +++ b/buildroot/web-ui/data/www/webmarlin.js @@ -41,7 +41,7 @@ var WmButtonGroups = { var wmWebSoket = { WSObject: null, Connect: function() { - WsUrl=`ws://${location.host}/ws`; + WsUrl=`ws://${location.host}/ws`; try { if(wmWebSoket.WSObject === null) { jsLog.Debug("WebSocket: Trying connecting to " + WsUrl); diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index a85e0f8315..0000000000 --- a/docker-compose.yml +++ /dev/null @@ -1,19 +0,0 @@ -version: "3.8" -services: - # The main image: this doesn't run any particular command, but is mainly used - # for running tests locally - marlin: - image: marlin-dev - build: - dockerfile: Dockerfile - context: docker - working_dir: /code - volumes: - - .:/code - - platformio-cache:/root/.platformio - -volumes: - # This volume holds installed libraries for PlatformIO. If this is deleted you - # will have to download all the dependencies again, which can be a very slow - # process - platformio-cache: diff --git a/docker/Dockerfile b/docker/Dockerfile index 7d32f9c637..c01ca76ebb 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,7 +1,24 @@ FROM python:3.9.0-buster -RUN pip install -U platformio +# Disable warnings about not having a TTY +ARG DEBIAN_FRONTEND=noninteractive + +# Disable debconf warnings +ARG DEBCONF_NOWARNINGS="yes" + +# Upgrade pip +RUN pip install --upgrade pip + +# Install platformio toolchain / framework and pyyaml +RUN pip install -U platformio PyYaml + +# Upgrade platformio using development version / branch RUN pio upgrade --dev -# To get the test platforms -RUN pip install PyYaml + +# Set working directory +WORKDIR /code + +# Set volumes / mount points that we are using +VOLUME /code /root/.platformio + #ENV PATH /code/buildroot/bin/:/code/buildroot/tests/:${PATH} diff --git a/docs/Serial.md b/docs/Serial.md index 88846e1bb4..5e0d7e63eb 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)* diff --git a/get_test_targets.py b/get_test_targets.py deleted file mode 100755 index a38e3a594a..0000000000 --- a/get_test_targets.py +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env python -""" -Extract the builds used in Github CI, so that we can run them locally -""" -import yaml - - -with open('.github/workflows/test-builds.yml') as f: - github_configuration = yaml.safe_load(f) -test_platforms = github_configuration\ - ['jobs']['test_builds']['strategy']['matrix']['test-platform'] -print(' '.join(test_platforms)) diff --git a/ini/avr.ini b/ini/avr.ini index 831a25a1c8..19168941a3 100644 --- a/ini/avr.ini +++ b/ini/avr.ini @@ -13,8 +13,9 @@ # AVR (8-bit) Common Environment values # [common_avr8] -platform = atmelavr@~3.4 +platform = atmelavr@~4.0.1 build_flags = ${common.build_flags} -Wl,--relax +build_src_flags = -std=gnu++1z board_build.f_cpu = 16000000L src_filter = ${common.default_src_filter} + extra_scripts = ${common.extra_scripts} @@ -55,7 +56,7 @@ extends = common_avr8 board_build.variant = MARLIN_MEGA_EXTENDED extra_scripts = ${env:mega2560ext.extra_scripts} upload_speed = 57600 -build_flags = ${common.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -Wl,--relax -mcall-prologues +build_flags = ${common_avr8.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -mcall-prologues # # MightyBoard ATmega1280 @@ -105,7 +106,7 @@ board_upload.maximum_size = 126976 # [tuned_1284p] -build_flags = ${common.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -Wl,--relax -mcall-prologues +build_flags = ${common_avr8.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -mcall-prologues [env:sanguino1284p_optimized] extends = env:sanguino1284p diff --git a/ini/esp32.ini b/ini/esp32.ini index f12ef99759..98c3e06755 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 diff --git a/ini/features.ini b/ini/features.ini index c289bbe5d7..d9d07a94e9 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -9,240 +9,369 @@ # # ################################# +# 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 - 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) = 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_FSMC_TFT = src_filter=+ + -HAS_SPI_TFT = 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=+ -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=+ -HAS_MENU_BED_CORNERS = src_filter=+ -LCD_BED_LEVELING = 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_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 = src_filter=+ -HAS_MENU_UBL = src_filter=+ -ANYCUBIC_LCD_CHIRON = 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=+ -FORCE10SPRODISPLAY = src_filter=+ -DGUS_LCD_UI_CREALITY_TOUCH = 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=+ - - +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=+ - +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_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=+ +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_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=+ +DGUS_LCD_UI_MKS = build_src_filter=+ +DGUS_LCD_UI_ORIGIN = build_src_filter=+ +DGUS_LCD_UI_IA_CREALITY = build_src_filter=+ +INSANITYAUTOMATION_DWIN = 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=+ -NO_VOLUMETRICS = 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=+ -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=+ -LIN_ADVANCE = src_filter=+ -PHOTO_GCODE = src_filter=+ -CONTROLLER_FAN_EDITABLE = src_filter=+ -HAS_SHAPING = src_filter=+ -GCODE_MACROS = src_filter=+ -GRADIENT_MIX = 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_LCD_CONTRAST = src_filter=+ -HAS_GCODE_M255 = src_filter=+ -HAS_LCD_BRIGHTNESS = src_filter=+ -HAS_SOUND = 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=+ -SDSUPPORT = src_filter=+ + + + + + + -HAS_MEDIA_SUBCALLS = src_filter=+ -GCODE_REPEAT_MARKERS = src_filter=+ + -HAS_EXTRUDERS = src_filter=+ + + -HAS_TEMP_PROBE = src_filter=+ -HAS_COOLER = src_filter=+ -AUTO_REPORT_TEMPERATURES = 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_HOME_OFFSET = 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 luc-github/ESP32SSDP@1.1.1 lib_ignore=ESPAsyncTCP + build_flags=-DSRCHOME=${platformio.src_dir}/src -DHALHOME=SRCHOME diff --git a/ini/lpc176x.ini b/ini/lpc176x.ini index 0cb26628fe..548baaa410 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.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/native.ini b/ini/native.ini index 7ed705a782..03c6c59265 100644 --- a/ini/native.ini +++ b/ini/native.ini @@ -37,13 +37,13 @@ build_src_filter = ${common.default_src_filter} + platform = native framework = build_flags = ${common.build_flags} -std=gnu++17 -D__PLAT_NATIVE_SIM__ -DU8G_HAL_LINKS -I/usr/include/SDL2 -IMarlin -IMarlin/src/HAL/NATIVE_SIM/u8g -build_src_flags = -Wall -Wno-expansion-to-defined -Wcast-align +build_src_flags = -Wall -Wno-expansion-to-defined -Wno-deprecated-declarations -Wcast-align release_flags = -g0 -O3 -flto 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.0.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} diff --git a/ini/renamed.ini b/ini/renamed.ini index fa154f3a0f..91ac55f5b2 100644 --- a/ini/renamed.ini +++ b/ini/renamed.ini @@ -21,46 +21,68 @@ board = genericSTM32F103RE # List of environment names that are no longer used # -[env:STM32F103RET6_creality_maple] -# Renamed to STM32F103RE_creality_maple +[env:megaatmega1280] ;=> mega1280 extends = renamed -[env:STM32F103RET6_creality] -# Renamed to STM32F103RE_creality +[env:megaatmega2560] ;=> mega2560 extends = renamed -[env:STM32F103RET6_creality_xfer] -# Renamed to STM32F103RE_creality_xfer +[env:STM32F103RET6_creality_maple] ;=> STM32F103RE_creality_maple extends = renamed -[env:STM32F103RC_btt_512K] -# Renamed to STM32F103RE_btt +[env:STM32F103RET6_creality] ;=> STM32F103RE_creality extends = renamed -[env:STM32F103RC_btt_512K_USB] -# Renamed to STM32F103RE_btt_USB +[env:STM32F103RET6_creality_xfer] ;=> STM32F103RE_creality_xfer extends = renamed -[env:STM32F103RC_btt_512K_maple] -# Renamed to STM32F103RE_btt_maple +[env:STM32F103RC_btt_512K] ;=> STM32F103RE_btt extends = renamed -[env:STM32F103RC_btt_512K_USB_maple] -# Renamed to STM32F103RE_btt_USB_maple +[env:STM32F103RC_btt_512K_USB] ;=> STM32F103RE_btt_USB extends = renamed -[env:STM32F103RC_meeb] -# Renamed to STM32F103RC_meeb_maple +[env:STM32F103RC_btt_512K_maple] ;=> STM32F103RE_btt_maple extends = renamed -[env:STM32F103VE_GTM32] -# Renamed to STM32F103VE_GTM32_maple +[env:STM32F103RC_btt_512K_USB_maple] ;=> STM32F103RE_btt_USB_maple extends = renamed -[env:mks_robin_nano35] -# Renamed to mks_robin_nano_v1v2 +[env:STM32F103RC_meeb] ;=> STM32F103RC_meeb_maple extends = renamed -[env:mks_robin_nano35_maple] -# Renamed to mks_robin_nano_v1v2_maple +[env:STM32F103VE_GTM32] ;=> STM32F103VE_GTM32_maple +extends = renamed + +[env:mks_robin_nano35] ;=> mks_robin_nano_v1v2 +extends = renamed + +[env:mks_robin_nano35_maple] ;=> mks_robin_nano_v1v2_maple +extends = renamed + +[env:BIGTREE_OCTOPUS_V1] ;=> STM32F446ZE_btt +extends = renamed + +[env:BIGTREE_OCTOPUS_V1_USB] ;=> STM32F446ZE_btt_USB +extends = renamed + +[env:BIGTREE_OCTOPUS_PRO_V1_F429] ;=> STM32F429ZG_btt +extends = renamed + +[env:BIGTREE_OCTOPUS_PRO_V1_F429_USB] ;=> STM32F429ZG_btt_USB +extends = renamed + +[env:BIGTREE_OCTOPUS_V1_F407] ;=> STM32F407ZE_btt +extends = renamed + +[env:BIGTREE_OCTOPUS_V1_F407_USB] ;=> STM32F407ZE_btt_USB +extends = renamed + +[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/samd51.ini b/ini/samd51.ini index d7d9b3a421..70bda9ca52 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 diff --git a/ini/stm32-common.ini b/ini/stm32-common.ini index bab91c19bb..df009f90c8 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 d62ac3acf5..d23ee2a603 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 5acaf8fb24..8521288bbf 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 @@ -61,7 +61,7 @@ monitor_speed = 115200 [env:STM32F103RC_meeb_maple] extends = env:STM32F103RC_maple board = marlin_maple_MEEB_3DP -build_flags = ${STM32F1_maple.build_flags} +build_flags = ${env:STM32F103RC_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 -DSTM32_FLASH_SIZE=512 @@ -70,10 +70,10 @@ build_flags = ${STM32F1_maple.build_flags} -DVECT_TAB_OFFSET=0x2000 -DGENERIC_BOOTLOADER board_build.ldscript = STM32F103RC_MEEB_3DP.ld -extra_scripts = ${STM32F1_maple.extra_scripts} +extra_scripts = ${env:STM32F103RC_maple.extra_scripts} pre:buildroot/share/PlatformIO/scripts/STM32F1_create_variant.py buildroot/share/PlatformIO/scripts/STM32F103RC_MEEB_3DP.py -lib_deps = ${STM32F1_maple.lib_deps} +lib_deps = ${env:STM32F103RC_maple.lib_deps} USBComposite for STM32F1@0.91 custom_marlin.NEOPIXEL_LED = Adafruit NeoPixel=https://github.com/ccccmagicboy/Adafruit_NeoPixel#meeb_3dp_use debug_tool = stlink @@ -84,9 +84,9 @@ upload_protocol = dfu # [env:STM32F103RC_fysetc_maple] extends = env:STM32F103RC_maple -extra_scripts = ${STM32F1_maple.extra_scripts} +extra_scripts = ${env:STM32F103RC_maple.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py -build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 +build_flags = ${env:STM32F103RC_maple.build_flags} -DDEBUG_LEVEL=0 lib_ldf_mode = chain debug_tool = stlink upload_protocol = serial @@ -101,7 +101,7 @@ upload_protocol = serial extends = env:STM32F103RC_maple board_build.address = 0x08007000 board_build.ldscript = STM32F103RC_SKR_MINI_256K.ld -build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 +build_flags = ${env:STM32F103RC_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 monitor_speed = 115200 [env:STM32F103RC_btt_USB_maple] @@ -111,33 +111,33 @@ 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 -build_flags = ${STM32F1_maple.build_flags} -DTEMP_TIMER_CHAN=4 +build_flags = ${env:STM32F103RE_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -extra_scripts = ${STM32F1_maple.extra_scripts} +extra_scripts = ${env:STM32F103RE_maple.extra_scripts} pre:buildroot/share/PlatformIO/scripts/random-bin.py debug_tool = jlink upload_protocol = jlink # -# Creality (STM32F103RCT6) +# Creality 256K (STM32F103RCT6) # [env:STM32F103RC_creality_maple] extends = env:STM32F103RC_maple -build_flags = ${STM32F1_maple.build_flags} -DTEMP_TIMER_CHAN=4 +build_flags = ${env:STM32F103RC_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -extra_scripts = ${STM32F1_maple.extra_scripts} +extra_scripts = ${env:STM32F103RC_maple.extra_scripts} pre:buildroot/share/PlatformIO/scripts/random-bin.py debug_tool = jlink upload_protocol = jlink # -# Creality (STM32F103RET6) +# Creality 512K (STM32F103RE) for new 64KiB bootloader (CR-10 Smart Pro printer) # [env:STM32F103RE_creality_smartPro_maple] extends = env:STM32F103RE_creality_maple @@ -159,14 +159,14 @@ upload_protocol = jlink extends = env:STM32F103RE_maple board_build.address = 0x08007000 board_build.ldscript = STM32F103RE_SKR_MINI_512K.ld -build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 +build_flags = ${env:STM32F103RE_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 debug_tool = stlink upload_protocol = stlink [env:STM32F103RE_btt_USB_maple] extends = env:STM32F103RE_btt_maple build_flags = ${env:STM32F103RE_btt_maple.build_flags} -DUSE_USB_COMPOSITE -lib_deps = ${STM32F1_maple.lib_deps} +lib_deps = ${env:STM32F103RE_btt_maple.lib_deps} USBComposite for STM32F1@0.91 # @@ -200,23 +200,23 @@ build_unflags = ${STM32F1_maple.build_unflags} # MKS Robin Mini (STM32F103VET6) # [env:mks_robin_mini_maple] -extends = STM32F1_maple -board = genericSTM32F103VE -board_build.address = 0x08007000 -board_build.rename = Robin_mini.bin -board_build.ldscript = mks_robin_mini.ld -build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE +extends = STM32F1_maple +board = genericSTM32F103VE +board_build.address = 0x08007000 +board_build.encrypt_mks = Robin_mini.bin +board_build.ldscript = mks_robin_mini.ld +build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE # # MKS Robin Nano v1.x and v2 (STM32F103VET6) # [env:mks_robin_nano_v1v2_maple] -extends = STM32F1_maple -board = genericSTM32F103VE -board_build.address = 0x08007000 -board_build.rename = Robin_nano35.bin -board_build.ldscript = mks_robin_nano.ld -build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 +extends = STM32F1_maple +board = genericSTM32F103VE +board_build.address = 0x08007000 +board_build.encrypt_mks = Robin_nano35.bin +board_build.ldscript = mks_robin_nano.ld +build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 # # MKS Robin (STM32F103ZET6) @@ -243,53 +243,52 @@ board_build.ldscript = mks_robin_pro.ld # [env:trigorilla_pro_maple] extends = env:mks_robin_maple -extra_scripts = ${STM32F1_maple.extra_scripts} # # MKS Robin E3D (STM32F103RCT6) and # MKS Robin E3 with TMC2209 # [env:mks_robin_e3_maple] -extends = STM32F1_maple -board = genericSTM32F103RC -board_build.address = 0x08005000 -board_build.rename = Robin_e3.bin -board_build.ldscript = mks_robin_e3.ld -build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 +extends = STM32F1_maple +board = genericSTM32F103RC +board_build.address = 0x08005000 +board_build.encrypt_mks = Robin_e3.bin +board_build.ldscript = mks_robin_e3.ld +build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 # # MKS Robin E3p (STM32F103VET6) # - LVGL UI # [env:mks_robin_e3p_maple] -extends = STM32F1_maple -board = genericSTM32F103VE -board_build.address = 0x08007000 -board_build.rename = Robin_e3p.bin -board_build.ldscript = mks_robin_e3p.ld -build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 -debug_tool = jlink -upload_protocol = jlink +extends = STM32F1_maple +board = genericSTM32F103VE +board_build.address = 0x08007000 +board_build.encrypt_mks = Robin_e3p.bin +board_build.ldscript = mks_robin_e3p.ld +build_flags = ${STM32F1_maple.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 +debug_tool = jlink +upload_protocol = jlink # # MKS Robin Lite/Lite2 (STM32F103RCT6) # [env:mks_robin_lite_maple] -extends = STM32F1_maple -board = genericSTM32F103RC -board_build.address = 0x08005000 -board_build.rename = mksLite.bin -board_build.ldscript = mks_robin_lite.ld +extends = STM32F1_maple +board = genericSTM32F103RC +board_build.address = 0x08005000 +board_build.encrypt_mks = mksLite.bin +board_build.ldscript = mks_robin_lite.ld # # MKS ROBIN LITE3 (STM32F103RCT6) # [env:mks_robin_lite3_maple] -extends = STM32F1_maple -board = genericSTM32F103RC -board_build.address = 0x08005000 -board_build.rename = mksLite3.bin -board_build.ldscript = mks_robin_lite.ld +extends = STM32F1_maple +board = genericSTM32F103RC +board_build.address = 0x08005000 +board_build.encrypt_mks = mksLite3.bin +board_build.ldscript = mks_robin_lite.ld # # JGAurora A5S A1 (STM32F103ZET6) @@ -357,7 +356,6 @@ build_flags = ${STM32F1_maple.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 extends = STM32F1_maple platform_packages = tool-stm32duino board_build.address = 0x08005000 -board_build.offset = 0x5000 board_upload.maximum_size = 237568 build_flags = ${STM32F1_maple.build_flags} -D__STM32F1__=1 -DDEBUG_LEVEL=0 -DSS_TIMER=4 -DSERIAL_USB @@ -398,3 +396,17 @@ board_build.variant = MARLIN_F103Vx board_build.ldscript = eryone_ery32_mini.ld board_build.address = 0x08004000 build_unflags = ${STM32F1_maple.build_unflags} + +# +# Sovol (GD32F103RET6) +# +[env:GD32F103RET6_sovol_maple] +extends = env:STM32F103RE_maple +build_flags = ${STM32F1_maple.build_flags} -DTEMP_TIMER_CHAN=4 +board_build.address = 0x08007000 +board_build.ldscript = sovol.ld +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 5cc1c32866..b4a62f6d88 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -135,7 +135,11 @@ debug_tool = jlink upload_protocol = jlink # -# Custom upload to SD via Marlin with Binary Protocol +# Creality (STM32F103Rx) +# With 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. # [STM32F103Rx_creality_xfer] extends = STM32F103Rx_creality @@ -151,15 +155,30 @@ upload_protocol = custom extends = STM32F103Rx_creality board = genericSTM32F103RE +# +# Creality 512K (STM32F103RE) with custom binary upload to SD (see above). +# [env:STM32F103RE_creality_xfer] extends = STM32F103Rx_creality_xfer 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) # @@ -167,6 +186,9 @@ board_upload.offset_address = 0x08010000 extends = STM32F103Rx_creality board = genericSTM32F103RC +# +# Creality 256K (STM32F103RC) with custom binary upload to SD (see above). +# [env:STM32F103RC_creality_xfer] extends = STM32F103Rx_creality_xfer board = genericSTM32F103RC @@ -224,54 +246,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 @@ -295,7 +270,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) @@ -309,17 +284,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) @@ -346,23 +367,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) # @@ -384,6 +388,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 diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 05a549bec7..0f5bfdeb53 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) # @@ -269,7 +270,7 @@ build_unflags = ${env:BIGTREE_SKR_2_F429_USB.build_unflags} -Os -NDEBUG # # BigTreeTech Octopus V1.0/1.1 / Octopus Pro V1.0 (STM32F446ZET6 ARM Cortex-M4) # -[env:BIGTREE_OCTOPUS_V1] +[env:STM32F446ZE_btt] extends = stm32_variant board = marlin_BigTree_Octopus_v1 board_build.offset = 0x8000 @@ -282,8 +283,8 @@ 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:BIGTREE_OCTOPUS_V1_USB] -extends = env:BIGTREE_OCTOPUS_V1 +[env:STM32F446ZE_btt_USB] +extends = env:STM32F446ZE_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC build_flags = ${stm_flash_drive.build_flags} @@ -293,9 +294,9 @@ build_flags = ${stm_flash_drive.build_flags} -DUSBD_USE_CDC_MSC # -# BigTreeTech Octopus Pro V1.0 (STM32F429ZGT6 ARM Cortex-M4) +# BigTreeTech Octopus V1.1 / Octopus Pro V1.0 (STM32F429ZGT6 ARM Cortex-M4) # -[env:BIGTREE_OCTOPUS_PRO_V1_F429] +[env:STM32F429ZG_btt] extends = stm32_variant board = marlin_BigTree_Octopus_Pro_v1_F429 board_build.offset = 0x8000 @@ -306,10 +307,10 @@ build_flags = ${stm32_variant.build_flags} -DUSE_USB_HS_IN_FS # -# BigTreeTech Octopus Pro V1.0 (STM32F429ZGT6 ARM Cortex-M4) with USB Flash Drive Support +# BigTreeTech Octopus V1.1 / Octopus Pro V1.0 (STM32F429ZGT6 ARM Cortex-M4) with USB Flash Drive Support # -[env:BIGTREE_OCTOPUS_PRO_V1_F429_USB] -extends = env:BIGTREE_OCTOPUS_PRO_V1_F429 +[env:STM32F429ZG_btt_USB] +extends = env:STM32F429ZG_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC build_flags = ${stm_flash_drive.build_flags} @@ -320,7 +321,7 @@ build_flags = ${stm_flash_drive.build_flags} # # BigTreeTech Octopus / Octopus Pro (STM32F407ZET6 ARM Cortex-M4) # -[env:BIGTREE_OCTOPUS_V1_F407] +[env:STM32F407ZE_btt] extends = stm32_variant board = marlin_STM32F407ZE board_build.offset = 0x8000 @@ -330,8 +331,8 @@ build_flags = ${stm32_variant.build_flags} # # BigTreeTech Octopus / Octopus Pro (STM32F407ZET6 ARM Cortex-M4) with USB Flash Drive Support # -[env:BIGTREE_OCTOPUS_V1_F407_USB] -extends = env:BIGTREE_OCTOPUS_V1_F407 +[env:STM32F407ZE_btt_USB] +extends = env:STM32F407ZE_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC build_flags = ${stm_flash_drive.build_flags} @@ -418,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 @@ -679,14 +693,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) @@ -695,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 @@ -706,6 +745,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) # @@ -726,13 +779,32 @@ upload_command = dfu-util -a 0 -s 0x08000000:leave -D "$SOURCE" # STM32F446ZET6 ARM Cortex-M4 # [env:STM32F446_tronxy] -platform = ${common_stm32.platform} extends = stm32_variant board = marlin_STM32F446ZET_tronxy board_build.offset = 0x10000 board_build.rename = fmw_tronxy.bin -build_src_filter = ${common_stm32.build_src_filter} 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 + +# +# 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 diff --git a/ini/stm32g0.ini b/ini/stm32g0.ini index 568d9c8e9f..f67002fa5c 100644 --- a/ini/stm32g0.ini +++ b/ini/stm32g0.ini @@ -33,33 +33,40 @@ 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 -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+) +# BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RET6 ARM Cortex-M0+) # [env:STM32G0B1RE_btt] 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 # +# BigTreeTech SKR Mini E3 V3.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. +# Currently CUSTOM_FIRMWARE_UPLOAD must also be enabled to use 'xfer' build envs. # [env:STM32G0B1RE_btt_xfer] extends = env:STM32G0B1RE_btt @@ -67,3 +74,56 @@ build_flags = ${env:STM32G0B1RE_btt.build_flags} -DXFER_BUILD extra_scripts = ${env:STM32G0B1RE_btt.extra_scripts} pre:buildroot/share/scripts/upload.py upload_protocol = custom + +# +# BigTreeTech Manta E3 EZ V1.0 / Manta M4P V1.0 / Manta M5P V1.0 (STM32G0B1RET6 ARM Cortex-M0+) +# +[env:STM32G0B1RE_manta_btt] +extends = env:STM32G0B1RE_btt +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+) +# 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:STM32G0B1RE_manta_btt_xfer] +extends = env:STM32G0B1RE_manta_btt +build_flags = ${env:STM32G0B1RE_manta_btt.build_flags} -DXFER_BUILD +extra_scripts = ${env:STM32G0B1RE_manta_btt.extra_scripts} + pre:buildroot/share/scripts/upload.py +upload_protocol = custom + +# +# BigTreeTech Manta M8P V1.x (STM32G0B1VET6 ARM Cortex-M0+) +# +[env:STM32G0B1VE_btt] +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 +upload_protocol = stlink +debug_tool = stlink + +# +# BigTreeTech Manta M8P V1.x (STM32G0B1VET6 ARM Cortex-M0+) +# Custom upload to SD via Marlin with Binary Protocol +# +[env:STM32G0B1VE_btt_xfer] +extends = env:STM32G0B1VE_btt +build_flags = ${env:STM32G0B1VE_btt.build_flags} -DXFER_BUILD +extra_scripts = ${env:STM32G0B1VE_btt.extra_scripts} + pre:buildroot/share/scripts/upload.py +upload_protocol = custom diff --git a/ini/stm32h7.ini b/ini/stm32h7.ini index d00d374c61..3a64e0644f 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, I:2048KB) # T : LQFP package # 6 : -40...85°C (7: ...105°C) # @@ -40,22 +40,92 @@ 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 = 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} - -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 -DD_CACHE_DISABLED 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 +# +[STM32H723Vx_btt] +extends = stm32_variant +platform = ststm32@15.4.1 +platform_packages = framework-arduinoststm32@~4.20200.220530 +board_build.offset = 0x20000 +board_upload.offset_address = 0x08020000 +build_flags = ${stm32_variant.build_flags} + -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 + -DRCC_PERIPHCLK_I2C35=RCC_PERIPHCLK_I2C5 + -DUSE_USB_HS -DUSE_USB_HS_IN_FS + -DD_CACHE_DISABLED + -UI2C5_BASE +upload_protocol = cmsis-dap +debug_tool = cmsis-dap + +# +# BigTreeTech SKR V3.0 / SKR V3.0 EZ (STM32H723VGT6 ARM Cortex-M7) +# +[env:STM32H723VG_btt] +extends = STM32H723Vx_btt +board = marlin_STM32H723VG + +# +# BigTreeTech STM32H723Zx ARM Cortex-M7 Common +# +[STM32H723Zx_btt] +extends = stm32_variant +platform = ststm32@15.4.1 +platform_packages = framework-arduinoststm32@~4.20200.220530 +board_build.offset = 0x20000 +board_upload.offset_address = 0x08020000 +build_flags = ${stm32_variant.build_flags} + -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 + -DRCC_PERIPHCLK_I2C35=RCC_PERIPHCLK_I2C5 + -DUSE_USB_HS -DUSE_USB_HS_IN_FS + -DD_CACHE_DISABLED + -UI2C5_BASE +upload_protocol = cmsis-dap +debug_tool = cmsis-dap + +# +# BigTreeTech Octopus Pro V1.1 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) +# +[env:STM32H723ZE_btt] +extends = STM32H723Zx_btt +board = marlin_STM32H723ZE diff --git a/platformio.ini b/platformio.ini index dcb2692390..0cee37cb71 100644 --- a/platformio.ini +++ b/platformio.ini @@ -423,222 +423,81 @@ 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