From 66fc73f59d45770831cc26281156199dcba24b91 Mon Sep 17 00:00:00 2001 From: Gehstock Date: Sat, 16 May 2020 06:42:10 +0200 Subject: [PATCH] Add Flicky Project files --- .../MiST-Arcade-Flicky/Flicky_MiST.qpf | 31 + .../MiST-Arcade-Flicky/Flicky_MiST.qsf | 247 + .../MiST-Arcade-Flicky/Flicky_MiST.sdc | 134 + .../Snapshot/Flicky_MiST.rbf | Bin 0 -> 357085 bytes .../MiST-Arcade-Flicky/clean.bat | 37 + .../MiST-Arcade-Flicky/rtl/DPRAM1024_11B.v | 128 + .../MiST-Arcade-Flicky/rtl/DPRAM1024_1B.v | 128 + .../MiST-Arcade-Flicky/rtl/FPGA_FLICKY.v | 143 + .../MiST-Arcade-Flicky/rtl/FlickyMAIN.v | 167 + .../MiST-Arcade-Flicky/rtl/FlickySND.v | 214 + .../MiST-Arcade-Flicky/rtl/FlickySPRITE.v | 247 + .../MiST-Arcade-Flicky/rtl/FlickyVIDEO.v | 605 ++ .../MiST-Arcade-Flicky/rtl/Flicky_MiST.sv | 282 + .../MiST-Arcade-Flicky/rtl/Flicky_MiST.v | 41 + .../MiST-Arcade-Flicky/rtl/SN76496.v | 174 + .../MiST-Arcade-Flicky/rtl/build_id.tcl | 35 + .../MiST-Arcade-Flicky/rtl/hvgen.v | 41 + .../MiST-Arcade-Flicky/rtl/parts.v | 389 + .../MiST-Arcade-Flicky/rtl/pll_mist.qip | 4 + .../MiST-Arcade-Flicky/rtl/pll_mist.v | 337 + .../MiST-Arcade-Flicky/rtl/rom/clut.vhd | 38 + .../MiST-Arcade-Flicky/rtl/rom/dec_flicky.bin | Bin 0 -> 128 bytes .../MiST-Arcade-Flicky/rtl/rom/dec_rom.vhd | 30 + .../MiST-Arcade-Flicky/rtl/rom/make.bat | 19 + .../MiST-Arcade-Flicky/rtl/rom/prg_rom.vhd | 2070 +++++ .../MiST-Arcade-Flicky/rtl/rom/snd_rom.vhd | 534 ++ .../MiST-Arcade-Flicky/rtl/rom/spr_rom.vhd | 2070 +++++ .../MiST-Arcade-Flicky/rtl/rom/tile1.vhd | 534 ++ .../MiST-Arcade-Flicky/rtl/sdram.sv | 355 + .../MiST-Arcade-Flicky/rtl/z80ip.v | 59 + .../rtl/RobotronFPGA_MiST.sv | 34 +- .../rtl/robotron_cpu/robotron_cpu.vhd | 171 +- .../Robotron Hardware/rtl/robotron_soc.vhd | 15 +- common/Sound/opl3/NextZ80ALU.v | 372 + common/Sound/opl3/NextZ80CPU.v | 1501 +++ common/Sound/opl3/NextZ80Reg.v | 202 + common/Sound/opl3/compressor.sv | 297 + common/Sound/opl3/exp_tab.mem | 6656 ++++++++++++++ common/Sound/opl3/fw/OPL3.COM | Bin 0 -> 7891 bytes common/Sound/opl3/fw/OPL3.PRJ | 101 + common/Sound/opl3/fw/TEST.H | 346 + common/Sound/opl3/fw/YMF262.C | 767 ++ common/Sound/opl3/fw/YMF262.H | 122 + common/Sound/opl3/fw/bin2mem.c | 49 + common/Sound/opl3/fw/bin2mem.exe | Bin 0 -> 14350 bytes common/Sound/opl3/fw/clean.bat | 5 + common/Sound/opl3/opl3.qip | 7 + common/Sound/opl3/opl3.sv | 186 + common/Sound/opl3/opl3fm.sv | 263 + common/Sound/opl3/opl3prg.mem | 4096 +++++++++ common/Sound/opl3/opl3seq.sv | 482 + common/Sound/opl3/sin_tab_full.mem | 8192 +++++++++++++++++ common/Sound/sn76489/pll_mist.qip | 0 common/Sound/sn76489/sn76489.qip | 6 + 54 files changed, 32932 insertions(+), 31 deletions(-) create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qpf create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qsf create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.sdc create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Snapshot/Flicky_MiST.rbf create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/clean.bat create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/DPRAM1024_11B.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/DPRAM1024_1B.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FPGA_FLICKY.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyMAIN.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySND.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySPRITE.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyVIDEO.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.sv create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/SN76496.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/build_id.tcl create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/hvgen.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/parts.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.qip create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.v create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/clut.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_flicky.bin create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_rom.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/make.bat create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/prg_rom.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/snd_rom.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/spr_rom.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/tile1.vhd create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/sdram.sv create mode 100644 Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/z80ip.v create mode 100644 common/Sound/opl3/NextZ80ALU.v create mode 100644 common/Sound/opl3/NextZ80CPU.v create mode 100644 common/Sound/opl3/NextZ80Reg.v create mode 100644 common/Sound/opl3/compressor.sv create mode 100644 common/Sound/opl3/exp_tab.mem create mode 100644 common/Sound/opl3/fw/OPL3.COM create mode 100644 common/Sound/opl3/fw/OPL3.PRJ create mode 100644 common/Sound/opl3/fw/TEST.H create mode 100644 common/Sound/opl3/fw/YMF262.C create mode 100644 common/Sound/opl3/fw/YMF262.H create mode 100644 common/Sound/opl3/fw/bin2mem.c create mode 100644 common/Sound/opl3/fw/bin2mem.exe create mode 100644 common/Sound/opl3/fw/clean.bat create mode 100644 common/Sound/opl3/opl3.qip create mode 100644 common/Sound/opl3/opl3.sv create mode 100644 common/Sound/opl3/opl3fm.sv create mode 100644 common/Sound/opl3/opl3prg.mem create mode 100644 common/Sound/opl3/opl3seq.sv create mode 100644 common/Sound/opl3/sin_tab_full.mem create mode 100644 common/Sound/sn76489/pll_mist.qip create mode 100644 common/Sound/sn76489/sn76489.qip diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qpf b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qpf new file mode 100644 index 00000000..692b2a69 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qpf @@ -0,0 +1,31 @@ +# -------------------------------------------------------------------------- # +# +# Copyright (C) 1991-2013 Altera Corporation +# Your use of Altera Corporation's design tools, logic functions +# and other software and tools, and its AMPP partner logic +# functions, and any output files from any of the foregoing +# (including device programming or simulation files), and any +# associated documentation or information are expressly subject +# to the terms and conditions of the Altera Program License +# Subscription Agreement, Altera MegaCore Function License +# Agreement, or other applicable license agreement, including, +# without limitation, that your use is for the sole purpose of +# programming logic devices manufactured by Altera and sold by +# Altera or its authorized distributors. Please refer to the +# applicable agreement for further details. +# +# -------------------------------------------------------------------------- # +# +# Quartus II 64-Bit +# Version 13.1.0 Build 162 10/23/2013 SJ Web Edition +# Date created = 00:21:03 December 03, 2019 +# +# -------------------------------------------------------------------------- # + +QUARTUS_VERSION = "13.1" +DATE = "00:21:03 December 03, 2019" + +# Revisions + +PROJECT_REVISION = "Flicky_MiST" + diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qsf b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qsf new file mode 100644 index 00000000..b90ff5b5 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.qsf @@ -0,0 +1,247 @@ +# -------------------------------------------------------------------------- # +# +# Copyright (C) 1991-2013 Altera Corporation +# Your use of Altera Corporation's design tools, logic functions +# and other software and tools, and its AMPP partner logic +# functions, and any output files from any of the foregoing +# (including device programming or simulation files), and any +# associated documentation or information are expressly subject +# to the terms and conditions of the Altera Program License +# Subscription Agreement, Altera MegaCore Function License +# Agreement, or other applicable license agreement, including, +# without limitation, that your use is for the sole purpose of +# programming logic devices manufactured by Altera and sold by +# Altera or its authorized distributors. Please refer to the +# applicable agreement for further details. +# +# -------------------------------------------------------------------------- # +# +# Quartus II 64-Bit +# Version 13.1.0 Build 162 10/23/2013 SJ Web Edition +# Date created = 06:24:46 May 16, 2020 +# +# -------------------------------------------------------------------------- # +# +# Notes: +# +# 1) The default values for assignments are stored in the file: +# Flicky_MiST_assignment_defaults.qdf +# If this file doesn't exist, see file: +# assignment_defaults.qdf +# +# 2) Altera recommends that you do not modify this file. This +# file is updated automatically by the Quartus II software +# and any changes you make may be lost or overwritten. +# +# -------------------------------------------------------------------------- # + + + +# Project-Wide Assignments +# ======================== +set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files +set_global_assignment -name NUM_PARALLEL_PROCESSORS ALL +set_global_assignment -name LAST_QUARTUS_VERSION 13.1 +set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl" +set_global_assignment -name SYSTEMVERILOG_FILE rtl/Flicky_MiST.sv +set_global_assignment -name VERILOG_FILE rtl/FPGA_FLICKY.v +set_global_assignment -name VERILOG_FILE rtl/FlickyMAIN.v +set_global_assignment -name VERILOG_FILE rtl/FlickyVIDEO.v +set_global_assignment -name VERILOG_FILE rtl/FlickySND.v +set_global_assignment -name VERILOG_FILE rtl/z80ip.v +set_global_assignment -name VERILOG_FILE rtl/FlickySPRITE.v +set_global_assignment -name VERILOG_FILE rtl/parts.v +set_global_assignment -name VERILOG_FILE rtl/hvgen.v +set_global_assignment -name VERILOG_FILE rtl/SN76496.v +set_global_assignment -name SYSTEMVERILOG_FILE rtl/sdram.sv +set_global_assignment -name VERILOG_FILE rtl/pll_mist.v +set_global_assignment -name VERILOG_FILE rtl/DPRAM1024_1B.v +set_global_assignment -name VERILOG_FILE rtl/DPRAM1024_11B.v +set_global_assignment -name VHDL_FILE rtl/rom/dec_rom.vhd +set_global_assignment -name VHDL_FILE rtl/rom/prg_rom.vhd +set_global_assignment -name VHDL_FILE rtl/rom/snd_rom.vhd +set_global_assignment -name VHDL_FILE rtl/rom/clut.vhd +set_global_assignment -name VHDL_FILE rtl/rom/spr_rom.vhd +set_global_assignment -name VHDL_FILE rtl/rom/tile1.vhd +set_global_assignment -name QIP_FILE ../../common/mist/mist.qip +set_global_assignment -name QIP_FILE ../../common/CPU/T80/T80.qip + +# Pin & Location Assignments +# ========================== +set_location_assignment PIN_7 -to LED +set_location_assignment PIN_54 -to CLOCK_27 +set_location_assignment PIN_144 -to VGA_R[5] +set_location_assignment PIN_143 -to VGA_R[4] +set_location_assignment PIN_142 -to VGA_R[3] +set_location_assignment PIN_141 -to VGA_R[2] +set_location_assignment PIN_137 -to VGA_R[1] +set_location_assignment PIN_135 -to VGA_R[0] +set_location_assignment PIN_133 -to VGA_B[5] +set_location_assignment PIN_132 -to VGA_B[4] +set_location_assignment PIN_125 -to VGA_B[3] +set_location_assignment PIN_121 -to VGA_B[2] +set_location_assignment PIN_120 -to VGA_B[1] +set_location_assignment PIN_115 -to VGA_B[0] +set_location_assignment PIN_114 -to VGA_G[5] +set_location_assignment PIN_113 -to VGA_G[4] +set_location_assignment PIN_112 -to VGA_G[3] +set_location_assignment PIN_111 -to VGA_G[2] +set_location_assignment PIN_110 -to VGA_G[1] +set_location_assignment PIN_106 -to VGA_G[0] +set_location_assignment PIN_136 -to VGA_VS +set_location_assignment PIN_119 -to VGA_HS +set_location_assignment PIN_65 -to AUDIO_L +set_location_assignment PIN_80 -to AUDIO_R +set_location_assignment PIN_105 -to SPI_DO +set_location_assignment PIN_88 -to SPI_DI +set_location_assignment PIN_126 -to SPI_SCK +set_location_assignment PIN_127 -to SPI_SS2 +set_location_assignment PIN_91 -to SPI_SS3 +set_location_assignment PIN_13 -to CONF_DATA0 +set_location_assignment PIN_49 -to SDRAM_A[0] +set_location_assignment PIN_44 -to SDRAM_A[1] +set_location_assignment PIN_42 -to SDRAM_A[2] +set_location_assignment PIN_39 -to SDRAM_A[3] +set_location_assignment PIN_4 -to SDRAM_A[4] +set_location_assignment PIN_6 -to SDRAM_A[5] +set_location_assignment PIN_8 -to SDRAM_A[6] +set_location_assignment PIN_10 -to SDRAM_A[7] +set_location_assignment PIN_11 -to SDRAM_A[8] +set_location_assignment PIN_28 -to SDRAM_A[9] +set_location_assignment PIN_50 -to SDRAM_A[10] +set_location_assignment PIN_30 -to SDRAM_A[11] +set_location_assignment PIN_32 -to SDRAM_A[12] +set_location_assignment PIN_83 -to SDRAM_DQ[0] +set_location_assignment PIN_79 -to SDRAM_DQ[1] +set_location_assignment PIN_77 -to SDRAM_DQ[2] +set_location_assignment PIN_76 -to SDRAM_DQ[3] +set_location_assignment PIN_72 -to SDRAM_DQ[4] +set_location_assignment PIN_71 -to SDRAM_DQ[5] +set_location_assignment PIN_69 -to SDRAM_DQ[6] +set_location_assignment PIN_68 -to SDRAM_DQ[7] +set_location_assignment PIN_86 -to SDRAM_DQ[8] +set_location_assignment PIN_87 -to SDRAM_DQ[9] +set_location_assignment PIN_98 -to SDRAM_DQ[10] +set_location_assignment PIN_99 -to SDRAM_DQ[11] +set_location_assignment PIN_100 -to SDRAM_DQ[12] +set_location_assignment PIN_101 -to SDRAM_DQ[13] +set_location_assignment PIN_103 -to SDRAM_DQ[14] +set_location_assignment PIN_104 -to SDRAM_DQ[15] +set_location_assignment PIN_58 -to SDRAM_BA[0] +set_location_assignment PIN_51 -to SDRAM_BA[1] +set_location_assignment PIN_85 -to SDRAM_DQMH +set_location_assignment PIN_67 -to SDRAM_DQML +set_location_assignment PIN_60 -to SDRAM_nRAS +set_location_assignment PIN_64 -to SDRAM_nCAS +set_location_assignment PIN_66 -to SDRAM_nWE +set_location_assignment PIN_59 -to SDRAM_nCS +set_location_assignment PIN_33 -to SDRAM_CKE +set_location_assignment PIN_43 -to SDRAM_CLK +set_location_assignment PLL_1 -to "pll:pll|altpll:altpll_component" + +# Classic Timing Assignments +# ========================== +set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 +set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 + +# Analysis & Synthesis Assignments +# ================================ +set_global_assignment -name FAMILY "Cyclone III" +set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144 +set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 +set_global_assignment -name DEVICE_FILTER_PACKAGE TQFP +set_global_assignment -name TOP_LEVEL_ENTITY Flicky_MiST + +# Fitter Assignments +# ================== +set_global_assignment -name DEVICE EP3C25E144C8 +set_global_assignment -name ENABLE_CONFIGURATION_PINS OFF +set_global_assignment -name ENABLE_NCE_PIN OFF +set_global_assignment -name ENABLE_BOOT_SEL_PIN OFF +set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL" +set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF +set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON +set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" +set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" +set_global_assignment -name RESERVE_DATA0_AFTER_CONFIGURATION "USE AS REGULAR IO" +set_global_assignment -name RESERVE_DATA1_AFTER_CONFIGURATION "USE AS REGULAR IO" +set_global_assignment -name RESERVE_FLASH_NCE_AFTER_CONFIGURATION "USE AS REGULAR IO" +set_global_assignment -name RESERVE_DCLK_AFTER_CONFIGURATION "USE AS REGULAR IO" + +# Assembler Assignments +# ===================== +set_global_assignment -name GENERATE_RBF_FILE ON +set_global_assignment -name USE_CONFIGURATION_DEVICE OFF + +# SignalTap II Assignments +# ======================== +set_global_assignment -name ENABLE_SIGNALTAP OFF +set_global_assignment -name USE_SIGNALTAP_FILE output_files/zaxx.stp + +# Power Estimation Assignments +# ============================ +set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW" +set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)" + +# Advanced I/O Timing Assignments +# =============================== +set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise +set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall +set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise +set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall + +# ------------------------- +# start ENTITY(Flicky_MiST) + + # Pin & Location Assignments + # ========================== + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_DQ[*] + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_A[*] + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_BA[0] + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_BA[1] + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_DQMH + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_DQML + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_nRAS + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_nCAS + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_nWE + set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_nCS + set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to SDRAM_DQ[*] + set_instance_assignment -name FAST_INPUT_REGISTER ON -to SDRAM_DQ[*] + + # Fitter Assignments + # ================== + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_A[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_DQ[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_BA[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_DQML + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_DQMH + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_nRAS + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_nCAS + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_nWE + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_nCS + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_CKE + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_CLK + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_R[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_G[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_B[*] + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_HS + set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_VS + set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_L + set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_R + set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to SPI_DO + + # start DESIGN_PARTITION(Top) + # --------------------------- + + # Incremental Compilation Assignments + # =================================== + set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top + set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top + set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top + + # end DESIGN_PARTITION(Top) + # ------------------------- + +# end ENTITY(Flicky_MiST) +# ----------------------- +set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.sdc b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.sdc new file mode 100644 index 00000000..e1813b4a --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Flicky_MiST.sdc @@ -0,0 +1,134 @@ +## Generated SDC file "vectrex_MiST.out.sdc" + +## Copyright (C) 1991-2013 Altera Corporation +## Your use of Altera Corporation's design tools, logic functions +## and other software and tools, and its AMPP partner logic +## functions, and any output files from any of the foregoing +## (including device programming or simulation files), and any +## associated documentation or information are expressly subject +## to the terms and conditions of the Altera Program License +## Subscription Agreement, Altera MegaCore Function License +## Agreement, or other applicable license agreement, including, +## without limitation, that your use is for the sole purpose of +## programming logic devices manufactured by Altera and sold by +## Altera or its authorized distributors. Please refer to the +## applicable agreement for further details. + + +## VENDOR "Altera" +## PROGRAM "Quartus II" +## VERSION "Version 13.1.0 Build 162 10/23/2013 SJ Web Edition" + +## DATE "Sun Jun 24 12:53:00 2018" + +## +## DEVICE "EP3C25E144C8" +## + +# Clock constraints + +# Automatically constrain PLL and other generated clocks +derive_pll_clocks -create_base_clocks + +# Automatically calculate clock uncertainty to jitter and other effects. +derive_clock_uncertainty + +# tsu/th constraints + +# tco constraints + +# tpd constraints + +#************************************************************** +# Time Information +#************************************************************** + +set_time_format -unit ns -decimal_places 3 + + + +#************************************************************** +# Create Clock +#************************************************************** + +create_clock -name {SPI_SCK} -period 41.666 -waveform { 20.8 41.666 } [get_ports {SPI_SCK}] + +set sys_clk "pll|altpll_component|auto_generated|pll1|clk[0]" +set sdram_clk "pll|altpll_component|auto_generated|pll1|clk[1]" +#************************************************************** +# Create Generated Clock +#************************************************************** + + +#************************************************************** +# Set Clock Latency +#************************************************************** + + + +#************************************************************** +# Set Clock Uncertainty +#************************************************************** + +#************************************************************** +# Set Input Delay +#************************************************************** + +set_input_delay -add_delay -clock_fall -clock [get_clocks {CLOCK_27}] 1.000 [get_ports {CLOCK_27}] +set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {CONF_DATA0}] +set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DI}] +set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SCK}] +set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS2}] +set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS3}] + +set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 6.6 [get_ports SDRAM_DQ[*]] +set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min 3.5 [get_ports SDRAM_DQ[*]] + +#************************************************************** +# Set Output Delay +#************************************************************** + +set_output_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DO}] +set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_L}] +set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_R}] +set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {LED}] +set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {VGA_*}] + +set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 1.5 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}] +set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min -0.8 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}] + +#************************************************************** +# Set Clock Groups +#************************************************************** + +set_clock_groups -asynchronous -group [get_clocks {SPI_SCK}] -group [get_clocks {pll|altpll_component|auto_generated|pll1|clk[*]}] + +#************************************************************** +# Set False Path +#************************************************************** + + + +#************************************************************** +# Set Multicycle Path +#************************************************************** + +set_multicycle_path -to {VGA_*[*]} -setup 2 +set_multicycle_path -to {VGA_*[*]} -hold 1 + +#************************************************************** +# Set Maximum Delay +#************************************************************** + + + +#************************************************************** +# Set Minimum Delay +#************************************************************** + + + +#************************************************************** +# Set Input Transition +#************************************************************** + diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Snapshot/Flicky_MiST.rbf b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/Snapshot/Flicky_MiST.rbf new file mode 100644 index 0000000000000000000000000000000000000000..f7c961f036b8cb9068867ec122d5cc24d710e4be GIT binary patch literal 357085 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%0D=@+w#TBZWE79jx?c5bvYKp&01bKIL`eV$)`7iB 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 sNz|SCK9`X}uC{J7-b{j 2'd2) begin + count <= count - 2'd2; + clk8M <= ~clk8M; + end + else count <= count + 2'd1; +end + +endmodule + diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyMAIN.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyMAIN.v new file mode 100644 index 00000000..34b5c2ef --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyMAIN.v @@ -0,0 +1,167 @@ +// Copyright (c) 2017,19 MiSTer-X + +module FlickyMAIN +( + input CLK48M, + input CLK3M, + + input RESET, + + input [7:0] INP0, + input [7:0] INP1, + input [7:0] INP2, + + input [7:0] DSW0, + input [7:0] DSW1, + + input VBLK, + input VIDCS, + input [7:0] VIDDO, + + output CPUCLn, + output [15:0] CPUAD, + output [7:0] CPUDO, + output CPUWR, + + output SNDRQ, + +// input ROMCL, // Downloaded ROM image +// input [24:0] ROMAD, +// input [7:0] ROMDT, +// input ROMEN + output [14:0] cpu_rom_addr, + input [7:0] cpu_rom_do +); + +wire AXSCL = CLK48M; +wire CPUCL = CLK3M; +assign CPUCLn = ~CPUCL; + +wire [7:0] CPUDI; +wire CPURD; + +wire cpu_cs_video; +wire [7:0] cpu_rd_video; + +wire cpu_m1; +wire cpu_mreq, cpu_iorq; +wire _cpu_rd, _cpu_wr; + +Z80IP maincpu( + .reset(RESET), + .clk(CPUCL), + .adr(CPUAD), + .data_in(CPUDI), + .data_out(CPUDO), + .m1(cpu_m1), + .mx(cpu_mreq), + .ix(cpu_iorq), + .rd(_cpu_rd), + .wr(_cpu_wr), + .intreq(VBLK), + .nmireq(1'b0) +); + +assign CPUWR = _cpu_wr & cpu_mreq; +assign CPURD = _cpu_rd & cpu_mreq; + +assign SNDRQ = (CPUAD[4:0] == 5'b1_1000) & cpu_iorq & _cpu_wr; + +wire cpu_cs_port1 = (CPUAD[4:2] == 3'b0_00) & cpu_iorq; +wire cpu_cs_port2 = (CPUAD[4:2] == 3'b0_01) & cpu_iorq; +wire cpu_cs_portS = (CPUAD[4:2] == 3'b0_10) & cpu_iorq; +wire cpu_cs_portA = (CPUAD[4:2] == 3'b0_11) & ~CPUAD[0] & cpu_iorq; +wire cpu_cs_portB =(((CPUAD[4:2] == 3'b0_11) & CPUAD[0]) | (CPUAD[4:0] == 5'b1_0000)) & cpu_iorq; +wire cpu_cs_portI = (CPUAD[4:2] == 3'b1_10) & cpu_iorq; + +wire [7:0] cpu_rd_port1 = INP0; +wire [7:0] cpu_rd_port2 = INP1; +wire [7:0] cpu_rd_portS = INP2; + +wire [7:0] cpu_rd_portA = DSW0; +wire [7:0] cpu_rd_portB = DSW1; + +wire [7:0] cpu_rd_mrom; +wire cpu_cs_mrom = (CPUAD[15] == 1'b0); +PRGROM prom(AXSCL, cpu_m1, CPUAD[14:0], cpu_rd_mrom, cpu_rom_addr,cpu_rom_do ); + +wire [7:0] cpu_rd_mram; +wire cpu_cs_mram = (CPUAD[15:12] == 4'b1100); +SRAM_4096 mainram(CPUCLn, CPUAD[11:0], cpu_rd_mram, cpu_cs_mram & CPUWR, CPUDO ); + +reg [7:0] vidmode; +always @(posedge CPUCLn) begin + if ((CPUAD[4:0] == 5'b1_1001) & cpu_iorq & _cpu_wr) begin + vidmode <= CPUDO; + end +end + +dataselector8 mcpudisel( + CPUDI, + VIDCS, VIDDO, + cpu_cs_port1, cpu_rd_port1, + cpu_cs_port2, cpu_rd_port2, + cpu_cs_portS, cpu_rd_portS, + cpu_cs_portA, cpu_rd_portA, + cpu_cs_portB, cpu_rd_portB, + cpu_cs_mram, cpu_rd_mram, + cpu_cs_mrom, cpu_rd_mrom, + 8'hFF +); + +endmodule + + +//---------------------------------- +// Program ROM with Decryptor +//---------------------------------- +module PRGROM +( + input clk, + + input mrom_m1, + input [14:0] mrom_ad, + output reg [7:0] mrom_dt, + output [14:0] cpu_rom_addr, + input [7:0] cpu_rom_do +// input ROMCL, // Downloaded ROM image +// input [24:0] ROMAD, +// input [7:0] ROMDT, +// input ROMEN +); + +reg [15:0] madr; +wire [7:0] mdat; + +wire f = mdat[7]; +wire [7:0] xorv = { f, 1'b0, f, 1'b0, f, 3'b000 }; +wire [7:0] andv = ~(8'hA8); +wire [1:0] decidx0 = { mdat[5], mdat[3] } ^ { f, f }; +wire [6:0] decidx = { madr[12], madr[8], madr[4], madr[0], ~madr[15], decidx0 }; +wire [7:0] dectbl; +wire [7:0] mdec = ( mdat & andv ) | ( dectbl ^ xorv ); + +//DLROM #( 7,8) decrom( clk, decidx, dectbl, ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16: 7]==10'b1_1110_0001_0) ); // $1E100-$1E17F +dec_rom dec_rom( + .clk(clk), + .addr(decidx), + .data(dectbl) +); + +//DLROM #(15,8) mainir( clk, madr[14:0], mdat, ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:15]==2'b0_0) ); // $00000-$07FFF +//prg_rom pgr_rom( +// .clk(clk), +// .addr(madr[14:0]), +// .data(mdat) +//); +assign cpu_rom_addr = madr[14:0]; +assign mdat = cpu_rom_do; + +reg phase = 1'b0; +always @( negedge clk ) begin + if ( phase ) mrom_dt <= mdec; + else madr <= { mrom_m1, mrom_ad }; + phase <= ~phase; +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySND.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySND.v new file mode 100644 index 00000000..d79239b5 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySND.v @@ -0,0 +1,214 @@ +// Copyright (c) 2017,19 MiSTer-X + +module FlickySND +( + input clk8M, + input reset, + + input [7:0] sndno, + input sndstart, + + output [15:0] sndout, + output [12:0] snd_rom_addr, + input [7:0] snd_rom_do +); + +//---------------------------------- +// ClockGen +//---------------------------------- +wire clk4M,clk2M; +SndClkGen clkgen(clk8M,clk4M,clk2M); + +wire cpuclkx2 = clk8M; +wire cpu_clk = clk4M; + + +//---------------------------------- +// Z80 (1.5625MHz) +//---------------------------------- +wire [15:0] cpu_ad; +wire [7:0] cpu_di, cpu_do; +wire cpu_mreq, cpu_iorq, cpu_rd, cpu_wr; +wire cpu_irq, cpu_nmi; +wire cpu_irqa, cpu_nmia; + +wire cpu_mw, cpu_cs_rom, cpu_cs_ram, cpu_wr_ram, cpu_cs_psg0, cpu_cs_psg1, cpu_cs_com; +SndADec adec( + cpu_mreq, cpu_wr, cpu_mw, + cpu_ad, cpu_cs_rom, cpu_cs_ram, cpu_wr_ram, cpu_cs_psg0, cpu_cs_psg1, cpu_cs_com +); + +Z80IP cpu( + .clk(cpu_clk), + .reset(reset), + .adr(cpu_ad), + .data_in(cpu_di), + .data_out(cpu_do), + .intreq(cpu_irq), + .intack(cpu_irqa), + .nmireq(cpu_nmi), + .nmiack(cpu_nmia), + .mx(cpu_mreq), + .ix(cpu_iorq), + .rd(cpu_rd), + .wr(cpu_wr) +); + +wire [7:0] rom_dt; // ROM +wire [7:0] ram_do; // RAM +wire [7:0] comlatch; // Sound Command Latch + +//DLROM #(13,8) subir( cpuclkx2, cpu_ad[12:0], rom_dt, ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_110)); // $1C000-$1DFFF +//snd_rom snd_rom( +// .clk(cpuclkx2), +// .addr(cpu_ad[12:0]), +// .data(rom_dt) +//); +assign snd_rom_addr = cpu_ad[12:0]; +assign rom_dt = snd_rom_do; + +SRAM_2048 wram( cpuclkx2, cpu_ad[10:0], ram_do, cpu_wr_ram, cpu_do ); + +dataselector3 scpudisel( + cpu_di, + cpu_cs_rom, rom_dt, + cpu_cs_ram, ram_do, + cpu_cs_com, comlatch, + 8'hFF +); + +SndPlayReq sndreq ( + clk4M, reset, + sndno, sndstart, + cpu_irq, cpu_irqa, + cpu_nmi, cpu_nmia, + comlatch +); + + +//---------------------------------- +// PSGs +//---------------------------------- +wire [7:0] psg0out, psg1out; + +SN76496 psg0( + clk2M, + cpu_clk, + reset, + cpu_cs_psg0, + cpu_mw, + cpu_do, + 4'b1111, + psg0out +); + +SN76496 psg1( + clk4M, + cpu_clk, + reset, + cpu_cs_psg1, + cpu_mw, + cpu_do, + 4'b1111, + psg1out +); + +wire [8:0] psgout = psg0out + psg1out; +assign sndout = { psgout, 6'h0 }; + +endmodule + + +module SndClkGen +( + input clk8M, + output clk4M, + output clk2M +); +reg [1:0] clkdiv; +always @ ( posedge clk8M ) clkdiv <= clkdiv+1; + +assign clk4M = clkdiv[0]; +assign clk2M = clkdiv[1]; + +endmodule + + +module SndADec +( + input cpu_mx, + input cpu_wr, + + output cpu_mw, + + input [15:0] cpu_ad, + output cpu_cs_rom, + output cpu_cs_ram, + output cpu_wr_ram, + output cpu_cs_psg0, + output cpu_cs_psg1, + output cpu_cs_com +); + +assign cpu_mw = cpu_mx & cpu_wr; + +assign cpu_cs_rom = ( cpu_ad[15] == 1'b0 ); +assign cpu_cs_psg0 = ( cpu_ad[15:12] == 4'HA ); +assign cpu_cs_psg1 = ( cpu_ad[15:12] == 4'HC ); +assign cpu_cs_com = ( cpu_ad[15:12] == 4'HE ); + +assign cpu_cs_ram = ( cpu_ad[15:12] == 4'h8 ); +assign cpu_wr_ram = cpu_cs_ram & cpu_mw; + +endmodule + + +//---------------------------------- +// Play Request & IRQ Generator +//---------------------------------- +module SndPlayReq +( + input clk4M, + input reset, + + input [7:0] sndno, + input sndstart, + + output reg cpu_irq, + input cpu_irqa, + + output reg cpu_nmi, + input cpu_nmia, + + output reg [7:0] comlatch +); + +reg [15:0] timercnt; +reg psndstart; + +always @( posedge clk4M or posedge reset ) begin + if ( reset ) begin + cpu_nmi <= 0; + cpu_irq <= 0; + comlatch <= 0; + timercnt <= 0; + psndstart <= 0; + end + else begin + if ( cpu_irqa ) cpu_irq <= 1'b0; + if ( cpu_nmia ) cpu_nmi <= 1'b0; + + if ( ( psndstart ^ sndstart ) & sndstart ) begin + comlatch <= sndno; + cpu_nmi <= 1'b1; + end + psndstart <= sndstart; + + if ( timercnt == 16666 ) cpu_irq <= 1'b1; + if ( timercnt == 33333 ) cpu_irq <= 1'b1; + + timercnt <= ( timercnt == 33333 ) ? 0 : (timercnt+1); // 1/60sec + end +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySPRITE.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySPRITE.v new file mode 100644 index 00000000..005088fc --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickySPRITE.v @@ -0,0 +1,247 @@ +// Copyright (c) 2017,19 MiSTer-X + +module FlickySPRITE +( + input VCLKx4, + input VCLK, + + input [8:0] PH, + input [8:0] PV, + + output [9:0] sprad, + input [15:0] sprdt, + + output [17:0] sprchad, + input [7:0] sprchdt, + + output reg sprcoll, + output reg [9:0] sprcoll_ad, + + output reg [10:0] sprpx +); + +wire [8:0] HPOS = PH+15; +wire [8:0] VPOS = PV; + +wire HB = HPOS[8]; + +reg [5:0] spr_num; +reg [2:0] spr_ofs; + +reg [1:0] phaseHB; +reg [7:0] svpos; +reg [5:0] hitsprnum [0:31]; +reg [7:0] hitsprvps [0:31]; +reg [4:0] hits; + +reg [3:0] phaseHD; +reg [4:0] hitr; +reg [7:0] yofs; +reg [8:0] xpos; +reg [2:0] bank; +reg [15:0] stride; +reg [15:0] srcadrs; +reg [1:0] waitcnt; +reg [7:0] rdat; +reg [10:0] wdat; +reg hflip; +reg nowflip; +reg we; + +wire [15:0] srca = sprdt[15:0] + (stride * yofs); + +wire [10:0] col0 = { 2'b00, spr_num[4:0], nowflip ? rdat[3:0] : rdat[7:4] }; +wire [10:0] col1 = { 2'b00, spr_num[4:0], nowflip ? rdat[7:4] : rdat[3:0] }; + +wire [10:0] _prevpix; +reg [10:0] prevpix; +wire side = VPOS[0]; + +wire [10:0] opix; +reg [9:0] rad0,rad1=1; +LineBuf lbuf( + VCLKx4, rad0, (rad0==rad1), opix, + VCLKx4, {~side,xpos}, wdat, we & (wdat[3:0] != 4'h0), _prevpix +); +always @(posedge VCLK) rad0 <= {side,HPOS}; +always @(negedge VCLK) begin + sprpx <= opix; + rad1 <= rad0; +end + +assign sprad = { spr_num, spr_ofs }; +assign sprchad = { bank, srcadrs[14:0] }; + +wire [9:0] sprcoll_adr = { spr_num[4:0], prevpix[8:4] }; + + +`define SPSTART 0 +`define SPEND 31 + +always @ ( negedge VCLKx4 ) begin + + // in H-Blank + if ( HB ) begin + + phaseHD <= 0; + we <= 1'b0; + sprcoll <= 1'b0; + + case ( phaseHB ) + + // initialize + 2'h0: begin + svpos <= VPOS+1; + spr_num <= `SPSTART; + spr_ofs <= 0; + hits <= 0; + phaseHB <= 2'h1; + end + + // check v-hit + 2'h1: begin + if ( sprdt[7:0] != 8'hFF ) begin + if ( ( svpos >= sprdt[7:0] ) & ( svpos < sprdt[15:8] ) ) begin + hitsprnum[hits] <= spr_num; + hitsprvps[hits] <= (svpos-sprdt[7:0])+1; + hits <= hits+1; + end + end + phaseHB <= ( spr_num == `SPEND ) ? 2'h2 : 2'h1; + spr_num <= spr_num+1; + end + + default:; + + endcase + + end + + // in H-Disp + else begin + + phaseHB <= 0; + + case ( phaseHD ) + + // initialize + 0: begin + hitr <= 0; + we <= 1'b0; + sprcoll <= 0; + phaseHD <= ( hits > 0 ) ? 1 : 15; + end + + // get hit sprite number + 1: begin + spr_num <= hitsprnum[hitr]; + spr_ofs <= 1; + phaseHD <= 2; + end + + // get yofs/xpos/bank + 2: begin + yofs <= hitsprvps[hitr]; + xpos <= sprdt[8:1]+14; + bank <= { sprdt[13], sprdt[14], sprdt[15] }; + spr_ofs <= 2; + phaseHD <= 3; + end + + // get stride + 3: begin + stride <= sprdt; + spr_ofs <= 3; + phaseHD <= 4; + end + + // get srcadrs & calc chiprom address + 4: begin + srcadrs <= srca; + hflip <= srca[15]; + waitcnt <= 3; + phaseHD <= 5; + end + + // wait chiprom setup + 5: begin + waitcnt <= waitcnt-1; + phaseHD <= ( waitcnt == 0 ) ? 6 : 5; + end + + // rendering to linebuf + 6: begin + sprcoll <= 1'b0; + we <= 1'b0; + rdat <= sprchdt; + nowflip <= srcadrs[15]; + srcadrs <= hflip ? (srcadrs-1) : (srcadrs+1); + phaseHD <= 7; + end + 7: begin + prevpix <= _prevpix; + if ( col0[3:0] != 4'hF ) begin + wdat <= col0; + we <= 1'b1; + phaseHD <= 8; + end + else begin + we <= 1'b0; + phaseHD <= 14; + end + end + 8: begin + // sprite collide process + we <= 1'b0; + if ( col0[3:0] != 4'h0 ) begin + if ( prevpix[3:0] != 4'h0 ) begin + sprcoll <= 1'b1; + sprcoll_ad <= sprcoll_adr; + end + end + xpos <= xpos+1; + phaseHD <= 9; + end + 9: begin + prevpix <= _prevpix; + sprcoll <= 1'b0; + if ( col1[3:0] != 4'hF ) begin + wdat <= col1; + we <= 1'b1; + phaseHD <= 10; + end + else begin + we <= 1'b0; + phaseHD <= 14; + end + end + 10: begin + // sprite collide process + we <= 1'b0; + if ( col1[3:0] != 4'h0 ) begin + if ( prevpix[3:0] != 4'h0 ) begin + sprcoll <= 1'b1; + sprcoll_ad <= sprcoll_adr; + end + end + xpos <= xpos+1; + phaseHD <= 6; + end + + // process next hit sprite + 14: begin + phaseHD <= ( hitr == (hits-1) ) ? 15 : 1; + hitr <= hitr+1; + end + + default: begin + we <= 1'b0; + sprcoll <= 1'b0; + end + + endcase + + end +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyVIDEO.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyVIDEO.v new file mode 100644 index 00000000..9b3c649a --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/FlickyVIDEO.v @@ -0,0 +1,605 @@ +// Copyright (c) 2017,19 MiSTer-X + +module FlickyVIDEO +( + input VCLKx8, + input VCLKx4, + input VCLKx2, + input VCLK, + + input [8:0] PH, + input [8:0] PV, + + output VBLK, + output [7:0] RGB8, + + input PALDSW, + + input cpu_cl, + input [15:0] cpu_ad, + input cpu_wr, + input [7:0] cpu_dw, + output cpu_rd, + output [7:0] cpu_dr, + output [14:0] spr_rom_addr, + input [7:0] spr_rom_do, + output [13:0] tile_rom_addr, + input [23:0] tile_rom_do +); + +// CPU Interface +wire [10:0] palno; +wire [7:0] palout; + +wire [9:0] sprad; +wire [15:0] sprdt; + +wire [9:0] vram0ad; +wire [15:0] vram0dt; +wire [9:0] vram1ad; +wire [15:0] vram1dt; + +wire [5:0] mixcoll_ad; +wire mixcoll; +wire [9:0] sprcoll_ad; +wire sprcoll; + +wire [15:0] scrx; +wire [7:0] scry; + +VIDCPUINTF intf( + cpu_cl, + cpu_ad, cpu_wr, cpu_dw, + cpu_rd, cpu_dr, + + VCLKx4, VCLK, + palno, palout, + sprad, sprdt, + vram0ad, vram0dt, + vram1ad, vram1dt, + mixcoll_ad, mixcoll, + sprcoll_ad, sprcoll, + scrx, scry +); + + +// HV Coordinate Generator +wire [8:0] HPOS, VPOS; +wire [8:0] BG0HP, BG0VP; +wire [8:0] BG1HP, BG1VP; +VIDHVGEN hv( + PH, PV, + scrx, scry, + HPOS, VPOS, + BG0HP, BG0VP, + BG1HP, BG1VP, + VBLK +); + + +// Sprite Engine +wire [10:0] SPRPX; +wire [14:0] sprchad; +wire [7:0] sprchdt; +//DLROM #(15,8) sprchr(VCLKx8,sprchad,sprchdt, ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:15]==2'b0_1)); // $08000-$0FFFF +spr_rom spr_rom( + .clk(VCLKx8), + .addr(sprchad), + .data(sprchdt) +); +//assign spr_rom_addr = sprchad; +//assign sprchdt = spr_rom_do; + + +FlickySPRITE sprite( + .VCLKx4(VCLKx4),.VCLK(VCLK), + .PH(HPOS),.PV(VPOS), + .sprad(sprad),.sprdt(sprdt), + .sprchad(sprchad),.sprchdt(sprchdt), + .sprcoll(sprcoll),.sprcoll_ad(sprcoll_ad), + .sprpx(SPRPX) +); + + +// BG Scanline Generator +wire [10:0] BG0PX, BG1PX; +wire [13:0] tile0ad, tile1ad, tilead; +wire [23:0] tile0dt, tile1dt, tiledt; +TileChrMUX tilemux(VCLKx8, tile0ad, tile0dt, tile1ad, tile1dt, tilead, tiledt); +//TILES +//FlickyTileChr tilechr(VCLKx8, tilead, tiledt, ROMCL,ROMAD,ROMDT,ROMEN ); +assign tile_rom_addr = tilead; +assign tiledt = tile_rom_do; +BGGEN bg0(VCLK,BG0HP,BG0VP,vram0ad,vram0dt,tile0ad,tile0dt,BG0PX); +BGGEN bg1(VCLK,BG1HP,BG1VP,vram1ad,vram1dt,tile1ad,tile1dt,BG1PX); + + +// Color Mixer & RGB Output +wire [7:0] cltidx,cltval; +//DLROM #(8,8) clut(VCLKx2, cltidx, cltval, ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:8]==9'b1_1110_0000) ); // $1E000-$1E0FF +clut clut( + .clk(VCLKx2), + .addr(cltidx), + .data(cltval) +); + +COLMIX cmix( + VCLK, + BG0PX, BG1PX, SPRPX, + PALDSW, HPOS, VPOS, + cltidx, cltval, + mixcoll, mixcoll_ad, + palno, palout, + RGB8 +); + +endmodule + + +//---------------------------------- +// CPU Interface +//---------------------------------- +module VIDCPUINTF +( + input cpu_cl, + input [15:0] cpu_ad, + input cpu_wr, + input [7:0] cpu_dw, + output cpu_rd, + output [7:0] cpu_dr, + + input VCLKx4, + input VCLK, + + input [10:0] palno, + output [7:0] palout, + + input [9:0] sprad, + output [15:0] sprdt, + + input [9:0] vram0ad, + output [15:0] vram0dt, + + input [9:0] vram1ad, + output [15:0] vram1dt, + + input [5:0] mixcoll_ad, + input mixcoll, + + input [9:0] sprcoll_ad, + input sprcoll, + + output reg [15:0] scrx, + output reg [7:0] scry +); + +// CPU Address Decoders +wire cpu_cs_palram; +wire cpu_cs_spram; +wire cpu_cs_mixcoll; +wire cpu_cs_sprcoll; +wire cpu_cs_vram0; +wire cpu_cs_vram1; + +wire cpu_wr_palram; +wire cpu_wr_spram; +wire cpu_wr_mixcoll; +wire cpu_wr_mixcollclr; +wire cpu_wr_sprcoll; +wire cpu_wr_sprcollclr; +wire cpu_wr_vram0; +wire cpu_wr_vram1; +wire cpu_wr_scrreg; + +VIDADEC adecs( + cpu_ad, + cpu_wr, + + cpu_cs_palram, + cpu_cs_spram, + cpu_cs_mixcoll, + cpu_cs_sprcoll, + cpu_cs_vram0, + cpu_cs_vram1, + + cpu_wr_palram, + cpu_wr_spram, + cpu_wr_mixcoll, + cpu_wr_mixcollclr, + cpu_wr_sprcoll, + cpu_wr_sprcollclr, + cpu_wr_vram0, + cpu_wr_vram1, + cpu_wr_scrreg, + + cpu_rd +); + +// Scroll Register +always @ ( posedge cpu_cl ) begin + if (cpu_wr_scrreg) begin + case({cpu_ad[6],cpu_ad[0]}) + 2'b11: scrx[15:8] <= cpu_dw; + 2'b10: scrx[ 7:0] <= cpu_dw; + 2'b01: scry <= cpu_dw; + 2'b00: ; + endcase + end +end + + +// Palette RAM +wire [7:0] cpu_rd_palram; +DPRAM2048 palram( + cpu_cl, cpu_ad[10:0], cpu_dw, cpu_wr_palram, + VCLK, palno, palout, cpu_rd_palram +); + + +// Sprite Attribute RAM +wire [7:0] cpu_rd_spram; +DPRAM2048_8_16 sprram( + cpu_cl, cpu_ad[10:0], cpu_dw, cpu_wr_spram, + VCLKx4, sprad, sprdt, cpu_rd_spram +); + + +// Collision RAM (Mixer & Sprite) +wire noclip = 1'b1; +wire [7:0] cpu_rd_mixcoll; +wire [7:0] cpu_rd_sprcoll; +COLLRAM_M mixc( + cpu_cl,cpu_ad[5:0],cpu_wr_mixcoll,cpu_wr_mixcollclr,cpu_rd_mixcoll, + VCLKx4,mixcoll_ad,mixcoll & noclip +); +COLLRAM_S sprc( + cpu_cl,cpu_ad[9:0],cpu_wr_sprcoll,cpu_wr_sprcollclr,cpu_rd_sprcoll, + VCLKx4,sprcoll_ad,sprcoll & noclip +); + + +// VRAM +wire [7:0] cpu_rd_vram0, cpu_rd_vram1; +VRAM vram0( + cpu_cl, cpu_ad[10:0], cpu_rd_vram0, cpu_dw, cpu_wr_vram0, + VCLKx4, vram0ad, vram0dt +); +VRAM vram1( + cpu_cl, cpu_ad[10:0], cpu_rd_vram1, cpu_dw, cpu_wr_vram1, + VCLKx4, vram1ad, vram1dt +); + + +// CPU Read Data Selector +dataselector6 videodsel( + cpu_dr, + cpu_cs_palram, cpu_rd_palram, + cpu_cs_vram0, cpu_rd_vram0, + cpu_cs_vram1, cpu_rd_vram1, + cpu_cs_spram, cpu_rd_spram, + cpu_cs_sprcoll, cpu_rd_sprcoll, + cpu_cs_mixcoll, cpu_rd_mixcoll, + 8'hFF +); + +endmodule + + +//---------------------------------- +// Tile ROM +//---------------------------------- +module TileChrMUX +( + input VCLKx8, + + input [13:0] tile0ad, + output reg [23:0] tile0dt, + + input [13:0] tile1ad, + output reg [23:0] tile1dt, + + output [13:0] tilead, + input [23:0] tiledt +); + +reg tphase; +always @(negedge VCLKx8) begin + if (tphase) tile1dt <= tiledt; + else tile0dt <= tiledt; + tphase <= ~tphase; +end +assign tilead = tphase ? tile1ad : tile0ad; + +endmodule +/* +module FlickyTileChr +( + input clk, + input [13:0] adr, + output [23:0] dat, + + input ROMCL, // Downloaded ROM image + input [24:0] ROMAD, + input [7:0] ROMDT, + input ROMEN +); + +wire [23:0] t0dt,t1dt; +assign dat = adr[13] ? t1dt : t0dt; + +//DLROM #(13,8) t00( clk, adr[12:0], t0dt[7:0] ,ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_000)); // $10000-$11FFF +//tile1 tile1( +// .clk(clk), +// .addr(adr[12:0]), +// .data(t0dt[7:0]) +//); + + +//DLROM #(13,8) t01( clk, adr[12:0], t0dt[15:8] ,ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_001)); // $12000-$13FFF +//DLROM #(13,8) t02( clk, adr[12:0], t0dt[23:16],ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_010)); // $14000-$15FFF + +//DLROM #(13,8) t10( clk, adr[12:0], t1dt[7:0] ,ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_011)); // $16000-$17FFF +//DLROM #(13,8) t11( clk, adr[12:0], t1dt[15:8] ,ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_100)); // $18000-$19FFF +//DLROM #(13,8) t12( clk, adr[12:0], t1dt[23:16],ROMCL,ROMAD,ROMDT,ROMEN & (ROMAD[16:13]==4'b1_101)); // $1A000-$1BFFF + +endmodule*/ + + +//---------------------------------- +// HV Coordinate Generator +//---------------------------------- +module VIDHVGEN +( + input [8:0] PH, + input [8:0] PV, + + input [15:0] scrx, + input [7:0] scry, + + output [8:0] HPOS, + output [8:0] VPOS, + + output [8:0] BG0HP, + output [8:0] BG0VP, + + output [8:0] BG1HP, + output [8:0] BG1VP, + + output VBLK +); + +assign VBLK = (PV == 8'd224) & (PH <= 8'd64); + +assign HPOS = PH+1; +assign VPOS = PV; + +wire [8:0] BGHSCR = (511-scrx[9:1])-10; +wire [8:0] BGVSCR = { 1'b0, scry }; + +assign BG0HP = BGHSCR+HPOS; +assign BG0VP = BGVSCR+VPOS; + +assign BG1HP = HPOS+3; +assign BG1VP = VPOS; + +endmodule + + +//---------------------------------- +// CPU Address Decoders +//---------------------------------- +module VIDADEC +( + input [15:0] cpu_ad, + input cpu_wr, + + output cpu_cs_palram, + output cpu_cs_spram, + output cpu_cs_mixcoll, + output cpu_cs_sprcoll, + output cpu_cs_vram0, + output cpu_cs_vram1, + + output cpu_wr_palram, + output cpu_wr_spram, + output cpu_wr_mixcoll, + output cpu_wr_mixcollclr, + output cpu_wr_sprcoll, + output cpu_wr_sprcollclr, + output cpu_wr_vram0, + output cpu_wr_vram1, + output cpu_wr_scrreg, + + output cpu_rd +); + +assign cpu_cs_palram = ( cpu_ad[15:11] == 5'b1101_1 ); +assign cpu_cs_spram = ( cpu_ad[15:11] == 5'b11010 ); +assign cpu_cs_mixcoll = ( cpu_ad[15:10] == 6'b1111_00 ); +wire cpu_cs_mixcollclr = ( cpu_ad[15:10] == 6'b1111_01 ); +assign cpu_cs_sprcoll = ( cpu_ad[15:10] == 6'b1111_10 ); +wire cpu_cs_sprcollclr = ( cpu_ad[15:10] == 6'b1111_11 ); +assign cpu_cs_vram0 = ( cpu_ad[15:11] == 5'b11100 ); +assign cpu_cs_vram1 = ( cpu_ad[15:11] == 5'b11101 ); +wire cpu_cs_scrreg = ((cpu_ad[15: 0] & 16'b1111_1111_1011_1110) == 16'b1110_1111_1011_1100); + + +assign cpu_wr_palram = cpu_cs_palram & cpu_wr; +assign cpu_wr_spram = cpu_cs_spram & cpu_wr; +assign cpu_wr_mixcoll = cpu_cs_mixcoll & cpu_wr; +assign cpu_wr_mixcollclr = cpu_cs_mixcollclr & cpu_wr; +assign cpu_wr_sprcoll = cpu_cs_sprcoll & cpu_wr; +assign cpu_wr_sprcollclr = cpu_cs_sprcollclr & cpu_wr; +assign cpu_wr_vram0 = cpu_cs_vram0 & cpu_wr; +assign cpu_wr_vram1 = cpu_cs_vram1 & cpu_wr; +assign cpu_wr_scrreg = cpu_cs_scrreg & cpu_wr; + + +assign cpu_rd = cpu_cs_palram | + cpu_cs_vram0 | + cpu_cs_vram1 | + cpu_cs_spram | + cpu_cs_sprcoll | + cpu_cs_mixcoll ; + +endmodule + + +//---------------------------------- +// BG Scanline Generator +//---------------------------------- +module BGGEN +( + input VCLK, + + input [8:0] HP, + input [8:0] VP, + + output [9:0] VRAMAD, + input [15:0] VRAMDT, + + output [13:0] TILEAD, + input [23:0] TILEDT, + + output [10:0] OPIX +); + +assign VRAMAD = { VP[7:3], HP[7:3] }; +assign TILEAD = { VRAMDT[15], VRAMDT[10:0], VP[2:0] }; + +reg [31:0] BGREG; +wire [23:0] BGCD = BGREG[23:0]; +wire [7:0] BGPN = BGREG[31:24]; + +wire [31:0] BGPIX; +always @( posedge VCLK ) BGREG <= BGPIX; + +dataselector1_32 pixsft( + BGPIX, + ( HP[2:0] != 2 ),{ BGPN, BGCD[22:0], 1'b0 }, + { VRAMDT[12:5], TILEDT } +); + +assign OPIX = { BGPN, BGCD[7], BGCD[15], BGCD[23] }; + +endmodule + + +//---------------------------------- +// Color Mixer & RGB Output +//---------------------------------- +module COLMIX +( + input VCLK, + + input [10:0] BG0PX, + input [10:0] BG1PX, + input [10:0] SPRPX, + + input PALDSW, + input [8:0] HPOS, + input [8:0] VPOS, + + output [7:0] cltidx, + input [7:0] cltval, + + output mixcoll, + output [5:0] mixcoll_ad, + + output [10:0] palno, + input [7:0] palout, + + output reg [7:0] RGB8 +); + +assign cltidx = { 1'b0, + BG0PX[10:9],(BG0PX[2:0]==0), + BG1PX[10:9],(BG1PX[2:0]==0), + (SPRPX[3:0]==0) +}; + +assign mixcoll = ~(cltval[2]); +assign mixcoll_ad = { cltval[3], SPRPX[8:4] }; + +wire [10:0] palno_i; +dataselector2_11 colsel( + palno_i, + cltval[1], ( 11'h400 | BG0PX[8:0] ), + cltval[0], ( 11'h200 | BG1PX[8:0] ), + ( 11'h000 | SPRPX[8:0] ) +); + +wire [10:0] palno_d = {HPOS[7],VPOS[7:2],HPOS[6:3]}; + +assign palno = PALDSW ? palno_d : palno_i; + +always @( negedge VCLK ) RGB8 <= palout; + +endmodule + + +//---------------------------------- +// Collision RAM +//---------------------------------- +module COLLRAM_M +( + input cpu_cl, + input [5:0] cpu_ad, + input cpu_wr_coll, + input cpu_wr_collclr, + output [7:0] cpu_rd_coll, + + input VCLKx4, + input [5:0] coll_ad, + input coll +); + +reg [63:0] core; +reg coll_rd, coll_sm; + +always @(posedge cpu_cl) coll_rd <= core[cpu_ad]; + +always @(posedge VCLKx4) begin + if (cpu_cl) begin + if (cpu_wr_coll) core[cpu_ad] <= 1'b0; + if (cpu_wr_collclr) coll_sm <= 1'b0; + end + else coll_sm <= coll; + if (coll) core[coll_ad] <= 1'b1; +end + +assign cpu_rd_coll = { coll_sm, 6'b111111, coll_rd }; + +endmodule + +module COLLRAM_S +( + input cpu_cl, + input [9:0] cpu_ad, + input cpu_wr_coll, + input cpu_wr_collclr, + output [7:0] cpu_rd_coll, + + input VCLKx4, + input [9:0] coll_ad, + input coll +); + +reg [1023:0] core; +reg coll_rd, coll_sm; + +always @(posedge cpu_cl) coll_rd <= core[cpu_ad]; + +always @(posedge VCLKx4) begin + if (cpu_cl) begin + if (cpu_wr_coll) core[cpu_ad] <= 1'b0; + if (cpu_wr_collclr) coll_sm <= 1'b0; + end + else coll_sm <= coll; + if (coll) core[coll_ad] <= 1'b1; +end + +assign cpu_rd_coll = { coll_sm, 6'b111111, coll_rd }; + +endmodule + diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.sv b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.sv new file mode 100644 index 00000000..83541118 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.sv @@ -0,0 +1,282 @@ + +module Flicky_MiST( + output LED, + output [5:0] VGA_R, + output [5:0] VGA_G, + output [5:0] VGA_B, + output VGA_HS, + output VGA_VS, + output AUDIO_L, + output AUDIO_R, + input SPI_SCK, + output SPI_DO, + input SPI_DI, + input SPI_SS2, + input SPI_SS3, + input CONF_DATA0, + input CLOCK_27, + + output [12:0] SDRAM_A, + inout [15:0] SDRAM_DQ, + output SDRAM_DQML, + output SDRAM_DQMH, + output SDRAM_nWE, + output SDRAM_nCAS, + output SDRAM_nRAS, + output SDRAM_nCS, + output [1:0] SDRAM_BA, + output SDRAM_CLK, + output SDRAM_CKE +); + +`include "rtl/build_id.v" + +localparam CONF_STR = { + "FLICKY;ROM;", + "O34,Scanlines,Off,25%,50%,75%;", + "O5,Blend,Off,On;", + + "O89,Lives,3,4,5,Infinite;", + "OAB,Extend,30k/80k/160k,30k/100k/200k,40k/120k/240k,40k/140k/280k;", + "OC,Difficulty,Easy,Hard;", + + "T0,Reset;", + "V,v1.0.",`BUILD_DATE +}; + + +wire [1:0] scanlines = status[4:3]; +wire blend = status[5]; +wire [1:0] dsLives = ~status[9:8]; +wire [1:0] dsExtend = ~status[11:10]; +wire dsDifclt = ~status[12]; + + +assign LED = ~ioctl_downl; +assign SDRAM_CLK = sdram_clk; +assign SDRAM_CKE = 1; +assign AUDIO_R = AUDIO_L; + +wire clk_sys, sdram_clk; +wire pll_locked; +pll_mist pll( + .inclk0(CLOCK_27), + .c0(clk_sys),//48 + .c1(sdram_clk),//96 + .locked(pll_locked) + ); + +wire [31:0] status; +wire [1:0] buttons; +wire [1:0] switches; +wire [7:0] joystick_0; +wire [7:0] joystick_1; +wire key_pressed; +wire key_strobe; +wire [7:0] key_code; +wire scandoublerD; +wire ypbpr; +wire no_csync; + +user_io #( + .STRLEN(($size(CONF_STR)>>3))) +user_io( + .clk_sys (clk_sys ), + .conf_str (CONF_STR ), + .SPI_CLK (SPI_SCK ), + .SPI_SS_IO (CONF_DATA0 ), + .SPI_MISO (SPI_DO ), + .SPI_MOSI (SPI_DI ), + .buttons (buttons ), + .switches (switches ), + .scandoubler_disable (scandoublerD ), + .ypbpr (ypbpr ), + .no_csync (no_csync ), + .key_strobe (key_strobe ), + .key_pressed (key_pressed ), + .key_code (key_code ), + .joystick_0 (joystick_0 ), + .joystick_1 (joystick_1 ), + .status (status ) + ); + +wire [15:0] audio; +wire hs, vs, cs, hb, vb; +wire blankn = ~(hb | vb); +wire [2:0] g, r; +wire [1:0] b; +wire [14:0] rom_addr; +wire [15:0] rom_do; +wire [14:0] spr_rom_addr; +wire [15:0] spr_rom_do; +wire [12:0] snd_rom_addr; +wire [15:0] snd_rom_do; +wire [13:0] tile_rom_addr; +wire [23:0] tile_rom_do; +wire ioctl_downl; +wire [7:0] ioctl_index; +wire ioctl_wr; +wire [24:0] ioctl_addr; +wire [7:0] ioctl_dout; + +data_io data_io( + .clk_sys ( clk_sys ), + .SPI_SCK ( SPI_SCK ), + .SPI_SS2 ( SPI_SS2 ), + .SPI_DI ( SPI_DI ), + .ioctl_download( ioctl_downl ), + .ioctl_index ( ioctl_index ), + .ioctl_wr ( ioctl_wr ), + .ioctl_addr ( ioctl_addr ), + .ioctl_dout ( ioctl_dout ) +); + + +reg port1_req, port2_req; +wire [24:0] tl_ioctl_addr = ioctl_addr - 17'h12000; +sdram sdram( + .*, + .init_n ( pll_locked ), + .clk ( sdram_clk ), + + // port1 used for main + sound CPUs + .port1_req ( port1_req ), + .port1_ack ( ), + .port1_a ( ioctl_addr[23:1] ), + .port1_ds ( {ioctl_addr[0], ~ioctl_addr[0]} ), + .port1_we ( ioctl_downl ), + .port1_d ( {ioctl_dout, ioctl_dout} ), + .port1_q ( ), + + .cpu1_addr ( ioctl_downl ? 16'hffff : {2'b00, rom_addr[14:1]}), + .cpu1_q ( rom_do ), + .cpu2_addr ( ioctl_downl ? 16'hffff : (16'h6000 + spr_rom_addr[14:1]) ), + .cpu2_q ( spr_rom_do ), + .cpu3_addr ( ioctl_downl ? 16'hffff : (16'h4000 + snd_rom_addr[12:1]) ), + .cpu3_q ( snd_rom_do ), + + // port2 for sprite graphics + .port2_req ( port2_req ), + .port2_ack ( ), + .port2_a ( {tl_ioctl_addr[17:16], tl_ioctl_addr[13:0], tl_ioctl_addr[15]} ), // merge tile roms to 32-bit wide words + .port2_ds ( {tl_ioctl_addr[14], ~tl_ioctl_addr[14]} ), + .port2_we ( ioctl_downl ), + .port2_d ( {ioctl_dout, ioctl_dout} ), + .port2_q ( ), + + .sp_addr ( ioctl_downl ? 15'h7fff : tile_rom_addr ), + .sp_q ( tile_rom_do ) +); + +always @(posedge clk_sys) begin + reg ioctl_wr_last = 0; + + ioctl_wr_last <= ioctl_wr; + if (ioctl_downl) begin + if (~ioctl_wr_last && ioctl_wr) begin + port1_req <= ~port1_req; + port2_req <= ~port2_req; + end + end +end + +reg reset = 1; +reg rom_loaded = 0; +always @(posedge sdram_clk) begin + reg ioctl_downlD; + ioctl_downlD <= ioctl_downl; + + if (ioctl_downlD & ~ioctl_downl) rom_loaded <= 1; + reset <= status[0] | buttons[1] | ~rom_loaded; +end + +wire [7:0] INP0 = ~{m_left, m_right,3'd0,m_fireA,2'd0}; +wire [7:0] INP1 = ~{m_left2,m_right2,3'd0,m_fire2A,2'd0}; +wire [7:0] INP2 = ~{2'd0,m_two_players, m_one_player,3'd0, m_coin1}; + +wire [7:0] DSW0 = 8'hFF; +wire [7:0] DSW1 = {dsDifclt,dsExtend,dsLives,2'b00}; + +FPGA_FLICKY FPGA_FLICKY( + .clk48M(clk_sys), + .reset(reset), + + .INP0(INP0), + .INP1(INP1), + .INP2(INP2), + + .DSW0(DSW0), + .DSW1(DSW1), + .video_r(r), + .video_g(g), + .video_b(b), + .video_hs(hs), + .video_vs(vs), + .video_hb(hb), + .video_vb(vb), + .cpu_rom_addr(rom_addr), + .cpu_rom_do( rom_addr[0] ? rom_do[15:8] : rom_do[7:0] ), + .snd_rom_addr(snd_rom_addr), + .snd_rom_do(snd_rom_addr[0] ? snd_rom_do[15:8] : snd_rom_do[7:0] ), + .spr_rom_addr(spr_rom_addr),//Internal for now + .spr_rom_do(spr_rom_addr[0] ? spr_rom_do[15:8] : spr_rom_do[7:0] ), + .tile_rom_addr(tile_rom_addr), + .tile_rom_do(tile_rom_do), + .SOUT(audio) +); + + +mist_video #(.COLOR_DEPTH(3), .SD_HCNT_WIDTH(10)) mist_video( + .clk_sys ( clk_sys ), + .SPI_SCK ( SPI_SCK ), + .SPI_SS3 ( SPI_SS3 ), + .SPI_DI ( SPI_DI ), + .R ( blankn ? r : 0 ), + .G ( blankn ? g : 0 ), + .B ( blankn ? {b,b[1]} : 0 ), + .HSync ( hs ), + .VSync ( vs ), + .VGA_R ( VGA_R ), + .VGA_G ( VGA_G ), + .VGA_B ( VGA_B ), + .VGA_VS ( VGA_VS ), + .VGA_HS ( VGA_HS ), + .ce_divider ( 1'b0 ), + .blend ( blend ), + .rotate ( 2'b0 ), + .scandoubler_disable(scandoublerD ), + .scanlines ( scanlines ), + .ypbpr ( ypbpr ), + .no_csync ( no_csync ) + ); + +dac #( + .C_bits(16)) +dac( + .clk_i(clk_sys), + .res_n_i(1), + .dac_i(audio), + .dac_o(AUDIO_L) + ); + +wire m_up, m_down, m_left, m_right, m_fireA, m_fireB, m_fireC, m_fireD, m_fireE, m_fireF; +wire m_up2, m_down2, m_left2, m_right2, m_fire2A, m_fire2B, m_fire2C, m_fire2D, m_fire2E, m_fire2F; +wire m_tilt, m_coin1, m_coin2, m_coin3, m_coin4, m_one_player, m_two_players, m_three_players, m_four_players; + +arcade_inputs inputs ( + .clk ( clk_sys ), + .key_strobe ( key_strobe ), + .key_pressed ( key_pressed ), + .key_code ( key_code ), + .joystick_0 ( joystick_0 ), + .joystick_1 ( joystick_1 ), + .rotate ( 1'b0 ), + .orientation ( 2'b00 ), + .joyswap ( 1'b0 ), + .oneplayer ( 1'b1 ), + .controls ( {m_tilt, m_coin4, m_coin3, m_coin2, m_coin1, m_four_players, m_three_players, m_two_players, m_one_player} ), + .player1 ( {m_fireF, m_fireE, m_fireD, m_fireC, m_fireB, m_fireA, m_up, m_down, m_left, m_right} ), + .player2 ( {m_fire2F, m_fire2E, m_fire2D, m_fire2C, m_fire2B, m_fire2A, m_up2, m_down2, m_left2, m_right2} ) +); + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.v new file mode 100644 index 00000000..14ecad99 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/Flicky_MiST.v @@ -0,0 +1,41 @@ +module HVGEN +( + output [8:0] HPOS, + output [8:0] VPOS, + input PCLK, + input [14:0] iRGB, + + output reg [14:0] oRGB, + output reg HBLK = 1, + output reg VBLK = 1, + output reg HSYN = 1, + output reg VSYN = 1 +); + +reg [8:0] hcnt = 0; +reg [8:0] vcnt = 0; + +assign HPOS = hcnt-16; +assign VPOS = vcnt; + +always @(posedge PCLK) begin + case (hcnt) + 15: begin HBLK <= 0; hcnt <= hcnt+1; end + 272: begin HBLK <= 1; hcnt <= hcnt+1; end + 311: begin HSYN <= 0; hcnt <= hcnt+1; end + 342: begin HSYN <= 1; hcnt <= 471; end + 511: begin hcnt <= 0; + case (vcnt) + 223: begin VBLK <= 1; vcnt <= vcnt+1; end + 226: begin VSYN <= 0; vcnt <= vcnt+1; end + 233: begin VSYN <= 1; vcnt <= 483; end + 511: begin VBLK <= 0; vcnt <= 0; end + default: vcnt <= vcnt+1; + endcase + end + default: hcnt <= hcnt+1; + endcase + oRGB <= (HBLK|VBLK) ? 15'h0 : iRGB; +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/SN76496.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/SN76496.v new file mode 100644 index 00000000..7ffa7fdd --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/SN76496.v @@ -0,0 +1,174 @@ +// Copyright (c) 2017,19 MiSTer-X + +module SN76496 +( + input clk, + input cpuclk, + input reset, + input ce, + input we, + input [7:0] data, + input [3:0] chmsk, + output reg [7:0] sndout, + output reg [3:0] chactv, + output reg [2:0] lreg +); + +`define RNGINI 16'h0F35 +`define RNGFB0 16'h4000 +`define RNGFB1 16'h8100 + +function [5:0] voltbl; +input [3:0] idx; + case (idx) + 4'h0: voltbl = 63; + 4'h1: voltbl = 50; + 4'h2: voltbl = 40; + 4'h3: voltbl = 32; + 4'h4: voltbl = 25; + 4'h5: voltbl = 20; + 4'h6: voltbl = 16; + 4'h7: voltbl = 13; + 4'h8: voltbl = 10; + 4'h9: voltbl = 8; + 4'hA: voltbl = 6; + 4'hB: voltbl = 5; + 4'hC: voltbl = 4; + 4'hD: voltbl = 3; + 4'hE: voltbl = 2; + 4'hF: voltbl = 0; + endcase +endfunction + +reg [3:0] clks; + +reg [2:0] nzc; +reg [9:0] fq0, fq1, fq2; +reg [9:0] fc0, fc1, fc2; +reg [5:0] fv0, fv1, fv2, fv3; +reg [5:0] _fv0,_fv1,_fv2,_fv3; +reg fo0, fo1, fo2; + +reg [15:0] rng = `RNGINI; +wire [15:0] rfb = rng[0] ? ( nzc[2] ? `RNGFB1 : `RNGFB0 ) : 16'h0; + +wire [1:0] nfq = nzc[1:0]; +wire [10:0] fq3 = ( nfq == 2'b00 ) ? 64 : + ( nfq == 2'b01 ) ? 128 : + ( nfq == 2'b10 ) ? 256 : fq2; +reg [10:0] fc3; +wire fo3 = rng[0]; + +wire [7:0] o0 = ( fo0 & chmsk[0] ) ? { 1'b0, fv0, 1'b0 } : 8'h0; +wire [7:0] o1 = ( fo1 & chmsk[1] ) ? { 1'b0, fv1, 1'b0 } : 8'h0; +wire [7:0] o2 = ( fo2 & chmsk[2] ) ? { 1'b0, fv2, 1'b0 } : 8'h0; +wire [7:0] o3 = ( fo3 & chmsk[3] ) ? { 1'b0, fv3, 1'b0 } : 8'h0; + +wire [8:0] sndmix = o0 + o1 + o2 + o3; + +always @( posedge cpuclk or posedge reset ) begin + if ( reset ) begin + lreg <= 0; + _fv0 <= 0; + _fv1 <= 0; + _fv2 <= 0; + _fv3 <= 0; + fq0 <= 0; + fq1 <= 0; + fq2 <= 0; + nzc <= 0; + chactv <= 0; + end + else begin + // Register write + if ( ce & we ) begin + if ( data[7] ) begin + lreg <= data[6:4]; + case ( data[6:4] ) + 3'h0: fq0[3:0] <= data[3:0]; + 3'h2: fq1[3:0] <= data[3:0]; + 3'h4: fq2[3:0] <= data[3:0]; + 3'h1: begin _fv0 <= voltbl(data[3:0]); chactv[0] <= (~data[3]); end + 3'h3: begin _fv1 <= voltbl(data[3:0]); chactv[1] <= (~data[3]); end + 3'h5: begin _fv2 <= voltbl(data[3:0]); chactv[2] <= (~data[3]); end + 3'h7: begin _fv3 <= voltbl(data[3:0]); chactv[3] <= (~data[3]); end + 3'h6: begin nzc <= data[2:0]; end + endcase + end + else begin + case ( lreg ) + 3'h0: fq0[9:4] <= data[5:0]; + 3'h2: fq1[9:4] <= data[5:0]; + 3'h4: fq2[9:4] <= data[5:0]; + default: begin end + endcase + end + end + end +end + + +always @( posedge clk or posedge reset ) begin + // Reset + if ( reset ) begin + sndout <= 0; + fv0 <= 0; + fv1 <= 0; + fv2 <= 0; + fv3 <= 0; + fc0 <= 0; + fc1 <= 0; + fc2 <= 0; + fc3 <= 0; + fo0 <= 0; + fo1 <= 0; + fo2 <= 0; + clks <= 0; + rng <= `RNGINI; + end + else begin + + // OSCs update + clks <= clks+1; + if ( clks == 0 ) begin + + fv0 <= _fv0; + fv1 <= _fv1; + fv2 <= _fv2; + fv3 <= _fv3; + + if ( fc0 == 0 ) begin + fc0 <= fq0; + fo0 <= ~fo0; + end + else fc0 <= fc0-1; + + if ( fc1 == 0 ) begin + fc1 <= fq1; + fo1 <= ~fo1; + end + else fc1 <= fc1-1; + + if ( fc2 == 0 ) begin + fc2 <= fq2; + fo2 <= ~fo2; + end + else fc2 <= fc2-1; + + // NoiseGen update + if ( fc3 == 0 ) begin + fc3 <= fq3; + rng <= { 1'b0, rng[15:1] } ^ rfb; + end + else fc3 <= fc3-1; + + // Sound update + sndout <= {8{sndmix[8]}}|(sndmix[7:0]); + + end + + end + +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/build_id.tcl b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/build_id.tcl new file mode 100644 index 00000000..938515d8 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/build_id.tcl @@ -0,0 +1,35 @@ +# ================================================================================ +# +# Build ID Verilog Module Script +# Jeff Wiencrot - 8/1/2011 +# +# Generates a Verilog module that contains a timestamp, +# from the current build. These values are available from the build_date, build_time, +# physical_address, and host_name output ports of the build_id module in the build_id.v +# Verilog source file. +# +# ================================================================================ + +proc generateBuildID_Verilog {} { + + # Get the timestamp (see: http://www.altera.com/support/examples/tcl/tcl-date-time-stamp.html) + set buildDate [ clock format [ clock seconds ] -format %y%m%d ] + set buildTime [ clock format [ clock seconds ] -format %H%M%S ] + + # Create a Verilog file for output + set outputFileName "rtl/build_id.v" + set outputFile [open $outputFileName "w"] + + # Output the Verilog source + puts $outputFile "`define BUILD_DATE \"$buildDate\"" + puts $outputFile "`define BUILD_TIME \"$buildTime\"" + close $outputFile + + # Send confirmation message to the Messages window + post_message "Generated build identification Verilog module: [pwd]/$outputFileName" + post_message "Date: $buildDate" + post_message "Time: $buildTime" +} + +# Comment out this line to prevent the process from automatically executing when the file is sourced: +generateBuildID_Verilog \ No newline at end of file diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/hvgen.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/hvgen.v new file mode 100644 index 00000000..8ee40db9 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/hvgen.v @@ -0,0 +1,41 @@ +module hvgen +( + output [8:0] HPOS, + output [8:0] VPOS, + input PCLK, + input [14:0] iRGB, + + output reg [14:0] oRGB, + output reg HBLK = 1, + output reg VBLK = 1, + output reg HSYN = 1, + output reg VSYN = 1 +); + +reg [8:0] hcnt = 0; +reg [8:0] vcnt = 0; + +assign HPOS = hcnt-16; +assign VPOS = vcnt; + +always @(posedge PCLK) begin + case (hcnt) + 15: begin HBLK <= 0; hcnt <= hcnt+1; end + 272: begin HBLK <= 1; hcnt <= hcnt+1; end + 311: begin HSYN <= 0; hcnt <= hcnt+1; end + 342: begin HSYN <= 1; hcnt <= 471; end + 511: begin hcnt <= 0; + case (vcnt) + 223: begin VBLK <= 1; vcnt <= vcnt+1; end + 226: begin VSYN <= 0; vcnt <= vcnt+1; end + 233: begin VSYN <= 1; vcnt <= 483; end + 511: begin VBLK <= 0; vcnt <= 0; end + default: vcnt <= vcnt+1; + endcase + end + default: hcnt <= hcnt+1; + endcase + oRGB <= (HBLK|VBLK) ? 15'h0 : iRGB; +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/parts.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/parts.v new file mode 100644 index 00000000..ddb4bd8c --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/parts.v @@ -0,0 +1,389 @@ +// Copyright (c) 2017,19 MiSTer-X +/* +module DLROM #(parameter AW,parameter DW) +( + input CL0, + input [(AW-1):0] AD0, + output reg [(DW-1):0] DO0, + + input CL1, + input [(AW-1):0] AD1, + input [(DW-1):0] DI1, + input WE1 +); + +reg [(DW-1):0] core[0:((2**AW)-1)]; + +always @(posedge CL0) DO0 <= core[AD0]; +always @(posedge CL1) if (WE1) core[AD1] <= DI1; + +endmodule*/ + + +//---------------------------------- +// 2K SRAM +//---------------------------------- +module SRAM_2048( CL, ADRS, OUT, WR, IN ); + +input CL; +input [10:0] ADRS; +output [7:0] OUT; +input WR; +input [7:0] IN; + + +reg [7:0] ramcore [0:2047]; +reg [7:0] OUT; + +always @( posedge CL ) begin + if (WR) ramcore[ADRS] <= IN; + else OUT <= ramcore[ADRS]; +end + + +endmodule + + +//---------------------------------- +// 4K SRAM +//---------------------------------- +module SRAM_4096( + input clk, + input [11:0] adrs, + output reg [7:0] out, + input wr, + input [7:0] in +); + +reg [7:0] ramcore [0:4095]; + +always @( posedge clk ) begin + if (wr) ramcore[adrs] <= in; + else out <= ramcore[adrs]; +end + +endmodule + + +//---------------------------------- +// DualPort RAM +//---------------------------------- +module DPRAM2048 +( + input clk0, + input [10:0] adr0, + input [7:0] dat0, + input wen0, + + input clk1, + input [10:0] adr1, + output reg [7:0] dat1, + + output reg [7:0] dtr0 +); + +reg [7:0] core [0:2047]; + +always @( posedge clk0 ) begin + if (wen0) core[adr0] <= dat0; + else dtr0 <= core[adr0]; +end + +always @( posedge clk1 ) begin + dat1 <= core[adr1]; +end + +endmodule + + +module DPRAM1024 +( + input clk0, + input [9:0] adr0, + input [7:0] dat0, + input wen0, + + input clk1, + input [9:0] adr1, + output reg [7:0] dat1, + + output reg [7:0] dtr0 +); + +reg [7:0] core [0:1023]; + +always @( posedge clk0 ) begin + if (wen0) core[adr0] <= dat0; + else dtr0 <= core[adr0]; +end + +always @( posedge clk1 ) begin + dat1 <= core[adr1]; +end + +endmodule + + +module DPRAM2048_8_16 +( + input clk0, + input [10:0] adr0, + input [7:0] dat0, + input wen0, + + input clk1, + input [9:0] adr1, + output [15:0] dat1, + + output [7:0] dtr0 +); + +wire [7:0] do0, do1; +wire [7:0] doH, doL; + +DPRAM1024 core0( clk0, adr0[10:1], dat0, wen0 & (~adr0[0]), clk1, adr1, doL, do0 ); +DPRAM1024 core1( clk0, adr0[10:1], dat0, wen0 & adr0[0], clk1, adr1, doH, do1 ); + +assign dtr0 = adr0[0] ? do1 : do0; +assign dat1 = { doH, doL }; + +endmodule + + +//---------------------------------- +// VRAM +//---------------------------------- +module VRAMs +( + input clk0, + input [9:0] adr0, + output reg [7:0] dat0, + input [7:0] dtw0, + input wen0, + + input clk1, + input [9:0] adr1, + output reg [7:0] dat1 +); + +reg [7:0] core [0:1023]; + +always @( posedge clk0 ) begin + if (wen0) core[adr0] <= dtw0; + else dat0 <= core[adr0]; +end + +always @( posedge clk1 ) begin + dat1 <= core[adr1]; +end + +endmodule + +module VRAM +( + input clk0, + input [10:0] adr0, + output [7:0] dat0, + input [7:0] dtw0, + input wen0, + + input clk1, + input [9:0] adr1, + output [15:0] dat1 +); + +wire even = ~adr0[0]; +wire odd = adr0[0]; + +wire [7:0] do00, do01, do10, do11; +VRAMs ram0( clk0, adr0[10:1], do00, dtw0, wen0 & even, clk1, adr1, do10 ); +VRAMs ram1( clk0, adr0[10:1], do01, dtw0, wen0 & odd, clk1, adr1, do11 ); + +assign dat0 = adr0[0] ? do01 : do00; +assign dat1 = { do11, do10 }; + +endmodule + + +//---------------------------------- +// ScanLine Buffer +//---------------------------------- +module LineBuf +( + input clkr, + input [9:0] radr, + input clre, + output [10:0] rdat, + + input clkw, + input [9:0] wadr, + input [10:0] wdat, + input we, + output [10:0] rdat1 +); + +DPRAM1024_11B core ( + radr,wadr, + clkr,clkw, + 16'h0,{5'h0,wdat}, + clre,we, + rdat,rdat1 +); + +endmodule + + +//---------------------------------- +// Data Selector (32bits) +//---------------------------------- +module dataselector1_32( + + output [31:0] oDATA, + + input iSEL0, + input [31:0] iDATA0, + + input [31:0] dData +); + +assign oDATA = iSEL0 ? iDATA0 : + dData; + +endmodule + + +//---------------------------------- +// Data Selector 3 to 1 +//---------------------------------- +module dataselector3( + + output [7:0] oDATA, + + input iSEL0, + input [7:0] iDATA0, + + input iSEL1, + input [7:0] iDATA1, + + input iSEL2, + input [7:0] iDATA2, + + input [7:0] dData +); + +assign oDATA = iSEL0 ? iDATA0 : + iSEL1 ? iDATA1 : + iSEL2 ? iDATA2 : + dData; + +endmodule + + +//---------------------------------- +// Data Selector 2 to 1 (11bits) +//---------------------------------- +module dataselector2_11( + + output [10:0] oDATA, + + input iSEL0, + input [10:0] iDATA0, + + input iSEL1, + input [10:0] iDATA1, + + input [10:0] dData +); + +assign oDATA = iSEL0 ? iDATA0 : + iSEL1 ? iDATA1 : + dData; + +endmodule + + +//---------------------------------- +// Data Selector 8 to 1 +//---------------------------------- +module dataselector8( + + output [7:0] oDATA, + + input iSEL0, + input [7:0] iDATA0, + + input iSEL1, + input [7:0] iDATA1, + + input iSEL2, + input [7:0] iDATA2, + + input iSEL3, + input [7:0] iDATA3, + + input iSEL4, + input [7:0] iDATA4, + + input iSEL5, + input [7:0] iDATA5, + + input iSEL6, + input [7:0] iDATA6, + + input iSEL7, + input [7:0] iDATA7, + + input [7:0] dData +); + +assign oDATA = iSEL0 ? iDATA0 : + iSEL1 ? iDATA1 : + iSEL2 ? iDATA2 : + iSEL3 ? iDATA3 : + iSEL4 ? iDATA4 : + iSEL5 ? iDATA5 : + iSEL6 ? iDATA6 : + iSEL7 ? iDATA7 : + dData; + +endmodule + +//---------------------------------- +// Data Selector 6 to 1 +//---------------------------------- +module dataselector6( + + output [7:0] oDATA, + + input iSEL0, + input [7:0] iDATA0, + + input iSEL1, + input [7:0] iDATA1, + + input iSEL2, + input [7:0] iDATA2, + + input iSEL3, + input [7:0] iDATA3, + + input iSEL4, + input [7:0] iDATA4, + + input iSEL5, + input [7:0] iDATA5, + + input [7:0] dData +); + +assign oDATA = iSEL0 ? iDATA0 : + iSEL1 ? iDATA1 : + iSEL2 ? iDATA2 : + iSEL3 ? iDATA3 : + iSEL4 ? iDATA4 : + iSEL5 ? iDATA5 : + dData; + +endmodule + + diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.qip b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.qip new file mode 100644 index 00000000..6182871f --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.qip @@ -0,0 +1,4 @@ +set_global_assignment -name IP_TOOL_NAME "ALTPLL" +set_global_assignment -name IP_TOOL_VERSION "13.1" +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "pll_mist.v"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll_mist.ppf"] diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.v new file mode 100644 index 00000000..cb06e165 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/pll_mist.v @@ -0,0 +1,337 @@ +// megafunction wizard: %ALTPLL% +// GENERATION: STANDARD +// VERSION: WM1.0 +// MODULE: altpll + +// ============================================================ +// File Name: pll_mist.v +// Megafunction Name(s): +// altpll +// +// Simulation Library Files(s): +// altera_mf +// ============================================================ +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// +// 13.1.0 Build 162 10/23/2013 SJ Web Edition +// ************************************************************ + + +//Copyright (C) 1991-2013 Altera Corporation +//Your use of Altera Corporation's design tools, logic functions +//and other software and tools, and its AMPP partner logic +//functions, and any output files from any of the foregoing +//(including device programming or simulation files), and any +//associated documentation or information are expressly subject +//to the terms and conditions of the Altera Program License +//Subscription Agreement, Altera MegaCore Function License +//Agreement, or other applicable license agreement, including, +//without limitation, that your use is for the sole purpose of +//programming logic devices manufactured by Altera and sold by +//Altera or its authorized distributors. Please refer to the +//applicable agreement for further details. + + +// synopsys translate_off +`timescale 1 ps / 1 ps +// synopsys translate_on +module pll_mist ( + inclk0, + c0, + c1, + locked); + + input inclk0; + output c0; + output c1; + output locked; + + wire [4:0] sub_wire0; + wire sub_wire2; + wire [0:0] sub_wire6 = 1'h0; + wire [0:0] sub_wire3 = sub_wire0[0:0]; + wire [1:1] sub_wire1 = sub_wire0[1:1]; + wire c1 = sub_wire1; + wire locked = sub_wire2; + wire c0 = sub_wire3; + wire sub_wire4 = inclk0; + wire [1:0] sub_wire5 = {sub_wire6, sub_wire4}; + + altpll altpll_component ( + .inclk (sub_wire5), + .clk (sub_wire0), + .locked (sub_wire2), + .activeclock (), + .areset (1'b0), + .clkbad (), + .clkena ({6{1'b1}}), + .clkloss (), + .clkswitch (1'b0), + .configupdate (1'b0), + .enable0 (), + .enable1 (), + .extclk (), + .extclkena ({4{1'b1}}), + .fbin (1'b1), + .fbmimicbidir (), + .fbout (), + .fref (), + .icdrclk (), + .pfdena (1'b1), + .phasecounterselect ({4{1'b1}}), + .phasedone (), + .phasestep (1'b1), + .phaseupdown (1'b1), + .pllena (1'b1), + .scanaclr (1'b0), + .scanclk (1'b0), + .scanclkena (1'b1), + .scandata (1'b0), + .scandataout (), + .scandone (), + .scanread (1'b0), + .scanwrite (1'b0), + .sclkout0 (), + .sclkout1 (), + .vcooverrange (), + .vcounderrange ()); + defparam + altpll_component.bandwidth_type = "AUTO", + altpll_component.clk0_divide_by = 9, + altpll_component.clk0_duty_cycle = 50, + altpll_component.clk0_multiply_by = 16, + altpll_component.clk0_phase_shift = "0", + altpll_component.clk1_divide_by = 9, + altpll_component.clk1_duty_cycle = 50, + altpll_component.clk1_multiply_by = 32, + altpll_component.clk1_phase_shift = "0", + altpll_component.compensate_clock = "CLK0", + altpll_component.inclk0_input_frequency = 37037, + altpll_component.intended_device_family = "Cyclone III", + altpll_component.lpm_hint = "CBX_MODULE_PREFIX=pll_mist", + altpll_component.lpm_type = "altpll", + altpll_component.operation_mode = "NORMAL", + altpll_component.pll_type = "AUTO", + altpll_component.port_activeclock = "PORT_UNUSED", + altpll_component.port_areset = "PORT_UNUSED", + altpll_component.port_clkbad0 = "PORT_UNUSED", + altpll_component.port_clkbad1 = "PORT_UNUSED", + altpll_component.port_clkloss = "PORT_UNUSED", + altpll_component.port_clkswitch = "PORT_UNUSED", + altpll_component.port_configupdate = "PORT_UNUSED", + altpll_component.port_fbin = "PORT_UNUSED", + altpll_component.port_inclk0 = "PORT_USED", + altpll_component.port_inclk1 = "PORT_UNUSED", + altpll_component.port_locked = "PORT_USED", + altpll_component.port_pfdena = "PORT_UNUSED", + altpll_component.port_phasecounterselect = "PORT_UNUSED", + altpll_component.port_phasedone = "PORT_UNUSED", + altpll_component.port_phasestep = "PORT_UNUSED", + altpll_component.port_phaseupdown = "PORT_UNUSED", + altpll_component.port_pllena = "PORT_UNUSED", + altpll_component.port_scanaclr = "PORT_UNUSED", + altpll_component.port_scanclk = "PORT_UNUSED", + altpll_component.port_scanclkena = "PORT_UNUSED", + altpll_component.port_scandata = "PORT_UNUSED", + altpll_component.port_scandataout = "PORT_UNUSED", + altpll_component.port_scandone = "PORT_UNUSED", + altpll_component.port_scanread = "PORT_UNUSED", + altpll_component.port_scanwrite = "PORT_UNUSED", + altpll_component.port_clk0 = "PORT_USED", + altpll_component.port_clk1 = "PORT_USED", + altpll_component.port_clk2 = "PORT_UNUSED", + altpll_component.port_clk3 = "PORT_UNUSED", + altpll_component.port_clk4 = "PORT_UNUSED", + altpll_component.port_clk5 = "PORT_UNUSED", + altpll_component.port_clkena0 = "PORT_UNUSED", + altpll_component.port_clkena1 = "PORT_UNUSED", + altpll_component.port_clkena2 = "PORT_UNUSED", + altpll_component.port_clkena3 = "PORT_UNUSED", + altpll_component.port_clkena4 = "PORT_UNUSED", + altpll_component.port_clkena5 = "PORT_UNUSED", + altpll_component.port_extclk0 = "PORT_UNUSED", + altpll_component.port_extclk1 = "PORT_UNUSED", + altpll_component.port_extclk2 = "PORT_UNUSED", + altpll_component.port_extclk3 = "PORT_UNUSED", + altpll_component.self_reset_on_loss_lock = "OFF", + altpll_component.width_clock = 5; + + +endmodule + +// ============================================================ +// CNX file retrieval info +// ============================================================ +// Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0" +// Retrieval info: PRIVATE: BANDWIDTH STRING "1.000" +// Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "1" +// Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz" +// Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low" +// Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1" +// Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0" +// Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0" +// Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0" +// Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "0" +// Retrieval info: PRIVATE: CNX_NO_COMPENSATE_RADIO STRING "0" +// Retrieval info: PRIVATE: CREATE_CLKBAD_CHECK STRING "0" +// Retrieval info: PRIVATE: CREATE_INCLK1_CHECK STRING "0" +// Retrieval info: PRIVATE: CUR_DEDICATED_CLK STRING "c0" +// Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "c0" +// Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "8" +// Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "9" +// Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "9" +// Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" +// Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "48.000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "96.000000" +// Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0" +// Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" +// Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "0" +// Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0" +// Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575" +// Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1" +// Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "27.000" +// Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz" +// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "100.000" +// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz" +// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III" +// Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1" +// Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "1" +// Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1" +// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available" +// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0" +// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg" +// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg" +// Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any" +// Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0" +// Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0" +// Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "16" +// Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "32" +// Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" +// Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "48.00000000" +// Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "96.00000000" +// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "0" +// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "0" +// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" +// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" +// Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "1" +// Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0" +// Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000" +// Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000" +// Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0" +// Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" +// Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg" +// Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0" +// Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "0" +// Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1" +// Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0" +// Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0" +// Retrieval info: PRIVATE: PLL_FBMIMIC_CHECK STRING "0" +// Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0" +// Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0" +// Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0" +// Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0" +// Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll_mist.mif" +// Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0" +// Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "1" +// Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0" +// Retrieval info: PRIVATE: SHORT_SCAN_RADIO STRING "0" +// Retrieval info: PRIVATE: SPREAD_FEATURE_ENABLED STRING "0" +// Retrieval info: PRIVATE: SPREAD_FREQ STRING "50.000" +// Retrieval info: PRIVATE: SPREAD_FREQ_UNIT STRING "KHz" +// Retrieval info: PRIVATE: SPREAD_PERCENT STRING "0.500" +// Retrieval info: PRIVATE: SPREAD_USE STRING "0" +// Retrieval info: PRIVATE: SRC_SYNCH_COMP_RADIO STRING "0" +// Retrieval info: PRIVATE: STICKY_CLK0 STRING "1" +// Retrieval info: PRIVATE: STICKY_CLK1 STRING "1" +// Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1" +// Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1" +// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" +// Retrieval info: PRIVATE: USE_CLK0 STRING "1" +// Retrieval info: PRIVATE: USE_CLK1 STRING "1" +// Retrieval info: PRIVATE: USE_CLKENA0 STRING "0" +// Retrieval info: PRIVATE: USE_CLKENA1 STRING "0" +// Retrieval info: PRIVATE: USE_MIL_SPEED_GRADE NUMERIC "0" +// Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0" +// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all +// Retrieval info: CONSTANT: BANDWIDTH_TYPE STRING "AUTO" +// Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "9" +// Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "16" +// Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" +// Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "9" +// Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "32" +// Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0" +// Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0" +// Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037" +// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III" +// Retrieval info: CONSTANT: LPM_TYPE STRING "altpll" +// Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL" +// Retrieval info: CONSTANT: PLL_TYPE STRING "AUTO" +// Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED" +// Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_USED" +// Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_PHASESTEP STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_PHASEUPDOWN STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_PLLENA STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANACLR STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANCLK STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANCLKENA STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANDATA STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANDATAOUT STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANDONE STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANREAD STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_SCANWRITE STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clk0 STRING "PORT_USED" +// Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED" +// Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED" +// Retrieval info: CONSTANT: SELF_RESET_ON_LOSS_LOCK STRING "OFF" +// Retrieval info: CONSTANT: WIDTH_CLOCK NUMERIC "5" +// Retrieval info: USED_PORT: @clk 0 0 5 0 OUTPUT_CLK_EXT VCC "@clk[4..0]" +// Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0" +// Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1" +// Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" +// Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked" +// Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0 +// Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0 +// Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0 +// Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1 +// Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0 +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.ppf TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist_bb.v FALSE +// Retrieval info: LIB_FILE: altera_mf +// Retrieval info: CBX_MODULE_PREFIX: ON diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/clut.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/clut.vhd new file mode 100644 index 00000000..c4034af7 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/clut.vhd @@ -0,0 +1,38 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity clut is +port ( + clk : in std_logic; + addr : in std_logic_vector(7 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of clut is + type rom is array(0 to 255) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"0C",X"0E",X"0C",X"0E",X"0D",X"0D",X"0C",X"0E",X"00",X"0E",X"0C",X"0E",X"01",X"0D",X"0C",X"0E", + X"0C",X"0D",X"0C",X"0E",X"0D",X"0D",X"0C",X"0E",X"00",X"0D",X"0C",X"0E",X"01",X"0D",X"0C",X"0E", + X"0E",X"0E",X"0E",X"0E",X"0D",X"0D",X"0E",X"0E",X"02",X"0E",X"0E",X"0E",X"01",X"0D",X"0E",X"0E", + X"0C",X"0D",X"0C",X"0E",X"0D",X"0D",X"0C",X"0E",X"00",X"0D",X"0C",X"0E",X"01",X"0D",X"0C",X"0E", + X"08",X"0E",X"08",X"0E",X"09",X"0D",X"08",X"0E",X"08",X"0E",X"08",X"0E",X"09",X"0D",X"08",X"0E", + X"0C",X"0D",X"0C",X"0E",X"0D",X"0D",X"0C",X"0E",X"00",X"0D",X"0C",X"0E",X"01",X"0D",X"0C",X"0E", + X"0A",X"0E",X"0A",X"0E",X"09",X"0D",X"0A",X"0E",X"0A",X"0E",X"0A",X"0E",X"09",X"0D",X"0A",X"0E", + X"0C",X"0D",X"0C",X"0E",X"0D",X"0D",X"0C",X"0E",X"00",X"0D",X"0C",X"0E",X"01",X"0D",X"0C",X"0E", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_flicky.bin b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_flicky.bin new file mode 100644 index 0000000000000000000000000000000000000000..0dab2ac7e7a3f5c3a618bccd3101931c34474a1b GIT binary patch literal 128 zcmYj|p%DNu3<8mi5!o@38Kbgewl8v5!G-YPR(4KDyE+zrxrFe395#Fymp+^YqBA-F KaPptiVF$lK$08vB literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_rom.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_rom.vhd new file mode 100644 index 00000000..74927ee6 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/dec_rom.vhd @@ -0,0 +1,30 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity dec_rom is +port ( + clk : in std_logic; + addr : in std_logic_vector(6 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of dec_rom is + type rom is array(0 to 127) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"08",X"88",X"00",X"80",X"A0",X"80",X"A8",X"88",X"80",X"00",X"A0",X"20",X"88",X"80",X"08",X"00", + X"A0",X"80",X"A8",X"88",X"28",X"08",X"20",X"00",X"28",X"08",X"20",X"00",X"A0",X"80",X"A8",X"88", + X"08",X"88",X"00",X"80",X"80",X"00",X"A0",X"20",X"80",X"00",X"A0",X"20",X"88",X"80",X"08",X"00", + X"28",X"08",X"20",X"00",X"28",X"08",X"20",X"00",X"28",X"08",X"20",X"00",X"88",X"80",X"08",X"00", + X"08",X"88",X"00",X"80",X"A8",X"88",X"28",X"08",X"A8",X"88",X"28",X"08",X"80",X"00",X"A0",X"20", + X"28",X"08",X"20",X"00",X"88",X"80",X"08",X"00",X"A8",X"88",X"28",X"08",X"88",X"80",X"08",X"00", + X"08",X"88",X"00",X"80",X"80",X"00",X"A0",X"20",X"A8",X"88",X"28",X"08",X"80",X"00",X"A0",X"20", + X"28",X"08",X"20",X"00",X"28",X"08",X"20",X"00",X"08",X"88",X"00",X"80",X"88",X"80",X"08",X"00"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/make.bat b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/make.bat new file mode 100644 index 00000000..17b26830 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/make.bat @@ -0,0 +1,19 @@ +copy /b epr5978a.116 + epr5979a.109 prg.bin +make_vhdl_prom prg.bin prg_rom.vhd + +copy /b epr-5855.117 + epr-5856.110 spr.bin +make_vhdl_prom spr.bin spr_rom.vhd + +make_vhdl_prom epr-5869.120 snd_rom.vhd + + +make_vhdl_prom dec_flicky.bin dec_rom.vhd + +make_vhdl_prom epr-5868.62 tile1.vhd + +make_vhdl_prom pr-5317.76 clut.vhd + +copy /b epr-5868.62 + epr-5867.61 + epr-5866.64 + epr-5865.63 + epr-5864.66 + epr-5863.65 tile.bin + +copy /b prg.bin + epr-5869.120 + spr.bin + tile.bin FLICKY.ROM +pause \ No newline at end of file diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/prg_rom.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/prg_rom.vhd new file mode 100644 index 00000000..7640fe6f --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/prg_rom.vhd @@ -0,0 +1,2070 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity prg_rom is +port ( + clk : in std_logic; + addr : in std_logic_vector(14 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of prg_rom is + type rom is array(0 to 32767) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"FB",X"E5",X"76",X"39",X"88",X"58",X"3F",X"3A",X"C6",X"48",X"6B",X"B3",X"88",X"2F",X"20",X"42", + X"55",X"53",X"54",X"59",X"20",X"2F",X"2F",X"20",X"46",X"4C",X"49",X"50",X"50",X"59",X"20",X"2F", + X"DC",X"23",X"CC",X"7A",X"20",X"53",X"45",X"47",X"41",X"20",X"31",X"39",X"38",X"34",X"2F",X"30", + X"35",X"2F",X"32",X"34",X"35",X"50",X"B7",X"69",X"4B",X"2D",X"3E",X"CD",X"60",X"AA",X"6D",X"F1", + X"AC",X"C5",X"0F",X"22",X"3F",X"D3",X"AC",X"AF",X"67",X"66",X"AF",X"F6",X"AF",X"28",X"89",X"17", + X"92",X"DA",X"E8",X"50",X"46",X"50",X"AF",X"0F",X"AF",X"0F",X"76",X"AF",X"80",X"89",X"1F",X"32", + X"DD",X"48",X"3F",X"D3",X"98",X"C3",X"D7",X"A8",X"8A",X"D3",X"AD",X"AF",X"B2",X"2C",X"48",X"C5", + X"64",X"D4",X"6D",X"56",X"0B",X"CD",X"FF",X"AB",X"6D",X"1D",X"0A",X"CD",X"9A",X"AA",X"6D",X"43", + X"AB",X"BE",X"8B",X"3A",X"88",X"48",X"3F",X"3A",X"89",X"48",X"4D",X"A3",X"AC",X"BA",X"D8",X"48", + X"07",X"CA",X"96",X"88",X"1F",X"DB",X"08",X"CB",X"DF",X"CA",X"7B",X"8D",X"6B",X"67",X"A0",X"CB", + X"4B",X"EF",X"6A",X"84",X"88",X"BA",X"D8",X"48",X"DE",X"2A",X"B0",X"A8",X"92",X"2E",X"48",X"C3", + X"C7",X"20",X"30",X"CB",X"E7",X"00",X"2F",X"12",X"78",X"48",X"76",X"8A",X"90",X"AE",X"B2",X"E7", + X"48",X"BC",X"DE",X"2B",X"90",X"29",X"3F",X"3A",X"E7",X"48",X"10",X"BC",X"4D",X"12",X"AB",X"17", + X"92",X"88",X"E8",X"CD",X"AB",X"AB",X"92",X"8B",X"E8",X"16",X"29",X"32",X"2D",X"48",X"B6",X"8A", + X"6B",X"C5",X"88",X"17",X"B2",X"52",X"48",X"3A",X"88",X"48",X"B2",X"2D",X"48",X"3A",X"89",X"48", + X"1F",X"32",X"47",X"48",X"92",X"8E",X"E8",X"CD",X"9A",X"AA",X"6D",X"3A",X"0B",X"EB",X"2D",X"89", + X"96",X"29",X"B2",X"28",X"40",X"C5",X"03",X"23",X"B2",X"2A",X"40",X"BA",X"08",X"48",X"EE",X"29", + X"20",X"25",X"21",X"47",X"E8",X"39",X"F8",X"48",X"36",X"28",X"29",X"2D",X"28",X"C5",X"B0",X"12", + X"0C",X"48",X"EE",X"29",X"80",X"20",X"92",X"29",X"40",X"76",X"00",X"3A",X"09",X"48",X"96",X"29", + X"32",X"50",X"E8",X"76",X"21",X"20",X"E8",X"36",X"28",X"39",X"09",X"48",X"29",X"68",X"28",X"C5", + X"B8",X"BA",X"0A",X"48",X"B2",X"21",X"40",X"29",X"00",X"48",X"31",X"09",X"40",X"3E",X"08",X"09", + X"68",X"28",X"C5",X"B0",X"12",X"2B",X"E8",X"32",X"A9",X"48",X"21",X"28",X"CC",X"39",X"29",X"44", + X"B6",X"28",X"21",X"A8",X"08",X"E5",X"B8",X"C5",X"8D",X"23",X"92",X"E7",X"40",X"27",X"96",X"28", + X"20",X"3E",X"12",X"28",X"E8",X"E6",X"29",X"00",X"3D",X"12",X"46",X"48",X"14",X"32",X"46",X"48", + X"EE",X"29",X"96",X"2D",X"A0",X"2A",X"96",X"A9",X"B2",X"3C",X"40",X"43",X"17",X"29",X"4D",X"0D", + X"27",X"12",X"3C",X"48",X"32",X"04",X"E8",X"CD",X"01",X"25",X"12",X"3B",X"E8",X"32",X"8B",X"48", + X"A1",X"28",X"43",X"19",X"08",X"46",X"21",X"28",X"09",X"E5",X"B8",X"C5",X"F9",X"24",X"96",X"29", + X"32",X"50",X"E8",X"76",X"CD",X"A9",X"6D",X"CD",X"03",X"24",X"CD",X"9C",X"0C",X"21",X"20",X"48", + X"B6",X"28",X"31",X"A9",X"40",X"09",X"AF",X"28",X"CD",X"30",X"4D",X"12",X"8A",X"C5",X"15",X"22", + X"21",X"28",X"28",X"22",X"0A",X"48",X"BF",X"32",X"04",X"48",X"32",X"4C",X"E8",X"12",X"18",X"48", + X"94",X"4F",X"EE",X"2B",X"DE",X"2B",X"A0",X"AB",X"96",X"29",X"B2",X"A4",X"40",X"F8",X"EE",X"B4", + X"0F",X"D6",X"18",X"10",X"08",X"FE",X"3E",X"D6",X"18",X"10",X"2A",X"FE",X"3E",X"4F",X"2E",X"28", + X"A1",X"16",X"9D",X"89",X"46",X"2B",X"E6",X"E9",X"A2",X"6A",X"48",X"BE",X"77",X"3A",X"97",X"48", + X"6D",X"91",X"24",X"2E",X"28",X"21",X"FE",X"9A",X"B2",X"B8",X"E8",X"D6",X"3F",X"10",X"0D",X"D6", + X"A7",X"B8",X"8C",X"F6",X"CF",X"B8",X"8D",X"0E",X"89",X"29",X"86",X"3B",X"D0",X"3A",X"BD",X"48", + X"99",X"C0",X"DC",X"29",X"38",X"88",X"65",X"B0",X"99",X"00",X"DC",X"29",X"38",X"88",X"65",X"B0", + X"31",X"C8",X"7C",X"09",X"98",X"28",X"CD",X"30",X"31",X"A8",X"7D",X"09",X"98",X"28",X"CD",X"30", + X"99",X"C0",X"DD",X"29",X"38",X"88",X"65",X"B0",X"B2",X"B2",X"E8",X"15",X"EF",X"2E",X"28",X"21", + X"F5",X"3E",X"92",X"35",X"48",X"27",X"80",X"2B",X"A1",X"0B",X"9E",X"89",X"D6",X"3A",X"A7",X"54", + X"92",X"77",X"DD",X"12",X"12",X"48",X"B5",X"2F",X"8F",X"2F",X"EF",X"2E",X"28",X"21",X"F6",X"9B", + X"92",X"35",X"48",X"27",X"80",X"2B",X"A1",X"AE",X"9C",X"89",X"31",X"30",X"7C",X"09",X"A8",X"28", + X"65",X"B0",X"A2",X"BA",X"E8",X"29",X"08",X"88",X"A9",X"22",X"43",X"48",X"81",X"70",X"29",X"22", + X"BA",X"48",X"4D",X"17",X"BE",X"C5",X"73",X"21",X"4D",X"75",X"AB",X"BA",X"E7",X"48",X"DE",X"2A", + X"80",X"AB",X"8E",X"80",X"81",X"7A",X"31",X"39",X"28",X"4B",X"4B",X"5B",X"2A",X"2E",X"18",X"39", + X"88",X"4C",X"A1",X"E2",X"91",X"BA",X"A4",X"48",X"AF",X"A8",X"A8",X"29",X"3A",X"B9",X"31",X"28", + X"EB",X"2E",X"20",X"50",X"8E",X"88",X"6D",X"9F",X"0B",X"16",X"30",X"32",X"C3",X"4E",X"B6",X"8A", + X"B2",X"C4",X"4E",X"BA",X"40",X"4E",X"4B",X"97",X"B2",X"C8",X"4E",X"17",X"B2",X"DA",X"4E",X"3A", + X"F3",X"4E",X"92",X"A0",X"E8",X"16",X"D7",X"32",X"11",X"48",X"B2",X"A4",X"E8",X"A7",X"A0",X"8D", + X"96",X"17",X"6B",X"38",X"0B",X"BA",X"1C",X"48",X"47",X"0E",X"08",X"29",X"52",X"3B",X"01",X"FE", + X"32",X"21",X"EC",X"16",X"29",X"32",X"08",X"4C",X"32",X"A9",X"E8",X"16",X"A9",X"32",X"1A",X"4C", + X"96",X"EF",X"B2",X"AD",X"40",X"BE",X"C7",X"3A",X"2E",X"48",X"3F",X"3A",X"0F",X"4C",X"B2",X"3D", + X"E8",X"12",X"47",X"48",X"D6",X"2A",X"20",X"22",X"BF",X"32",X"6C",X"48",X"CD",X"A3",X"08",X"EB", + X"81",X"2C",X"92",X"A4",X"40",X"27",X"80",X"B2",X"96",X"40",X"B2",X"21",X"43",X"3A",X"A9",X"4B", + X"21",X"10",X"28",X"22",X"2F",X"4B",X"21",X"00",X"29",X"22",X"27",X"4B",X"16",X"99",X"32",X"A8", + X"43",X"D5",X"A1",X"28",X"43",X"C5",X"93",X"32",X"5D",X"29",X"28",X"4B",X"4D",X"13",X"9A",X"C5", + X"92",X"6C",X"DD",X"21",X"68",X"4B",X"CD",X"12",X"7A",X"DD",X"21",X"E8",X"EB",X"CD",X"9A",X"7A", + X"96",X"21",X"FD",X"C5",X"CD",X"23",X"5D",X"FE",X"0D",X"F6",X"88",X"38",X"5E",X"AA",X"EB",X"48", + X"5D",X"7C",X"DD",X"46",X"2F",X"DD",X"66",X"20",X"B7",X"C5",X"7A",X"54",X"E6",X"29",X"DD",X"77", + X"88",X"D5",X"F5",X"2F",X"5D",X"FE",X"0D",X"0F",X"27",X"0F",X"5D",X"7F",X"18",X"29",X"79",X"B3", + X"DD",X"75",X"2B",X"DD",X"74",X"2C",X"DD",X"36",X"0D",X"28",X"12",X"30",X"E8",X"E6",X"D4",X"0F", + X"DE",X"2C",X"90",X"2A",X"96",X"2C",X"CD",X"4C",X"6E",X"2F",X"5D",X"4E",X"0D",X"B0",X"B0",X"2C", + X"DD",X"36",X"0D",X"29",X"21",X"9C",X"33",X"DD",X"75",X"29",X"DD",X"74",X"2A",X"CD",X"9B",X"32", + X"6B",X"70",X"0C",X"F6",X"88",X"A8",X"EE",X"BA",X"AC",X"48",X"AF",X"A8",X"E8",X"D5",X"D6",X"2D", + X"D6",X"36",X"30",X"E9",X"12",X"30",X"E8",X"14",X"D6",X"38",X"10",X"29",X"BF",X"E6",X"0C",X"0F", + X"47",X"0E",X"88",X"29",X"DE",X"3C",X"01",X"CE",X"A3",X"6E",X"C1",X"D5",X"D6",X"2D",X"7E",X"21", + X"8F",X"2F",X"EF",X"09",X"F6",X"DD",X"D7",X"8F",X"83",X"56",X"7D",X"77",X"08",X"23",X"F6",X"DD", + X"F7",X"3A",X"4B",X"FF",X"A0",X"2C",X"94",X"43",X"A3",X"2C",X"95",X"D5",X"F7",X"23",X"5D",X"3E", + X"1C",X"88",X"6B",X"57",X"A0",X"A8",X"7D",X"CB",X"28",X"4E",X"7D",X"CB",X"1C",X"4E",X"83",X"56", + X"5D",X"7F",X"9C",X"D5",X"B6",X"21",X"69",X"D5",X"B6",X"32",X"88",X"D5",X"B6",X"24",X"88",X"C5", + X"9B",X"BA",X"4B",X"F8",X"2C",X"CD",X"9A",X"C3",X"6D",X"F5",X"6C",X"F1",X"B4",X"D6",X"20",X"DA", + X"0A",X"2B",X"5D",X"65",X"96",X"28",X"FD",X"C5",X"ED",X"23",X"5D",X"C3",X"88",X"F6",X"80",X"23", + X"81",X"F3",X"2C",X"E5",X"7D",X"46",X"2B",X"DD",X"C6",X"8C",X"61",X"F1",X"B4",X"D6",X"08",X"20", + X"8A",X"BE",X"A9",X"F6",X"BE",X"28",X"7F",X"D5",X"E9",X"17",X"B2",X"50",X"48",X"BA",X"88",X"48", + X"46",X"89",X"4A",X"8C",X"2D",X"12",X"04",X"48",X"8E",X"09",X"07",X"20",X"2A",X"2E",X"AA",X"50", + X"4D",X"BD",X"CD",X"BA",X"A4",X"48",X"AF",X"A8",X"9A",X"29",X"6A",X"38",X"31",X"5C",X"60",X"C5", + X"FE",X"AA",X"6D",X"88",X"0B",X"CD",X"28",X"AB",X"4B",X"8C",X"2D",X"16",X"29",X"32",X"36",X"48", + X"26",X"2C",X"92",X"28",X"48",X"66",X"08",X"28",X"BF",X"45",X"A1",X"8F",X"98",X"19",X"5A",X"C2", + X"B2",X"89",X"E8",X"E6",X"29",X"00",X"2B",X"21",X"B6",X"98",X"6B",X"68",X"80",X"8E",X"6D",X"5E", + X"AA",X"43",X"47",X"2C",X"4D",X"C5",X"AA",X"41",X"6D",X"F8",X"DE",X"2B",X"90",X"2E",X"4D",X"28", + X"0B",X"EB",X"D5",X"8C",X"6D",X"14",X"0D",X"CD",X"28",X"AB",X"6D",X"14",X"0D",X"CD",X"28",X"AB", + X"69",X"0D",X"A0",X"96",X"92",X"28",X"40",X"76",X"00",X"3A",X"08",X"48",X"B1",X"28",X"50",X"F3", + X"BF",X"32",X"EB",X"48",X"21",X"28",X"EB",X"39",X"20",X"28",X"CB",X"56",X"20",X"21",X"14",X"D6", + X"28",X"A8",X"A9",X"99",X"6B",X"32",X"0D",X"65",X"5D",X"61",X"B2",X"4B",X"40",X"19",X"B9",X"2D", + X"FD",X"04",X"04",X"04",X"5E",X"04",X"7E",X"C3",X"C1",X"12",X"EB",X"48",X"14",X"D6",X"20",X"00", + X"8B",X"19",X"28",X"28",X"5D",X"99",X"5D",X"65",X"E9",X"43",X"9A",X"2D",X"92",X"51",X"40",X"27", + X"CA",X"E4",X"2D",X"CD",X"F6",X"23",X"CD",X"5F",X"0B",X"CD",X"1D",X"6D",X"CD",X"28",X"0B",X"CD", + X"B4",X"66",X"3F",X"3A",X"D1",X"48",X"4D",X"F1",X"8C",X"43",X"7A",X"28",X"92",X"A4",X"40",X"27", + X"CA",X"DF",X"2D",X"12",X"13",X"48",X"D6",X"3C",X"DA",X"E9",X"2F",X"12",X"14",X"48",X"A7",X"CA", + X"86",X"2E",X"DE",X"A8",X"A0",X"32",X"A1",X"35",X"1E",X"19",X"1A",X"C3",X"4D",X"5E",X"8A",X"8E", + X"09",X"21",X"03",X"3E",X"39",X"12",X"C3",X"CD",X"D8",X"22",X"29",X"28",X"38",X"CD",X"A2",X"3F", + X"A1",X"2F",X"1E",X"19",X"5A",X"C2",X"4D",X"5E",X"8A",X"BA",X"BC",X"48",X"A1",X"64",X"E2",X"C5", + X"EF",X"25",X"12",X"B5",X"E8",X"E6",X"2B",X"4F",X"2E",X"28",X"21",X"01",X"3E",X"09",X"5E",X"12", + X"BD",X"48",X"EE",X"34",X"07",X"8F",X"AF",X"5F",X"80",X"20",X"6E",X"B8",X"C7",X"2E",X"89",X"2A", + X"42",X"C2",X"53",X"E6",X"F0",X"0F",X"0F",X"0F",X"0F",X"EE",X"30",X"47",X"26",X"21",X"22",X"E4", + X"E2",X"FB",X"EE",X"27",X"6E",X"B8",X"C7",X"2A",X"EE",X"C2",X"96",X"21",X"B2",X"F9",X"E2",X"CB", + X"6A",X"CD",X"A2",X"3F",X"EB",X"06",X"2E",X"12",X"47",X"48",X"D6",X"2A",X"20",X"ED",X"12",X"6C", + X"48",X"27",X"4A",X"E9",X"8F",X"BA",X"AA",X"48",X"DE",X"2F",X"5A",X"E9",X"8F",X"28",X"EC",X"BA", + X"6C",X"48",X"76",X"8A",X"6A",X"C1",X"2F",X"16",X"2A",X"32",X"6C",X"48",X"6D",X"3A",X"0A",X"DD", + X"ED",X"D5",X"A1",X"28",X"4C",X"C5",X"A2",X"6C",X"5D",X"C3",X"88",X"96",X"5D",X"29",X"C8",X"4B", + X"6D",X"A2",X"6C",X"DD",X"6B",X"88",X"96",X"DD",X"81",X"88",X"ED",X"CD",X"02",X"CC",X"7D",X"CB", + X"88",X"96",X"5D",X"29",X"80",X"4D",X"4D",X"A2",X"CC",X"D5",X"4B",X"28",X"36",X"D5",X"E9",X"C5", + X"D3",X"A9",X"81",X"1C",X"C2",X"CD",X"EC",X"F0",X"4B",X"C1",X"2F",X"D6",X"0E",X"DA",X"61",X"8F", + X"6B",X"FA",X"88",X"BA",X"9B",X"48",X"DE",X"D7",X"6A",X"E9",X"8F",X"BA",X"40",X"4D",X"EE",X"08", + X"4A",X"C1",X"2F",X"21",X"28",X"4B",X"89",X"80",X"28",X"1E",X"08",X"CB",X"F6",X"EA",X"61",X"8F", + X"15",X"A8",X"8C",X"89",X"6B",X"F3",X"8E",X"BA",X"96",X"48",X"AF",X"42",X"C1",X"2F",X"96",X"D7", + X"92",X"97",X"E8",X"12",X"47",X"48",X"46",X"89",X"A0",X"AA",X"8E",X"8C",X"6D",X"88",X"0B",X"38", + X"73",X"43",X"D2",X"28",X"92",X"A3",X"48",X"C5",X"CD",X"E9",X"96",X"06",X"4D",X"BD",X"CD",X"BA", + X"04",X"48",X"07",X"EA",X"05",X"8F",X"B6",X"8F",X"92",X"E5",X"E8",X"21",X"64",X"61",X"B2",X"99", + X"48",X"C5",X"4F",X"25",X"A1",X"F8",X"61",X"BA",X"98",X"48",X"4D",X"4F",X"AD",X"29",X"D6",X"3B", + X"99",X"EC",X"C1",X"CD",X"FE",X"AA",X"81",X"08",X"3B",X"39",X"40",X"61",X"6D",X"5E",X"0A",X"21", + X"0D",X"3B",X"31",X"FC",X"61",X"C5",X"5E",X"22",X"A1",X"10",X"98",X"19",X"EC",X"C2",X"4D",X"5E", + X"0A",X"0E",X"2D",X"12",X"39",X"48",X"07",X"20",X"3A",X"12",X"38",X"48",X"46",X"D0",X"AF",X"0F", + X"07",X"8F",X"AF",X"8E",X"08",X"F6",X"0A",X"B8",X"0A",X"CF",X"05",X"0E",X"08",X"C3",X"21",X"29", + X"71",X"3E",X"09",X"ED",X"4E",X"23",X"6E",X"CD",X"A2",X"3F",X"E9",X"21",X"EE",X"3B",X"09",X"56", + X"A3",X"6E",X"C7",X"0E",X"8A",X"8E",X"89",X"19",X"EA",X"C2",X"4D",X"52",X"8A",X"29",X"08",X"28", + X"22",X"38",X"E8",X"12",X"E8",X"48",X"E6",X"24",X"0F",X"0F",X"4F",X"2E",X"28",X"21",X"2E",X"B8", + X"01",X"FE",X"B2",X"E5",X"40",X"7E",X"92",X"38",X"40",X"F6",X"0C",X"B8",X"66",X"C5",X"76",X"23", + X"CD",X"5F",X"0B",X"CD",X"9A",X"22",X"16",X"D7",X"32",X"E5",X"E8",X"CD",X"F3",X"24",X"EB",X"86", + X"09",X"BA",X"E8",X"48",X"AF",X"28",X"09",X"7E",X"3F",X"3A",X"E8",X"48",X"92",X"28",X"40",X"66", + X"29",X"CA",X"0C",X"2D",X"CD",X"99",X"0B",X"21",X"ED",X"48",X"CB",X"6E",X"23",X"EA",X"EF",X"2F", + X"B5",X"FE",X"DE",X"C8",X"7A",X"2F",X"88",X"BA",X"58",X"48",X"AF",X"A8",X"89",X"C5",X"47",X"23", + X"CD",X"5E",X"0A",X"EB",X"D3",X"2F",X"12",X"E7",X"E8",X"D6",X"29",X"20",X"3D",X"21",X"AA",X"38", + X"31",X"3E",X"E2",X"C5",X"56",X"22",X"A1",X"04",X"18",X"19",X"14",X"C1",X"4D",X"5E",X"8A",X"43", + X"D3",X"2F",X"21",X"0A",X"38",X"39",X"FE",X"C4",X"CD",X"5E",X"0A",X"21",X"8C",X"38",X"39",X"7C", + X"E4",X"C5",X"56",X"22",X"6B",X"D3",X"0F",X"3D",X"D6",X"F6",X"60",X"52",X"0F",X"20",X"31",X"3E", + X"C2",X"21",X"AA",X"38",X"CD",X"C5",X"0A",X"21",X"AA",X"38",X"39",X"5E",X"C4",X"CD",X"C5",X"22", + X"31",X"1C",X"E1",X"29",X"84",X"38",X"4D",X"C5",X"8A",X"29",X"84",X"38",X"31",X"7C",X"E4",X"C5", + X"C5",X"22",X"21",X"72",X"38",X"39",X"0C",X"C2",X"CD",X"C5",X"0A",X"BF",X"32",X"4E",X"E8",X"12", + X"4D",X"48",X"CE",X"29",X"B2",X"4D",X"48",X"BA",X"D8",X"48",X"AF",X"C2",X"AC",X"2D",X"3F",X"D3", + X"08",X"07",X"92",X"8E",X"E8",X"CB",X"C7",X"6F",X"4A",X"D2",X"28",X"12",X"78",X"48",X"76",X"89", + X"4A",X"24",X"8D",X"C3",X"C0",X"42",X"D2",X"28",X"6B",X"24",X"8D",X"D5",X"ED",X"29",X"88",X"4B", + X"1F",X"F5",X"45",X"DD",X"41",X"E5",X"7D",X"4E",X"2D",X"2E",X"28",X"CB",X"89",X"21",X"40",X"A8", + X"92",X"6C",X"48",X"27",X"80",X"2B",X"A1",X"1C",X"A8",X"89",X"46",X"2B",X"E6",X"E9",X"21",X"7B", + X"08",X"ED",X"61",X"12",X"6C",X"48",X"07",X"CC",X"9B",X"BA",X"41",X"29",X"20",X"88",X"A9",X"F1", + X"94",X"F6",X"9B",X"28",X"6C",X"D5",X"E9",X"C1",X"E5",X"72",X"2E",X"20",X"A3",X"21",X"A3",X"21", + X"03",X"A9",X"03",X"A9",X"03",X"A9",X"03",X"A9",X"09",X"A9",X"52",X"FA",X"8B",X"FA",X"A2",X"FA", + X"31",X"72",X"58",X"72",X"47",X"72",X"76",X"72",X"A6",X"73",X"BD",X"73",X"B7",X"73",X"96",X"46", + X"7D",X"77",X"09",X"C9",X"E9",X"A8",X"E9",X"A8",X"C0",X"A8",X"E9",X"A8",X"E9",X"A8",X"E9",X"A8", + X"49",X"20",X"49",X"20",X"69",X"20",X"49",X"20",X"32",X"20",X"07",X"BC",X"07",X"BC",X"07",X"BC", + X"A7",X"94",X"A7",X"94",X"6F",X"C0",X"33",X"C0",X"E9",X"A8",X"1F",X"32",X"0A",X"48",X"4B",X"19", + X"C0",X"C5",X"A2",X"6C",X"5D",X"C3",X"88",X"96",X"49",X"C5",X"1D",X"22",X"A1",X"E8",X"88",X"2A", + X"2F",X"4C",X"B6",X"C4",X"92",X"A9",X"EC",X"BF",X"7D",X"77",X"0D",X"21",X"1C",X"95",X"82",X"8B", + X"4C",X"29",X"94",X"BC",X"A2",X"29",X"4C",X"C1",X"A1",X"A8",X"89",X"D5",X"F5",X"2F",X"5D",X"7C", + X"08",X"16",X"64",X"DD",X"D7",X"A9",X"81",X"C1",X"15",X"DD",X"D5",X"89",X"7D",X"74",X"2A",X"21", + X"5C",X"B3",X"5D",X"7D",X"0B",X"D5",X"F4",X"2C",X"49",X"BE",X"47",X"3A",X"89",X"4C",X"A1",X"A8", + X"2A",X"22",X"2F",X"4C",X"16",X"C6",X"32",X"3A",X"EC",X"BF",X"32",X"24",X"EC",X"32",X"3F",X"4C", + X"96",X"99",X"B2",X"28",X"44",X"BE",X"09",X"3A",X"4D",X"48",X"49",X"43",X"FD",X"6C",X"92",X"28", + X"E8",X"E6",X"57",X"32",X"28",X"48",X"12",X"A4",X"E8",X"A7",X"00",X"2E",X"CD",X"DB",X"0C",X"EB", + X"A5",X"21",X"92",X"2C",X"40",X"66",X"8C",X"F6",X"8C",X"C2",X"A5",X"21",X"A1",X"2A",X"40",X"BA", + X"29",X"48",X"E6",X"29",X"00",X"2B",X"21",X"2B",X"E8",X"35",X"EA",X"85",X"09",X"12",X"28",X"48", + X"EE",X"29",X"A0",X"3D",X"96",X"0F",X"4D",X"BD",X"4D",X"29",X"02",X"38",X"31",X"5E",X"E4",X"C5", + X"FE",X"22",X"2E",X"21",X"CD",X"28",X"0B",X"38",X"D3",X"CD",X"CC",X"24",X"CD",X"DE",X"0B",X"CD", + X"57",X"23",X"4D",X"1D",X"8A",X"C5",X"92",X"22",X"A1",X"47",X"40",X"BA",X"09",X"48",X"EE",X"29", + X"00",X"2B",X"21",X"5A",X"E8",X"CD",X"84",X"FC",X"CD",X"35",X"6D",X"12",X"29",X"48",X"E6",X"2A", + X"4A",X"FA",X"08",X"C5",X"E4",X"21",X"4A",X"FA",X"08",X"0E",X"09",X"98",X"0A",X"0E",X"0C",X"C5", + X"28",X"23",X"38",X"D3",X"CD",X"35",X"6D",X"16",X"29",X"32",X"D8",X"48",X"CD",X"DE",X"0B",X"CD", + X"57",X"23",X"92",X"29",X"40",X"66",X"0A",X"C2",X"A6",X"29",X"4D",X"C4",X"89",X"C2",X"A6",X"29", + X"21",X"20",X"E8",X"39",X"A8",X"48",X"0E",X"68",X"CD",X"81",X"0D",X"21",X"28",X"4B",X"39",X"28", + X"C6",X"8E",X"08",X"C5",X"A1",X"25",X"4D",X"AA",X"8C",X"43",X"A6",X"29",X"92",X"29",X"40",X"66", + X"29",X"12",X"2A",X"48",X"20",X"2B",X"12",X"2B",X"E8",X"A7",X"C9",X"12",X"28",X"48",X"E6",X"29", + X"80",X"2E",X"4D",X"79",X"AA",X"43",X"9C",X"22",X"A1",X"BE",X"9E",X"19",X"52",X"C6",X"4D",X"5E", + X"0A",X"CD",X"7B",X"AC",X"AE",X"A9",X"81",X"CA",X"38",X"39",X"08",X"60",X"6D",X"4C",X"0A",X"12", + X"89",X"48",X"EE",X"2A",X"A0",X"34",X"92",X"28",X"48",X"66",X"89",X"A8",X"8E",X"BA",X"8D",X"48", + X"07",X"20",X"0F",X"39",X"24",X"60",X"81",X"EA",X"38",X"CD",X"EC",X"AA",X"6D",X"BA",X"18",X"EB", + X"C1",X"30",X"A1",X"6E",X"98",X"19",X"84",X"C0",X"4D",X"4C",X"AA",X"C5",X"BA",X"30",X"6B",X"70", + X"18",X"21",X"4E",X"98",X"99",X"60",X"C6",X"EB",X"FE",X"AA",X"EF",X"2E",X"28",X"09",X"F6",X"C9", + X"3F",X"53",X"BA",X"BE",X"2F",X"53",X"BA",X"BE",X"8F",X"53",X"BA",X"17",X"7B",X"33",X"96",X"47", + X"5B",X"BB",X"1F",X"FB",X"1B",X"16",X"2F",X"FB",X"1B",X"C9",X"81",X"C7",X"E8",X"36",X"2C",X"D3", + X"F6",X"FE",X"AF",X"28",X"72",X"73",X"49",X"29",X"88",X"48",X"31",X"29",X"48",X"09",X"50",X"27", + X"96",X"88",X"65",X"B0",X"69",X"21",X"28",X"40",X"B8",X"8B",X"81",X"88",X"C0",X"29",X"D7",X"8E", + X"B6",X"28",X"55",X"5C",X"33",X"E5",X"B8",X"C1",X"A1",X"58",X"66",X"BA",X"D8",X"48",X"4D",X"B5", + X"0B",X"F5",X"F0",X"D6",X"30",X"00",X"2D",X"70",X"83",X"36",X"08",X"03",X"51",X"23",X"83",X"77", + X"A3",X"3E",X"A8",X"C1",X"66",X"2B",X"D6",X"1A",X"A3",X"1B",X"AF",X"BE",X"A8",X"A8",X"8A",X"BE", + X"09",X"3A",X"9B",X"38",X"F1",X"C9",X"AE",X"A8",X"CE",X"23",X"F6",X"3A",X"83",X"3B",X"07",X"00", + X"8F",X"F6",X"C8",X"BE",X"A8",X"38",X"89",X"F9",X"32",X"1B",X"30",X"C6",X"49",X"4E",X"96",X"A8", + X"9A",X"3B",X"B6",X"88",X"9A",X"3B",X"98",X"56",X"69",X"F5",X"45",X"21",X"28",X"80",X"B8",X"8D", + X"FD",X"65",X"A1",X"28",X"00",X"AB",X"D5",X"34",X"A0",X"D3",X"E9",X"71",X"49",X"19",X"08",X"4B", + X"21",X"71",X"31",X"56",X"2E",X"28",X"23",X"4E",X"23",X"E5",X"66",X"41",X"0E",X"2D",X"C5",X"B0", + X"06",X"32",X"C3",X"6A",X"33",X"3E",X"08",X"E5",X"B8",X"61",X"A3",X"BD",X"A0",X"C1",X"26",X"A8", + X"BF",X"21",X"2D",X"4B",X"39",X"A8",X"28",X"77",X"14",X"19",X"38",X"D3",X"C9",X"F5",X"E6",X"D8", + X"07",X"8F",X"07",X"8F",X"6E",X"B8",X"67",X"71",X"EE",X"27",X"6E",X"B8",X"49",X"07",X"C7",X"2E", + X"28",X"29",X"54",X"66",X"09",X"56",X"23",X"66",X"47",X"E5",X"DD",X"E1",X"C9",X"21",X"2A",X"48", + X"92",X"29",X"40",X"66",X"09",X"A8",X"0B",X"29",X"0B",X"48",X"D6",X"BD",X"06",X"2F",X"A1",X"4C", + X"C6",X"A7",X"39",X"A8",X"28",X"00",X"2C",X"39",X"28",X"27",X"15",X"73",X"23",X"72",X"23",X"0D", + X"A0",X"C7",X"49",X"BA",X"08",X"48",X"EE",X"29",X"80",X"2B",X"96",X"29",X"49",X"BA",X"0C",X"48", + X"E6",X"24",X"0F",X"0F",X"21",X"8B",X"38",X"EB",X"5A",X"22",X"12",X"78",X"E8",X"15",X"6F",X"E6", + X"8F",X"F6",X"8F",X"F8",X"26",X"28",X"A0",X"2C",X"EE",X"D8",X"26",X"21",X"B8",X"3A",X"58",X"48", + X"C9",X"12",X"78",X"48",X"D6",X"2A",X"21",X"BB",X"38",X"10",X"2B",X"21",X"12",X"38",X"39",X"4A", + X"E6",X"C5",X"56",X"22",X"6B",X"80",X"8A",X"29",X"DA",X"38",X"31",X"24",X"E2",X"BA",X"58",X"48", + X"D6",X"29",X"C8",X"21",X"46",X"38",X"C9",X"21",X"67",X"48",X"36",X"20",X"D3",X"76",X"56",X"A7", + X"A0",X"D2",X"49",X"29",X"63",X"29",X"92",X"29",X"40",X"66",X"09",X"A8",X"0A",X"E5",X"64",X"2A", + X"D4",X"C7",X"22",X"E1",X"E8",X"C9",X"21",X"28",X"E9",X"39",X"29",X"49",X"36",X"28",X"29",X"D7", + X"89",X"E5",X"B8",X"C1",X"92",X"28",X"48",X"66",X"89",X"A8",X"8C",X"BA",X"B1",X"48",X"49",X"BA", + X"29",X"48",X"6B",X"6F",X"A0",X"A8",X"46",X"08",X"80",X"8C",X"1F",X"DB",X"2C",X"C9",X"1F",X"DB", + X"88",X"C1",X"92",X"29",X"48",X"E6",X"89",X"3A",X"89",X"48",X"49",X"BA",X"C5",X"48",X"EE",X"F7", + X"CF",X"12",X"29",X"48",X"46",X"08",X"F0",X"20",X"0A",X"12",X"29",X"48",X"46",X"89",X"F0",X"00", + X"8A",X"76",X"08",X"53",X"B9",X"3A",X"C5",X"48",X"49",X"3E",X"80",X"2B",X"B6",X"29",X"A3",X"BD", + X"80",X"57",X"69",X"21",X"D0",X"66",X"AE",X"88",X"B2",X"A8",X"E8",X"EE",X"29",X"27",X"CF",X"E6", + X"50",X"8F",X"07",X"8F",X"07",X"C5",X"0A",X"30",X"D0",X"66",X"AF",X"43",X"0A",X"30",X"B6",X"28", + X"83",X"36",X"28",X"23",X"8D",X"EA",X"46",X"AC",X"69",X"21",X"28",X"78",X"99",X"89",X"D8",X"36", + X"88",X"09",X"77",X"29",X"CD",X"30",X"A1",X"5E",X"98",X"19",X"88",X"52",X"21",X"28",X"8A",X"E5", + X"10",X"21",X"FE",X"98",X"99",X"88",X"DC",X"29",X"28",X"8A",X"65",X"B0",X"81",X"8C",X"DB",X"36", + X"88",X"29",X"8C",X"55",X"B6",X"28",X"96",X"D7",X"B2",X"E5",X"48",X"C1",X"92",X"ED",X"48",X"76", + X"38",X"FB",X"19",X"C9",X"81",X"88",X"E0",X"2E",X"20",X"0E",X"1C",X"1E",X"28",X"16",X"28",X"77", + X"A3",X"7B",X"A3",X"0D",X"A0",X"D1",X"26",X"A8",X"05",X"28",X"54",X"C1",X"A1",X"5E",X"64",X"0E", + X"09",X"CD",X"D9",X"AC",X"81",X"DC",X"C4",X"2E",X"0B",X"36",X"20",X"23",X"96",X"88",X"83",X"2D", + X"6A",X"51",X"AC",X"C1",X"36",X"34",X"21",X"B7",X"88",X"3E",X"89",X"2B",X"B6",X"20",X"01",X"1D", + X"80",X"57",X"69",X"BF",X"92",X"9B",X"E8",X"12",X"08",X"48",X"76",X"38",X"A0",X"8B",X"4E",X"89", + X"A7",X"3A",X"88",X"48",X"92",X"30",X"40",X"BC",X"B2",X"30",X"40",X"17",X"B2",X"27",X"40",X"C5", + X"AD",X"AF",X"21",X"38",X"E8",X"39",X"39",X"48",X"36",X"28",X"29",X"2B",X"28",X"C5",X"B0",X"CD", + X"A9",X"25",X"A1",X"28",X"08",X"2A",X"9A",X"48",X"49",X"D5",X"ED",X"BE",X"08",X"75",X"4D",X"65", + X"0B",X"DD",X"56",X"2D",X"2F",X"4F",X"2E",X"28",X"12",X"E7",X"E8",X"E6",X"29",X"00",X"2E",X"21", + X"63",X"25",X"6B",X"7C",X"8D",X"29",X"73",X"25",X"01",X"65",X"92",X"3C",X"40",X"DF",X"A6",X"38", + X"CD",X"79",X"6C",X"E9",X"09",X"56",X"CB",X"2F",X"2E",X"28",X"30",X"29",X"2C",X"DD",X"77",X"2F", + X"5D",X"78",X"88",X"2B",X"D6",X"D5",X"F7",X"21",X"5D",X"3E",X"08",X"98",X"5D",X"3E",X"9A",X"28", + X"CD",X"6D",X"17",X"CD",X"9B",X"32",X"F1",X"14",X"D6",X"20",X"10",X"99",X"12",X"20",X"E8",X"D6", + X"0A",X"38",X"8F",X"BA",X"08",X"48",X"EE",X"29",X"A0",X"20",X"92",X"3B",X"40",X"76",X"19",X"3A", + X"3B",X"48",X"21",X"28",X"EB",X"12",X"3B",X"48",X"29",X"A8",X"28",X"1E",X"08",X"0F",X"30",X"2A", + X"4B",X"B6",X"01",X"9D",X"A0",X"DF",X"5D",X"61",X"49",X"9A",X"66",X"7F",X"D0",X"1A",X"A3",X"1B", + X"0D",X"20",X"F6",X"C9",X"12",X"BE",X"E8",X"CD",X"6B",X"37",X"12",X"BE",X"E8",X"14",X"32",X"BE", + X"40",X"C1",X"06",X"20",X"6B",X"41",X"8D",X"8E",X"89",X"4F",X"EE",X"D8",X"80",X"22",X"07",X"8F", + X"0F",X"0F",X"EE",X"B8",X"77",X"23",X"71",X"03",X"23",X"23",X"50",X"E6",X"0F",X"EE",X"30",X"77", + X"A3",X"79",X"49",X"38",X"40",X"A8",X"30",X"B8",X"A0",X"68",X"14",X"78",X"10",X"E8",X"14",X"F8", + X"A2",X"F0",X"B0",X"68",X"20",X"B0",X"58",X"68",X"88",X"68",X"90",X"48",X"20",X"50",X"7C",X"58", + X"28",X"58",X"30",X"28",X"B0",X"28",X"E0",X"28",X"38",X"E0",X"D8",X"E8",X"10",X"10",X"D8",X"88", + X"B0",X"08",X"A8",X"A0",X"48",X"E8",X"88",X"F8",X"18",X"F0",X"84",X"10",X"48",X"40",X"18",X"08", + X"F0",X"C8",X"10",X"A8",X"F8",X"7C",X"A0",X"78",X"30",X"10",X"F8",X"10",X"28",X"40",X"A0",X"50", + X"90",X"50",X"A8",X"A0",X"18",X"C8",X"58",X"98",X"90",X"C8",X"A8",X"F0",X"88",X"D0",X"90",X"00", + X"B8",X"48",X"C0",X"20",X"E8",X"B8",X"10",X"68",X"80",X"68",X"D0",X"08",X"F8",X"08",X"28",X"48", + X"00",X"58",X"B0",X"D8",X"20",X"30",X"20",X"B0",X"58",X"58",X"58",X"D8",X"88",X"98",X"90",X"08", + X"30",X"20",X"90",X"B0",X"B8",X"58",X"B8",X"B8",X"E8",X"B8",X"F0",X"08",X"D8",X"08",X"10",X"58", + X"58",X"10",X"A8",X"08",X"38",X"D8",X"34",X"30",X"34",X"08",X"78",X"C8",X"50",X"80",X"A0",X"48", + X"F0",X"50",X"00",X"A8",X"B8",X"F8",X"B8",X"D8",X"80",X"40",X"B0",X"30",X"C0",X"E0",X"F8",X"10", + X"40",X"58",X"80",X"A8",X"10",X"98",X"98",X"A0",X"40",X"E0",X"B8",X"00",X"B8",X"10",X"10",X"60", + X"E8",X"D8",X"38",X"A0",X"90",X"A8",X"18",X"78",X"E8",X"48",X"D8",X"18",X"D0",X"70",X"20",X"00", + X"E8",X"48",X"80",X"B0",X"B0",X"C8",X"58",X"E8",X"00",X"08",X"58",X"00",X"80",X"48",X"78",X"40", + X"A0",X"D8",X"F0",X"20",X"E0",X"30",X"20",X"A8",X"B0",X"70",X"08",X"08",X"E0",X"80",X"08",X"C8", + X"30",X"40",X"80",X"C8",X"18",X"48",X"18",X"88",X"60",X"D8",X"48",X"D8",X"50",X"08",X"40",X"10", + X"E8",X"98",X"F0",X"A0",X"D8",X"70",X"A0",X"60",X"48",X"E0",X"1C",X"10",X"1C",X"98",X"A0",X"98", + X"E8",X"50",X"78",X"90",X"00",X"C8",X"98",X"D8",X"60",X"08",X"20",X"10",X"60",X"48",X"98",X"58", + X"A8",X"28",X"E8",X"28",X"78",X"A0",X"48",X"60",X"28",X"70",X"F8",X"08",X"68",X"80",X"00",X"90", + X"20",X"50",X"68",X"30",X"40",X"60",X"18",X"78",X"88",X"78",X"92",X"F8",X"68",X"80",X"92",X"C8", + X"28",X"C0",X"E8",X"30",X"30",X"B8",X"78",X"70",X"58",X"08",X"80",X"88",X"E8",X"40",X"18",X"40", + X"60",X"D8",X"60",X"E8",X"38",X"78",X"92",X"08",X"68",X"08",X"88",X"98",X"92",X"28",X"18",X"28", + X"E8",X"28",X"A0",X"28",X"A0",X"B8",X"00",X"60",X"58",X"18",X"E8",X"18",X"10",X"88",X"40",X"D8", + X"20",X"C0",X"A8",X"38",X"20",X"B8",X"70",X"B0",X"90",X"E8",X"68",X"F0",X"98",X"10",X"18",X"98", + X"78",X"40",X"B0",X"24",X"58",X"A8",X"A0",X"B8",X"E8",X"08",X"28",X"08",X"78",X"40",X"E8",X"50", + X"80",X"C4",X"78",X"B0",X"18",X"30",X"50",X"78",X"78",X"B0",X"90",X"80",X"78",X"40",X"18",X"40", + X"B0",X"C0",X"F8",X"28",X"E8",X"60",X"E8",X"E8",X"B8",X"E8",X"90",X"0C",X"D8",X"80",X"90",X"98", + X"10",X"48",X"40",X"A8",X"48",X"A8",X"A8",X"70",X"B0",X"0C",X"68",X"0C",X"A8",X"98",X"B0",X"D8", + X"48",X"D8",X"00",X"28",X"B8",X"28",X"00",X"B0",X"B0",X"60",X"28",X"E8",X"78",X"90",X"78",X"58", + X"90",X"50",X"20",X"28",X"78",X"A8",X"88",X"68",X"78",X"E8",X"30",X"08",X"A0",X"88",X"30",X"40", + X"58",X"50",X"80",X"B0",X"98",X"70",X"D8",X"08",X"D8",X"80",X"D8",X"70",X"20",X"08",X"20",X"80", + X"A0",X"08",X"18",X"68",X"18",X"68",X"70",X"68",X"90",X"EC",X"58",X"8C",X"58",X"48",X"18",X"48", + X"B0",X"40",X"78",X"38",X"30",X"B0",X"F8",X"78",X"30",X"E8",X"48",X"F0",X"F8",X"90",X"F8",X"58", + X"B0",X"D0",X"50",X"B0",X"10",X"B0",X"50",X"08",X"68",X"08",X"70",X"08",X"A0",X"48",X"10",X"C8", + X"70",X"F0",X"30",X"08",X"60",X"08",X"10",X"4C",X"B0",X"DC",X"80",X"04",X"38",X"04",X"10",X"A4", + X"88",X"4C",X"B8",X"A8",X"30",X"60",X"00",X"E8",X"68",X"08",X"18",X"88",X"68",X"90",X"00",X"C8", + X"38",X"08",X"E0",X"28",X"3C",X"BC",X"FC",X"E8",X"3C",X"F8",X"0C",X"10",X"0C",X"20",X"3C",X"C4", + X"7C",X"C0",X"34",X"2E",X"6B",X"7A",X"6D",X"6C",X"61",X"7C",X"2F",X"6B",X"7A",X"6D",X"6C",X"61", + X"FC",X"5B",X"AB",X"60",X"C1",X"62",X"AB",X"63",X"C1",X"62",X"AB",X"64",X"C5",X"66",X"2B",X"A9", + X"28",X"7B",X"6D",X"6F",X"69",X"28",X"B9",X"B1",X"B0",X"BC",X"3B",X"B9",X"28",X"78",X"64",X"69", + X"79",X"4D",X"FA",X"08",X"FB",X"5C",X"E9",X"5A",X"FC",X"08",X"6F",X"CE",X"6C",X"D9",X"BB",X"39", + X"28",X"67",X"7A",X"28",X"BA",X"28",X"78",X"64",X"69",X"71",X"6D",X"7A",X"28",X"7B",X"7C",X"69", + X"FA",X"5C",X"29",X"4F",X"E9",X"CD",X"ED",X"09",X"6F",X"5E",X"ED",X"5A",X"2B",X"C9",X"6E",X"5B", + X"6D",X"7A",X"7C",X"29",X"6B",X"67",X"61",X"66",X"22",X"7C",X"61",X"65",X"6D",X"28",X"6A",X"67", + X"6E",X"5D",X"FB",X"0B",X"AC",X"0D",X"AE",X"8E",X"F8",X"CC",X"E9",X"D9",X"ED",X"5A",X"A9",X"39", + X"29",X"7B",X"7C",X"69",X"7A",X"7C",X"26",X"78",X"64",X"69",X"71",X"6D",X"7A",X"29",X"BA",X"29", + X"FB",X"5C",X"E9",X"5A",X"FC",X"0C",X"FC",X"C9",X"6D",X"4D",X"2B",X"4A",X"6F",X"CE",X"FD",X"5B", + X"28",X"7A",X"67",X"7D",X"66",X"6C",X"28",X"28",X"C0",X"28",X"28",X"28",X"28",X"28",X"28",X"D7", + X"A8",X"B8",X"37",X"40",X"CF",X"F7",X"A8",X"F7",X"A8",X"B8",X"37",X"40",X"CF",X"F7",X"A8",X"35", + X"83",X"83",X"8C",X"37",X"3E",X"3C",X"28",X"48",X"D7",X"28",X"28",X"28",X"28",X"28",X"28",X"D7", + X"E0",X"2C",X"AD",X"AE",X"2D",X"A5",X"08",X"BF",X"93",X"E4",X"CA",X"2D",X"F7",X"83",X"08",X"40", + X"17",X"D8",X"1C",X"AD",X"9B",X"03",X"28",X"13",X"5B",X"8C",X"85",X"9E",X"BC",X"35",X"28",X"D7", + X"08",X"08",X"08",X"08",X"08",X"0F",X"08",X"F7",X"08",X"08",X"08",X"08",X"08",X"F7",X"08",X"06", + X"E7",X"D7",X"28",X"28",X"28",X"28",X"28",X"A3",X"03",X"AA",X"22",X"CF",X"D7",X"B7",X"28",X"D0", + X"AB",X"2B",X"AB",X"AF",X"0E",X"92",X"08",X"08",X"89",X"8A",X"19",X"9A",X"08",X"0A",X"08",X"0F", + X"D7",X"28",X"28",X"28",X"28",X"28",X"28",X"28",X"3A",X"33",X"05",X"BE",X"3B",X"34",X"28",X"D7", + X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"F7",X"08",X"08",X"08",X"08",X"08",X"08",X"DA",X"F5", + X"F4",X"C3",X"A0",X"10",X"28",X"2D",X"28",X"DD",X"86",X"84",X"C4",X"8D",X"A3",X"AC",X"28",X"86", + X"A4",X"A5",X"AD",X"2C",X"0C",X"75",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08", + X"28",X"28",X"28",X"28",X"28",X"28",X"5A",X"28",X"3A",X"33",X"05",X"BE",X"3B",X"34",X"28",X"D7", + X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"F7",X"08",X"08",X"08",X"08",X"08",X"08",X"DA",X"F5", + X"F4",X"C3",X"A0",X"10",X"28",X"2D",X"28",X"16",X"85",X"8D",X"BD",X"8C",X"30",X"B7",X"28",X"85", + X"96",X"25",X"AD",X"45",X"7E",X"9B",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"08", + X"28",X"28",X"28",X"28",X"28",X"28",X"5A",X"28",X"3A",X"33",X"05",X"BE",X"3B",X"34",X"28",X"D7", + X"08",X"08",X"08",X"08",X"08",X"08",X"08",X"F7",X"08",X"08",X"08",X"08",X"08",X"08",X"DA",X"F5", + X"F4",X"C3",X"A0",X"10",X"28",X"2D",X"28",X"12",X"A3",X"73",X"25",X"15",X"EE",X"3B",X"28",X"DC", + X"05",X"23",X"A5",X"9A",X"7B",X"0F",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08", + X"28",X"28",X"28",X"28",X"28",X"28",X"72",X"28",X"3A",X"33",X"A5",X"BE",X"3B",X"34",X"28",X"D7", + X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"F7",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"7A",X"F5", + X"DC",X"C3",X"88",X"10",X"28",X"2D",X"28",X"28",X"28",X"28",X"28",X"28",X"33",X"3A",X"28",X"AB", + X"16",X"36",X"D8",X"E0",X"88",X"48",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08", + X"28",X"28",X"28",X"28",X"28",X"28",X"72",X"28",X"3A",X"33",X"A5",X"BE",X"3B",X"34",X"28",X"D7", + X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"F7",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"7A",X"F5", + X"DC",X"C3",X"88",X"10",X"28",X"2D",X"28",X"B7",X"2F",X"D8",X"48",X"08",X"68",X"D7",X"28",X"2F", + X"17",X"36",X"D8",X"E0",X"88",X"F7",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"08", + X"28",X"28",X"28",X"28",X"28",X"28",X"28",X"33",X"C0",X"10",X"B7",X"A6",X"D7",X"C7",X"28",X"D7", + X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"F7",X"A8",X"08",X"A8",X"08",X"A8",X"08",X"A8",X"65", + X"B5",X"BB",X"A3",X"C0",X"AC",X"3B",X"28",X"2F",X"DF",X"CD",X"A4",X"BB",X"B3",X"34",X"28",X"CD", + X"57",X"AB",X"40",X"08",X"A8",X"08",X"58",X"E0",X"A4",X"AD",X"B6",X"60",X"05",X"08",X"A8",X"F7", + X"C0",X"AC",X"10",X"A7",X"AD",X"85",X"28",X"A3",X"A3",X"AA",X"AA",X"CF",X"D7",X"B7",X"28",X"D0", + X"23",X"2B",X"23",X"AF",X"AE",X"92",X"A8",X"75",X"06",X"A4",X"44",X"25",X"83",X"2C",X"A8",X"A6", + X"84",X"85",X"A5",X"AC",X"2C",X"DD",X"28",X"16",X"85",X"8D",X"1D",X"8C",X"B8",X"B7",X"28",X"85", + X"96",X"25",X"AD",X"45",X"7E",X"9B",X"08",X"92",X"23",X"DB",X"2D",X"95",X"46",X"1B",X"08",X"74", + X"85",X"8B",X"25",X"32",X"5B",X"2F",X"28",X"28",X"28",X"28",X"28",X"28",X"1B",X"3A",X"28",X"AB", + X"B6",X"36",X"50",X"E0",X"00",X"48",X"08",X"36",X"A5",X"24",X"A5",X"67",X"F7",X"BF",X"08",X"F0", + X"B6",X"AB",X"85",X"A7",X"2E",X"12",X"28",X"AD",X"83",X"89",X"1C",X"8A",X"99",X"AC",X"28",X"83", + X"21",X"A5",X"2E",X"9C",X"0D",X"AD",X"08",X"9D",X"2D",X"9C",X"9B",X"1A",X"28",X"0F",X"08",X"A5", + X"1F",X"BE",X"30",X"A0",X"3C",X"2F",X"28",X"2C",X"28",X"34",X"3D",X"34",X"25",X"3B",X"28",X"97", + X"D5",X"08",X"1D",X"AD",X"9C",X"E7",X"08",X"0B",X"0C",X"0D",X"9E",X"0A",X"08",X"08",X"08",X"A5", + X"F7",X"CF",X"F8",X"C0",X"A8",X"68",X"09",X"6F",X"69",X"65",X"6D",X"28",X"7C",X"61",X"4D",X"6D", + X"0C",X"CD",X"C9",X"CE",X"DC",X"0C",X"5B",X"4D",X"4B",X"DC",X"3A",X"38",X"38",X"38",X"38",X"08", + X"78",X"7C",X"7B",X"74",X"31",X"B8",X"30",X"B8",X"30",X"28",X"78",X"7C",X"7B",X"74",X"28",X"BD", + X"38",X"38",X"38",X"08",X"58",X"5C",X"5B",X"DC",X"08",X"3B",X"38",X"38",X"38",X"08",X"58",X"5C", + X"7B",X"74",X"28",X"B9",X"30",X"B8",X"30",X"28",X"78",X"7C",X"7B",X"74",X"28",X"66",X"4F",X"28", + X"4A",X"CF",X"CE",X"5D",X"5B",X"08",X"82",X"1B",X"14",X"1B",X"96",X"1B",X"A0",X"1B",X"32",X"1B", + X"94",X"3B",X"EF",X"4F",X"7F",X"BF",X"37",X"AF",X"37",X"A7",X"A7",X"8F",X"EF",X"A7",X"27",X"BF", + X"47",X"47",X"47",X"47",X"9F",X"47",X"9F",X"9F",X"47",X"47",X"5F",X"47",X"47",X"27",X"DF",X"47", + X"EF",X"4F",X"1F",X"FF",X"1F",X"4F",X"28",X"A7",X"07",X"97",X"1E",X"AE",X"1E",X"AC",X"28",X"A5", + X"A4",X"9A",X"25",X"2C",X"3A",X"2C",X"A8",X"A5",X"05",X"F7",X"1B",X"24",X"84",X"F7",X"A8",X"67", + X"CF",X"D7",X"0E",X"0E",X"0E",X"D7",X"28",X"BE",X"A5",X"97",X"A5",X"33",X"AC",X"9F",X"28",X"85", + X"3B",X"76",X"05",X"08",X"3B",X"23",X"A8",X"38",X"90",X"3D",X"B3",X"98",X"A2",X"2A",X"A8",X"AE", + X"2C",X"36",X"A6",X"2C",X"36",X"2C",X"28",X"DE",X"C5",X"D6",X"CC",X"8C",X"13",X"DC",X"28",X"BF", + X"B7",X"2D",X"26",X"9B",X"25",X"9B",X"A8",X"B7",X"80",X"F0",X"90",X"20",X"00",X"BF",X"A8",X"65", + X"CD",X"D5",X"0C",X"0C",X"0C",X"D5",X"76",X"3C",X"86",X"3C",X"D6",X"3C",X"66",X"3D",X"28",X"28", + X"38",X"34",X"D1",X"F7",X"38",X"34",X"C2",X"F7",X"38",X"34",X"DB",X"F7",X"38",X"34",X"F4",X"0A", + X"C0",X"9C",X"0B",X"2A",X"C0",X"9C",X"1A",X"2A",X"C0",X"9C",X"89",X"2A",X"C0",X"9C",X"30",X"D7", + X"38",X"35",X"29",X"F7",X"38",X"35",X"52",X"F6",X"38",X"35",X"43",X"F6",X"38",X"35",X"7C",X"0B", + X"C0",X"9B",X"E3",X"2B",X"C0",X"9B",X"F2",X"2B",X"C0",X"9B",X"01",X"2B",X"C0",X"9B",X"B8",X"D6", + X"38",X"34",X"A1",X"F6",X"38",X"34",X"BA",X"F6",X"38",X"34",X"AB",X"F6",X"38",X"34",X"A8",X"08", + X"30",X"9C",X"D9",X"D7",X"3C",X"9C",X"CA",X"D7",X"38",X"9C",X"5B",X"D7",X"24",X"9C",X"FC",X"2A", + X"40",X"34",X"8B",X"0A",X"44",X"34",X"9A",X"0A",X"D0",X"34",X"81",X"0A",X"D4",X"34",X"38",X"F7", + X"30",X"9D",X"21",X"D7",X"3C",X"9D",X"D2",X"D6",X"38",X"9D",X"C3",X"D6",X"24",X"9D",X"74",X"2B", + X"40",X"33",X"63",X"0B",X"44",X"33",X"72",X"0B",X"D0",X"33",X"09",X"0B",X"D4",X"33",X"B0",X"F6", + X"30",X"9C",X"A9",X"D6",X"3C",X"9C",X"3A",X"D6",X"38",X"9C",X"2B",X"D6",X"24",X"9C",X"28",X"28", + X"98",X"34",X"71",X"F7",X"98",X"B0",X"62",X"F7",X"98",X"B4",X"53",X"F7",X"98",X"40",X"7C",X"0A", + X"C0",X"9C",X"AB",X"2A",X"C0",X"90",X"BA",X"2A",X"C0",X"94",X"A1",X"2A",X"C0",X"48",X"18",X"D7", + X"98",X"34",X"89",X"F7",X"98",X"B0",X"F2",X"F6",X"98",X"B4",X"E3",X"F6",X"98",X"40",X"DC",X"0B", + X"C0",X"9C",X"43",X"2B",X"C0",X"90",X"52",X"2B",X"C0",X"94",X"89",X"2B",X"C0",X"48",X"30",X"D6", + X"98",X"34",X"29",X"F6",X"98",X"B0",X"1A",X"F6",X"98",X"B4",X"0B",X"F6",X"98",X"40",X"08",X"08", + X"3A",X"9C",X"F1",X"D7",X"3A",X"9C",X"E2",X"D7",X"3A",X"9C",X"FB",X"D7",X"3A",X"9C",X"28",X"2A", + X"E6",X"34",X"8F",X"0A",X"E6",X"34",X"9E",X"0A",X"E6",X"34",X"AD",X"0A",X"E6",X"34",X"98",X"F7", + X"3A",X"9D",X"09",X"D7",X"3A",X"9D",X"D2",X"D6",X"3A",X"9D",X"C3",X"D6",X"3A",X"9D",X"C0",X"2A", + X"E6",X"33",X"77",X"0A",X"E6",X"33",X"0E",X"0B",X"E6",X"33",X"1D",X"0B",X"E6",X"33",X"38",X"F6", + X"0B",X"9C",X"21",X"D6",X"38",X"9C",X"3A",X"D6",X"3D",X"9C",X"2B",X"D6",X"1A",X"9C",X"B6",X"3D", + X"36",X"1D",X"36",X"1D",X"36",X"1D",X"37",X"1D",X"41",X"1D",X"C6",X"1D",X"D0",X"1D",X"65",X"1D", + X"C7",X"3D",X"F6",X"3D",X"28",X"3E",X"D7",X"29",X"38",X"B8",X"38",X"D6",X"E0",X"60",X"29",X"A8", + X"F7",X"0A",X"F7",X"08",X"48",X"0A",X"28",X"78",X"F4",X"60",X"14",X"0A",X"38",X"F7",X"0C",X"09", + X"20",X"08",X"D7",X"28",X"B0",X"58",X"B8",X"D7",X"2A",X"D7",X"28",X"68",X"2C",X"F8",X"A8",X"D0", + X"10",X"B0",X"0A",X"70",X"F7",X"00",X"F0",X"20",X"20",X"18",X"38",X"40",X"F7",X"08",X"F7",X"0A", + X"F8",X"58",X"18",X"2A",X"10",X"D7",X"2C",X"B8",X"70",X"38",X"D6",X"58",X"A8",X"2A",X"20",X"D7", + X"AC",X"F7",X"A8",X"48",X"A9",X"78",X"57",X"1D",X"34",X"08",X"B2",X"3D",X"B0",X"08",X"F8",X"5C", + X"7B",X"74",X"B6",X"28",X"28",X"B8",X"B8",X"B8",X"28",X"78",X"7C",X"7B",X"74",X"25",X"78",X"6D", + X"FA",X"4E",X"ED",X"4B",X"FC",X"08",X"EA",X"CF",X"6E",X"5D",X"FB",X"8A",X"B1",X"38",X"B0",X"38", + X"B8",X"28",X"78",X"7C",X"7B",X"74",X"2C",X"7A",X"6C",X"74",X"29",X"39",X"6F",X"69",X"7C",X"60", + X"ED",X"5A",X"A8",X"5D",X"F8",X"08",X"F8",X"C9",X"6F",X"58",X"69",X"CF",X"E8",X"19",X"EC",X"4D", + X"6E",X"6D",X"69",X"7C",X"28",X"66",X"71",X"69",X"66",X"66",X"71",X"69",X"66",X"68",X"28",X"39", + X"FC",X"49",X"6B",X"4D",X"A8",X"58",X"69",X"CF",X"F8",X"C9",X"6F",X"08",X"68",X"CF",X"6D",X"4D", + X"68",X"28",X"A8",X"28",X"38",X"28",X"2D",X"28",X"2B",X"28",X"29",X"28",X"28",X"A3",X"84",X"8D", + X"E8",X"A5",X"A8",X"A5",X"81",X"9C",X"BD",X"0B",X"A8",X"08",X"A5",X"58",X"F5",X"D5",X"92",X"6E", + X"48",X"87",X"00",X"2B",X"F1",X"53",X"C9",X"32",X"EF",X"48",X"A7",X"CA",X"E0",X"3F",X"ED",X"DD", + X"ED",X"A1",X"A8",X"41",X"31",X"08",X"D8",X"AE",X"A8",X"36",X"3F",X"2E",X"28",X"4B",X"D6",X"CA", + X"93",X"3E",X"C3",X"29",X"09",X"43",X"0C",X"29",X"EB",X"4B",X"3E",X"A3",X"C5",X"90",X"C3",X"2E", + X"28",X"29",X"CB",X"35",X"6A",X"A3",X"BE",X"22",X"61",X"40",X"A2",X"F4",X"47",X"A6",X"CF",X"BE", + X"50",X"32",X"4C",X"48",X"E6",X"2F",X"CB",X"2F",X"CB",X"2F",X"5F",X"C6",X"29",X"4A",X"CC",X"3E", + X"4B",X"8B",X"A4",X"BC",X"C3",X"A9",X"E8",X"08",X"CD",X"90",X"92",X"3F",X"C8",X"B2",X"B6",X"D4", + X"32",X"79",X"52",X"22",X"BB",X"48",X"22",X"6E",X"54",X"32",X"E5",X"48",X"32",X"61",X"52",X"32", + X"D0",X"40",X"AF",X"32",X"6D",X"40",X"4A",X"8E",X"1F",X"D6",X"18",X"CB",X"18",X"1F",X"EE",X"E7", + X"32",X"ED",X"E8",X"4D",X"6B",X"24",X"21",X"4C",X"E8",X"B4",X"21",X"E0",X"E8",X"B4",X"12",X"48", + X"40",X"CE",X"09",X"56",X"BC",X"30",X"3D",X"32",X"18",X"40",X"6E",X"09",X"A7",X"56",X"68",X"30", + X"0A",X"92",X"39",X"48",X"EE",X"29",X"27",X"B2",X"39",X"48",X"BF",X"B2",X"38",X"48",X"12",X"22", + X"40",X"CE",X"09",X"A7",X"DE",X"68",X"90",X"18",X"92",X"8B",X"40",X"CE",X"09",X"A7",X"DE",X"68", + X"10",X"2A",X"16",X"E8",X"32",X"23",X"E8",X"3F",X"32",X"22",X"E8",X"3F",X"32",X"48",X"E8",X"4D", + X"26",X"98",X"E9",X"D9",X"69",X"D1",X"DB",X"49",X"6D",X"DD",X"ED",X"A1",X"6F",X"40",X"B5",X"76", + X"21",X"28",X"F8",X"2C",X"67",X"3F",X"6F",X"F7",X"23",X"30",X"D4",X"E9",X"F9",X"69",X"F1",X"DB", + X"49",X"C5",X"A1",X"F7",X"F7",X"25",X"A0",X"F5",X"A5",X"A0",X"F2",X"C1",X"49",X"EF",X"92",X"08", + X"E8",X"EE",X"29",X"68",X"50",X"EE",X"0F",X"27",X"4F",X"26",X"28",X"A1",X"55",X"32",X"09",X"46", + X"A3",X"EE",X"4D",X"8D",X"98",X"71",X"2E",X"A7",X"F7",X"23",X"D0",X"0E",X"A7",X"F7",X"83",X"36", + X"28",X"0E",X"27",X"DE",X"99",X"B0",X"29",X"F7",X"E6",X"27",X"2F",X"27",X"2F",X"27",X"5F",X"A3", + X"D6",X"C6",X"70",X"2F",X"07",X"2F",X"07",X"93",X"57",X"A1",X"ED",X"9A",X"92",X"0C",X"40",X"C6", + X"30",X"07",X"0F",X"47",X"2E",X"28",X"09",X"92",X"0E",X"48",X"4F",X"01",X"56",X"9B",X"00",X"2A", + X"B0",X"28",X"92",X"8E",X"40",X"34",X"B2",X"8E",X"40",X"36",X"09",X"B2",X"8D",X"40",X"A1",X"0A", + X"E8",X"92",X"29",X"48",X"E6",X"29",X"00",X"29",X"04",X"B4",X"CD",X"E2",X"0B",X"96",X"B8",X"4D", + X"B5",X"4D",X"92",X"09",X"C8",X"C6",X"A9",X"CA",X"78",X"98",X"6B",X"9A",X"38",X"A1",X"D9",X"40", + X"12",X"29",X"48",X"C6",X"29",X"48",X"21",X"5C",X"48",X"49",X"21",X"26",X"C0",X"B9",X"47",X"48", + X"4D",X"6F",X"38",X"32",X"A9",X"40",X"EE",X"0A",X"68",X"22",X"DD",X"40",X"75",X"7C",X"82",X"C7", + X"48",X"75",X"44",X"E7",X"B7",X"45",X"7A",X"58",X"20",X"22",X"12",X"5F",X"48",X"7F",X"12",X"59", + X"C8",X"13",X"48",X"58",X"31",X"55",X"C8",X"A1",X"4F",X"40",X"21",X"0B",X"A8",X"45",X"B8",X"B9", + X"47",X"48",X"21",X"A2",X"C0",X"CB",X"EF",X"30",X"21",X"A2",X"C0",X"B9",X"5A",X"48",X"EB",X"EF", + X"38",X"A1",X"22",X"E0",X"31",X"55",X"C8",X"AE",X"AB",X"2E",X"A8",X"C5",X"4D",X"F2",X"39",X"B6", + X"B8",X"24",X"36",X"20",X"E1",X"71",X"A7",X"C8",X"FD",X"B9",X"71",X"32",X"C3",X"4D",X"5E",X"22", + X"79",X"49",X"6E",X"38",X"05",X"2E",X"A9",X"4A",X"9F",X"98",X"DE",X"38",X"A0",X"89",X"06",X"08", + X"36",X"A8",X"23",X"B6",X"20",X"38",X"2C",X"F7",X"23",X"B6",X"20",X"A3",X"C9",X"8A",X"27",X"FF", + X"D3",X"4E",X"A8",X"A7",X"57",X"49",X"92",X"D1",X"C8",X"87",X"68",X"9F",X"5B",X"88",X"67",X"32", + X"79",X"48",X"4F",X"4B",X"58",X"20",X"32",X"4B",X"59",X"20",X"30",X"4B",X"99",X"A1",X"78",X"48", + X"D6",X"56",X"29",X"30",X"AD",X"36",X"29",X"CB",X"4D",X"98",X"6E",X"09",X"A7",X"F7",X"6B",X"53", + X"30",X"4B",X"D9",X"A1",X"7A",X"48",X"39",X"72",X"48",X"4B",X"68",X"20",X"24",X"4B",X"69",X"20", + X"2A",X"4B",X"29",X"4D",X"A1",X"99",X"6B",X"E3",X"38",X"4B",X"69",X"76",X"6D",X"EF",X"92",X"5D", + X"48",X"10",X"00",X"2E",X"21",X"7D",X"48",X"B9",X"74",X"48",X"E9",X"4B",X"48",X"20",X"24",X"4B", + X"41",X"20",X"8A",X"4B",X"09",X"4D",X"29",X"99",X"6B",X"8D",X"99",X"4B",X"49",X"71",X"B2",X"59", + X"E8",X"A1",X"5A",X"48",X"0E",X"29",X"CD",X"9C",X"19",X"A1",X"5C",X"48",X"0E",X"2A",X"EB",X"9C", + X"99",X"CD",X"ED",X"DD",X"D6",X"AF",X"DE",X"1C",X"B0",X"4E",X"47",X"AE",X"08",X"43",X"33",X"A1", + X"3A",X"32",X"09",X"D6",X"23",X"E6",X"47",X"3F",X"C1",X"94",X"14",X"94",X"14",X"94",X"14",X"4D", + X"17",X"99",X"10",X"CC",X"12",X"56",X"09",X"B0",X"99",X"38",X"1B",X"3A",X"DE",X"0A",X"B0",X"1A", + X"18",X"24",X"1A",X"DE",X"2B",X"B0",X"0B",X"10",X"2D",X"12",X"D6",X"29",X"30",X"24",X"14",X"32", + X"10",X"AE",X"3F",X"BA",X"94",X"4D",X"17",X"99",X"10",X"2E",X"3F",X"BA",X"94",X"34",X"10",X"74", + X"FE",X"3C",X"4F",X"26",X"28",X"CB",X"3B",X"33",X"21",X"AE",X"1A",X"01",X"56",X"A3",X"66",X"C7", + X"12",X"34",X"47",X"16",X"90",X"09",X"3F",X"BA",X"26",X"08",X"01",X"76",X"AF",X"CC",X"17",X"99", + X"F9",X"E9",X"E9",X"12",X"14",X"32",X"C9",X"77",X"12",X"78",X"E8",X"2A",X"27",X"77",X"D6",X"21", + X"90",X"0D",X"96",X"89",X"6B",X"30",X"99",X"4D",X"AA",X"4D",X"96",X"87",X"4D",X"BD",X"4D",X"72", + X"32",X"78",X"E8",X"49",X"56",X"AF",X"C8",X"4B",X"57",X"6A",X"FB",X"31",X"23",X"D6",X"A7",X"6A", + X"C0",X"99",X"4D",X"D5",X"99",X"B6",X"0E",X"49",X"B5",X"C8",X"4D",X"E1",X"99",X"B6",X"0E",X"23", + X"CB",X"DE",X"C9",X"A3",X"35",X"68",X"03",X"D6",X"E6",X"F7",X"15",X"F7",X"C9",X"ED",X"12",X"ED", + X"40",X"91",X"B2",X"6D",X"40",X"DB",X"99",X"C1",X"49",X"C5",X"6D",X"71",X"87",X"6F",X"92",X"6D", + X"E8",X"A9",X"32",X"ED",X"E8",X"7B",X"19",X"69",X"E1",X"49",X"1A",X"4B",X"17",X"4B",X"17",X"4B", + X"97",X"4B",X"97",X"4D",X"8A",X"98",X"12",X"C6",X"2F",X"4D",X"8A",X"98",X"25",X"48",X"33",X"CB", + X"D2",X"31",X"B6",X"31",X"B5",X"31",X"B4",X"31",X"B3",X"31",X"B2",X"31",X"B1",X"31",X"6C",X"31", + X"6B",X"99",X"FA",X"99",X"79",X"99",X"B4",X"9A",X"33",X"9A",X"E8",X"9A",X"EE",X"9A",X"6B",X"9A", + X"66",X"32",X"7C",X"32",X"2E",X"28",X"29",X"28",X"29",X"29",X"29",X"2C",X"28",X"29",X"28",X"2A", + X"AD",X"09",X"A9",X"09",X"A9",X"0A",X"AC",X"09",X"A9",X"09",X"AA",X"0A",X"A9",X"0A",X"AD",X"0A", + X"2A",X"2A",X"2A",X"2B",X"2C",X"2A",X"2A",X"2A",X"2B",X"2F",X"28",X"28",X"28",X"28",X"28",X"28", + X"B0",X"8F",X"2E",X"8D",X"2C",X"8B",X"2A",X"89",X"2A",X"8B",X"2C",X"8D",X"2E",X"0B",X"28",X"1E", + X"D7",X"2B",X"38",X"A8",X"D7",X"2C",X"3A",X"AC",X"D7",X"2C",X"3C",X"A0",X"D7",X"28",X"28",X"29", + X"A8",X"0A",X"A8",X"0B",X"A8",X"0D",X"A8",X"18",X"A8",X"28",X"A8",X"38",X"A8",X"48",X"A8",X"58", + X"28",X"08",X"28",X"28",X"29",X"28",X"2A",X"28",X"2B",X"28",X"2D",X"4D",X"9B",X"32",X"DD",X"7E", + X"A9",X"5D",X"76",X"0A",X"CB",X"A9",X"AC",X"08",X"01",X"76",X"A3",X"E6",X"C7",X"A9",X"2F",X"08", + X"C5",X"90",X"C9",X"A1",X"28",X"4F",X"DD",X"76",X"2D",X"4B",X"67",X"20",X"29",X"A4",X"E6",X"27", + X"27",X"AF",X"27",X"AF",X"C7",X"49",X"92",X"4C",X"C8",X"87",X"68",X"32",X"A8",X"40",X"EE",X"09", + X"CA",X"68",X"33",X"32",X"4C",X"48",X"E6",X"27",X"EA",X"68",X"33",X"A1",X"05",X"B8",X"12",X"E7", + X"C8",X"87",X"80",X"18",X"DE",X"09",X"80",X"99",X"92",X"4D",X"C8",X"87",X"A0",X"5A",X"A1",X"30", + X"B8",X"CB",X"29",X"33",X"21",X"22",X"B8",X"32",X"E6",X"48",X"E6",X"29",X"20",X"2B",X"21",X"6A", + X"38",X"32",X"B8",X"40",X"47",X"AE",X"08",X"29",X"DE",X"58",X"B0",X"3C",X"D6",X"B2",X"B9",X"40", + X"51",X"94",X"32",X"B0",X"E8",X"92",X"47",X"48",X"D6",X"29",X"20",X"AC",X"12",X"B0",X"E8",X"A1", + X"BB",X"1E",X"31",X"50",X"E3",X"56",X"09",X"20",X"1C",X"A1",X"CD",X"1E",X"31",X"50",X"E3",X"56", + X"0D",X"80",X"0A",X"DE",X"3C",X"A0",X"09",X"A1",X"5F",X"3E",X"39",X"58",X"C3",X"4D",X"EC",X"22", + X"3F",X"5B",X"88",X"4B",X"77",X"A0",X"0D",X"36",X"09",X"B2",X"D1",X"40",X"92",X"AC",X"40",X"87", + X"EA",X"4A",X"1D",X"92",X"47",X"48",X"D6",X"2A",X"CA",X"4A",X"1D",X"92",X"EC",X"48",X"E6",X"24", + X"07",X"2F",X"47",X"AE",X"08",X"A1",X"0E",X"38",X"01",X"76",X"B2",X"3F",X"40",X"32",X"40",X"40", + X"E6",X"29",X"20",X"A8",X"12",X"BE",X"E8",X"AF",X"00",X"32",X"D6",X"2F",X"20",X"27",X"12",X"3B", + X"40",X"56",X"F7",X"20",X"0E",X"32",X"A8",X"40",X"AF",X"A0",X"89",X"36",X"0F",X"35",X"B2",X"3E", + X"E8",X"4D",X"6B",X"37",X"29",X"28",X"28",X"92",X"00",X"48",X"A7",X"6A",X"BB",X"36",X"12",X"28", + X"44",X"C6",X"0C",X"CA",X"DF",X"9C",X"92",X"08",X"46",X"C6",X"28",X"CA",X"DF",X"9C",X"92",X"49", + X"E8",X"DE",X"2E",X"B0",X"2B",X"AF",X"20",X"67",X"CD",X"2C",X"0C",X"DE",X"D7",X"80",X"3B",X"DE", + X"F3",X"20",X"8F",X"56",X"F5",X"20",X"8B",X"56",X"F1",X"20",X"0F",X"9F",X"B2",X"4E",X"40",X"CB", + X"DD",X"33",X"12",X"6E",X"E8",X"94",X"32",X"6E",X"E8",X"DE",X"D7",X"80",X"32",X"92",X"0B",X"48", + X"AF",X"A0",X"1D",X"32",X"0C",X"40",X"EE",X"48",X"4A",X"DF",X"9C",X"32",X"8A",X"40",X"DE",X"48", + X"DA",X"77",X"1C",X"26",X"0F",X"6B",X"2B",X"34",X"2E",X"2F",X"12",X"22",X"E8",X"DE",X"20",X"90", + X"AA",X"AE",X"AB",X"80",X"6A",X"DF",X"3C",X"32",X"C8",X"40",X"EE",X"0B",X"6A",X"DF",X"3C",X"A1", + X"50",X"B8",X"12",X"69",X"48",X"56",X"2E",X"DA",X"B6",X"34",X"2F",X"6F",X"2E",X"28",X"2F",X"89", + X"47",X"29",X"55",X"FC",X"82",X"BF",X"C8",X"A9",X"35",X"08",X"4D",X"A7",X"3D",X"4D",X"07",X"9D", + X"CD",X"87",X"35",X"32",X"69",X"48",X"14",X"B2",X"69",X"48",X"D6",X"2E",X"20",X"A9",X"02",X"B7", + X"C8",X"6D",X"64",X"4D",X"7E",X"2F",X"21",X"0B",X"A8",X"97",X"CD",X"EA",X"A2",X"0F",X"CE",X"C6", + X"D0",X"CE",X"22",X"B2",X"21",X"4E",X"16",X"98",X"32",X"28",X"4E",X"9F",X"32",X"2E",X"4E",X"32", + X"CC",X"40",X"EE",X"0F",X"A0",X"C9",X"92",X"08",X"CC",X"C6",X"AC",X"A0",X"EA",X"32",X"B1",X"40", + X"A7",X"20",X"33",X"56",X"39",X"30",X"21",X"9F",X"32",X"B9",X"48",X"2E",X"28",X"CB",X"7E",X"35", + X"DD",X"A1",X"25",X"40",X"4D",X"EF",X"A0",X"32",X"B1",X"40",X"94",X"B2",X"B1",X"40",X"92",X"3A", + X"48",X"87",X"00",X"33",X"D6",X"39",X"10",X"21",X"BF",X"B2",X"BA",X"48",X"0E",X"29",X"EB",X"7E", + X"3D",X"55",X"A1",X"AF",X"C8",X"4D",X"67",X"28",X"92",X"3A",X"C8",X"34",X"B2",X"3A",X"C8",X"2E", + X"28",X"32",X"B9",X"48",X"D6",X"2D",X"10",X"2C",X"D6",X"38",X"20",X"23",X"12",X"BA",X"48",X"56", + X"AD",X"30",X"29",X"56",X"B8",X"20",X"AD",X"DE",X"AC",X"C6",X"AB",X"6F",X"4B",X"A9",X"26",X"08", + X"21",X"D6",X"A7",X"29",X"56",X"B2",X"BB",X"48",X"23",X"76",X"32",X"BC",X"48",X"3E",X"28",X"32", + X"A0",X"44",X"EE",X"00",X"80",X"09",X"14",X"32",X"E8",X"44",X"EE",X"00",X"80",X"09",X"14",X"73", + X"D6",X"2A",X"20",X"3B",X"12",X"E8",X"4C",X"C6",X"08",X"CA",X"8B",X"35",X"12",X"30",X"48",X"56", + X"89",X"5A",X"23",X"9D",X"6B",X"8A",X"9D",X"87",X"80",X"3F",X"92",X"44",X"40",X"C6",X"FF",X"CA", + X"1C",X"35",X"12",X"AF",X"E8",X"94",X"A7",X"80",X"2B",X"B2",X"27",X"48",X"12",X"48",X"E8",X"AF", + X"6A",X"23",X"9D",X"32",X"F3",X"46",X"94",X"B2",X"F3",X"46",X"92",X"88",X"40",X"56",X"88",X"30", + X"2A",X"96",X"2F",X"47",X"2E",X"28",X"21",X"2E",X"00",X"01",X"6E",X"92",X"D3",X"4E",X"90",X"90", + X"6A",X"A1",X"39",X"40",X"92",X"28",X"44",X"C6",X"00",X"20",X"09",X"A3",X"D6",X"87",X"6A",X"23", + X"1D",X"B6",X"29",X"6B",X"A3",X"35",X"BF",X"B2",X"D3",X"4E",X"DD",X"ED",X"51",X"5D",X"21",X"A8", + X"44",X"87",X"80",X"8E",X"5D",X"A1",X"48",X"44",X"5D",X"4B",X"08",X"FE",X"80",X"0C",X"5D",X"A1", + X"60",X"4C",X"DD",X"D6",X"2D",X"DE",X"0B",X"A0",X"09",X"4D",X"36",X"AF",X"CD",X"92",X"64",X"6B", + X"21",X"9D",X"4D",X"3E",X"2F",X"4D",X"3D",X"6C",X"92",X"19",X"40",X"87",X"A1",X"6D",X"C8",X"A0", + X"0A",X"92",X"38",X"48",X"D6",X"B8",X"30",X"2B",X"21",X"9D",X"48",X"5D",X"75",X"2B",X"DD",X"F4", + X"0C",X"5D",X"E9",X"32",X"08",X"44",X"EE",X"0C",X"80",X"98",X"3F",X"B2",X"72",X"46",X"49",X"3A", + X"77",X"84",X"56",X"FE",X"2F",X"F7",X"3B",X"12",X"04",X"F7",X"04",X"D6",X"F6",X"2F",X"77",X"33", + X"01",X"49",X"4D",X"0C",X"8C",X"4B",X"D7",X"CA",X"64",X"9D",X"5D",X"76",X"8B",X"87",X"80",X"0D", + X"E6",X"08",X"CA",X"34",X"1E",X"5D",X"CB",X"28",X"9E",X"5D",X"36",X"23",X"30",X"5D",X"36",X"24", + X"0B",X"CB",X"9C",X"9E",X"4B",X"F7",X"A0",X"1E",X"5D",X"4B",X"8B",X"FE",X"6A",X"9C",X"9E",X"5D", + X"CB",X"28",X"9E",X"5D",X"36",X"23",X"F8",X"5D",X"36",X"24",X"D5",X"6B",X"1C",X"36",X"12",X"A9", + X"C8",X"87",X"80",X"29",X"92",X"72",X"CE",X"87",X"48",X"5D",X"B6",X"8B",X"A8",X"C6",X"88",X"36", + X"29",X"A0",X"2A",X"45",X"6C",X"B2",X"C4",X"4E",X"DD",X"4B",X"28",X"16",X"DD",X"4B",X"28",X"76", + X"A0",X"0B",X"4D",X"BF",X"F3",X"32",X"D3",X"46",X"5D",X"EE",X"BA",X"88",X"67",X"C6",X"2F",X"B2", + X"DB",X"4E",X"50",X"AE",X"28",X"C6",X"D8",X"2F",X"0F",X"2F",X"0F",X"4B",X"5F",X"20",X"2B",X"D6", + X"D0",X"AD",X"47",X"32",X"24",X"40",X"AF",X"A0",X"BA",X"32",X"67",X"40",X"DE",X"0A",X"A0",X"2D", + X"41",X"E0",X"22",X"3E",X"48",X"32",X"6D",X"48",X"A7",X"A0",X"25",X"22",X"2F",X"4C",X"B7",X"45", + X"62",X"74",X"EE",X"09",X"E7",X"A2",X"AF",X"44",X"21",X"08",X"A8",X"32",X"67",X"40",X"DE",X"0A", + X"00",X"AE",X"EB",X"1B",X"36",X"36",X"28",X"A1",X"2F",X"4B",X"D6",X"20",X"00",X"21",X"5E",X"A3", + X"76",X"43",X"01",X"43",X"F2",X"23",X"F3",X"34",X"DE",X"9B",X"B0",X"0F",X"31",X"28",X"A8",X"39", + X"EB",X"F2",X"36",X"61",X"60",X"A2",X"3E",X"48",X"02",X"32",X"48",X"29",X"22",X"32",X"48",X"22", + X"3A",X"40",X"92",X"09",X"C8",X"4B",X"67",X"20",X"2B",X"C6",X"88",X"A0",X"AF",X"A9",X"BA",X"08", + X"09",X"CB",X"92",X"36",X"29",X"34",X"28",X"97",X"C5",X"EA",X"22",X"E1",X"48",X"49",X"12",X"AD", + X"C8",X"67",X"A6",X"42",X"92",X"89",X"CC",X"F7",X"85",X"75",X"DE",X"48",X"B0",X"0A",X"96",X"6F", + X"32",X"AD",X"48",X"32",X"AE",X"48",X"3E",X"4A",X"5F",X"22",X"3E",X"48",X"54",X"BA",X"1D",X"75", + X"32",X"3D",X"D3",X"56",X"88",X"B0",X"AA",X"36",X"4F",X"B2",X"A6",X"40",X"92",X"1D",X"C8",X"87", + X"C8",X"EF",X"D5",X"A1",X"C8",X"4A",X"02",X"2F",X"4C",X"2E",X"2D",X"CD",X"1C",X"73",X"D6",X"58", + X"90",X"0A",X"16",X"00",X"12",X"6F",X"14",X"3A",X"67",X"29",X"69",X"2D",X"A0",X"E5",X"DD",X"F5", + X"28",X"DD",X"74",X"29",X"2D",X"48",X"D5",X"A3",X"D5",X"A3",X"EB",X"D1",X"1E",X"49",X"BF",X"B2", + X"3D",X"40",X"4D",X"12",X"9F",X"B6",X"40",X"24",X"D6",X"C6",X"F0",X"F7",X"84",X"B6",X"41",X"24", + X"56",X"EE",X"D0",X"F7",X"04",X"B6",X"EA",X"84",X"56",X"EE",X"D0",X"B6",X"28",X"92",X"35",X"48", + X"6B",X"CE",X"9F",X"A1",X"61",X"9F",X"47",X"AE",X"08",X"29",X"D6",X"B2",X"3D",X"40",X"47",X"AF", + X"2F",X"27",X"A9",X"47",X"2E",X"28",X"21",X"8A",X"1F",X"01",X"5D",X"74",X"CD",X"1A",X"1F",X"21", + X"48",X"08",X"01",X"A9",X"BB",X"08",X"4D",X"EC",X"9F",X"4D",X"EC",X"9F",X"12",X"F7",X"A3",X"76", + X"E6",X"D0",X"77",X"A3",X"3B",X"12",X"77",X"A3",X"56",X"EE",X"D0",X"F7",X"23",X"33",X"1A",X"F7", + X"A3",X"76",X"EE",X"F0",X"F7",X"29",X"33",X"49",X"A1",X"45",X"28",X"32",X"1C",X"40",X"27",X"CB", + X"98",X"37",X"21",X"C7",X"1F",X"92",X"3C",X"48",X"2F",X"47",X"2E",X"28",X"09",X"D6",X"23",X"E6", + X"C7",X"49",X"43",X"46",X"C1",X"44",X"47",X"C2",X"45",X"C0",X"C3",X"C4",X"D0",X"C7",X"C5",X"60", + X"F8",X"46",X"E1",X"59",X"FA",X"CA",X"FD",X"5B",X"E3",X"5E",X"FC",X"CC",X"FF",X"CD",X"C0",X"C3", + X"66",X"E1",X"E4",X"67",X"E2",X"E5",X"E6",X"E0",X"71",X"E7",X"E1",X"72",X"70",X"E2",X"73",X"74", + X"C0",X"DF",X"F5",X"C1",X"D0",X"DE",X"C2",X"D1",X"D2",X"C0",X"D5",X"D3",X"C1",X"D6",X"D4",X"C2", + X"F7",X"08",X"08",X"09",X"0A",X"0B",X"0C",X"0D",X"0E",X"0D",X"0C",X"0B",X"0A",X"09",X"08",X"96", + X"E5",X"16",X"E5",X"36",X"E2",X"36",X"E1",X"36",X"E1",X"16",X"E0",X"36",X"E1",X"56",X"E0",X"16", + X"44",X"16",X"44",X"16",X"45",X"56",X"40",X"16",X"40",X"36",X"41",X"16",X"45",X"16",X"45",X"16", + X"E5",X"3E",X"E5",X"FE",X"E0",X"3E",X"E5",X"FE",X"E0",X"FE",X"E0",X"3E",X"E5",X"3E",X"E5",X"BE", + X"42",X"16",X"45",X"16",X"45",X"16",X"44",X"76",X"42",X"16",X"45",X"16",X"45",X"16",X"45",X"76", + X"E0",X"BE",X"E3",X"FE",X"E0",X"3E",X"E5",X"12",X"47",X"48",X"81",X"49",X"20",X"A7",X"80",X"AC", + X"92",X"3C",X"48",X"0F",X"27",X"CF",X"26",X"28",X"A1",X"4D",X"80",X"89",X"56",X"2B",X"76",X"E3", + X"82",X"A5",X"E8",X"D5",X"81",X"A5",X"E8",X"12",X"31",X"48",X"5D",X"CD",X"47",X"80",X"59",X"3B", + X"CB",X"CE",X"A3",X"6E",X"C1",X"2A",X"A7",X"48",X"DD",X"29",X"A7",X"48",X"92",X"BA",X"48",X"29", + X"81",X"80",X"76",X"8D",X"B0",X"A8",X"76",X"98",X"B6",X"88",X"A0",X"8A",X"B6",X"8C",X"8F",X"2F", + X"47",X"0E",X"88",X"89",X"55",X"5C",X"DD",X"EE",X"88",X"F5",X"E6",X"29",X"4D",X"1C",X"80",X"09", + X"15",X"88",X"A9",X"3B",X"BA",X"77",X"83",X"56",X"46",X"50",X"56",X"89",X"D7",X"23",X"9B",X"1A", + X"F7",X"2B",X"D6",X"66",X"50",X"76",X"89",X"7F",X"49",X"28",X"8A",X"29",X"8B",X"2C",X"8A",X"2D", + X"2B",X"8E",X"08",X"8F",X"09",X"AA",X"0C",X"AB",X"0D",X"AE",X"38",X"AF",X"39",X"88",X"2A",X"89", + X"8B",X"AE",X"46",X"AE",X"46",X"9E",X"41",X"A4",X"46",X"56",X"42",X"76",X"41",X"20",X"41",X"36", + X"E6",X"32",X"E1",X"A2",X"E6",X"14",X"E0",X"94",X"E6",X"AE",X"E2",X"A6",X"E4",X"2E",X"E1",X"24", + X"44",X"28",X"42",X"AA",X"46",X"2E",X"46",X"DA",X"41",X"C0",X"41",X"20",X"46",X"3A",X"42",X"9E", + X"E3",X"54",X"E0",X"78",X"E3",X"8E",X"E2",X"A6",X"E6",X"1C",X"E0",X"A0",X"E6",X"94",X"E1",X"AE", + X"66",X"16",X"61",X"A6",X"66",X"D4",X"60",X"22",X"66",X"CE",X"60",X"2E",X"66",X"56",X"62",X"36", + X"E6",X"58",X"E0",X"24",X"E6",X"56",X"E2",X"36",X"E6",X"A2",X"E2",X"32",X"E6",X"18",X"E0",X"98", + X"60",X"46",X"60",X"56",X"64",X"DC",X"60",X"60",X"64",X"FE",X"61",X"2E",X"66",X"D0",X"60",X"38", + X"E6",X"88",X"E0",X"B4",X"E6",X"3A",X"E6",X"82",X"E4",X"1E",X"E1",X"5E",X"E3",X"06",X"E2",X"86", + X"62",X"50",X"60",X"D0",X"60",X"6E",X"64",X"AE",X"66",X"78",X"62",X"BE",X"66",X"02",X"62",X"BA", + X"E6",X"88",X"E2",X"68",X"E4",X"12",X"3C",X"48",X"2F",X"4F",X"2E",X"28",X"21",X"E6",X"21",X"09", + X"46",X"2B",X"E6",X"E9",X"A2",X"B7",X"40",X"1E",X"60",X"9E",X"0F",X"43",X"71",X"A9",X"E0",X"C8", + X"E6",X"C8",X"26",X"CD",X"98",X"CD",X"2A",X"CA",X"AA",X"CD",X"0C",X"CC",X"9A",X"CD",X"90",X"CB", + X"36",X"CD",X"68",X"CC",X"36",X"CD",X"12",X"CD",X"B2",X"CD",X"80",X"C8",X"40",X"CA",X"F8",X"CB", + X"14",X"C9",X"14",X"CC",X"6C",X"CB",X"90",X"CD",X"34",X"CB",X"94",X"CD",X"EA",X"CC",X"EA",X"CA", + X"00",X"CD",X"0C",X"CA",X"D6",X"CD",X"9E",X"CC",X"96",X"CB",X"DE",X"CA",X"16",X"CA",X"00",X"C9", + X"34",X"C9",X"DE",X"C9",X"20",X"C9",X"12",X"3C",X"E8",X"2F",X"4F",X"2E",X"28",X"21",X"6D",X"A6", + X"01",X"CE",X"A3",X"6E",X"C1",X"FE",X"AF",X"C0",X"A3",X"DE",X"A3",X"5E",X"CB",X"75",X"92",X"30", + X"E8",X"E6",X"1C",X"0F",X"0F",X"D6",X"2D",X"10",X"2A",X"FE",X"2D",X"2F",X"4F",X"2F",X"A9",X"EE", + X"20",X"55",X"77",X"9E",X"08",X"C5",X"71",X"A9",X"79",X"71",X"95",X"C0",X"CB",X"2B",X"6B",X"41", + X"21",X"72",X"04",X"73",X"29",X"B7",X"28",X"09",X"3C",X"72",X"04",X"73",X"09",X"3C",X"72",X"04", + X"F3",X"AB",X"4D",X"DD",X"B2",X"FA",X"6E",X"2B",X"77",X"7A",X"84",X"7B",X"BF",X"09",X"C9",X"28", + X"65",X"6A",X"9D",X"72",X"A4",X"73",X"17",X"C5",X"CA",X"3D",X"D2",X"04",X"D3",X"C9",X"B2",X"9C", + X"48",X"0F",X"47",X"0E",X"88",X"29",X"F9",X"AA",X"01",X"CE",X"A3",X"6E",X"C1",X"FE",X"AF",X"C0", + X"83",X"5E",X"83",X"7E",X"83",X"C3",X"55",X"FD",X"B2",X"B2",X"E8",X"1E",X"AD",X"3E",X"2B",X"E5", + X"06",X"2E",X"F3",X"2B",X"F7",X"2B",X"14",X"8D",X"A0",X"D0",X"E9",X"09",X"C8",X"28",X"01",X"1D", + X"80",X"65",X"41",X"F1",X"B5",X"C8",X"4B",X"91",X"22",X"01",X"22",X"02",X"22",X"05",X"22",X"30", + X"82",X"91",X"82",X"94",X"82",X"95",X"82",X"96",X"82",X"97",X"82",X"4A",X"82",X"4D",X"82",X"42", + X"22",X"6A",X"22",X"6B",X"22",X"58",X"22",X"5D",X"22",X"7E",X"22",X"61",X"22",X"64",X"22",X"65", + X"82",X"D8",X"82",X"D9",X"82",X"DA",X"82",X"DB",X"82",X"DE",X"82",X"D1",X"82",X"D1",X"82",X"D2", + X"22",X"75",X"22",X"76",X"22",X"89",X"23",X"8E",X"23",X"8F",X"23",X"9E",X"23",X"81",X"23",X"A0", + X"83",X"28",X"89",X"46",X"40",X"21",X"48",X"C8",X"58",X"C8",X"7C",X"C8",X"50",X"C8",X"A8",X"CA", + X"34",X"42",X"8A",X"43",X"E2",X"43",X"46",X"45",X"28",X"89",X"6C",X"41",X"28",X"88",X"28",X"89", + X"10",X"CC",X"89",X"6E",X"45",X"2A",X"6C",X"CD",X"A0",X"CD",X"88",X"2A",X"3A",X"CA",X"FA",X"CB", + X"2A",X"AA",X"E2",X"50",X"E5",X"8C",X"CC",X"40",X"02",X"41",X"EC",X"42",X"C6",X"41",X"2D",X"88", + X"43",X"24",X"43",X"42",X"44",X"5A",X"45",X"EE",X"43",X"29",X"C8",X"C9",X"88",X"29",X"CE",X"CA", + X"28",X"88",X"28",X"89",X"C0",X"41",X"29",X"28",X"E5",X"88",X"29",X"08",X"E5",X"88",X"29",X"4E", + X"64",X"2A",X"50",X"CD",X"64",X"CD",X"08",X"2F",X"18",X"CA",X"C4",X"CA",X"06",X"CB",X"56",X"CC", + X"04",X"C9",X"B0",X"CB",X"F2",X"CD",X"2D",X"4A",X"E2",X"0E",X"E5",X"1A",X"E1",X"CE",X"E0",X"D8", + X"61",X"2B",X"42",X"C9",X"72",X"C8",X"34",X"C9",X"08",X"BA",X"EF",X"48",X"AF",X"40",X"4D",X"36", + X"22",X"12",X"3C",X"48",X"D6",X"30",X"F8",X"2F",X"4F",X"2E",X"28",X"21",X"AD",X"AB",X"09",X"4E", + X"A3",X"6E",X"C1",X"FE",X"AF",X"C0",X"A3",X"DE",X"A3",X"5E",X"A3",X"65",X"C3",X"6A",X"FD",X"BA", + X"12",X"48",X"7F",X"1E",X"B0",X"E5",X"CD",X"F0",X"23",X"E1",X"29",X"68",X"28",X"09",X"E5",X"CD", + X"F8",X"AB",X"E9",X"8E",X"48",X"89",X"ED",X"C5",X"F8",X"AB",X"E9",X"8E",X"48",X"89",X"4D",X"F0", + X"23",X"F1",X"E1",X"15",X"C8",X"EB",X"6F",X"AB",X"0E",X"2C",X"73",X"04",X"72",X"1C",X"CD",X"91", + X"2F",X"8D",X"A0",X"DE",X"49",X"45",X"2B",X"45",X"2B",X"46",X"2B",X"45",X"2B",X"45",X"2B",X"45", + X"23",X"5F",X"23",X"52",X"23",X"55",X"23",X"CA",X"23",X"CF",X"23",X"C6",X"23",X"D9",X"23",X"DE", + X"2B",X"45",X"2B",X"D1",X"2B",X"28",X"2C",X"45",X"2B",X"2D",X"2C",X"45",X"2B",X"45",X"2B",X"45", + X"23",X"45",X"23",X"45",X"23",X"45",X"23",X"20",X"24",X"23",X"24",X"26",X"24",X"3B",X"24",X"45", + X"2B",X"45",X"2B",X"32",X"2C",X"37",X"2C",X"AC",X"2C",X"A1",X"2C",X"A6",X"2C",X"28",X"0C",X"66", + X"E4",X"3C",X"E2",X"86",X"E3",X"DE",X"E2",X"29",X"9C",X"CA",X"29",X"06",X"E5",X"2A",X"28",X"CC", + X"8A",X"CB",X"0A",X"48",X"62",X"C6",X"60",X"2B",X"08",X"C9",X"72",X"C8",X"B0",X"CA",X"09",X"02", + X"E2",X"2A",X"C4",X"C8",X"28",X"CB",X"29",X"48",X"E4",X"2B",X"EA",X"C9",X"8A",X"C9",X"10",X"CB", + X"8A",X"54",X"40",X"16",X"43",X"29",X"70",X"CA",X"89",X"FC",X"45",X"29",X"BC",X"CA",X"8A",X"28", + X"E1",X"B0",X"E2",X"8B",X"CC",X"40",X"42",X"41",X"9C",X"45",X"2A",X"28",X"E3",X"E6",X"E5",X"8A", + X"0C",X"CA",X"42",X"CC",X"8A",X"4E",X"40",X"12",X"44",X"2A",X"48",X"C8",X"6E",X"CB",X"89",X"3E", + X"E5",X"12",X"47",X"48",X"76",X"8A",X"80",X"F4",X"81",X"88",X"E0",X"1E",X"3A",X"2E",X"2A",X"0E", + X"88",X"C5",X"61",X"AF",X"31",X"8F",X"FF",X"F5",X"A1",X"9E",X"FF",X"0E",X"8B",X"8E",X"8D",X"BE", + X"2F",X"CD",X"AB",X"84",X"99",X"4C",X"5F",X"D5",X"81",X"7C",X"5F",X"2E",X"2C",X"0E",X"2D",X"16", + X"A8",X"C5",X"0B",X"AC",X"31",X"C4",X"FF",X"F5",X"A1",X"9A",X"84",X"0E",X"AB",X"8E",X"8D",X"BE", + X"29",X"CD",X"AB",X"84",X"81",X"09",X"E6",X"2E",X"68",X"56",X"56",X"90",X"D7",X"23",X"83",X"2D", + X"A0",X"DF",X"49",X"55",X"FD",X"45",X"DD",X"EE",X"88",X"F5",X"A3",X"F5",X"E6",X"28",X"DD",X"2B", + X"4D",X"E5",X"BA",X"77",X"83",X"3B",X"96",X"8F",X"83",X"2D",X"80",X"56",X"41",X"E9",X"AD",X"00", + X"A9",X"45",X"21",X"68",X"88",X"89",X"69",X"43",X"18",X"AC",X"69",X"71",X"79",X"BD",X"48",X"43", + X"AB",X"84",X"9E",X"44",X"81",X"08",X"E0",X"1E",X"18",X"12",X"28",X"48",X"46",X"89",X"A0",X"AE", + X"92",X"E6",X"48",X"66",X"89",X"BE",X"A8",X"A8",X"A8",X"BE",X"8C",X"43",X"59",X"AC",X"92",X"30", + X"E8",X"14",X"46",X"74",X"AF",X"0F",X"76",X"8E",X"B0",X"8D",X"5E",X"8E",X"4B",X"5E",X"24",X"14", + X"B2",X"B2",X"48",X"CF",X"26",X"08",X"92",X"A4",X"48",X"27",X"A0",X"2E",X"92",X"E7",X"48",X"27", + X"A0",X"8C",X"8E",X"88",X"AE",X"88",X"6D",X"61",X"27",X"12",X"12",X"48",X"AE",X"00",X"56",X"90", + X"67",X"29",X"08",X"C8",X"4D",X"5E",X"2F",X"8E",X"24",X"29",X"48",X"C8",X"4D",X"5A",X"2F",X"BA", + X"47",X"48",X"A7",X"EA",X"76",X"AE",X"12",X"A4",X"E8",X"A7",X"20",X"39",X"21",X"08",X"E0",X"0E", + X"02",X"9E",X"28",X"BA",X"BA",X"48",X"F1",X"AC",X"F7",X"AC",X"15",X"28",X"F1",X"BA",X"AC",X"48", + X"A7",X"00",X"39",X"21",X"68",X"CD",X"1E",X"A8",X"36",X"EB",X"23",X"36",X"38",X"23",X"1D",X"20", + X"77",X"43",X"7E",X"AE",X"92",X"3C",X"40",X"0F",X"47",X"0E",X"08",X"29",X"8F",X"A0",X"01",X"CE", + X"23",X"66",X"41",X"56",X"A7",X"00",X"7F",X"4F",X"23",X"5E",X"23",X"7E",X"23",X"6E",X"C3",X"ED", + X"ED",X"3E",X"EA",X"AC",X"B6",X"38",X"4D",X"91",X"2F",X"0D",X"B6",X"EB",X"84",X"3E",X"18",X"0D", + X"00",X"2E",X"CD",X"91",X"27",X"EB",X"42",X"AD",X"05",X"36",X"43",X"04",X"CD",X"91",X"27",X"36", + X"03",X"AC",X"92",X"B2",X"40",X"7F",X"E9",X"55",X"31",X"68",X"08",X"99",X"79",X"41",X"B6",X"09", + X"04",X"77",X"CD",X"91",X"27",X"2D",X"36",X"0A",X"04",X"12",X"12",X"48",X"77",X"CD",X"91",X"AF", + X"25",X"28",X"73",X"3E",X"04",X"AC",X"92",X"B2",X"40",X"7F",X"CB",X"8D",X"A0",X"82",X"92",X"3C", + X"E8",X"2F",X"4F",X"2E",X"28",X"21",X"7F",X"A0",X"09",X"4E",X"23",X"66",X"41",X"56",X"A7",X"CA", + X"7E",X"AE",X"A3",X"75",X"56",X"2B",X"76",X"2B",X"46",X"2B",X"CB",X"55",X"ED",X"49",X"6D",X"0E", + X"28",X"5D",X"7C",X"CD",X"EB",X"AF",X"56",X"E6",X"F0",X"D6",X"60",X"20",X"29",X"2C",X"43",X"62", + X"84",X"C5",X"B1",X"AF",X"D6",X"66",X"70",X"F6",X"68",X"28",X"0A",X"C3",X"48",X"EB",X"E2",X"19", + X"68",X"28",X"B7",X"C5",X"7A",X"56",X"E6",X"D8",X"D6",X"E8",X"20",X"2A",X"CB",X"F8",X"0D",X"00", + X"8A",X"C3",X"58",X"8C",X"11",X"65",X"50",X"1E",X"88",X"29",X"56",X"AF",X"11",X"DE",X"E9",X"FE", + X"46",X"50",X"76",X"00",X"80",X"8E",X"A4",X"CB",X"46",X"EB",X"21",X"86",X"D3",X"04",X"96",X"98", + X"D3",X"19",X"B7",X"28",X"11",X"41",X"05",X"42",X"6E",X"AD",X"06",X"0A",X"DE",X"EE",X"80",X"2E", + X"76",X"C7",X"A0",X"8A",X"AE",X"09",X"D1",X"04",X"B2",X"B2",X"E8",X"77",X"41",X"ED",X"A4",X"CD", + X"31",X"AF",X"31",X"68",X"88",X"FE",X"EE",X"D8",X"DE",X"E8",X"80",X"24",X"DE",X"88",X"80",X"20", + X"96",X"0B",X"83",X"12",X"12",X"48",X"D7",X"03",X"B9",X"56",X"76",X"0A",X"A0",X"AE",X"46",X"50", + X"DE",X"E8",X"80",X"20",X"B6",X"0C",X"84",X"BA",X"B2",X"48",X"F7",X"AD",X"25",X"28",X"61",X"41", + X"41",X"F1",X"B5",X"EA",X"EB",X"85",X"81",X"08",X"E6",X"0E",X"80",X"12",X"12",X"48",X"56",X"90", + X"67",X"C5",X"5E",X"AF",X"A1",X"48",X"46",X"8E",X"24",X"C5",X"5E",X"AF",X"92",X"A4",X"48",X"27", + X"48",X"12",X"47",X"48",X"07",X"20",X"69",X"12",X"3C",X"48",X"76",X"BA",X"81",X"74",X"30",X"00", + X"AE",X"29",X"9D",X"B9",X"DE",X"A9",X"80",X"2F",X"DE",X"AB",X"A0",X"AE",X"A1",X"BA",X"91",X"FE", + X"83",X"5E",X"83",X"7E",X"83",X"3B",X"EE",X"23",X"CE",X"23",X"63",X"FD",X"99",X"C8",X"28",X"E5", + X"6D",X"C3",X"EE",X"2B",X"A3",X"8D",X"A0",X"D1",X"69",X"61",X"11",X"0D",X"A0",X"D9",X"E9",X"BD", + X"80",X"7F",X"6D",X"16",X"21",X"CD",X"7D",X"81",X"6D",X"BE",X"1F",X"CD",X"37",X"80",X"6D",X"A1", + X"83",X"29",X"D8",X"E2",X"16",X"A8",X"4D",X"DE",X"86",X"29",X"38",X"E2",X"16",X"68",X"4D",X"DE", + X"26",X"21",X"8E",X"E6",X"BE",X"08",X"B2",X"9C",X"E8",X"2F",X"EF",X"2E",X"28",X"09",X"EE",X"23", + X"E6",X"E9",X"D6",X"27",X"48",X"5F",X"A3",X"CE",X"A3",X"4E",X"23",X"8A",X"BB",X"0A",X"35",X"28", + X"F5",X"C9",X"21",X"28",X"EB",X"1E",X"08",X"29",X"20",X"28",X"CB",X"56",X"00",X"3B",X"29",X"32", + X"08",X"89",X"4B",X"CE",X"A0",X"2E",X"4B",X"C6",X"3F",X"3A",X"F3",X"4E",X"35",X"C0",X"21",X"2E", + X"28",X"09",X"1D",X"20",X"E5",X"C9",X"12",X"E7",X"E8",X"A7",X"00",X"2E",X"21",X"49",X"20",X"EB", + X"CE",X"AF",X"92",X"3C",X"40",X"0F",X"27",X"CF",X"26",X"28",X"A1",X"4D",X"28",X"89",X"5D",X"FE", + X"2D",X"D6",X"0B",X"00",X"2C",X"E6",X"29",X"20",X"2A",X"23",X"23",X"4E",X"23",X"6E",X"51",X"E6", + X"F0",X"8F",X"07",X"8F",X"57",X"F8",X"EE",X"2F",X"07",X"8F",X"07",X"33",X"67",X"F9",X"6E",X"2A", + X"E6",X"B7",X"2F",X"2F",X"2F",X"3E",X"28",X"30",X"29",X"3C",X"5F",X"02",X"1A",X"48",X"19",X"54", + X"EE",X"29",X"E7",X"F8",X"49",X"BA",X"98",X"48",X"DE",X"B8",X"90",X"2D",X"7E",X"B8",X"6B",X"00", + X"27",X"21",X"CA",X"A7",X"4F",X"2E",X"28",X"09",X"56",X"32",X"3C",X"48",X"C9",X"7F",X"0E",X"29", + X"EE",X"D8",X"07",X"8F",X"07",X"8F",X"AF",X"28",X"0F",X"3E",X"08",X"2B",X"A3",X"43",X"33",X"AF", + X"CD",X"0A",X"18",X"52",X"E6",X"27",X"EB",X"0A",X"18",X"04",X"55",X"E6",X"17",X"E8",X"55",X"FE", + X"48",X"EF",X"49",X"FD",X"EE",X"B7",X"A0",X"2F",X"D5",X"66",X"40",X"76",X"BE",X"EF",X"49",X"AD", + X"05",X"C9",X"12",X"B2",X"E8",X"6F",X"3E",X"28",X"1E",X"A8",X"51",X"AA",X"77",X"04",X"70",X"04", + X"34",X"FA",X"EE",X"2B",X"77",X"9D",X"A0",X"DA",X"49",X"1E",X"28",X"78",X"84",X"79",X"A3",X"1D", + X"20",X"D1",X"1D",X"20",X"F4",X"C9",X"41",X"E3",X"42",X"EB",X"41",X"EF",X"65",X"EE",X"40",X"EA", + X"C0",X"E9",X"C4",X"E5",X"E4",X"E4",X"8F",X"2E",X"8D",X"2C",X"8B",X"2A",X"8A",X"29",X"89",X"17", + X"00",X"22",X"00",X"49",X"00",X"7E",X"00",X"8C",X"01",X"A2",X"01",X"C9",X"01",X"EC",X"01",X"0C", + X"A1",X"1D",X"A1",X"4F",X"A1",X"53",X"A1",X"2C",X"A2",X"B8",X"A2",X"71",X"A2",X"F7",X"A2",X"18", + X"02",X"4D",X"02",X"75",X"02",X"80",X"03",X"E9",X"03",X"FA",X"03",X"E3",X"03",X"3D",X"03",X"35", + X"A3",X"40",X"A3",X"28",X"A4",X"B3",X"A4",X"EF",X"A4",X"FD",X"A4",X"07",X"A4",X"45",X"A4",X"3F", + X"05",X"82",X"05",X"F3",X"05",X"31",X"05",X"21",X"00",X"48",X"00",X"7A",X"00",X"51",X"00",X"BA", + X"A1",X"68",X"A1",X"63",X"A1",X"FC",X"A1",X"1C",X"A1",X"92",X"A1",X"52",X"A1",X"DF",X"A1",X"A7", + X"02",X"EC",X"02",X"D2",X"02",X"2F",X"02",X"12",X"02",X"44",X"02",X"9B",X"03",X"96",X"03",X"F9", + X"A3",X"EF",X"A3",X"0C",X"A3",X"9B",X"A3",X"4F",X"A3",X"DB",X"A3",X"31",X"A4",X"7F",X"A4",X"FC", + X"04",X"0D",X"04",X"6C",X"04",X"52",X"04",X"81",X"05",X"D8",X"05",X"1F",X"05",X"77",X"05",X"8B", + X"86",X"CA",X"BA",X"8E",X"43",X"32",X"86",X"CD",X"BA",X"28",X"8F",X"BC",X"41",X"24",X"14",X"CA", + X"0C",X"94",X"E4",X"AC",X"B4",X"45",X"0C",X"5C",X"E1",X"AC",X"7C",X"43",X"0C",X"5C",X"E4",X"AC", + X"88",X"20",X"36",X"C9",X"AE",X"8E",X"41",X"2F",X"B6",X"CB",X"BB",X"96",X"44",X"2F",X"38",X"CC", + X"0E",X"34",X"E5",X"AF",X"24",X"46",X"2C",X"C4",X"E6",X"8C",X"29",X"B8",X"E3",X"AB",X"2E",X"9E", + X"42",X"23",X"96",X"CA",X"AC",X"08",X"43",X"24",X"00",X"CB",X"AC",X"22",X"45",X"24",X"A2",X"CD", + X"0C",X"8E",X"4C",X"40",X"08",X"9E",X"E2",X"8F",X"36",X"42",X"2F",X"08",X"E3",X"8F",X"A0",X"43", + X"0F",X"22",X"65",X"2F",X"0F",X"A6",X"61",X"2F",X"1E",X"CA",X"1C",X"B4",X"63",X"2F",X"16",X"CB", + X"0B",X"3E",X"E5",X"2F",X"36",X"CC",X"0A",X"A4",X"E5",X"39",X"2D",X"20",X"E3",X"2D",X"0C",X"CD", + X"0E",X"1E",X"63",X"2F",X"AE",X"C9",X"0D",X"B4",X"62",X"2D",X"0F",X"00",X"62",X"20",X"80",X"CC", + X"08",X"10",X"E1",X"20",X"98",X"CD",X"08",X"80",X"E2",X"20",X"80",X"CC",X"08",X"90",X"E3",X"20", + X"08",X"2B",X"0E",X"CA",X"9A",X"8E",X"63",X"32",X"0E",X"CD",X"9A",X"28",X"8D",X"0E",X"61",X"2D", + X"2E",X"CB",X"2D",X"0E",X"E4",X"2D",X"D8",X"C9",X"08",X"70",X"E3",X"20",X"D8",X"CC",X"08",X"B0", + X"61",X"20",X"3A",X"CA",X"0C",X"90",X"62",X"20",X"30",X"CB",X"0C",X"BE",X"64",X"21",X"38",X"CD", + X"2C",X"9E",X"E5",X"21",X"2D",X"2E",X"E1",X"2B",X"AE",X"CA",X"2B",X"2E",X"E4",X"2B",X"10",X"C9", + X"0F",X"9E",X"63",X"21",X"0D",X"2E",X"61",X"32",X"6C",X"CA",X"9C",X"74",X"63",X"2C",X"D8",X"CC", + X"08",X"1C",X"E5",X"24",X"28",X"24",X"CC",X"C9",X"2D",X"7C",X"E1",X"20",X"62",X"CA",X"2D",X"D0", + X"61",X"2E",X"CC",X"CB",X"0C",X"E4",X"63",X"2C",X"4C",X"CC",X"0C",X"7A",X"64",X"2D",X"6C",X"CC", + X"2D",X"FC",X"E4",X"2C",X"BC",X"CD",X"0C",X"F4",X"E5",X"2C",X"2C",X"7C",X"E1",X"2B",X"62",X"C9", + X"0D",X"7A",X"63",X"2D",X"EC",X"CB",X"0D",X"2E",X"D8",X"C9",X"88",X"06",X"62",X"2E",X"26",X"CA", + X"2E",X"2C",X"E4",X"2E",X"30",X"CC",X"2E",X"92",X"E5",X"2E",X"28",X"21",X"78",X"C9",X"2D",X"50", + X"61",X"25",X"78",X"C9",X"0C",X"50",X"62",X"21",X"F0",X"CA",X"88",X"78",X"64",X"20",X"E8",X"CC", + X"08",X"74",X"E5",X"2F",X"A8",X"CD",X"09",X"2C",X"58",X"C9",X"2B",X"F8",X"E1",X"2B",X"C0",X"CA", + X"AB",X"78",X"44",X"2E",X"AE",X"14",X"41",X"2C",X"34",X"C9",X"8C",X"0C",X"42",X"2C",X"1C",X"CA", + X"2C",X"04",X"E2",X"8C",X"B4",X"42",X"2C",X"2C",X"E3",X"8C",X"84",X"43",X"2C",X"0C",X"E4",X"8C", + X"1C",X"CC",X"8C",X"8C",X"44",X"2C",X"14",X"CC",X"8C",X"14",X"45",X"2C",X"34",X"CD",X"8C",X"28", + X"09",X"BC",X"E2",X"8C",X"0E",X"41",X"2E",X"86",X"E1",X"8E",X"AC",X"42",X"2E",X"10",X"E2",X"8E", + X"8C",X"CC",X"8E",X"B8",X"44",X"2E",X"2E",X"CD",X"8E",X"8E",X"45",X"2E",X"8C",X"26",X"41",X"2F", + X"0E",X"44",X"2F",X"90",X"E1",X"8F",X"30",X"44",X"2F",X"A8",X"AC",X"41",X"0C",X"04",X"E1",X"AC", + X"8C",X"CC",X"8E",X"58",X"42",X"2E",X"44",X"CA",X"8E",X"B8",X"44",X"2E",X"CC",X"CD",X"AC",X"EC", + X"E5",X"AC",X"2C",X"0C",X"E1",X"AB",X"DA",X"42",X"0B",X"44",X"E2",X"AB",X"92",X"41",X"0B",X"8D", + X"BC",X"C9",X"8C",X"30",X"42",X"20",X"9A",X"CB",X"AE",X"24",X"44",X"3C",X"CE",X"CD",X"BA",X"28", + X"0B",X"98",X"E1",X"8D",X"26",X"41",X"2D",X"F4",X"E1",X"8C",X"AE",X"42",X"2D",X"10",X"E2",X"8D", + X"98",X"CC",X"8D",X"AE",X"44",X"2D",X"F0",X"CC",X"A8",X"70",X"45",X"20",X"0E",X"CD",X"8D",X"98", + X"E5",X"8D",X"2E",X"B8",X"E1",X"8E",X"26",X"41",X"2E",X"CE",X"E4",X"8E",X"18",X"44",X"2E",X"86", + X"44",X"2E",X"F0",X"CC",X"8E",X"22",X"8C",X"CD",X"8C",X"42",X"43",X"2C",X"18",X"CA",X"8C",X"7E", + X"E1",X"8B",X"BC",X"45",X"2C",X"04",X"E5",X"8C",X"64",X"41",X"2B",X"20",X"E2",X"8C",X"C6",X"43", + X"8C",X"BC",X"45",X"2C",X"A8",X"42",X"43",X"2E",X"18",X"CA",X"8E",X"7E",X"41",X"2E",X"FA",X"C9", + X"3A",X"C4",X"E1",X"9A",X"40",X"41",X"2E",X"26",X"E2",X"8E",X"F4",X"43",X"2E",X"8F",X"6C",X"41", + X"1C",X"E2",X"62",X"2D",X"FC",X"CA",X"8C",X"64",X"63",X"3C",X"4A",X"CC",X"0E",X"E8",X"64",X"24", + X"6C",X"CD",X"1C",X"2C",X"42",X"C9",X"2D",X"FA",X"E2",X"2D",X"4C",X"CB",X"2D",X"6C",X"E4",X"2D", + X"0F",X"68",X"61",X"3A",X"EC",X"C9",X"0E",X"EA",X"62",X"2E",X"DA",X"CB",X"0D",X"7A",X"64",X"2D", + X"64",X"CC",X"2D",X"62",X"E5",X"3A",X"2E",X"68",X"E0",X"32",X"76",X"C9",X"39",X"EA",X"E2",X"2D", + X"DA",X"CB",X"0D",X"7A",X"64",X"2D",X"EC",X"CA",X"89",X"2D",X"C8",X"C9",X"98",X"EE",X"62",X"32", + X"48",X"CB",X"18",X"EE",X"E4",X"32",X"48",X"CD",X"18",X"28",X"2C",X"6E",X"E1",X"30",X"98",X"CA", + X"1C",X"58",X"63",X"39",X"4E",X"CD",X"9A",X"29",X"4E",X"C9",X"19",X"20",X"8C",X"C9",X"0E",X"68", + X"E2",X"2F",X"04",X"C9",X"2E",X"E8",X"E2",X"2F",X"FC",X"CB",X"2F",X"20",X"E5",X"2F",X"F4",X"CB", + X"0F",X"A0",X"65",X"2F",X"88",X"68",X"62",X"2F",X"8C",X"C9",X"0E",X"A4",X"61",X"2E",X"68",X"CA", + X"2F",X"5C",X"E3",X"2E",X"08",X"CD",X"2F",X"DC",X"E3",X"2E",X"00",X"CD",X"2F",X"2F",X"6E",X"C9", + X"89",X"EE",X"61",X"21",X"06",X"CA",X"8A",X"8C",X"62",X"22",X"0E",X"CC",X"8A",X"AC",X"64",X"22", + X"78",X"CD",X"0F",X"2B",X"6E",X"C9",X"0C",X"FE",X"E1",X"24",X"56",X"C8",X"1A",X"2B",X"64",X"C9", + X"9C",X"34",X"63",X"2C",X"64",X"CC",X"9C",X"28",X"8E",X"4C",X"61",X"2D",X"4C",X"CB",X"0D",X"4C", + X"E4",X"2D",X"3C",X"C9",X"2D",X"1C",X"E2",X"2D",X"3C",X"CC",X"2D",X"1C",X"E5",X"2D",X"24",X"C9", + X"0D",X"8C",X"62",X"2D",X"2C",X"CC",X"0D",X"8C",X"65",X"2D",X"74",X"C9",X"0D",X"FC",X"63",X"2D", + X"F4",X"CC",X"2D",X"2C",X"EC",X"C9",X"0D",X"34",X"E1",X"3B",X"24",X"C9",X"3B",X"D4",X"E1",X"25", + X"A8",X"EC",X"41",X"35",X"84",X"CB",X"BD",X"66",X"42",X"2C",X"E4",X"CA",X"8C",X"26",X"44",X"2C", + X"04",X"44",X"2C",X"44",X"E4",X"BD",X"F4",X"45",X"0D",X"AB",X"68",X"41",X"0F",X"EE",X"E2",X"8C", + X"DC",X"CA",X"8C",X"E4",X"42",X"2C",X"D2",X"CA",X"8C",X"26",X"44",X"2C",X"9C",X"CC",X"8C",X"A4", + X"E4",X"8C",X"32",X"44",X"2C",X"6C",X"E5",X"8C",X"F4",X"45",X"2C",X"A9",X"18",X"41",X"09",X"AC", + X"42",X"22",X"A0",X"CA",X"8E",X"2E",X"43",X"2C",X"80",X"CB",X"8C",X"BA",X"43",X"2E",X"4A",X"CC", + X"0B",X"60",X"E4",X"A9",X"BE",X"45",X"0A",X"8D",X"00",X"41",X"2D",X"AC",X"E2",X"AC",X"FE",X"44", + X"8C",X"C0",X"44",X"2C",X"92",X"CA",X"AC",X"2C",X"FC",X"CB",X"8C",X"38",X"45",X"2C",X"A0",X"CD", + X"2C",X"B4",X"E5",X"8C",X"28",X"8D",X"1C",X"41",X"1B",X"A4",X"E2",X"B8",X"64",X"43",X"18",X"E6", + X"44",X"3F",X"04",X"CD",X"9F",X"2B",X"84",X"C9",X"9B",X"32",X"42",X"2D",X"FA",X"CC",X"AA",X"3C", + X"0C",X"41",X"2D",X"BC",X"E1",X"8D",X"04",X"41",X"2D",X"B4",X"E1",X"8D",X"2C",X"42",X"2D",X"9C", + X"42",X"2D",X"84",X"CA",X"8D",X"BC",X"42",X"2D",X"AC",X"CB",X"8D",X"34",X"43",X"2D",X"A4",X"CB", + X"2D",X"B4",X"E3",X"8D",X"2C",X"44",X"2D",X"9C",X"E4",X"8D",X"24",X"44",X"2D",X"94",X"E4",X"8D", + X"AC",X"CD",X"8D",X"34",X"45",X"2D",X"A4",X"CD",X"8D",X"B4",X"45",X"2D",X"88",X"24",X"CE",X"C9", + X"2C",X"DE",X"E1",X"8C",X"66",X"41",X"2C",X"D6",X"E1",X"8C",X"0C",X"43",X"2C",X"BC",X"E3",X"8C", + X"A4",X"CB",X"8C",X"B4",X"43",X"2C",X"4A",X"CC",X"8C",X"5A",X"44",X"2C",X"42",X"CC",X"8C",X"DA", + X"E4",X"8C",X"0C",X"EC",X"E1",X"A8",X"5C",X"41",X"08",X"E4",X"E1",X"A8",X"54",X"41",X"08",X"8A", + X"63",X"20",X"1A",X"CB",X"88",X"AA",X"63",X"20",X"3A",X"CB",X"88",X"40",X"64",X"20",X"D0",X"CC", + X"08",X"C0",X"E4",X"20",X"D0",X"CC",X"08",X"2B",X"5C",X"C9",X"2C",X"A4",X"E3",X"2E",X"E8",X"CC", + X"88",X"28",X"8F",X"76",X"61",X"2B",X"FE",X"C9",X"0B",X"36",X"62",X"2B",X"BE",X"CA",X"0B",X"46", + X"E2",X"2B",X"8E",X"CB",X"2B",X"C6",X"E2",X"2B",X"86",X"CB",X"2B",X"F6",X"E4",X"2B",X"16",X"CD", + X"0B",X"1C",X"65",X"2B",X"5C",X"CE",X"0B",X"80",X"65",X"2B",X"E8",X"CE",X"0B",X"34",X"64",X"2D", + X"0E",X"6A",X"E1",X"2C",X"56",X"C9",X"2C",X"76",X"E1",X"2C",X"62",X"C9",X"2C",X"46",X"E2",X"2C", + X"52",X"CA",X"0C",X"C6",X"62",X"2C",X"72",X"CA",X"0C",X"6A",X"64",X"2C",X"FE",X"CC",X"0C",X"1C", + X"E5",X"2C",X"98",X"CD",X"2C",X"80",X"E5",X"2C",X"84",X"CD",X"2C",X"21",X"78",X"C9",X"38",X"16", + X"62",X"2A",X"8A",X"CB",X"0C",X"A6",X"63",X"2C",X"D0",X"CB",X"88",X"4C",X"64",X"2C",X"74",X"CC", + X"2C",X"1A",X"E5",X"2C",X"A0",X"CD",X"2F",X"23",X"EC",X"CC",X"2C",X"22",X"E3",X"20",X"78",X"C9", + X"88",X"1A",X"65",X"2D",X"D0",X"CB",X"88",X"16",X"62",X"2E",X"20",X"CA",X"0E",X"CE",X"63",X"20", + X"46",X"C9",X"08",X"BC",X"E3",X"20",X"D2",X"CC",X"08",X"3F",X"6E",X"C9",X"2B",X"7E",X"E1",X"2B", + X"0E",X"CA",X"8B",X"EE",X"61",X"2B",X"7E",X"C9",X"0B",X"AE",X"62",X"23",X"1C",X"CB",X"8D",X"5C", + X"E3",X"25",X"10",X"CB",X"09",X"D0",X"E3",X"21",X"C6",X"CC",X"3B",X"6A",X"E5",X"2B",X"6A",X"CE", + X"0B",X"62",X"65",X"2B",X"C2",X"CD",X"0B",X"56",X"64",X"2B",X"DE",X"CD",X"0B",X"FA",X"65",X"2B", + X"F2",X"CD",X"2B",X"FA",X"E6",X"2B",X"52",X"CD",X"2B",X"D2",X"E5",X"2B",X"52",X"CE",X"2B",X"3F", + X"2A",X"C8",X"8C",X"1E",X"40",X"2C",X"CE",X"C9",X"8C",X"72",X"41",X"2C",X"22",X"C8",X"8C",X"9E", + X"E0",X"8C",X"66",X"41",X"2C",X"F2",X"E1",X"8C",X"08",X"43",X"2C",X"9C",X"E3",X"8C",X"04",X"43", + X"8C",X"B0",X"43",X"2C",X"CA",X"CD",X"8D",X"4E",X"45",X"2B",X"EA",X"CD",X"8D",X"66",X"45",X"2D", + X"FA",X"44",X"2F",X"7E",X"E4",X"8B",X"E2",X"44",X"2B",X"66",X"E4",X"8F",X"72",X"45",X"2B",X"56", + X"45",X"2B",X"F2",X"CD",X"8D",X"05",X"A6",X"9C",X"A6",X"4D",X"A6",X"4E",X"A6",X"59",X"A6",X"50", + X"06",X"41",X"06",X"62",X"06",X"51",X"06",X"54",X"06",X"73",X"06",X"88",X"07",X"8F",X"07",X"98", + X"A7",X"3D",X"A7",X"AA",X"A7",X"AB",X"A7",X"AC",X"A7",X"BD",X"A7",X"B6",X"A7",X"6F",X"A7",X"70", + X"07",X"C3",X"07",X"F0",X"07",X"09",X"07",X"2A",X"07",X"1B",X"07",X"3C",X"07",X"05",X"07",X"26", + X"A7",X"9F",X"A7",X"48",X"A7",X"41",X"A7",X"41",X"A7",X"41",X"A7",X"41",X"A7",X"3B",X"8A",X"C9", + X"2E",X"41",X"0E",X"41",X"12",X"41",X"8E",X"42",X"BA",X"42",X"82",X"42",X"86",X"42",X"B6",X"42", + X"32",X"CA",X"8A",X"CC",X"8E",X"CC",X"AE",X"CC",X"A2",X"CC",X"08",X"CD",X"0E",X"CD",X"2A",X"CD", + X"B6",X"45",X"92",X"45",X"08",X"08",X"E1",X"88",X"E3",X"08",X"E4",X"7C",X"E3",X"40",X"E3",X"34", + X"41",X"B4",X"43",X"94",X"44",X"28",X"8D",X"26",X"44",X"3A",X"44",X"30",X"41",X"36",X"41",X"AE", + X"E1",X"8B",X"9A",X"42",X"9E",X"42",X"84",X"45",X"2C",X"2C",X"E3",X"18",X"E3",X"3C",X"E4",X"00", + X"44",X"2C",X"1A",X"CA",X"1A",X"CD",X"30",X"CA",X"10",X"CD",X"8B",X"02",X"43",X"56",X"43",X"B8", + X"E4",X"89",X"B4",X"45",X"2B",X"DE",X"E3",X"C6",X"E3",X"D6",X"E3",X"8A",X"08",X"43",X"84",X"41", + X"0B",X"0C",X"64",X"E6",X"63",X"FA",X"63",X"2C",X"16",X"C9",X"16",X"CB",X"26",X"C9",X"26",X"CB", + X"2A",X"00",X"E1",X"9C",X"E1",X"2E",X"BA",X"C8",X"BE",X"C8",X"08",X"CB",X"34",X"CB",X"7C",X"CC", + X"EA",X"CC",X"08",X"28",X"88",X"18",X"61",X"42",X"62",X"2C",X"64",X"1C",X"64",X"80",X"64",X"84", + X"E1",X"DA",X"E2",X"B0",X"E4",X"2C",X"58",X"CA",X"64",X"CA",X"7C",X"CC",X"58",X"CC",X"2C",X"EE", + X"61",X"74",X"62",X"7C",X"63",X"64",X"64",X"20",X"48",X"C9",X"48",X"CB",X"00",X"CD",X"DC",X"CC", + X"60",X"CC",X"54",X"C9",X"54",X"CB",X"94",X"CD",X"2D",X"5A",X"E2",X"7E",X"E4",X"72",X"E4",X"EC", + X"64",X"E0",X"64",X"22",X"6A",X"C9",X"6E",X"C9",X"56",X"CA",X"D2",X"CA",X"8A",X"CC",X"8E",X"CC", + X"02",X"CC",X"06",X"CC",X"D0",X"CA",X"D4",X"CA",X"2C",X"3C",X"E3",X"AE",X"E3",X"00",X"E5",X"9A", + X"65",X"2C",X"52",X"CB",X"56",X"CB",X"E0",X"CB",X"E4",X"CB",X"0C",X"60",X"62",X"40",X"63",X"FE", + X"E2",X"DE",X"E3",X"2C",X"18",X"CA",X"D8",X"CB",X"26",X"CA",X"E6",X"CB",X"2C",X"58",X"E3",X"5C", + X"63",X"C0",X"63",X"C4",X"63",X"2C",X"06",X"CA",X"82",X"CA",X"32",X"CA",X"36",X"CA",X"0C",X"E6", + X"E2",X"FA",X"E2",X"86",X"E4",X"9A",X"E4",X"2C",X"AE",X"CD",X"8A",X"CD",X"B2",X"CD",X"B6",X"CD", + X"0C",X"48",X"61",X"4C",X"61",X"C8",X"61",X"CC",X"61",X"28",X"09",X"2E",X"08",X"28",X"0D",X"2B", + X"28",X"2C",X"0E",X"2F",X"28",X"20",X"09",X"22",X"28",X"23",X"0C",X"25",X"28",X"2A",X"0F",X"38", + X"08",X"39",X"1A",X"3B",X"08",X"3C",X"1D",X"3E",X"08",X"3F",X"98",X"31",X"08",X"32",X"9B",X"34", + X"28",X"35",X"1E",X"37",X"28",X"A8",X"21",X"AA",X"28",X"AB",X"0E",X"22",X"08",X"2C",X"BC",X"35", + X"1B",X"AF",X"19",X"B7",X"84",X"F7",X"57",X"0F",X"AB",X"0F",X"57",X"F7",X"57",X"F7",X"73",X"FF", + X"F7",X"F7",X"F7",X"F7",X"F7",X"97",X"97",X"97",X"97",X"97",X"F7",X"F7",X"F7",X"97",X"97",X"97", + X"15",X"B7",X"17",X"F7",X"17",X"FF",X"75",X"FF",X"77",X"F7",X"17",X"B7",X"17",X"F7",X"57",X"FD", + X"F7",X"D7",X"F1",X"F7",X"F1",X"F7",X"F7",X"91",X"F7",X"F7",X"F7",X"F7",X"F7",X"F7",X"97",X"97", + X"17",X"B7",X"A8",X"F7",X"57",X"F7",X"77",X"FF",X"17",X"FF",X"77",X"FF",X"17",X"B5",X"77",X"FF", + X"D7",X"F7",X"F7",X"F5",X"F7",X"F7",X"F7",X"F7",X"F7",X"97",X"97",X"D5",X"D7",X"F7",X"97",X"97", + X"77",X"FF",X"17",X"B5",X"77",X"F7",X"17",X"B7",X"57",X"F7",X"75",X"B7",X"17",X"B7",X"77",X"FD", + X"F7",X"F7",X"D7",X"97",X"97",X"97",X"97",X"D7",X"D7",X"F7",X"F7",X"D7",X"97",X"F7",X"D7",X"97", + X"17",X"B3",X"57",X"B7",X"17",X"B7",X"13",X"B3",X"17",X"B7",X"17",X"B7",X"17",X"F7",X"57",X"F7", + X"F7",X"D1",X"F7",X"D7",X"D7",X"F7",X"D7",X"D7",X"D7",X"97",X"97",X"97",X"97",X"F7",X"F7",X"F1", + X"77",X"F7",X"57",X"FF",X"77",X"FF",X"77",X"FF",X"77",X"FF",X"77",X"FF",X"77",X"FF",X"77",X"FF", + X"D7",X"D7",X"97",X"91",X"F7",X"D7",X"D7",X"97",X"D7",X"97",X"F1",X"F7",X"F7",X"97",X"97",X"97", + X"57",X"B1",X"57",X"F7",X"77",X"FF",X"71",X"B7",X"17",X"B7",X"77",X"B7",X"77",X"F9",X"77",X"FF", + X"F1",X"F7",X"F7",X"F7",X"D7",X"D7",X"D7",X"D7",X"C8",X"CB",X"C9",X"CC",X"CA",X"CD",X"C8",X"CB", + X"C6",X"E0",X"C7",X"E1",X"C0",X"E4",X"42",X"E5",X"43",X"E6",X"C0",X"71",X"47",X"72",X"D0",X"73", + X"C8",X"DE",X"DC",X"DF",X"DD",X"D0",X"C8",X"D3",X"D1",X"D4",X"D2",X"D5",X"2E",X"18",X"CA",X"2A", + X"0A",X"A6",X"62",X"0A",X"0A",X"58",X"64",X"0A",X"0A",X"EE",X"64",X"0A",X"0A",X"08",X"66",X"0E", + X"2A",X"BE",X"E6",X"2D",X"2A",X"2F",X"A8",X"C9",X"29",X"2A",X"A8",X"CC",X"29",X"2A",X"38",X"CB", + X"09",X"0A",X"56",X"65",X"09",X"0A",X"20",X"61",X"09",X"0A",X"E2",X"65",X"09",X"0A",X"38",X"63", + X"29",X"2A",X"09",X"68",X"E3",X"2C",X"2A",X"7E",X"E3",X"23",X"2A",X"F2",X"E3",X"2B",X"2A",X"28", + X"65",X"89",X"0E",X"38",X"65",X"88",X"0E",X"CA",X"60",X"0F",X"0D",X"EA",X"60",X"0F",X"0D",X"80", + X"E1",X"21",X"2A",X"80",X"E1",X"21",X"2A",X"28",X"28",X"A8",X"6A",X"BA",X"6A",X"BA",X"6A",X"BA", + X"4A",X"3A",X"4A",X"3A",X"4A",X"3A",X"4A",X"3A",X"4A",X"3A",X"59",X"3A",X"AE",X"3A",X"AE",X"3A", + X"15",X"BA",X"01",X"BA",X"01",X"BA",X"01",X"BA",X"01",X"BA",X"01",X"BA",X"01",X"BA",X"B2",X"67", + X"32",X"CF",X"C8",X"58",X"C8",X"58",X"C8",X"58",X"C8",X"58",X"3B",X"3A",X"68",X"5A",X"68",X"5A", + X"7E",X"BA",X"7E",X"BA",X"7E",X"BA",X"7E",X"BA",X"5B",X"BA",X"10",X"BA",X"10",X"BA",X"09",X"7B", + X"89",X"5B",X"5E",X"3A",X"5E",X"3A",X"5E",X"3A",X"5E",X"3A",X"59",X"3A",X"CC",X"3A",X"CC",X"3A", + X"4C",X"BA",X"4C",X"BA",X"4C",X"BA",X"4C",X"BA",X"4C",X"BA",X"4C",X"BA",X"4C",X"BA",X"4C",X"BA", + X"CC",X"3A",X"CC",X"3A",X"CC",X"3A",X"CC",X"3A",X"CC",X"3A",X"CC",X"3A",X"CC",X"3A",X"CC",X"3A", + X"4C",X"BA",X"4C",X"BA",X"7E",X"BA",X"6F",X"BA",X"5B",X"BA",X"64",X"76",X"1A",X"BA",X"1F",X"BA", + X"9F",X"3A",X"9F",X"3A",X"9F",X"3A",X"9F",X"3A",X"9F",X"3A",X"2C",X"3A",X"E9",X"DE",X"EE",X"DE", + X"46",X"76",X"46",X"76",X"46",X"76",X"46",X"76",X"46",X"76",X"50",X"76",X"73",X"76",X"55",X"76", + X"FE",X"3A",X"FE",X"3A",X"FE",X"3A",X"FE",X"3A",X"FE",X"3A",X"FE",X"3A",X"FE",X"3A",X"FE",X"3A", + X"7E",X"BA",X"7E",X"BA",X"7E",X"BA",X"7E",X"BA",X"73",X"BA",X"98",X"E8",X"BA",X"80",X"BC",X"99", + X"1E",X"3B",X"F1",X"BB",X"91",X"08",X"B4",X"D3",X"B4",X"30",X"E9",X"3C",X"4D",X"4D",X"A8",X"4A", + X"E0",X"9D",X"60",X"08",X"F7",X"BA",X"60",X"6A",X"98",X"64",X"BB",X"DC",X"69",X"28",X"28",X"28", + X"2E",X"5B",X"90",X"B7",X"B3",X"79",X"33",X"30",X"63",X"3B",X"FA",X"49",X"88",X"34",X"B3",X"68", + X"68",X"08",X"BC",X"BC",X"BF",X"BD",X"08",X"6B",X"BB",X"8F",X"BC",X"08",X"6B",X"BB",X"4E",X"32", + X"29",X"8B",X"78",X"08",X"67",X"3A",X"AC",X"E9",X"B9",X"C8",X"3F",X"C6",X"26",X"39",X"27",X"3B", + X"D8",X"C8",X"48",X"B7",X"A6",X"AD",X"C7",X"28",X"85",X"D7",X"96",X"84",X"33",X"2F",X"AA",X"2C", + X"28",X"98",X"A8",X"3B",X"B3",X"09",X"F0",X"48",X"28",X"88",X"30",X"08",X"B3",X"3B",X"A9",X"10", + X"68",X"24",X"20",X"70",X"28",X"BB",X"BB",X"29",X"58",X"68",X"26",X"20",X"E0",X"28",X"BB",X"BB", + X"A9",X"38",X"E9",X"1D",X"2A",X"C0",X"A8",X"3B",X"B3",X"09",X"80",X"49",X"38",X"8A",X"C6",X"08", + X"BB",X"BB",X"29",X"FA",X"6A",X"32",X"22",X"D2",X"28",X"BB",X"BB",X"29",X"EA",X"6B",X"32",X"22", + X"52",X"08",X"B3",X"3B",X"A9",X"6E",X"EC",X"9A",X"2A",X"F2",X"A8",X"3B",X"B3",X"09",X"62",X"4D", + X"32",X"22",X"D2",X"28",X"BB",X"BB",X"29",X"E6",X"6E",X"31",X"23",X"20",X"29",X"BB",X"BB",X"29", + X"F2",X"4F",X"BF",X"8C",X"28",X"09",X"B3",X"3B",X"A9",X"05",X"68",X"99",X"2A",X"70",X"A8",X"3B", + X"BB",X"29",X"11",X"61",X"32",X"22",X"D2",X"28",X"BB",X"BB",X"29",X"1B",X"62",X"32",X"21",X"C9", + X"08",X"3B",X"3B",X"09",X"17",X"CB",X"9C",X"89",X"73",X"08",X"3B",X"3B",X"09",X"01",X"CC",X"9A", + X"0A",X"D2",X"28",X"BB",X"33",X"29",X"55",X"65",X"1A",X"22",X"D2",X"28",X"33",X"BB",X"29",X"09", + X"CE",X"9A",X"8A",X"F2",X"08",X"3B",X"3B",X"09",X"05",X"CF",X"99",X"8A",X"70",X"08",X"3B",X"3B", + X"29",X"01",X"78",X"9C",X"28",X"3C",X"1D",X"AE",X"07",X"BF",X"17",X"D7",X"2D",X"AD",X"05",X"BD", + X"A5",X"B7",X"74",X"8E",X"0F",X"DB",X"08",X"5F",X"3C",X"09",X"08",X"08",X"18",X"19",X"F7",X"08", + X"5B",X"BB",X"2C",X"51",X"0C",X"C1",X"0D",X"D1",X"0E",X"C1",X"0D",X"A0",X"28",X"2C",X"24",X"2F", + X"6F",X"27",X"67",X"E7",X"F7",X"24",X"E4",X"50",X"65",X"00",X"24",X"8C",X"89",X"6B",X"08",X"70", + X"33",X"29",X"D2",X"23",X"0A",X"21",X"79",X"28",X"F0",X"BB",X"29",X"EE",X"0C",X"24",X"2E",X"6A", + X"08",X"60",X"3B",X"0A",X"6B",X"1B",X"32",X"9F",X"8C",X"0E",X"4A",X"08",X"60",X"3B",X"0A",X"A3", + X"3B",X"D2",X"1F",X"23",X"2E",X"B4",X"28",X"C8",X"33",X"2A",X"F3",X"3B",X"6A",X"A8",X"0B",X"2E", + X"BC",X"08",X"60",X"3B",X"0A",X"3D",X"1C",X"04",X"28",X"8A",X"0E",X"3E",X"08",X"60",X"3B",X"0A", + X"77",X"3C",X"EE",X"A8",X"0B",X"2E",X"14",X"28",X"E0",X"BB",X"2A",X"7D",X"3D",X"2A",X"21",X"22", + X"0D",X"AD",X"08",X"60",X"3B",X"0A",X"17",X"1D",X"4C",X"29",X"8C",X"0D",X"3F",X"08",X"60",X"3B", + X"2A",X"41",X"3D",X"FE",X"21",X"24",X"2D",X"BF",X"28",X"C8",X"33",X"2A",X"2D",X"3E",X"B2",X"A9", + X"08",X"F7",X"B7",X"BF",X"3E",X"AD",X"2C",X"08",X"3F",X"AF",X"2E",X"A5",X"A4",X"23",X"08",X"B8", + X"28",X"D5",X"24",X"2F",X"05",X"D7",X"76",X"8D",X"28",X"28",X"28",X"28",X"28",X"28",X"28",X"28", + X"BA",X"0E",X"E6",X"08",X"FF",X"3C",X"A9",X"14",X"27",X"19",X"AE",X"68",X"A8",X"5F",X"B4",X"09", + X"28",X"B8",X"38",X"2E",X"72",X"28",X"7F",X"BC",X"29",X"EE",X"B8",X"39",X"2E",X"E8",X"28",X"7F", + X"B4",X"09",X"CE",X"38",X"A8",X"3C",X"29",X"3C",X"BA",X"3C",X"3B",X"3C",X"3B",X"3C",X"BA",X"3C", + X"21",X"BC",X"28",X"BC",X"3A",X"2E",X"EE",X"28",X"7F",X"BC",X"2B",X"28",X"28",X"28",X"28",X"99", + X"33",X"1A",X"AE",X"6E",X"A8",X"6F",X"B4",X"0A",X"A8",X"08",X"A8",X"08",X"BA",X"0E",X"E6",X"08", + X"7F",X"BC",X"2A",X"04",X"29",X"D0",X"29",X"28",X"D8",X"C8",X"48",X"B7",X"A6",X"AD",X"C7",X"68", + X"56",X"F7",X"16",X"A4",X"3B",X"0F",X"A2",X"08",X"57",X"7F",X"F7",X"7E",X"F7",X"7F",X"47",X"2D", + X"84",X"9D",X"96",X"CD",X"88",X"2F",X"AA",X"26",X"22",X"0A",X"28",X"7F",X"BC",X"2A",X"EC",X"2A", + X"D0",X"0A",X"BA",X"8A",X"02",X"08",X"FF",X"3C",X"AA",X"DC",X"AD",X"DC",X"AD",X"18",X"AE",X"DA", + X"28",X"7F",X"BC",X"2A",X"44",X"28",X"A4",X"29",X"38",X"2E",X"72",X"28",X"7F",X"BC",X"2C",X"38", + X"AE",X"78",X"AE",X"50",X"AE",X"38",X"AF",X"49",X"5D",X"76",X"BE",X"34",X"5D",X"F7",X"BE",X"C6", + X"2B",X"A0",X"21",X"5D",X"56",X"25",X"14",X"C6",X"2B",X"5D",X"77",X"25",X"12",X"28",X"4C",X"C6", + X"A9",X"EF",X"5D",X"76",X"A8",X"C6",X"56",X"90",X"5D",X"F7",X"A8",X"22",X"AF",X"44",X"5D",X"F5", + X"2F",X"5D",X"74",X"20",X"54",X"56",X"2A",X"D8",X"EB",X"8C",X"6B",X"5D",X"34",X"3E",X"DD",X"76", + X"BE",X"C6",X"AF",X"A0",X"29",X"5D",X"D6",X"1F",X"94",X"C6",X"AF",X"5D",X"F7",X"1F",X"4D",X"D4", + X"FA",X"A1",X"AC",X"BC",X"CD",X"66",X"68",X"32",X"20",X"4C",X"D6",X"2A",X"F8",X"4D",X"8C",X"6B", + X"92",X"88",X"44",X"87",X"68",X"32",X"0F",X"44",X"DE",X"28",X"78",X"A1",X"3F",X"3D",X"A2",X"0B", + X"EC",X"3F",X"32",X"6D",X"E8",X"B2",X"3A",X"4C",X"32",X"DA",X"EE",X"49",X"DD",X"B4",X"3E",X"5D", + X"D6",X"1E",X"EE",X"0F",X"6A",X"24",X"4B",X"5D",X"D6",X"8D",X"94",X"56",X"0B",X"30",X"0A",X"36", + X"29",X"5D",X"77",X"25",X"EB",X"8C",X"6B",X"5D",X"CB",X"28",X"7E",X"4A",X"CA",X"BD",X"12",X"A9", + X"40",X"87",X"4A",X"C2",X"3D",X"32",X"1E",X"44",X"94",X"B2",X"1E",X"44",X"EE",X"0B",X"68",X"32", + X"3F",X"4C",X"14",X"B2",X"3F",X"4C",X"D6",X"30",X"30",X"EC",X"D6",X"2B",X"20",X"60",X"DD",X"ED", + X"5D",X"A1",X"28",X"44",X"4D",X"AA",X"4C",X"5D",X"4B",X"08",X"B6",X"5D",X"A1",X"48",X"44",X"4D", + X"02",X"6C",X"DD",X"4B",X"28",X"96",X"DD",X"A1",X"60",X"4C",X"CD",X"A2",X"6C",X"5D",X"CB",X"28", + X"B6",X"5D",X"A1",X"08",X"46",X"4D",X"AA",X"4C",X"5D",X"4B",X"08",X"A6",X"5D",X"A1",X"28",X"46", + X"CD",X"A2",X"6C",X"5D",X"CB",X"28",X"96",X"5D",X"21",X"68",X"EE",X"4D",X"02",X"6C",X"DD",X"4B", + X"08",X"B6",X"5D",X"C1",X"96",X"0F",X"EE",X"0F",X"A1",X"36",X"3D",X"6F",X"26",X"08",X"01",X"76", + X"32",X"25",X"EC",X"6B",X"A4",X"6B",X"28",X"28",X"29",X"2A",X"2B",X"2A",X"2B",X"2A",X"DD",X"4B", + X"08",X"16",X"96",X"F7",X"B2",X"3F",X"40",X"CB",X"AE",X"89",X"4D",X"48",X"4D",X"CA",X"E0",X"3D", + X"12",X"AC",X"E8",X"DE",X"29",X"B0",X"2F",X"94",X"32",X"AC",X"E8",X"6B",X"C4",X"BD",X"BF",X"B2", + X"29",X"40",X"B2",X"28",X"40",X"CB",X"1E",X"B8",X"3F",X"B2",X"2C",X"40",X"92",X"0E",X"44",X"56", + X"2B",X"80",X"0B",X"AF",X"00",X"20",X"12",X"21",X"EC",X"7E",X"08",X"6B",X"29",X"BE",X"12",X"21", + X"CC",X"4D",X"97",X"BF",X"21",X"48",X"A8",X"BE",X"AB",X"78",X"4B",X"E6",X"4A",X"18",X"B6",X"3C", + X"CB",X"AB",X"3D",X"20",X"2C",X"29",X"EB",X"22",X"BE",X"4D",X"DD",X"B2",X"CB",X"E6",X"CA",X"AA", + X"B6",X"3C",X"4B",X"AB",X"BF",X"2E",X"88",X"32",X"BD",X"40",X"AF",X"20",X"7A",X"2E",X"E9",X"97", + X"C5",X"EA",X"56",X"A3",X"0E",X"68",X"E6",X"D8",X"D6",X"48",X"20",X"63",X"12",X"A9",X"48",X"87", + X"4A",X"07",X"B6",X"32",X"20",X"40",X"AF",X"A0",X"36",X"C5",X"7D",X"2E",X"A0",X"BE",X"28",X"A1", + X"32",X"4B",X"CB",X"EE",X"00",X"26",X"0E",X"32",X"B7",X"45",X"6A",X"4B",X"56",X"20",X"2A",X"4B", + X"7E",X"29",X"06",X"28",X"35",X"20",X"AC",X"29",X"6B",X"5A",X"B6",X"36",X"A9",X"B2",X"20",X"40", + X"32",X"A1",X"48",X"9F",X"32",X"A3",X"48",X"32",X"BE",X"48",X"A7",X"A0",X"2D",X"36",X"25",X"B2", + X"B6",X"40",X"79",X"C1",X"21",X"48",X"A8",X"97",X"CD",X"EA",X"4B",X"E6",X"4A",X"10",X"B6",X"3C", + X"CB",X"AB",X"CD",X"DD",X"B2",X"2E",X"68",X"BE",X"2B",X"4B",X"66",X"4A",X"17",X"BE",X"1C",X"BD", + X"4A",X"A1",X"B6",X"4B",X"23",X"29",X"6B",X"91",X"B6",X"9F",X"B2",X"2A",X"C8",X"73",X"EE",X"70", + X"D6",X"48",X"30",X"20",X"D6",X"F8",X"00",X"2C",X"D6",X"E8",X"20",X"AB",X"12",X"A9",X"48",X"87", + X"80",X"8D",X"92",X"9A",X"C8",X"C6",X"2E",X"56",X"2C",X"B0",X"BC",X"56",X"28",X"30",X"B8",X"32", + X"DA",X"4E",X"CB",X"77",X"20",X"67",X"3E",X"58",X"EE",X"20",X"C5",X"EC",X"EB",X"3E",X"BF",X"73", + X"EE",X"98",X"DE",X"98",X"80",X"18",X"D3",X"C6",X"2F",X"56",X"AB",X"20",X"29",X"56",X"AE",X"20", + X"2D",X"56",X"2F",X"CA",X"A2",X"BF",X"12",X"A9",X"48",X"87",X"00",X"25",X"12",X"32",X"48",X"C6", + X"8E",X"56",X"88",X"B0",X"2D",X"56",X"0C",X"30",X"29",X"32",X"72",X"46",X"4B",X"77",X"80",X"1D", + X"C5",X"64",X"EE",X"20",X"3E",X"B8",X"32",X"DA",X"EE",X"D2",X"32",X"C3",X"EE",X"92",X"E0",X"4E", + X"4B",X"1F",X"B2",X"60",X"46",X"36",X"09",X"B2",X"2A",X"40",X"D3",X"C6",X"39",X"56",X"39",X"4A", + X"C3",X"BF",X"D6",X"B8",X"CA",X"C3",X"37",X"DE",X"39",X"4A",X"C3",X"BF",X"D6",X"A8",X"20",X"22", + X"92",X"0E",X"44",X"87",X"4A",X"E3",X"3F",X"CB",X"5D",X"3F",X"DE",X"09",X"A0",X"0F",X"92",X"0E", + X"EC",X"AF",X"CA",X"C3",X"37",X"3F",X"32",X"A9",X"E8",X"D3",X"E6",X"04",X"D6",X"04",X"00",X"EB", + X"DE",X"80",X"80",X"DF",X"DE",X"8C",X"80",X"DB",X"92",X"28",X"40",X"87",X"6A",X"1E",X"B8",X"32", + X"21",X"48",X"A7",X"6A",X"3E",X"B0",X"53",X"EE",X"6A",X"4A",X"B1",X"BF",X"D6",X"6A",X"00",X"B3", + X"92",X"2A",X"40",X"87",X"A0",X"AB",X"26",X"08",X"D3",X"56",X"48",X"20",X"0D",X"AC",X"DE",X"0A", + X"20",X"A1",X"12",X"2E",X"EC",X"DE",X"2A",X"B0",X"22",X"96",X"18",X"4B",X"68",X"A0",X"2A",X"CD", + X"64",X"B2",X"72",X"46",X"92",X"60",X"46",X"4B",X"1F",X"B2",X"60",X"46",X"96",X"00",X"B2",X"2A", + X"E8",X"3F",X"32",X"A8",X"E8",X"B2",X"21",X"48",X"EB",X"3E",X"10",X"92",X"3C",X"4C",X"CB",X"D7", + X"4A",X"E3",X"3F",X"32",X"28",X"40",X"AF",X"CA",X"1E",X"B8",X"96",X"09",X"B2",X"28",X"40",X"AE", + X"2B",X"D3",X"E6",X"6A",X"00",X"2A",X"2E",X"23",X"12",X"2E",X"EC",X"DE",X"2A",X"B0",X"2B",X"24", + X"24",X"AC",X"92",X"89",X"44",X"C6",X"F0",X"88",X"6B",X"18",X"B8",X"32",X"29",X"40",X"AF",X"CA", + X"3E",X"B0",X"16",X"29",X"32",X"A9",X"E8",X"06",X"29",X"92",X"2E",X"4C",X"D6",X"2A",X"20",X"2F", + X"D3",X"C6",X"EA",X"20",X"AA",X"2E",X"29",X"32",X"29",X"44",X"EE",X"F0",X"4A",X"1E",X"30",X"99", + X"32",X"21",X"4C",X"4D",X"29",X"B3",X"12",X"A0",X"48",X"87",X"00",X"22",X"12",X"A9",X"48",X"87", + X"6A",X"23",X"30",X"CB",X"2E",X"B9",X"3F",X"B2",X"A3",X"40",X"4D",X"0C",X"2C",X"27",X"B2",X"BE", + X"48",X"C6",X"2E",X"A0",X"20",X"32",X"32",X"4C",X"E6",X"F6",X"32",X"32",X"4C",X"32",X"A9",X"48", + X"AF",X"4A",X"15",X"B8",X"4D",X"09",X"33",X"5D",X"4B",X"08",X"FE",X"CA",X"5E",X"BA",X"92",X"BE", + X"48",X"C6",X"2E",X"20",X"A6",X"32",X"32",X"4C",X"CB",X"EF",X"20",X"3B",X"F6",X"29",X"32",X"32", + X"CC",X"36",X"DF",X"B2",X"BC",X"44",X"3F",X"B2",X"A1",X"40",X"96",X"04",X"4D",X"3D",X"ED",X"32", + X"32",X"4C",X"CB",X"77",X"20",X"25",X"F6",X"08",X"32",X"32",X"4C",X"36",X"29",X"B2",X"AB",X"48", + X"6B",X"B5",X"30",X"32",X"A2",X"40",X"EE",X"09",X"A0",X"1B",X"92",X"72",X"CE",X"87",X"80",X"8D", + X"6F",X"32",X"C4",X"4E",X"E6",X"08",X"50",X"20",X"30",X"C6",X"08",X"20",X"30",X"32",X"DA",X"4E", + X"AF",X"A0",X"AF",X"9F",X"A1",X"3C",X"B4",X"CB",X"3B",X"B9",X"3F",X"A1",X"6C",X"3C",X"6B",X"9B", + X"B1",X"C6",X"08",X"20",X"C0",X"36",X"2B",X"A1",X"0A",X"BC",X"EB",X"33",X"B1",X"4D",X"92",X"FB", + X"26",X"08",X"4D",X"D4",X"F2",X"32",X"29",X"44",X"DE",X"C3",X"5A",X"C7",X"30",X"36",X"4B",X"56", + X"25",X"B0",X"2A",X"36",X"25",X"B2",X"21",X"4C",X"DD",X"4B",X"28",X"7E",X"00",X"22",X"16",X"29", + X"A1",X"90",X"B4",X"AE",X"AB",X"CB",X"3D",X"B9",X"92",X"2A",X"C8",X"C6",X"88",X"A0",X"3F",X"32", + X"B6",X"48",X"E6",X"2E",X"00",X"39",X"12",X"32",X"4C",X"4B",X"57",X"A0",X"22",X"D6",X"08",X"B2", + X"9A",X"44",X"96",X"09",X"B2",X"2B",X"40",X"32",X"72",X"46",X"EE",X"F0",X"A0",X"88",X"96",X"09", + X"21",X"05",X"34",X"6B",X"1B",X"B1",X"16",X"2A",X"21",X"FF",X"34",X"26",X"29",X"A2",X"29",X"4C", + X"B2",X"0E",X"44",X"32",X"1E",X"44",X"AF",X"4A",X"39",X"B9",X"95",X"B2",X"1E",X"44",X"6B",X"BE", + X"11",X"96",X"2A",X"B2",X"3E",X"4C",X"12",X"25",X"EC",X"94",X"A0",X"B2",X"0D",X"4C",X"12",X"DA", + X"46",X"87",X"80",X"8F",X"5D",X"4B",X"08",X"06",X"92",X"72",X"46",X"C6",X"00",X"A0",X"0C",X"5D", + X"CB",X"28",X"EE",X"92",X"23",X"48",X"A7",X"A0",X"38",X"92",X"3C",X"4C",X"CB",X"D7",X"00",X"A0", + X"DE",X"E0",X"B0",X"2C",X"96",X"09",X"B2",X"2B",X"40",X"32",X"9A",X"44",X"4B",X"F7",X"80",X"98", + X"E6",X"97",X"32",X"32",X"EC",X"96",X"8A",X"4D",X"35",X"6D",X"21",X"12",X"EC",X"21",X"20",X"28", + X"36",X"0E",X"4B",X"16",X"01",X"BD",X"A0",X"F2",X"4D",X"B6",X"9E",X"32",X"AC",X"40",X"AF",X"A0", + X"27",X"92",X"00",X"D3",X"E6",X"29",X"16",X"28",X"32",X"A0",X"D3",X"6A",X"C9",X"B2",X"12",X"60", + X"F3",X"C6",X"09",X"36",X"08",X"B2",X"C8",X"F3",X"6A",X"C1",X"BA",X"32",X"88",X"F3",X"EE",X"09", + X"16",X"28",X"32",X"20",X"D3",X"6A",X"C9",X"B2",X"12",X"A0",X"E8",X"AF",X"20",X"22",X"CD",X"75", + X"4C",X"32",X"38",X"42",X"DE",X"F7",X"A0",X"9A",X"92",X"0E",X"44",X"56",X"0B",X"CA",X"24",X"4B", + X"12",X"21",X"EC",X"94",X"32",X"21",X"EC",X"4D",X"A4",X"6B",X"12",X"21",X"EC",X"95",X"32",X"21", + X"44",X"49",X"92",X"AC",X"40",X"87",X"92",X"38",X"42",X"A0",X"D5",X"B9",X"38",X"42",X"A1",X"2E", + X"EC",X"DE",X"09",X"4A",X"88",X"B2",X"D6",X"22",X"CA",X"00",X"12",X"A1",X"40",X"4C",X"D6",X"23", + X"4A",X"17",X"32",X"56",X"BA",X"20",X"3A",X"56",X"BB",X"A0",X"36",X"32",X"E0",X"45",X"4B",X"67", + X"CA",X"40",X"B1",X"C6",X"57",X"B2",X"E8",X"4D",X"02",X"EF",X"4D",X"32",X"E1",X"4D",X"EB",X"BC", + X"32",X"32",X"E8",X"45",X"4B",X"67",X"4A",X"C0",X"31",X"C6",X"5F",X"B2",X"E8",X"45",X"82",X"4F", + X"4D",X"32",X"61",X"4D",X"FE",X"22",X"4F",X"32",X"3D",X"48",X"EE",X"2D",X"2E",X"A8",X"CD",X"41", + X"6E",X"36",X"99",X"4D",X"B5",X"4D",X"6B",X"C0",X"31",X"EF",X"92",X"2B",X"C8",X"87",X"A0",X"AE", + X"12",X"32",X"4C",X"C6",X"68",X"70",X"20",X"AE",X"21",X"08",X"4C",X"DE",X"24",X"2F",X"0F",X"2F", + X"26",X"08",X"47",X"29",X"4B",X"66",X"80",X"1E",X"06",X"9A",X"01",X"4B",X"F6",X"A0",X"2F",X"4B", + X"D6",X"32",X"32",X"4C",X"F6",X"68",X"32",X"32",X"4C",X"36",X"00",X"4D",X"BD",X"6D",X"3B",X"3A", + X"DE",X"F7",X"4A",X"C0",X"31",X"CB",X"46",X"B9",X"7E",X"89",X"07",X"2F",X"07",X"6F",X"26",X"08", + X"09",X"76",X"A7",X"A0",X"C1",X"A3",X"23",X"76",X"03",X"C6",X"29",X"76",X"20",X"2F",X"D6",X"D1", + X"90",X"D4",X"6B",X"A1",X"32",X"56",X"AF",X"B0",X"DD",X"A3",X"A3",X"76",X"5D",X"EE",X"29",X"10", + X"30",X"20",X"EE",X"24",X"90",X"30",X"4F",X"CB",X"48",X"B2",X"FE",X"24",X"90",X"DA",X"F6",X"B2", + X"21",X"19",X"A8",X"29",X"4B",X"E6",X"6A",X"24",X"EB",X"5D",X"4B",X"08",X"FE",X"CA",X"84",X"4B", + X"DD",X"4B",X"28",X"5E",X"16",X"0E",X"CD",X"BD",X"6D",X"36",X"29",X"B2",X"A1",X"48",X"BF",X"B2", + X"BE",X"44",X"B2",X"8D",X"CC",X"B2",X"BF",X"44",X"A1",X"90",X"B4",X"A2",X"A9",X"44",X"94",X"B2", + X"2E",X"4C",X"EB",X"8C",X"6B",X"75",X"E6",X"48",X"4F",X"75",X"14",X"34",X"E6",X"B7",X"B1",X"67", + X"49",X"5D",X"4B",X"08",X"96",X"32",X"28",X"40",X"AF",X"20",X"8B",X"32",X"1C",X"44",X"4B",X"77", + X"C8",X"3F",X"32",X"3C",X"EC",X"49",X"12",X"3C",X"EC",X"4B",X"57",X"68",X"BF",X"B2",X"3C",X"4C", + X"49",X"9F",X"B2",X"8D",X"44",X"32",X"1E",X"44",X"94",X"C6",X"0B",X"B2",X"1E",X"44",X"A0",X"8B", + X"12",X"3F",X"EC",X"94",X"E6",X"2B",X"F6",X"08",X"32",X"3F",X"EC",X"92",X"3F",X"4C",X"E6",X"2B", + X"27",X"6F",X"26",X"08",X"A1",X"2C",X"3C",X"29",X"D6",X"B2",X"09",X"44",X"A3",X"76",X"B2",X"0A", + X"EC",X"6B",X"16",X"B1",X"DD",X"D6",X"3E",X"94",X"E6",X"2B",X"DD",X"F7",X"3E",X"A0",X"09",X"5D", + X"D6",X"1F",X"94",X"C6",X"0B",X"5D",X"F7",X"1F",X"A1",X"69",X"BD",X"4D",X"CE",X"48",X"6B",X"24", + X"6B",X"5D",X"34",X"3E",X"DD",X"D6",X"3E",X"EE",X"2B",X"A0",X"09",X"5D",X"56",X"3F",X"14",X"EE", + X"0B",X"5D",X"F7",X"1F",X"5D",X"4B",X"9A",X"4E",X"4A",X"7F",X"BD",X"32",X"08",X"44",X"EE",X"0C", + X"20",X"B9",X"12",X"A0",X"E8",X"AF",X"EA",X"20",X"14",X"92",X"12",X"4C",X"CB",X"E7",X"20",X"26", + X"A1",X"28",X"F1",X"5D",X"D6",X"0D",X"BD",X"67",X"4B",X"EE",X"B6",X"08",X"A0",X"1D",X"92",X"DA", + X"EC",X"4B",X"67",X"A0",X"7B",X"A1",X"68",X"D1",X"DD",X"D6",X"2D",X"BD",X"47",X"4B",X"6E",X"B6", + X"08",X"20",X"4D",X"5D",X"4B",X"9A",X"06",X"5D",X"4B",X"9A",X"C6",X"5D",X"56",X"9C",X"92",X"1D", + X"E8",X"9B",X"10",X"BC",X"53",X"B2",X"3D",X"48",X"21",X"32",X"EB",X"36",X"08",X"26",X"28",X"06", + X"28",X"4B",X"66",X"20",X"9C",X"2E",X"0A",X"29",X"D6",X"13",X"B0",X"0D",X"06",X"9E",X"6B",X"09", + X"14",X"BF",X"C5",X"62",X"CB",X"2E",X"CB",X"4E",X"0E",X"2E",X"B7",X"CD",X"6A",X"B6",X"28",X"06", + X"A6",X"BD",X"80",X"0C",X"01",X"CB",X"5F",X"BB",X"5D",X"76",X"3C",X"6F",X"27",X"AF",X"29",X"6F", + X"2E",X"28",X"12",X"AD",X"48",X"34",X"47",X"A6",X"4A",X"29",X"55",X"56",X"E0",X"30",X"2B",X"DE", + X"20",X"67",X"D6",X"5D",X"F7",X"89",X"A1",X"60",X"CA",X"5D",X"46",X"9C",X"4B",X"A9",X"01",X"76", + X"DD",X"F7",X"2F",X"6F",X"23",X"76",X"DD",X"F7",X"20",X"EF",X"12",X"E7",X"48",X"56",X"2A",X"70", + X"A0",X"38",X"82",X"0F",X"CC",X"97",X"CD",X"EA",X"D5",X"B0",X"29",X"5D",X"4B",X"08",X"CE",X"45", + X"6C",X"CB",X"73",X"B4",X"A7",X"20",X"2C",X"5D",X"CB",X"28",X"0E",X"D5",X"CD",X"68",X"6D",X"D1", + X"A1",X"D9",X"35",X"A0",X"ED",X"56",X"2C",X"A1",X"E1",X"BD",X"B0",X"BE",X"A1",X"E9",X"35",X"CB", + X"82",X"B4",X"E6",X"29",X"20",X"2F",X"DD",X"4B",X"28",X"0E",X"EB",X"0D",X"B4",X"71",X"A7",X"20", + X"AC",X"5D",X"4B",X"08",X"CE",X"4D",X"E8",X"4D",X"80",X"0E",X"A1",X"D9",X"35",X"CB",X"02",X"BC", + X"21",X"E9",X"B5",X"5D",X"CB",X"20",X"6E",X"5D",X"56",X"2F",X"20",X"2F",X"D6",X"DC",X"10",X"22", + X"6B",X"27",X"34",X"56",X"2C",X"B0",X"AB",X"A1",X"61",X"BD",X"4D",X"CE",X"E8",X"5D",X"D6",X"89", + X"EE",X"2B",X"DD",X"F7",X"21",X"4D",X"8C",X"6B",X"DD",X"76",X"21",X"DE",X"2B",X"5D",X"77",X"21", + X"5D",X"4B",X"A8",X"5E",X"48",X"32",X"20",X"40",X"AF",X"48",X"92",X"AB",X"C8",X"5D",X"66",X"9C", + X"90",X"C8",X"12",X"21",X"4C",X"5D",X"6E",X"21",X"90",X"C8",X"DD",X"76",X"2F",X"87",X"E8",X"4D", + X"B1",X"48",X"5D",X"4B",X"A8",X"B6",X"4D",X"AA",X"EC",X"36",X"8D",X"4D",X"B5",X"4D",X"4D",X"F1", + X"22",X"32",X"A3",X"48",X"4F",X"34",X"32",X"A3",X"48",X"AE",X"28",X"A1",X"6E",X"68",X"09",X"76", + X"FD",X"32",X"AB",X"40",X"27",X"AF",X"27",X"6F",X"92",X"89",X"44",X"56",X"00",X"B0",X"0E",X"CE", + X"09",X"29",X"EB",X"30",X"15",X"7E",X"09",X"39",X"4F",X"A1",X"28",X"29",X"F1",X"26",X"20",X"4D", + X"C1",X"CE",X"92",X"AB",X"40",X"EF",X"92",X"1D",X"40",X"10",X"68",X"32",X"1B",X"40",X"DE",X"F7", + X"20",X"2C",X"BF",X"6B",X"49",X"B5",X"BF",X"B2",X"00",X"48",X"12",X"30",X"E8",X"94",X"E6",X"2B", + X"DE",X"0B",X"96",X"08",X"80",X"0B",X"B2",X"A9",X"40",X"B2",X"1D",X"40",X"B2",X"72",X"46",X"B2", + X"F3",X"4E",X"32",X"C4",X"EE",X"B2",X"C3",X"4E",X"C9",X"F5",X"33",X"00",X"33",X"1B",X"33",X"00", + X"3B",X"96",X"3B",X"A1",X"3B",X"96",X"3B",X"A1",X"3B",X"34",X"3B",X"B7",X"3B",X"34",X"3B",X"B7", + X"33",X"42",X"33",X"5D",X"33",X"42",X"33",X"92",X"47",X"48",X"D6",X"2A",X"20",X"2E",X"DD",X"D6", + X"9A",X"87",X"80",X"2C",X"5D",X"76",X"88",X"C6",X"09",X"5D",X"F7",X"88",X"4D",X"25",X"4C",X"32", + X"00",X"48",X"A7",X"A0",X"3B",X"92",X"28",X"4C",X"E6",X"2C",X"20",X"24",X"26",X"D1",X"DD",X"C6", + X"0D",X"4B",X"66",X"B6",X"08",X"CA",X"11",X"BF",X"5D",X"4B",X"9A",X"CE",X"6A",X"59",X"BE",X"32", + X"47",X"48",X"D6",X"2A",X"EA",X"D5",X"15",X"A1",X"6F",X"4C",X"DD",X"D6",X"2D",X"7E",X"2A",X"07", + X"07",X"2F",X"47",X"AE",X"08",X"29",X"D6",X"5D",X"F7",X"0F",X"A3",X"76",X"5D",X"F7",X"88",X"87", + X"00",X"2B",X"D6",X"29",X"E8",X"A3",X"56",X"6E",X"19",X"5D",X"77",X"21",X"29",X"2B",X"28",X"BF", + X"CD",X"EA",X"D6",X"87",X"4A",X"35",X"48",X"5D",X"4B",X"9A",X"C6",X"A9",X"8C",X"08",X"01",X"76", + X"DD",X"F7",X"3A",X"A6",X"D1",X"5D",X"46",X"2D",X"36",X"28",X"EB",X"B2",X"69",X"A1",X"41",X"B5", + X"4D",X"CE",X"E8",X"5D",X"D6",X"1E",X"EE",X"9F",X"6A",X"1B",X"36",X"5D",X"D6",X"08",X"CE",X"09", + X"DD",X"F7",X"28",X"5D",X"56",X"38",X"2E",X"2C",X"D6",X"68",X"10",X"2E",X"D6",X"48",X"30",X"2A", + X"26",X"0B",X"28",X"5D",X"F7",X"18",X"27",X"67",X"A6",X"08",X"B0",X"09",X"A4",X"4D",X"41",X"4C", + X"55",X"C6",X"48",X"AF",X"2F",X"4B",X"54",X"20",X"2A",X"45",X"6C",X"5D",X"46",X"21",X"F5",X"8D", + X"5D",X"F7",X"29",X"4D",X"84",X"4B",X"F9",X"45",X"64",X"5D",X"C6",X"89",X"2D",X"5D",X"F7",X"89", + X"C9",X"5D",X"56",X"21",X"CD",X"CF",X"B7",X"BE",X"28",X"4B",X"66",X"20",X"29",X"BC",X"29",X"68", + X"A8",X"29",X"4B",X"E6",X"80",X"0A",X"4B",X"4A",X"4D",X"75",X"32",X"4B",X"E6",X"20",X"AA",X"4B", + X"FA",X"A9",X"68",X"28",X"B7",X"45",X"6A",X"4B",X"66",X"20",X"2A",X"4B",X"DA",X"72",X"A7",X"4A", + X"F6",X"BF",X"DE",X"89",X"A0",X"8A",X"5D",X"76",X"29",X"C6",X"50",X"DE",X"AF",X"CB",X"DC",X"BE", + X"CB",X"EA",X"00",X"3C",X"DD",X"4B",X"3A",X"F6",X"00",X"AE",X"DD",X"76",X"3A",X"45",X"6C",X"5D", + X"F7",X"1A",X"4D",X"6C",X"37",X"CB",X"46",X"BE",X"4B",X"7F",X"80",X"1C",X"5D",X"4B",X"BA",X"FE", + X"20",X"26",X"DD",X"76",X"3A",X"45",X"6C",X"5D",X"77",X"3A",X"CD",X"78",X"B7",X"CB",X"C6",X"B6", + X"5D",X"4B",X"3A",X"5E",X"A0",X"0F",X"5D",X"4B",X"3A",X"56",X"4D",X"CA",X"37",X"5D",X"D6",X"89", + X"E6",X"D0",X"EE",X"2A",X"DD",X"F7",X"21",X"5D",X"36",X"3C",X"28",X"5D",X"CB",X"28",X"76",X"CC", + X"ED",X"BF",X"5D",X"4B",X"3A",X"DE",X"A0",X"1A",X"5D",X"76",X"BA",X"87",X"A0",X"4A",X"5D",X"4B", + X"32",X"56",X"DD",X"B6",X"2E",X"28",X"DD",X"B6",X"3E",X"28",X"DD",X"76",X"3E",X"C6",X"27",X"A0", + X"2B",X"5D",X"B4",X"0E",X"5D",X"76",X"0E",X"56",X"0A",X"A0",X"8E",X"5D",X"4B",X"08",X"06",X"5D", + X"CB",X"23",X"56",X"80",X"2C",X"5D",X"CB",X"28",X"EE",X"DE",X"2B",X"90",X"2F",X"5D",X"CB",X"32", + X"96",X"CB",X"38",X"BF",X"A1",X"79",X"BD",X"5D",X"46",X"0E",X"4D",X"59",X"48",X"CB",X"24",X"4B", + X"DD",X"4B",X"28",X"76",X"20",X"2B",X"CD",X"B7",X"73",X"4D",X"DC",X"FA",X"21",X"71",X"15",X"4D", + X"CE",X"48",X"6B",X"24",X"4B",X"5D",X"4B",X"8D",X"4E",X"C8",X"5D",X"4B",X"1A",X"FE",X"A0",X"1C", + X"DD",X"D6",X"2D",X"27",X"C5",X"64",X"EE",X"C4",X"DD",X"F7",X"0B",X"5D",X"36",X"24",X"D7",X"5D", + X"4B",X"08",X"96",X"49",X"5D",X"76",X"0D",X"AF",X"6E",X"1C",X"5D",X"F7",X"8B",X"5D",X"B6",X"8C", + X"29",X"5D",X"CB",X"28",X"9E",X"49",X"DD",X"D6",X"3E",X"AF",X"16",X"04",X"CC",X"BD",X"6D",X"5D", + X"B4",X"1E",X"4D",X"B2",X"7B",X"4D",X"D4",X"7A",X"A1",X"69",X"BD",X"4D",X"CE",X"48",X"6B",X"24", + X"6B",X"96",X"8B",X"4D",X"35",X"6D",X"12",X"3D",X"E8",X"5D",X"77",X"34",X"14",X"B2",X"3D",X"48", + X"5D",X"4B",X"9A",X"16",X"5D",X"4B",X"9A",X"46",X"5D",X"4B",X"9A",X"CE",X"6A",X"24",X"4B",X"36", + X"29",X"4D",X"8D",X"3F",X"EB",X"8C",X"6B",X"67",X"E6",X"30",X"2F",X"27",X"2F",X"47",X"50",X"EE", + X"60",X"AF",X"27",X"AF",X"FE",X"60",X"67",X"22",X"9A",X"40",X"55",X"FC",X"A1",X"08",X"0A",X"97", + X"C5",X"72",X"55",X"EE",X"F0",X"07",X"0F",X"07",X"CB",X"64",X"00",X"2A",X"F6",X"A8",X"EE",X"37", + X"EE",X"BF",X"C7",X"A6",X"08",X"29",X"49",X"EF",X"EE",X"98",X"27",X"AF",X"27",X"6F",X"D0",X"C6", + X"E0",X"27",X"2F",X"27",X"F6",X"C8",X"6F",X"82",X"1A",X"48",X"5D",X"74",X"21",X"28",X"2A",X"BF", + X"CD",X"5A",X"D5",X"66",X"50",X"8F",X"07",X"8F",X"4B",X"4C",X"80",X"2A",X"FE",X"A8",X"C7",X"D5", + X"F6",X"8F",X"46",X"70",X"AF",X"0F",X"AF",X"DD",X"6B",X"A8",X"6E",X"00",X"2A",X"F6",X"20",X"AD", + X"EE",X"B7",X"FE",X"29",X"C7",X"2E",X"88",X"89",X"49",X"29",X"8A",X"2C",X"A8",X"38",X"80",X"68", + X"A8",X"DD",X"F6",X"8D",X"5E",X"88",X"EF",X"2E",X"28",X"21",X"01",X"C8",X"A9",X"6E",X"B2",X"9B", + X"48",X"30",X"B2",X"3B",X"48",X"C1",X"8D",X"2E",X"8F",X"20",X"A9",X"23",X"AC",X"26",X"5D",X"CE", + X"3F",X"CB",X"89",X"2E",X"28",X"09",X"F6",X"DD",X"D7",X"89",X"83",X"56",X"7D",X"77",X"2A",X"C9", + X"5D",X"C3",X"88",X"7E",X"68",X"D5",X"B4",X"3E",X"5D",X"FE",X"9E",X"66",X"8B",X"28",X"A9",X"D5", + X"F6",X"9F",X"B4",X"E6",X"2B",X"DD",X"D7",X"9F",X"7D",X"CB",X"1A",X"CE",X"4A",X"36",X"68",X"DD", + X"4B",X"3A",X"F6",X"09",X"89",X"28",X"80",X"2B",X"21",X"D7",X"77",X"D5",X"C6",X"2F",X"5D",X"6E", + X"08",X"09",X"7D",X"75",X"2F",X"DD",X"D4",X"A8",X"F4",X"A7",X"A0",X"8B",X"76",X"89",X"48",X"DD", + X"4B",X"3A",X"F6",X"FD",X"80",X"2F",X"DE",X"88",X"B0",X"23",X"6B",X"99",X"C8",X"F6",X"08",X"B8", + X"2C",X"DD",X"96",X"BA",X"29",X"21",X"61",X"B5",X"6D",X"EE",X"68",X"EB",X"A4",X"CB",X"A2",X"CA", + X"48",X"D5",X"D6",X"2E",X"47",X"0F",X"29",X"CF",X"26",X"28",X"01",X"CE",X"5D",X"FE",X"98",X"BC", + X"76",X"77",X"A0",X"A1",X"7D",X"77",X"38",X"91",X"80",X"83",X"7D",X"34",X"2E",X"23",X"F6",X"DD", + X"4B",X"34",X"CE",X"A8",X"AC",X"E5",X"64",X"D5",X"F7",X"24",X"A3",X"FE",X"CD",X"4C",X"6B",X"DE", + X"68",X"DD",X"D7",X"AC",X"83",X"56",X"7D",X"77",X"0B",X"DD",X"6B",X"88",X"9E",X"DD",X"F6",X"9C", + X"EE",X"08",X"A0",X"2F",X"5D",X"FE",X"1E",X"66",X"09",X"28",X"A8",X"C5",X"B2",X"FB",X"4D",X"B7", + X"73",X"CD",X"DC",X"FA",X"DD",X"CB",X"28",X"76",X"00",X"2C",X"DD",X"36",X"0C",X"28",X"DD",X"56", + X"89",X"F6",X"70",X"B8",X"8E",X"D5",X"4B",X"28",X"56",X"BA",X"BB",X"48",X"94",X"3A",X"BB",X"48", + X"EB",X"A2",X"6C",X"DD",X"CB",X"3C",X"56",X"EA",X"B5",X"68",X"21",X"E1",X"15",X"DD",X"56",X"3E", + X"EE",X"37",X"A0",X"20",X"5D",X"FE",X"08",X"E6",X"09",X"D5",X"F7",X"28",X"4D",X"66",X"48",X"43", + X"A4",X"6B",X"29",X"38",X"28",X"02",X"2F",X"4C",X"12",X"28",X"EC",X"E6",X"29",X"00",X"0A",X"B7", + X"CD",X"4A",X"5D",X"C3",X"08",X"0E",X"6B",X"E6",X"49",X"89",X"5D",X"C3",X"08",X"4E",X"5D",X"7D", + X"2F",X"DD",X"74",X"20",X"12",X"21",X"EC",X"EE",X"2F",X"DD",X"77",X"21",X"12",X"DA",X"EE",X"A7", + X"A1",X"E3",X"3B",X"A8",X"0B",X"29",X"7C",X"BB",X"5D",X"7D",X"09",X"D5",X"F4",X"2A",X"3F",X"29", + X"E8",X"D3",X"29",X"21",X"28",X"09",X"CB",X"6E",X"36",X"28",X"20",X"21",X"23",X"14",X"D6",X"3C", + X"90",X"DC",X"6B",X"8C",X"4B",X"46",X"89",X"D5",X"ED",X"C5",X"CD",X"23",X"5D",X"C3",X"08",X"7E", + X"20",X"B5",X"DD",X"56",X"3C",X"A7",X"00",X"BF",X"E6",X"08",X"20",X"BB",X"16",X"03",X"CD",X"BD", + X"4D",X"D5",X"4B",X"28",X"56",X"C5",X"AA",X"6C",X"92",X"B3",X"40",X"BC",X"B2",X"B3",X"40",X"BA", + X"15",X"48",X"21",X"66",X"C1",X"2F",X"4F",X"2E",X"28",X"09",X"36",X"A7",X"04",X"36",X"08",X"12", + X"BD",X"48",X"94",X"3A",X"BD",X"48",X"92",X"B4",X"40",X"46",X"09",X"2F",X"B2",X"B4",X"40",X"D5", + X"E1",X"EB",X"A4",X"6B",X"DD",X"34",X"3E",X"DD",X"56",X"3E",X"E6",X"2F",X"E8",X"DD",X"56",X"2E", + X"94",X"66",X"8F",X"D5",X"F7",X"2E",X"27",X"CF",X"26",X"28",X"A1",X"B0",X"CA",X"89",X"56",X"D5", + X"F6",X"88",X"46",X"76",X"13",X"DD",X"6B",X"8D",X"6E",X"00",X"2A",X"C6",X"29",X"DD",X"D7",X"88", + X"A3",X"FE",X"5D",X"7F",X"9F",X"F6",X"8A",X"8E",X"88",X"A8",X"8F",X"66",X"89",X"8E",X"89",X"28", + X"29",X"0C",X"7D",X"71",X"0D",X"EB",X"A4",X"CB",X"28",X"88",X"28",X"89",X"28",X"8A",X"29",X"8B", + X"89",X"2C",X"89",X"2B",X"88",X"2A",X"88",X"29",X"5D",X"C3",X"88",X"E6",X"48",X"BA",X"A0",X"48", + X"07",X"EA",X"2E",X"CB",X"7D",X"56",X"38",X"14",X"B0",X"8B",X"7D",X"77",X"38",X"12",X"3E",X"4E", + X"94",X"3A",X"9E",X"4E",X"EE",X"2B",X"6A",X"2E",X"CB",X"BA",X"8E",X"4E",X"5D",X"C3",X"BA",X"6E", + X"A0",X"98",X"B5",X"D6",X"D7",X"20",X"7F",X"DD",X"96",X"BA",X"28",X"DD",X"6B",X"88",X"86",X"EB", + X"A2",X"6C",X"94",X"F6",X"AC",X"B8",X"CF",X"D5",X"4B",X"32",X"4E",X"D5",X"D6",X"38",X"DE",X"30", + X"B0",X"B2",X"B2",X"AB",X"E8",X"A7",X"80",X"8F",X"B2",X"AA",X"E8",X"D6",X"0A",X"10",X"05",X"12", + X"80",X"4E",X"EE",X"08",X"A0",X"21",X"5D",X"65",X"5D",X"29",X"80",X"4E",X"6B",X"94",X"CA",X"BA", + X"68",X"4E",X"46",X"08",X"80",X"9E",X"7D",X"E5",X"7D",X"21",X"68",X"4E",X"A2",X"8F",X"EE",X"12", + X"A9",X"4E",X"47",X"C5",X"6B",X"78",X"5D",X"61",X"5D",X"3E",X"98",X"28",X"96",X"23",X"B2",X"2E", + X"EE",X"D6",X"08",X"10",X"22",X"20",X"2F",X"DD",X"6B",X"BA",X"6E",X"CC",X"03",X"CB",X"B2",X"9F", + X"4E",X"66",X"8B",X"0F",X"47",X"0E",X"88",X"29",X"D0",X"6B",X"01",X"CE",X"A3",X"6E",X"C1",X"BA", + X"2E",X"4E",X"5E",X"A8",X"4B",X"72",X"6A",X"21",X"50",X"CB",X"8F",X"4F",X"8E",X"88",X"A9",X"4E", + X"A3",X"6E",X"C1",X"2A",X"09",X"4E",X"92",X"2E",X"46",X"F6",X"0E",X"B8",X"0A",X"BE",X"0E",X"29", + X"41",X"6B",X"2E",X"28",X"4F",X"09",X"6E",X"12",X"09",X"4E",X"ED",X"A8",X"32",X"21",X"EE",X"CD", + X"D2",X"76",X"69",X"BA",X"89",X"4E",X"38",X"3A",X"89",X"4E",X"49",X"BA",X"08",X"4E",X"EE",X"D6", + X"32",X"28",X"EE",X"12",X"09",X"4C",X"6F",X"0E",X"28",X"12",X"09",X"4E",X"FE",X"B8",X"10",X"2B", + X"98",X"38",X"1E",X"46",X"68",X"F6",X"60",X"38",X"0D",X"B0",X"06",X"2A",X"90",X"23",X"92",X"20", + X"EE",X"E6",X"29",X"0E",X"2B",X"20",X"2A",X"0E",X"29",X"51",X"32",X"3F",X"EE",X"D6",X"2B",X"E8", + X"92",X"28",X"46",X"76",X"09",X"3A",X"08",X"4E",X"49",X"22",X"88",X"2E",X"0D",X"2B",X"0A",X"29", + X"B8",X"6B",X"88",X"6B",X"98",X"6B",X"88",X"6B",X"57",X"BA",X"88",X"BA",X"B9",X"BA",X"9A",X"BA", + X"23",X"BA",X"A4",X"BA",X"35",X"BA",X"B6",X"BA",X"47",X"BA",X"50",X"BA",X"D1",X"BA",X"62",X"BA", + X"C3",X"BA",X"F4",X"BA",X"D5",X"BA",X"2E",X"BB",X"0F",X"BB",X"18",X"BB",X"21",X"BB",X"02",X"BB", + X"08",X"29",X"0A",X"29",X"5D",X"EE",X"09",X"D5",X"E6",X"2A",X"ED",X"F5",X"E9",X"D1",X"DD",X"DE", + X"28",X"7B",X"CB",X"13",X"12",X"ED",X"E8",X"E6",X"A8",X"DD",X"56",X"21",X"00",X"2A",X"EE",X"2A", + X"3B",X"3A",X"28",X"4A",X"2A",X"3A",X"29",X"4A",X"36",X"28",X"DD",X"DE",X"09",X"9D",X"4B",X"2B", + X"DD",X"46",X"2F",X"DD",X"66",X"20",X"C5",X"7A",X"22",X"AA",X"EA",X"D9",X"DD",X"56",X"0D",X"AF", + X"6E",X"2F",X"57",X"1E",X"08",X"99",X"D6",X"2B",X"E6",X"EF",X"92",X"ED",X"40",X"66",X"00",X"D5", + X"56",X"28",X"00",X"2A",X"C6",X"2A",X"1F",X"30",X"08",X"D5",X"5E",X"29",X"1D",X"1D",X"19",X"CB", + X"DC",X"66",X"89",X"A8",X"8F",X"F5",X"46",X"2A",X"DD",X"4E",X"8B",X"89",X"A2",X"AE",X"4A",X"F5", + X"E6",X"89",X"C2",X"B7",X"A0",X"8C",X"FA",X"C3",X"65",X"7A",X"82",X"84",X"EA",X"C3",X"A2",X"86", + X"4A",X"37",X"CD",X"5A",X"A2",X"AE",X"4A",X"43",X"92",X"6C",X"96",X"C8",X"B2",X"A8",X"4A",X"3A", + X"21",X"4A",X"7D",X"56",X"2D",X"5F",X"0F",X"AF",X"0F",X"AB",X"E7",X"16",X"E9",X"CE",X"28",X"67", + X"ED",X"3E",X"F6",X"E3",X"A1",X"A8",X"4A",X"1B",X"21",X"20",X"88",X"E5",X"B8",X"61",X"B6",X"D6", + X"69",X"3E",X"28",X"42",X"8E",X"A8",X"A1",X"30",X"29",X"19",X"98",X"72",X"69",X"21",X"00",X"71", + X"21",X"A8",X"88",X"BE",X"A9",X"19",X"90",X"4A",X"4B",X"4E",X"B6",X"28",X"80",X"2A",X"32",X"1B", + X"76",X"9C",X"A0",X"8D",X"B4",X"09",X"4B",X"E0",X"6C",X"16",X"D7",X"3A",X"69",X"CD",X"AB",X"CC", + X"B6",X"28",X"49",X"2E",X"70",X"D5",X"D6",X"2D",X"DE",X"20",X"90",X"3A",X"27",X"0F",X"27",X"C3", + X"87",X"30",X"2A",X"CB",X"6C",X"CB",X"87",X"30",X"29",X"24",X"56",X"A8",X"E7",X"C9",X"81",X"88", + X"71",X"35",X"C7",X"3E",X"88",X"29",X"80",X"D1",X"5D",X"FE",X"8D",X"35",X"C7",X"3E",X"88",X"29", + X"68",X"71",X"7D",X"56",X"2D",X"B5",X"E7",X"36",X"28",X"C9",X"81",X"48",X"D3",X"16",X"09",X"B5", + X"C7",X"BE",X"AA",X"3E",X"88",X"2B",X"95",X"28",X"72",X"C1",X"ED",X"AA",X"49",X"48",X"D4",X"8F", + X"AF",X"84",X"AF",X"85",X"AF",X"0F",X"AF",X"0F",X"25",X"1F",X"65",X"42",X"80",X"8B",X"81",X"B4", + X"D3",X"E5",X"57",X"A5",X"A2",X"49",X"48",X"61",X"49",X"C3",X"D5",X"A8",X"A9",X"FD",X"CD",X"4C", + X"52",X"55",X"6C",X"16",X"57",X"47",X"F4",X"26",X"28",X"29",X"4D",X"CD",X"A9",X"E6",X"29",X"46", + X"A0",X"2B",X"A6",X"28",X"49",X"2E",X"00",X"C1",X"26",X"20",X"CD",X"EA",X"D4",X"D2",X"1C",X"6D", + X"93",X"DA",X"3F",X"6D",X"BB",X"67",X"B7",X"38",X"F1",X"55",X"3F",X"07",X"C9",X"BF",X"FB",X"30", + X"49",X"BA",X"08",X"48",X"EE",X"29",X"68",X"17",X"7B",X"30",X"92",X"ED",X"40",X"66",X"77",X"3A", + X"65",X"48",X"FB",X"31",X"C9",X"6F",X"12",X"28",X"E8",X"E6",X"29",X"E8",X"50",X"FB",X"18",X"C9", + X"5D",X"FE",X"0D",X"2E",X"70",X"76",X"28",X"EF",X"4B",X"4E",X"B6",X"28",X"49",X"28",X"0B",X"2E", + X"09",X"25",X"38",X"3B",X"3E",X"31",X"1C",X"37",X"22",X"AD",X"01",X"A4",X"07",X"BA",X"35",X"B0", + X"BB",X"B6",X"49",X"6C",X"4F",X"62",X"CD",X"78",X"5B",X"7E",X"D9",X"74",X"DF",X"EA",X"6C",X"EF", + X"42",X"E5",X"70",X"FB",X"75",X"F0",X"53",X"F6",X"A8",X"0B",X"AE",X"00",X"8B",X"06",X"B8",X"1B", + X"15",X"10",X"92",X"15",X"97",X"8A",X"24",X"8F",X"A1",X"83",X"A6",X"98",X"32",X"9C",X"37",X"91", + X"93",X"95",X"97",X"49",X"EB",X"4D",X"EF",X"41",X"CB",X"45",X"CF",X"58",X"FA",X"5C",X"FE",X"5F", + X"D1",X"53",X"D4",X"56",X"D7",X"C9",X"62",X"CC",X"65",X"CF",X"E0",X"C1",X"E2",X"C4",X"E5",X"C6", + X"C7",X"D8",X"F1",X"DA",X"F3",X"DC",X"F5",X"DE",X"F7",X"DF",X"D0",X"D1",X"D1",X"D2",X"D3",X"D3", + X"F4",X"D4",X"F5",X"D5",X"F5",X"D6",X"F6",X"D6",X"F7",X"D7",X"F7",X"D7",X"F7",X"D5",X"4B",X"28", + X"46",X"20",X"2D",X"DD",X"36",X"28",X"28",X"C9",X"12",X"A1",X"E8",X"B7",X"EA",X"01",X"6F",X"DD", + X"46",X"32",X"4B",X"F9",X"6A",X"98",X"4E",X"C3",X"F1",X"42",X"28",X"6E",X"4B",X"E9",X"4A",X"0A", + X"6F",X"51",X"F6",X"68",X"E6",X"57",X"DD",X"77",X"1A",X"CD",X"EA",X"FA",X"12",X"28",X"EC",X"0F", + X"90",X"23",X"5D",X"3E",X"9A",X"F8",X"5D",X"3E",X"AC",X"D7",X"6B",X"3D",X"CE",X"D5",X"B6",X"3A", + X"B8",X"DD",X"96",X"AC",X"29",X"DD",X"96",X"AB",X"28",X"DD",X"96",X"BB",X"2C",X"EB",X"23",X"CE", + X"4D",X"5F",X"EC",X"D5",X"4B",X"32",X"DE",X"42",X"96",X"6E",X"4D",X"B7",X"D3",X"38",X"8F",X"D5", + X"6B",X"88",X"86",X"EB",X"02",X"CC",X"7D",X"56",X"08",X"E6",X"29",X"20",X"2F",X"DD",X"F6",X"8F", + X"DE",X"20",X"90",X"C3",X"4D",X"1D",X"D2",X"C2",X"F7",X"6F",X"59",X"D5",X"E6",X"3A",X"5D",X"EE", + X"3C",X"DD",X"DE",X"AC",X"79",X"21",X"30",X"4A",X"F6",X"4F",X"6D",X"1C",X"6F",X"51",X"55",X"D5", + X"4B",X"32",X"C6",X"28",X"95",X"D1",X"DD",X"7C",X"9A",X"F5",X"F5",X"3C",X"DD",X"7A",X"AC",X"F5", + X"96",X"AB",X"28",X"D5",X"6B",X"BA",X"D6",X"DD",X"F6",X"BB",X"4E",X"8A",X"7D",X"77",X"1B",X"D9", + X"ED",X"75",X"5D",X"EE",X"8F",X"D5",X"E6",X"20",X"5D",X"FE",X"A9",X"56",X"A8",X"CF",X"F9",X"0E", + X"14",X"CD",X"C9",X"EE",X"B6",X"29",X"6D",X"95",X"6D",X"E1",X"83",X"F1",X"CF",X"56",X"76",X"77", + X"4A",X"F7",X"CF",X"CF",X"31",X"A8",X"88",X"10",X"67",X"F5",X"11",X"18",X"74",X"43",X"FD",X"6E", + X"7D",X"CB",X"1A",X"66",X"B2",X"88",X"EC",X"4F",X"B2",X"8E",X"EC",X"AF",X"4E",X"6C",X"E7",X"16", + X"CE",X"C6",X"88",X"6F",X"CD",X"DB",X"8F",X"4C",X"92",X"21",X"4C",X"E1",X"10",X"2E",X"10",X"64", + X"B8",X"EA",X"B8",X"88",X"6B",X"69",X"80",X"82",X"6D",X"DF",X"6F",X"E5",X"4D",X"09",X"7D",X"75", + X"8F",X"D5",X"F4",X"20",X"4D",X"58",X"D1",X"C3",X"61",X"41",X"E9",X"C2",X"0A",X"6F",X"BF",X"E5", + X"CA",X"DD",X"D5",X"8F",X"7D",X"74",X"08",X"EB",X"AA",X"CF",X"6D",X"DF",X"6F",X"E5",X"4D",X"B7", + X"CD",X"4A",X"5D",X"7D",X"0F",X"D5",X"F4",X"20",X"4D",X"8D",X"79",X"C3",X"71",X"41",X"E9",X"C2", + X"AA",X"6F",X"09",X"DD",X"75",X"2F",X"DD",X"74",X"08",X"EB",X"AA",X"6F",X"DD",X"73",X"2F",X"DD", + X"F2",X"20",X"82",X"29",X"44",X"CE",X"4B",X"B9",X"29",X"D5",X"C6",X"29",X"5D",X"6E",X"0A",X"CE", + X"CB",X"11",X"ED",X"F5",X"CD",X"78",X"72",X"F1",X"E9",X"CB",X"66",X"20",X"39",X"39",X"68",X"28", + X"11",X"C3",X"E6",X"28",X"0F",X"01",X"5D",X"7F",X"89",X"43",X"02",X"6F",X"6E",X"20",X"EE",X"D0", + X"B9",X"DD",X"77",X"21",X"EB",X"0A",X"6F",X"F5",X"C3",X"C5",X"5B",X"29",X"EC",X"1A",X"4F",X"CB", + X"91",X"1B",X"12",X"4F",X"5D",X"DE",X"09",X"D5",X"76",X"2A",X"F9",X"01",X"47",X"9A",X"4B",X"BF", + X"FD",X"5F",X"51",X"BB",X"DD",X"77",X"09",X"F9",X"3B",X"1A",X"A8",X"4F",X"2E",X"28",X"C9",X"CD", + X"D4",X"FA",X"5D",X"C3",X"9A",X"FE",X"6C",X"8D",X"4F",X"D5",X"D6",X"20",X"EE",X"29",X"5D",X"7F", + X"08",X"EB",X"A4",X"6B",X"E5",X"AF",X"47",X"26",X"28",X"39",X"54",X"66",X"19",X"56",X"23",X"66", + X"C7",X"63",X"DD",X"61",X"49",X"D5",X"B5",X"3E",X"68",X"D5",X"B6",X"3E",X"09",X"D5",X"4B",X"3A", + X"56",X"DD",X"56",X"2E",X"00",X"2C",X"14",X"EB",X"93",X"6F",X"15",X"E6",X"2F",X"DD",X"77",X"2E", + X"57",X"1E",X"08",X"29",X"6C",X"EF",X"11",X"D5",X"D6",X"28",X"EE",X"D4",X"BE",X"D5",X"F7",X"28", + X"21",X"E4",X"67",X"19",X"56",X"DD",X"77",X"25",X"C9",X"DD",X"CB",X"28",X"46",X"20",X"2D",X"DD", + X"4B",X"28",X"B6",X"C1",X"92",X"A1",X"40",X"37",X"6A",X"14",X"C9",X"D5",X"D6",X"32",X"4B",X"6F", + X"EA",X"48",X"49",X"DD",X"56",X"2E",X"B7",X"EA",X"51",X"62",X"CB",X"57",X"EA",X"8F",X"49",X"CD", + X"5F",X"64",X"5D",X"FE",X"BA",X"C3",X"77",X"42",X"E1",X"61",X"4B",X"CF",X"6A",X"70",X"EA",X"C3", + X"FF",X"EA",X"3F",X"E9",X"B2",X"A9",X"EC",X"EE",X"08",X"DD",X"36",X"A9",X"7C",X"6F",X"4A",X"DD", + X"D6",X"32",X"4B",X"CF",X"6A",X"70",X"EA",X"C3",X"F7",X"42",X"9F",X"61",X"4D",X"C5",X"EA",X"D5", + X"6B",X"BA",X"76",X"EA",X"3F",X"E9",X"7D",X"34",X"3F",X"EA",X"5B",X"E9",X"7D",X"56",X"3A",X"C5", + X"64",X"D5",X"F7",X"30",X"5D",X"3E",X"AB",X"28",X"5D",X"3E",X"98",X"28",X"DA",X"7E",X"E8",X"D5", + X"96",X"AC",X"08",X"EB",X"5A",X"E8",X"7D",X"36",X"0C",X"70",X"7D",X"56",X"1A",X"F6",X"48",X"DD", + X"F7",X"32",X"6B",X"3F",X"E9",X"D5",X"4B",X"28",X"E6",X"28",X"8D",X"D5",X"4B",X"28",X"36",X"C1", + X"B2",X"A1",X"E8",X"B7",X"4A",X"3C",X"49",X"DD",X"F6",X"BA",X"6B",X"67",X"4A",X"48",X"49",X"CB", + X"D7",X"42",X"07",X"61",X"5D",X"FE",X"8E",X"37",X"6A",X"F1",X"EA",X"C5",X"5F",X"64",X"5D",X"FE", + X"1A",X"CB",X"DF",X"EA",X"41",X"E9",X"6B",X"4F",X"4A",X"F8",X"4A",X"CB",X"FF",X"EA",X"3F",X"E9", + X"92",X"21",X"4C",X"46",X"A8",X"D5",X"9E",X"21",X"5C",X"47",X"EA",X"D5",X"4B",X"32",X"EE",X"42", + X"58",X"EA",X"4B",X"8F",X"49",X"DD",X"6B",X"88",X"46",X"20",X"2D",X"DD",X"6B",X"88",X"96",X"C9", + X"92",X"A1",X"48",X"37",X"6A",X"14",X"E9",X"D5",X"D6",X"32",X"4B",X"6F",X"6A",X"48",X"E9",X"C3", + X"F7",X"EA",X"A7",X"E9",X"7D",X"56",X"2E",X"B7",X"4A",X"F1",X"4A",X"CD",X"FF",X"EC",X"7D",X"56", + X"BA",X"C3",X"77",X"42",X"E1",X"61",X"4B",X"CF",X"6A",X"70",X"EA",X"C3",X"57",X"42",X"9F",X"61", + X"B2",X"A9",X"EC",X"EE",X"08",X"DD",X"36",X"A9",X"7C",X"6F",X"4A",X"DD",X"F6",X"BA",X"6B",X"4F", + X"6A",X"70",X"CA",X"C3",X"67",X"A8",X"89",X"D5",X"4B",X"32",X"7E",X"28",X"8A",X"C5",X"E5",X"62", + X"DD",X"CB",X"1A",X"FE",X"CA",X"73",X"49",X"CD",X"17",X"FB",X"30",X"B1",X"DD",X"CB",X"1A",X"76", + X"A0",X"2F",X"5D",X"C3",X"9A",X"9E",X"6B",X"7D",X"C9",X"29",X"84",X"EF",X"06",X"2C",X"26",X"22", + X"87",X"CD",X"30",X"FC",X"10",X"27",X"D6",X"2B",X"20",X"33",X"16",X"29",X"DD",X"86",X"28",X"DD", + X"F7",X"28",X"6B",X"7D",X"C9",X"D5",X"4B",X"32",X"96",X"D5",X"D6",X"30",X"5D",X"7F",X"8B",X"0F", + X"30",X"2B",X"DD",X"35",X"3A",X"DD",X"CB",X"32",X"5E",X"20",X"10",X"21",X"74",X"EF",X"0E",X"2F", + X"26",X"2A",X"8F",X"C5",X"38",X"FC",X"6B",X"0A",X"C9",X"D5",X"4B",X"3C",X"FE",X"A8",X"8B",X"D5", + X"36",X"29",X"6A",X"DD",X"36",X"2A",X"40",X"EB",X"AA",X"61",X"DD",X"36",X"29",X"63",X"DD",X"36", + X"0A",X"E0",X"5D",X"C3",X"1A",X"F6",X"80",X"2F",X"5D",X"C3",X"08",X"4E",X"6B",X"1B",X"C9",X"D5", + X"CB",X"28",X"AE",X"DD",X"34",X"33",X"CC",X"8A",X"4C",X"CD",X"DC",X"FA",X"DD",X"56",X"08",X"E6", + X"09",X"D5",X"F7",X"20",X"6B",X"52",X"DE",X"D5",X"B6",X"32",X"58",X"AA",X"16",X"EF",X"5D",X"7D", + X"29",X"DD",X"74",X"2A",X"DD",X"36",X"38",X"28",X"DD",X"36",X"39",X"28",X"DD",X"36",X"3E",X"29", + X"5D",X"C3",X"9A",X"FE",X"80",X"ED",X"A1",X"1E",X"6F",X"0E",X"0A",X"8E",X"88",X"D5",X"D6",X"38", + X"08",X"DD",X"56",X"3A",X"B7",X"D2",X"D9",X"61",X"87",X"CD",X"30",X"FC",X"08",X"DD",X"96",X"38", + X"80",X"A9",X"5D",X"FE",X"19",X"DF",X"94",X"D5",X"4B",X"3A",X"FE",X"A8",X"0A",X"BD",X"95",X"66", + X"2F",X"DD",X"77",X"39",X"21",X"EC",X"67",X"3E",X"28",X"19",X"DD",X"56",X"28",X"E6",X"D4",X"B6", + X"5D",X"7F",X"88",X"C5",X"5F",X"64",X"5D",X"C3",X"BA",X"7E",X"6A",X"1B",X"E9",X"C5",X"B7",X"FB", + X"5A",X"1B",X"49",X"DD",X"6B",X"BA",X"B6",X"DD",X"96",X"98",X"28",X"DD",X"96",X"9E",X"29",X"DD", + X"D6",X"28",X"EE",X"D4",X"5D",X"7F",X"88",X"D5",X"B6",X"3C",X"74",X"29",X"06",X"EF",X"06",X"2B", + X"8E",X"AA",X"27",X"CD",X"30",X"D4",X"5A",X"1B",X"49",X"DD",X"6B",X"88",X"86",X"CD",X"02",X"CC", + X"5D",X"FE",X"8F",X"C3",X"47",X"40",X"5D",X"C3",X"A8",X"6E",X"80",X"2E",X"DE",X"78",X"58",X"43", + X"10",X"EF",X"76",X"10",X"58",X"EB",X"10",X"EF",X"81",X"0A",X"67",X"2E",X"2D",X"0E",X"2C",X"87", + X"4D",X"B8",X"D4",X"52",X"3C",X"61",X"5D",X"FE",X"B8",X"D5",X"F7",X"3A",X"5D",X"FE",X"B9",X"D5", + X"D7",X"9C",X"7D",X"CB",X"1A",X"2E",X"4B",X"3C",X"49",X"DD",X"F6",X"98",X"17",X"20",X"24",X"DD", + X"B5",X"3E",X"6A",X"14",X"E9",X"D5",X"D6",X"39",X"DE",X"2C",X"80",X"3B",X"94",X"D5",X"F7",X"39", + X"7D",X"36",X"3E",X"8C",X"B6",X"89",X"7D",X"86",X"28",X"DD",X"D7",X"88",X"4B",X"3C",X"49",X"DD", + X"B6",X"3E",X"89",X"29",X"24",X"EF",X"26",X"2E",X"06",X"2C",X"8F",X"C5",X"90",X"FC",X"7A",X"14", + X"49",X"DD",X"96",X"8E",X"28",X"DD",X"96",X"98",X"2A",X"DD",X"96",X"9E",X"29",X"DD",X"96",X"BA", + X"E8",X"29",X"2C",X"EF",X"26",X"3C",X"06",X"2C",X"8F",X"C5",X"90",X"FC",X"6B",X"14",X"E9",X"88", + X"46",X"C0",X"8F",X"2F",X"8F",X"DD",X"6B",X"9A",X"56",X"00",X"09",X"D6",X"29",X"E8",X"81",X"94", + X"EE",X"43",X"A8",X"64",X"DE",X"2A",X"68",X"29",X"64",X"65",X"6B",X"20",X"EC",X"BA",X"A9",X"4C", + X"4E",X"A8",X"7D",X"4E",X"09",X"91",X"7A",X"0A",X"4B",X"FE",X"38",X"91",X"5A",X"0A",X"4B",X"02", + X"0F",X"4C",X"5D",X"DE",X"0F",X"D5",X"76",X"20",X"BF",X"E5",X"72",X"D5",X"D6",X"3A",X"90",X"39", + X"B7",X"F2",X"5A",X"63",X"4F",X"CD",X"E6",X"63",X"51",X"E8",X"DD",X"36",X"0C",X"20",X"EB",X"B2", + X"CB",X"37",X"DA",X"E0",X"CB",X"CF",X"D4",X"AF",X"E7",X"FD",X"87",X"EF",X"A3",X"E5",X"53",X"2F", + X"EC",X"CD",X"E6",X"63",X"51",X"E8",X"DD",X"36",X"0C",X"D0",X"C5",X"6C",X"DD",X"77",X"18",X"DD", + X"4B",X"32",X"D6",X"D5",X"4B",X"32",X"76",X"D5",X"B6",X"38",X"08",X"D5",X"B6",X"23",X"08",X"29", + X"8C",X"EF",X"2E",X"3C",X"0E",X"2B",X"87",X"EB",X"30",X"FC",X"DD",X"CB",X"1A",X"6E",X"C8",X"CD", + X"66",X"63",X"A0",X"AB",X"8F",X"43",X"5E",X"64",X"5D",X"C3",X"9A",X"6E",X"48",X"FC",X"87",X"6F", + X"55",X"07",X"47",X"23",X"C5",X"5B",X"2F",X"4C",X"CD",X"CE",X"4B",X"20",X"0A",X"F6",X"D7",X"EB", + X"5E",X"64",X"5D",X"C3",X"9A",X"6E",X"48",X"D5",X"B6",X"38",X"08",X"29",X"02",X"EF",X"26",X"3C", + X"0E",X"2C",X"87",X"CD",X"30",X"FC",X"DD",X"56",X"1A",X"CB",X"77",X"20",X"2E",X"DD",X"4E",X"3A", + X"5D",X"79",X"8B",X"76",X"4A",X"D5",X"F7",X"32",X"92",X"3C",X"40",X"5F",X"D1",X"37",X"DA",X"95", + X"4B",X"1E",X"24",X"52",X"D6",X"30",X"10",X"26",X"1E",X"34",X"EB",X"4E",X"4B",X"1E",X"DC",X"52", + X"DE",X"30",X"90",X"2A",X"16",X"CC",X"5D",X"7B",X"98",X"D5",X"B6",X"31",X"F0",X"D5",X"B6",X"3C", + X"28",X"DD",X"36",X"3A",X"28",X"91",X"E2",X"52",X"4B",X"17",X"30",X"2D",X"DD",X"36",X"0C",X"29", + X"49",X"D5",X"B6",X"24",X"F7",X"C1",X"4B",X"BC",X"4B",X"9D",X"4B",X"BC",X"4B",X"9D",X"4B",X"BC", + X"CB",X"1D",X"CB",X"14",X"CB",X"1D",X"6D",X"12",X"09",X"4C",X"ED",X"CD",X"78",X"FA",X"E9",X"CB", + X"E6",X"40",X"A3",X"2B",X"30",X"D1",X"8F",X"C1",X"ED",X"29",X"0A",X"EF",X"26",X"3C",X"06",X"2C", + X"27",X"DD",X"96",X"98",X"28",X"CD",X"30",X"D4",X"41",X"DD",X"F6",X"BA",X"6B",X"77",X"80",X"8E", + X"5D",X"CE",X"9A",X"D5",X"F1",X"23",X"FE",X"6A",X"5D",X"7F",X"BA",X"BA",X"9C",X"48",X"2F",X"BC", + X"FF",X"3E",X"28",X"19",X"F6",X"03",X"7D",X"77",X"19",X"56",X"7D",X"77",X"18",X"DD",X"96",X"9C", + X"88",X"D5",X"B6",X"3A",X"88",X"B1",X"EA",X"62",X"EC",X"BF",X"B0",X"2D",X"5D",X"3E",X"AC",X"29", + X"69",X"DD",X"96",X"AC",X"D7",X"C9",X"55",X"DD",X"96",X"98",X"28",X"21",X"AA",X"C7",X"8E",X"9C", + X"06",X"2C",X"8F",X"C5",X"90",X"FC",X"5D",X"FE",X"BA",X"C3",X"F7",X"28",X"8E",X"D5",X"46",X"3A", + X"7D",X"71",X"0B",X"F6",X"6A",X"DD",X"D7",X"BA",X"51",X"20",X"2D",X"16",X"30",X"EB",X"AA",X"EC", + X"96",X"58",X"5D",X"7F",X"B8",X"D5",X"B6",X"31",X"50",X"D5",X"B6",X"3C",X"88",X"D5",X"B6",X"3A", + X"28",X"91",X"42",X"1E",X"4C",X"17",X"90",X"8D",X"7D",X"36",X"0C",X"89",X"69",X"DD",X"96",X"AC", + X"77",X"C1",X"92",X"2C",X"48",X"DF",X"92",X"20",X"48",X"F6",X"80",X"B8",X"8A",X"BE",X"BF",X"66", + X"1C",X"EE",X"E8",X"DD",X"D7",X"BB",X"7D",X"56",X"3A",X"B7",X"52",X"6A",X"4C",X"15",X"76",X"10", + X"78",X"C3",X"F3",X"A8",X"89",X"BD",X"5D",X"7F",X"9A",X"C1",X"94",X"F6",X"D8",X"50",X"4B",X"7B", + X"A0",X"89",X"B4",X"DD",X"D7",X"9A",X"69",X"DD",X"F6",X"9A",X"6B",X"57",X"80",X"A9",X"17",X"20", + X"D8",X"D5",X"4B",X"28",X"CE",X"A8",X"EA",X"D5",X"4B",X"3C",X"F6",X"A8",X"9E",X"3F",X"4D",X"FA", + X"71",X"87",X"A8",X"51",X"17",X"CA",X"94",X"ED",X"46",X"AC",X"6A",X"10",X"4D",X"CD",X"BE",X"ED", + X"6B",X"94",X"CD",X"C5",X"25",X"F9",X"ED",X"19",X"40",X"D7",X"11",X"FE",X"E9",X"88",X"D1",X"37", + X"CA",X"94",X"4D",X"CB",X"7F",X"CA",X"65",X"65",X"E6",X"29",X"20",X"2E",X"CD",X"1E",X"4D",X"EB", + X"B4",X"65",X"4D",X"4D",X"CD",X"C5",X"16",X"65",X"5D",X"FE",X"9A",X"66",X"F2",X"D5",X"F7",X"32", + X"C9",X"DD",X"CB",X"3C",X"56",X"EA",X"A9",X"65",X"CD",X"58",X"71",X"E5",X"39",X"48",X"D7",X"19", + X"D6",X"61",X"00",X"F9",X"BF",X"C2",X"B4",X"65",X"4B",X"4F",X"80",X"31",X"EE",X"2C",X"A0",X"2E", + X"CD",X"1E",X"4D",X"EB",X"94",X"65",X"CD",X"4D",X"4D",X"CD",X"BE",X"65",X"DD",X"56",X"1A",X"E6", + X"F2",X"D5",X"F7",X"32",X"49",X"D5",X"4B",X"32",X"16",X"D5",X"4B",X"32",X"06",X"66",X"0A",X"42", + X"ED",X"65",X"DD",X"CB",X"1A",X"FE",X"EA",X"4D",X"4D",X"CD",X"ED",X"65",X"DD",X"CB",X"1A",X"4E", + X"49",X"3F",X"4D",X"D5",X"79",X"A7",X"00",X"F9",X"BF",X"C2",X"B4",X"65",X"EE",X"2B",X"80",X"A8", + X"CD",X"1E",X"4D",X"EB",X"94",X"65",X"DD",X"56",X"3A",X"C5",X"6C",X"DD",X"77",X"3A",X"DD",X"56", + X"8B",X"E5",X"64",X"D5",X"F7",X"23",X"5D",X"FE",X"8C",X"E5",X"64",X"D5",X"F7",X"24",X"BF",X"C1", + X"DD",X"56",X"3C",X"B7",X"F2",X"94",X"4D",X"C5",X"6C",X"DD",X"77",X"3C",X"CD",X"92",X"73",X"DD", + X"4B",X"32",X"56",X"37",X"49",X"D5",X"56",X"29",X"5D",X"5E",X"0A",X"9A",X"4B",X"BF",X"67",X"19", + X"28",X"C8",X"B7",X"C5",X"7A",X"55",X"0F",X"0F",X"0F",X"E6",X"18",X"47",X"54",X"0F",X"0F",X"0F", + X"EE",X"C8",X"BD",X"10",X"5D",X"7F",X"89",X"D5",X"B6",X"3C",X"08",X"C1",X"38",X"50",X"AD",X"57", + X"18",X"50",X"18",X"5C",X"20",X"50",X"20",X"54",X"18",X"5E",X"18",X"5C",X"2E",X"52",X"3F",X"52", + X"9A",X"50",X"BC",X"50",X"B8",X"56",X"B8",X"50",X"90",X"50",X"AC",X"50",X"98",X"5E",X"A8",X"5E", + X"18",X"7B",X"0C",X"7C",X"00",X"78",X"3C",X"5C",X"3C",X"78",X"1A",X"78",X"3E",X"5C",X"20",X"7C", + X"B8",X"5A",X"98",X"5A",X"80",X"5C",X"9C",X"5C",X"9E",X"5C",X"AC",X"5C",X"A0",X"48",X"B8",X"5E", + X"0C",X"5A",X"18",X"5A",X"F8",X"78",X"E0",X"7F",X"C0",X"78",X"C0",X"5C",X"E0",X"78",X"E0",X"7C", + X"60",X"5E",X"44",X"54",X"72",X"52",X"61",X"52",X"66",X"50",X"40",X"50",X"60",X"56",X"60",X"50", + X"F8",X"78",X"F4",X"78",X"F0",X"5E",X"D0",X"5E",X"C0",X"78",X"F0",X"7C",X"D8",X"78",X"C4",X"5C", + X"64",X"50",X"46",X"50",X"62",X"5C",X"40",X"54",X"60",X"5A",X"50",X"5A",X"40",X"5C",X"64",X"5C", + X"C2",X"5C",X"F4",X"5C",X"D8",X"5C",X"C0",X"5E",X"F4",X"5A",X"C0",X"5A",X"28",X"4B",X"20",X"4B", + X"C8",X"4B",X"C0",X"4B",X"08",X"4B",X"00",X"4B",X"48",X"4B",X"40",X"4B",X"88",X"4C",X"80",X"4C", + X"68",X"4C",X"60",X"4C",X"A8",X"4C",X"A0",X"4C",X"E8",X"4C",X"E0",X"4C",X"28",X"4D",X"20",X"4D", + X"C8",X"4D",X"C0",X"4D",X"08",X"4D",X"00",X"4D",X"48",X"4D",X"40",X"4D",X"88",X"4E",X"80",X"4E", + X"68",X"4E",X"60",X"4E",X"A8",X"4E",X"A0",X"4E",X"E8",X"4E",X"E0",X"4E",X"B6",X"77",X"92",X"C6", + X"48",X"C5",X"00",X"F1",X"8F",X"3A",X"C6",X"48",X"49",X"56",X"8D",X"D0",X"FD",X"65",X"6D",X"29", + X"A0",X"4D",X"99",X"08",X"ED",X"2E",X"28",X"16",X"2B",X"0E",X"0C",X"C5",X"10",X"0E",X"3C",X"09", + X"CB",X"89",X"CB",X"BD",X"A0",X"DB",X"69",X"61",X"F9",X"E3",X"A1",X"CE",X"4D",X"3E",X"76",X"2B", + X"D3",X"23",X"D2",X"23",X"D1",X"23",X"4E",X"8D",X"D7",X"23",X"D0",X"FE",X"2D",X"21",X"E0",X"4D", + X"B6",X"98",X"A3",X"E3",X"2F",X"CF",X"26",X"28",X"A1",X"65",X"58",X"89",X"CD",X"20",X"CD",X"20", + X"21",X"0D",X"ED",X"39",X"20",X"28",X"2E",X"2B",X"35",X"19",X"38",X"D4",X"C9",X"DD",X"34",X"2E", + X"A0",X"2E",X"5D",X"FE",X"8A",X"C5",X"85",X"3F",X"5D",X"FE",X"0E",X"D5",X"9E",X"23",X"6A",X"8C", + X"6B",X"DD",X"36",X"28",X"28",X"EB",X"02",X"6C",X"21",X"E8",X"ED",X"39",X"68",X"4D",X"29",X"A8", + X"08",X"E5",X"B8",X"29",X"4D",X"4D",X"B5",X"D5",X"ED",X"29",X"68",X"4D",X"B6",X"98",X"A1",X"EF", + X"ED",X"DD",X"5E",X"2F",X"73",X"DD",X"7E",X"20",X"23",X"72",X"DD",X"56",X"09",X"DD",X"21",X"E8", + X"45",X"65",X"4D",X"44",X"7B",X"61",X"A3",X"BD",X"F7",X"2B",X"B6",X"28",X"5D",X"61",X"49",X"D5", + X"CB",X"28",X"46",X"20",X"2F",X"DD",X"36",X"28",X"28",X"EB",X"02",X"6C",X"DD",X"35",X"0A",X"CA", + X"7D",X"67",X"5D",X"FE",X"0D",X"07",X"2F",X"07",X"C7",X"2E",X"08",X"A9",X"31",X"29",X"47",X"99", + X"C3",X"DD",X"56",X"38",X"14",X"D6",X"0A",X"10",X"29",X"87",X"DD",X"77",X"38",X"AF",X"EE",X"58", + X"C7",X"BE",X"CF",X"C6",X"08",X"6F",X"D6",X"2B",X"E6",X"EF",X"21",X"22",X"08",X"E5",X"B8",X"43", + X"A4",X"6B",X"28",X"9F",X"4F",X"E7",X"4F",X"2D",X"2D",X"3C",X"28",X"48",X"4F",X"29",X"E8",X"24", + X"08",X"D7",X"77",X"DE",X"E6",X"9F",X"B7",X"87",X"B6",X"C7",X"08",X"28",X"08",X"28",X"08",X"28", + X"E4",X"67",X"C6",X"67",X"D0",X"67",X"2A",X"78",X"0C",X"78",X"3E",X"78",X"20",X"78",X"02",X"78", + X"3C",X"78",X"BE",X"78",X"E0",X"C5",X"F6",X"48",X"B6",X"C0",X"F7",X"D7",X"B4",X"95",X"E7",X"57", + X"C0",X"C5",X"D6",X"48",X"C0",X"C4",X"E4",X"CD",X"D0",X"1F",X"C7",X"57",X"C0",X"C5",X"F7",X"C6", + X"D7",X"65",X"47",X"6F",X"50",X"17",X"47",X"D7",X"50",X"65",X"50",X"65",X"E7",X"0F",X"47",X"6F", + X"D0",X"1F",X"C7",X"D7",X"C7",X"C6",X"57",X"2E",X"EF",X"2F",X"C7",X"EF",X"EF",X"D7",X"A7",X"BE", + X"56",X"17",X"5F",X"0E",X"E7",X"0F",X"5F",X"3E",X"87",X"AF",X"50",X"E5",X"56",X"17",X"5F",X"0E", + X"57",X"96",X"95",X"C4",X"96",X"C0",X"D0",X"C5",X"D6",X"1F",X"DF",X"96",X"C6",X"86",X"D6",X"48", + X"16",X"E0",X"50",X"E5",X"47",X"67",X"97",X"37",X"A8",X"69",X"F8",X"9D",X"6F",X"69",X"F8",X"EA", + X"78",X"FB",X"78",X"F4",X"78",X"0D",X"78",X"06",X"78",X"1F",X"78",X"88",X"78",X"81",X"78",X"9A", + X"F8",X"89",X"29",X"C8",X"A8",X"B3",X"F8",X"09",X"E8",X"88",X"29",X"8A",X"F8",X"08",X"13",X"58", + X"29",X"19",X"20",X"21",X"22",X"78",X"28",X"93",X"78",X"29",X"C3",X"20",X"21",X"22",X"78",X"28", + X"13",X"58",X"A9",X"4D",X"29",X"89",X"2A",X"58",X"A8",X"B3",X"F8",X"09",X"1F",X"89",X"29",X"8A", + X"78",X"28",X"93",X"78",X"29",X"D1",X"21",X"21",X"23",X"70",X"28",X"93",X"78",X"29",X"7B",X"22", + X"29",X"8C",X"E0",X"08",X"13",X"58",X"A9",X"36",X"2A",X"89",X"2C",X"68",X"A8",X"B3",X"F8",X"09", + X"AA",X"23",X"21",X"24",X"E8",X"28",X"93",X"78",X"29",X"06",X"23",X"28",X"28",X"28",X"B7",X"28", + X"A8",X"08",X"A8",X"08",X"A8",X"08",X"37",X"08",X"50",X"F0",X"A8",X"36",X"9B",X"4D",X"B5",X"4D", + X"DD",X"B6",X"28",X"98",X"DD",X"B6",X"25",X"28",X"DD",X"B6",X"3E",X"28",X"DD",X"B6",X"2E",X"28", + X"5D",X"B6",X"B8",X"08",X"5D",X"F5",X"AF",X"74",X"EE",X"09",X"E7",X"5D",X"F4",X"88",X"5D",X"F1", + X"21",X"45",X"5B",X"2F",X"4C",X"43",X"B7",X"45",X"7A",X"5A",X"6D",X"79",X"CB",X"34",X"CB",X"3D", + X"92",X"89",X"44",X"99",X"5A",X"2C",X"59",X"15",X"B0",X"8D",X"4D",X"A0",X"59",X"5D",X"F7",X"1C", + X"DD",X"B6",X"3A",X"68",X"EB",X"13",X"1A",X"4D",X"98",X"79",X"DD",X"F7",X"3A",X"5D",X"36",X"3C", + X"28",X"CB",X"93",X"9A",X"CD",X"EC",X"9D",X"B0",X"8F",X"4D",X"A0",X"59",X"CD",X"EC",X"5D",X"F7", + X"3C",X"5D",X"36",X"3A",X"68",X"6B",X"9B",X"32",X"CD",X"10",X"79",X"5D",X"77",X"3A",X"DD",X"B6", + X"1C",X"60",X"6B",X"93",X"9A",X"74",X"87",X"E7",X"D5",X"27",X"C7",X"A3",X"4B",X"34",X"4B",X"3D", + X"12",X"21",X"EC",X"39",X"10",X"37",X"95",X"B0",X"0D",X"4D",X"80",X"79",X"DD",X"F7",X"3C",X"5D", + X"B6",X"1A",X"40",X"CB",X"93",X"9A",X"4D",X"90",X"59",X"45",X"64",X"5D",X"F7",X"1A",X"5D",X"B6", + X"3C",X"A8",X"EB",X"13",X"1A",X"CD",X"6C",X"9D",X"30",X"27",X"CD",X"80",X"79",X"CD",X"6C",X"5D", + X"F7",X"1C",X"5D",X"B6",X"1A",X"40",X"6B",X"93",X"9A",X"4D",X"90",X"59",X"CD",X"EC",X"5D",X"F7", + X"3A",X"5D",X"36",X"3C",X"E0",X"6B",X"9B",X"32",X"5F",X"D5",X"E6",X"D4",X"0F",X"07",X"67",X"D5", + X"EE",X"0B",X"07",X"2F",X"C7",X"CB",X"88",X"4D",X"55",X"67",X"EE",X"F0",X"07",X"2F",X"07",X"E7", + X"55",X"EE",X"2F",X"07",X"0F",X"07",X"47",X"6B",X"08",X"6D",X"12",X"A1",X"E8",X"47",X"DD",X"4B", + X"9A",X"6E",X"6A",X"5D",X"5A",X"5D",X"D6",X"1E",X"94",X"C6",X"0F",X"5D",X"F7",X"1E",X"67",X"A0", + X"20",X"05",X"0C",X"A0",X"1C",X"5D",X"56",X"2E",X"D6",X"2A",X"30",X"2C",X"14",X"5D",X"77",X"2E", + X"A1",X"6D",X"5A",X"BE",X"08",X"8F",X"57",X"39",X"D6",X"5D",X"F7",X"09",X"A3",X"76",X"5D",X"F7", + X"2A",X"5D",X"56",X"28",X"E6",X"D4",X"5F",X"D0",X"E6",X"2A",X"7F",X"07",X"B2",X"BB",X"DD",X"F7", + X"A8",X"5D",X"D6",X"0E",X"BF",X"20",X"AE",X"70",X"EE",X"09",X"5D",X"F7",X"2D",X"2C",X"05",X"A0", + X"AA",X"4D",X"54",X"FA",X"DD",X"76",X"21",X"56",X"30",X"30",X"AB",X"56",X"40",X"B0",X"37",X"5D", + X"D6",X"0F",X"5D",X"4B",X"28",X"4E",X"80",X"0F",X"DE",X"F0",X"B0",X"1A",X"6B",X"3B",X"FA",X"56", + X"38",X"30",X"23",X"5D",X"56",X"20",X"E6",X"29",X"DD",X"F7",X"20",X"CB",X"8C",X"6B",X"DD",X"4B", + X"3A",X"66",X"5D",X"B6",X"BA",X"08",X"5D",X"B6",X"BC",X"08",X"5D",X"B6",X"B8",X"0D",X"5D",X"B6", + X"3E",X"2C",X"EB",X"BB",X"7A",X"5D",X"CB",X"32",X"8E",X"5D",X"36",X"28",X"28",X"CB",X"A2",X"6C", + X"A8",X"EB",X"FA",X"B2",X"F9",X"EB",X"FA",X"7C",X"FA",X"FF",X"FA",X"28",X"B8",X"70",X"A9",X"82", + X"7A",X"29",X"A5",X"BE",X"3A",X"21",X"11",X"28",X"02",X"7A",X"2A",X"A5",X"B0",X"47",X"B0",X"30", + X"2C",X"1C",X"A9",X"82",X"FA",X"0A",X"F1",X"B9",X"99",X"BA",X"A8",X"F7",X"C7",X"57",X"AF",X"0D", + X"0C",X"CD",X"AF",X"BF",X"3F",X"2D",X"97",X"F7",X"B7",X"28",X"DD",X"76",X"2D",X"56",X"2A",X"20", + X"B9",X"22",X"AF",X"43",X"31",X"A8",X"A8",X"39",X"92",X"89",X"CB",X"5D",X"4B",X"08",X"CE",X"CB", + X"94",X"7A",X"02",X"AF",X"4B",X"B9",X"50",X"D7",X"19",X"32",X"A1",X"4B",X"DD",X"F5",X"2F",X"5D", + X"F4",X"88",X"CB",X"4D",X"4C",X"7B",X"5D",X"F7",X"29",X"CB",X"1B",X"9A",X"92",X"43",X"C8",X"56", + X"2A",X"A0",X"2E",X"32",X"3F",X"4B",X"EB",X"54",X"7A",X"32",X"BF",X"4B",X"4F",X"8F",X"5F",X"BE", + X"A8",X"A1",X"52",X"5A",X"11",X"76",X"5D",X"F7",X"A9",X"A3",X"D6",X"5D",X"F7",X"0A",X"A1",X"0C", + X"7B",X"79",X"19",X"76",X"DD",X"F7",X"21",X"CB",X"8C",X"6B",X"4C",X"EF",X"93",X"EF",X"93",X"EF", + X"5C",X"E8",X"5C",X"E8",X"46",X"45",X"43",X"42",X"40",X"30",X"44",X"6F",X"C4",X"5A",X"5D",X"4B", + X"28",X"E6",X"20",X"2D",X"DD",X"4B",X"28",X"96",X"C9",X"92",X"01",X"48",X"B7",X"6A",X"38",X"71", + X"5D",X"76",X"9A",X"4B",X"E7",X"CA",X"9C",X"D8",X"4B",X"77",X"6A",X"8C",X"D8",X"4B",X"57",X"CA", + X"41",X"70",X"CB",X"67",X"EA",X"51",X"58",X"5D",X"56",X"2E",X"CB",X"D7",X"CA",X"57",X"7B",X"4B", + X"F7",X"20",X"58",X"4B",X"C7",X"A0",X"2E",X"97",X"4D",X"7A",X"79",X"C5",X"31",X"48",X"08",X"39", + X"CD",X"01",X"72",X"D6",X"E1",X"00",X"51",X"EE",X"0C",X"6A",X"50",X"7D",X"51",X"EE",X"2A",X"4A", + X"8E",X"5E",X"00",X"AF",X"5A",X"D4",X"5C",X"4D",X"2B",X"D9",X"6B",X"8D",X"D9",X"97",X"4D",X"F5", + X"71",X"ED",X"39",X"68",X"28",X"11",X"CD",X"F5",X"72",X"D6",X"E1",X"00",X"51",X"EE",X"2B",X"6A", + X"42",X"5D",X"D1",X"C6",X"0C",X"4A",X"D8",X"5E",X"00",X"AF",X"5A",X"1C",X"5D",X"4D",X"2B",X"D9", + X"EB",X"25",X"59",X"4B",X"47",X"A0",X"24",X"4D",X"A5",X"F9",X"E5",X"31",X"E8",X"D7",X"19",X"4D", + X"81",X"7A",X"D6",X"C1",X"00",X"4B",X"71",X"CA",X"E0",X"5D",X"D1",X"C6",X"0A",X"4A",X"FE",X"5E", + X"08",X"27",X"DA",X"DF",X"7C",X"4D",X"23",X"71",X"EB",X"25",X"59",X"4D",X"F8",X"F9",X"E5",X"31", + X"40",X"F7",X"11",X"4D",X"FD",X"7A",X"D6",X"C1",X"00",X"4B",X"61",X"CA",X"94",X"5D",X"D1",X"C6", + X"2A",X"4A",X"34",X"7E",X"08",X"27",X"DA",X"B9",X"7D",X"4D",X"23",X"71",X"EB",X"25",X"59",X"4B", + X"F7",X"20",X"FD",X"4B",X"C7",X"A0",X"BB",X"97",X"4D",X"7A",X"79",X"5D",X"4B",X"9A",X"CE",X"A0", + X"39",X"4B",X"69",X"6A",X"A4",X"7E",X"51",X"EE",X"2A",X"4A",X"1A",X"7F",X"CD",X"AB",X"59",X"6B", + X"2D",X"D9",X"96",X"09",X"5D",X"06",X"A8",X"5D",X"F7",X"08",X"4B",X"E9",X"4A",X"8D",X"79",X"4D", + X"66",X"7D",X"CD",X"C6",X"71",X"DE",X"2A",X"5D",X"77",X"21",X"DD",X"76",X"2E",X"D6",X"C8",X"CB", + X"DE",X"5F",X"BF",X"4D",X"55",X"79",X"5D",X"4B",X"3A",X"CE",X"6A",X"BE",X"FC",X"4B",X"51",X"CA", + X"56",X"7E",X"51",X"C6",X"2C",X"4A",X"74",X"7F",X"CD",X"AB",X"71",X"CB",X"25",X"71",X"16",X"29", + X"5D",X"06",X"A8",X"5D",X"F7",X"08",X"4B",X"79",X"4A",X"8D",X"79",X"4D",X"6E",X"5D",X"4D",X"E6", + X"71",X"DE",X"2A",X"5D",X"77",X"21",X"DD",X"76",X"2E",X"D6",X"48",X"C6",X"57",X"CB",X"DA",X"7F", + X"4B",X"67",X"A0",X"BC",X"4D",X"25",X"F1",X"5D",X"4B",X"9A",X"6E",X"CA",X"77",X"5C",X"4B",X"E9", + X"EA",X"D4",X"7E",X"71",X"E6",X"2A",X"CA",X"F6",X"7F",X"4D",X"AB",X"71",X"EB",X"25",X"71",X"36", + X"A9",X"5D",X"8E",X"08",X"5D",X"F7",X"A8",X"4B",X"61",X"4A",X"2D",X"D9",X"4D",X"CE",X"FD",X"4D", + X"56",X"71",X"14",X"5D",X"77",X"21",X"DD",X"76",X"2E",X"D6",X"88",X"C6",X"97",X"CB",X"DA",X"7F", + X"4D",X"50",X"F1",X"5D",X"4B",X"9A",X"6E",X"CA",X"13",X"5C",X"4B",X"F9",X"6A",X"40",X"FE",X"71", + X"E6",X"2A",X"CA",X"B4",X"7F",X"4D",X"AB",X"71",X"EB",X"25",X"71",X"36",X"29",X"5D",X"86",X"28", + X"5D",X"F7",X"A8",X"4B",X"71",X"4A",X"2D",X"D9",X"4D",X"CE",X"FD",X"4D",X"5E",X"D9",X"94",X"5D", + X"77",X"21",X"DD",X"76",X"2E",X"D6",X"08",X"C6",X"17",X"CB",X"5E",X"7F",X"CD",X"66",X"7D",X"4D", + X"AD",X"DA",X"31",X"F2",X"57",X"39",X"5D",X"F5",X"AF",X"74",X"EE",X"09",X"5D",X"F7",X"28",X"5D", + X"56",X"2E",X"E6",X"37",X"EB",X"88",X"7F",X"4D",X"66",X"7D",X"CD",X"2D",X"72",X"B9",X"D2",X"D7", + X"11",X"5D",X"F5",X"0F",X"D4",X"C6",X"09",X"5D",X"F7",X"88",X"5D",X"76",X"0E",X"C6",X"DF",X"D6", + X"68",X"6B",X"94",X"7F",X"CD",X"66",X"7D",X"4D",X"1B",X"72",X"39",X"2E",X"28",X"11",X"DD",X"F5", + X"0F",X"74",X"EE",X"09",X"5D",X"F7",X"88",X"5D",X"D6",X"0E",X"EE",X"BF",X"FE",X"28",X"6B",X"B4", + X"7F",X"4D",X"4E",X"7D",X"CD",X"33",X"5A",X"31",X"2E",X"28",X"19",X"5D",X"75",X"2F",X"54",X"EE", + X"09",X"5D",X"F7",X"88",X"5D",X"76",X"0E",X"C6",X"FF",X"D6",X"68",X"CB",X"20",X"5F",X"ED",X"5D", + X"CB",X"32",X"DE",X"5D",X"36",X"38",X"28",X"5D",X"36",X"25",X"28",X"5D",X"36",X"3E",X"29",X"26", + X"0B",X"2E",X"0C",X"5D",X"4B",X"9A",X"CE",X"20",X"0E",X"A1",X"02",X"E8",X"6B",X"7A",X"5D",X"A1", + X"54",X"E0",X"87",X"4D",X"30",X"FC",X"E1",X"49",X"CD",X"2D",X"5A",X"31",X"D2",X"D7",X"19",X"5D", + X"F5",X"0F",X"D4",X"C6",X"09",X"5D",X"F7",X"88",X"5D",X"4B",X"9A",X"46",X"5D",X"B6",X"09",X"8B", + X"DD",X"B6",X"2A",X"E1",X"DD",X"D6",X"2E",X"EE",X"1F",X"6B",X"A0",X"7F",X"CD",X"33",X"5A",X"31", + X"0E",X"08",X"11",X"5D",X"F5",X"0F",X"D4",X"C6",X"09",X"5D",X"F7",X"88",X"5D",X"4B",X"9A",X"46", + X"DD",X"B6",X"29",X"23",X"DD",X"B6",X"2A",X"E1",X"DD",X"D6",X"2E",X"EE",X"57",X"FE",X"60",X"6B", + X"20",X"5F",X"4D",X"9B",X"DA",X"B9",X"0E",X"08",X"11",X"5D",X"F5",X"0F",X"D4",X"C6",X"09",X"5D", + X"77",X"20",X"DD",X"4B",X"1A",X"4E",X"DD",X"B6",X"29",X"23",X"DD",X"B6",X"2A",X"E1",X"DD",X"D6", + X"0E",X"C6",X"BF",X"D6",X"28",X"CB",X"B4",X"5F",X"4D",X"0D",X"DA",X"B9",X"F2",X"F7",X"11",X"5D", + X"75",X"2F",X"54",X"EE",X"29",X"5D",X"77",X"20",X"DD",X"4B",X"1A",X"4E",X"DD",X"B6",X"29",X"23", + X"5D",X"B6",X"AA",X"E9",X"5D",X"76",X"AE",X"C6",X"7F",X"D6",X"E8",X"CB",X"14",X"5F",X"4D",X"9B", + X"72",X"B9",X"D4",X"D7",X"19",X"5D",X"75",X"2F",X"54",X"C6",X"29",X"5D",X"77",X"20",X"DD",X"4B", + X"3A",X"46",X"5D",X"B6",X"A9",X"51",X"5D",X"B6",X"AA",X"E8",X"5D",X"76",X"AE",X"C6",X"77",X"D6", + X"E8",X"CB",X"94",X"7F",X"CD",X"2D",X"72",X"B9",X"2C",X"28",X"19",X"5D",X"75",X"2F",X"54",X"C6", + X"A9",X"5D",X"F7",X"88",X"5D",X"4B",X"3A",X"46",X"5D",X"B6",X"A9",X"51",X"5D",X"B6",X"AA",X"E8", + X"DD",X"76",X"2E",X"C6",X"37",X"CB",X"94",X"7F",X"CD",X"2D",X"72",X"B9",X"2C",X"28",X"19",X"5D", + X"F5",X"0F",X"D4",X"C6",X"A9",X"5D",X"F7",X"88",X"5D",X"4B",X"3A",X"46",X"5D",X"B6",X"A9",X"51", + X"DD",X"B6",X"2A",X"E0",X"DD",X"76",X"2E",X"C6",X"77",X"D6",X"68",X"CB",X"88",X"7F",X"CD",X"33", + X"7A",X"B9",X"54",X"F7",X"11",X"5D",X"F5",X"0F",X"D4",X"C6",X"A9",X"5D",X"F7",X"88",X"5D",X"4B", + X"32",X"4E",X"DD",X"B6",X"29",X"59",X"DD",X"B6",X"2A",X"E0",X"DD",X"76",X"2E",X"C6",X"B7",X"D6", + X"A0",X"CB",X"80",X"5F",X"4D",X"E6",X"79",X"DE",X"AB",X"5D",X"F7",X"89",X"5D",X"4B",X"3A",X"46", + X"DD",X"B6",X"29",X"3C",X"DD",X"B6",X"2A",X"E1",X"DD",X"76",X"2E",X"D6",X"C8",X"CB",X"5E",X"7F", + X"4D",X"D6",X"79",X"CE",X"AB",X"5D",X"F7",X"89",X"5D",X"4B",X"3A",X"46",X"5D",X"B6",X"A9",X"1C", + X"DD",X"B6",X"2A",X"E1",X"DD",X"76",X"2E",X"D6",X"08",X"C6",X"17",X"CB",X"5E",X"7F",X"CD",X"C6", + X"79",X"DE",X"AB",X"5D",X"F7",X"89",X"5D",X"4B",X"3A",X"46",X"5D",X"B6",X"A9",X"1C",X"5D",X"B6", + X"2A",X"E1",X"DD",X"76",X"2E",X"D6",X"48",X"C6",X"57",X"CB",X"DA",X"7F",X"CD",X"56",X"71",X"CE", + X"0B",X"5D",X"F7",X"89",X"5D",X"4B",X"9A",X"46",X"5D",X"B6",X"09",X"1C",X"5D",X"B6",X"0A",X"E9", + X"DD",X"D6",X"2E",X"FE",X"A0",X"EE",X"97",X"6B",X"F2",X"7F",X"39",X"08",X"28",X"11",X"CD",X"56", + X"D9",X"DE",X"0D",X"5D",X"F7",X"89",X"5D",X"4B",X"9A",X"46",X"5D",X"B6",X"09",X"C0",X"5D",X"B6", + X"2A",X"E0",X"DD",X"D6",X"2E",X"FE",X"A8",X"EE",X"9F",X"6B",X"F2",X"7F",X"39",X"08",X"D7",X"11", + X"4D",X"E6",X"D9",X"CE",X"0D",X"5D",X"F7",X"89",X"5D",X"4B",X"9A",X"46",X"5D",X"B6",X"09",X"C0", + X"DD",X"B6",X"2A",X"E0",X"DD",X"D6",X"2E",X"FE",X"E0",X"6B",X"F2",X"7F",X"39",X"08",X"28",X"11", + X"4D",X"D6",X"D9",X"DE",X"0D",X"5D",X"F7",X"89",X"5D",X"4B",X"9A",X"46",X"5D",X"B6",X"09",X"C0", + X"DD",X"B6",X"2A",X"E0",X"DD",X"D6",X"2E",X"FE",X"A0",X"EE",X"97",X"6B",X"FE",X"7F",X"39",X"08", + X"F7",X"39",X"4D",X"E6",X"D9",X"CE",X"0D",X"5D",X"F7",X"89",X"5D",X"4B",X"9A",X"46",X"5D",X"B6", + X"29",X"40",X"DD",X"B6",X"2A",X"E0",X"DD",X"D6",X"2E",X"FE",X"E8",X"EE",X"DF",X"6B",X"FE",X"7F", + X"5D",X"F7",X"0E",X"5D",X"B6",X"1E",X"0B",X"5D",X"B6",X"8D",X"08",X"5D",X"D6",X"1A",X"CD",X"EC", + X"CB",X"87",X"DD",X"F7",X"3C",X"5D",X"36",X"3A",X"28",X"6B",X"38",X"71",X"DD",X"F7",X"2E",X"5D", + X"B6",X"1E",X"0B",X"5D",X"B6",X"8D",X"08",X"5D",X"D6",X"1A",X"4B",X"27",X"5D",X"F7",X"1C",X"5D", + X"36",X"3A",X"28",X"6B",X"38",X"71",X"DD",X"F7",X"2E",X"5D",X"36",X"3E",X"2B",X"5D",X"36",X"25", + X"08",X"5D",X"D6",X"1C",X"CD",X"EC",X"4B",X"A7",X"5D",X"F7",X"1A",X"5D",X"B6",X"1C",X"08",X"CB", + X"38",X"71",X"DD",X"F7",X"2E",X"5D",X"36",X"3E",X"2B",X"5D",X"36",X"25",X"28",X"5D",X"56",X"3C", + X"4B",X"A7",X"5D",X"F7",X"BA",X"5D",X"B6",X"1C",X"A8",X"CB",X"B8",X"D9",X"5D",X"B6",X"3A",X"58", + X"DD",X"B6",X"38",X"28",X"DD",X"B6",X"25",X"28",X"DD",X"B6",X"3E",X"29",X"DD",X"76",X"38",X"28", + X"26",X"0A",X"06",X"88",X"A1",X"80",X"60",X"5D",X"D6",X"1A",X"BF",X"52",X"27",X"D8",X"8F",X"4D", + X"B8",X"FC",X"08",X"5D",X"96",X"38",X"00",X"A9",X"DD",X"76",X"39",X"7F",X"14",X"5D",X"CB",X"3A", + X"76",X"20",X"AA",X"DE",X"AA",X"C6",X"AF",X"5D",X"F7",X"19",X"A1",X"90",X"60",X"BE",X"A8",X"39", + X"DD",X"76",X"28",X"C6",X"D4",X"96",X"DD",X"F7",X"28",X"4D",X"B1",X"71",X"CD",X"B7",X"FB",X"DA", + X"2D",X"D9",X"5D",X"4B",X"A8",X"A6",X"6B",X"AA",X"EC",X"AE",X"AB",X"2E",X"AC",X"5D",X"4B",X"9A", + X"66",X"A0",X"AB",X"A1",X"F4",X"E0",X"87",X"4D",X"B8",X"FC",X"FA",X"38",X"71",X"5D",X"56",X"32", + X"FE",X"0A",X"EE",X"77",X"5D",X"F7",X"3A",X"5D",X"B6",X"09",X"AA",X"5D",X"B6",X"0A",X"61",X"5D", + X"CB",X"32",X"E6",X"CB",X"25",X"71",X"21",X"0A",X"E0",X"07",X"CD",X"B8",X"FC",X"DA",X"38",X"71", + X"5D",X"76",X"3A",X"C6",X"D5",X"5D",X"F7",X"9A",X"5D",X"B6",X"A9",X"20",X"5D",X"B6",X"AA",X"E8", + X"DD",X"76",X"2E",X"C6",X"E8",X"AF",X"2F",X"AF",X"C6",X"29",X"4F",X"5D",X"56",X"28",X"E6",X"D4", + X"B9",X"5D",X"F7",X"08",X"4B",X"6F",X"80",X"8B",X"5D",X"76",X"29",X"DE",X"AA",X"5D",X"F7",X"89", + X"EB",X"25",X"71",X"5D",X"34",X"21",X"EB",X"25",X"71",X"5D",X"35",X"3E",X"20",X"BA",X"DD",X"76", + X"AE",X"4B",X"D7",X"20",X"AE",X"A1",X"80",X"E8",X"6B",X"E6",X"78",X"A1",X"5A",X"E8",X"5D",X"F5", + X"29",X"5D",X"74",X"2A",X"E6",X"C8",X"2F",X"AF",X"2F",X"7F",X"3E",X"28",X"21",X"33",X"71",X"39", + X"5D",X"76",X"08",X"C6",X"F4",X"96",X"5D",X"F7",X"08",X"5D",X"4B",X"9A",X"06",X"4D",X"D4",X"7A", + X"DD",X"D6",X"08",X"EE",X"29",X"5D",X"77",X"20",X"EB",X"8C",X"6B",X"28",X"29",X"2A",X"2B",X"29", + X"08",X"0B",X"0A",X"5D",X"D6",X"8D",X"5D",X"66",X"09",X"5D",X"E6",X"0A",X"31",X"0E",X"08",X"39", + X"14",X"9E",X"10",X"29",X"87",X"5D",X"77",X"25",X"C9",X"5D",X"CB",X"32",X"BE",X"5D",X"56",X"3A", + X"BF",X"52",X"CC",X"D9",X"A0",X"3C",X"5D",X"4B",X"08",X"4E",X"80",X"AE",X"5D",X"4B",X"1C",X"FE", + X"00",X"3A",X"B7",X"4D",X"72",X"F9",X"08",X"D1",X"B7",X"4A",X"CA",X"71",X"E6",X"24",X"EA",X"8C", + X"D9",X"CB",X"B6",X"D9",X"4D",X"25",X"79",X"28",X"D1",X"97",X"4A",X"C2",X"D9",X"4B",X"77",X"4A", + X"FB",X"71",X"E6",X"2B",X"EC",X"5B",X"59",X"6B",X"A4",X"71",X"DD",X"4B",X"3C",X"F6",X"EA",X"1E", + X"D9",X"4D",X"50",X"79",X"00",X"71",X"BF",X"4A",X"C2",X"D9",X"4B",X"EF",X"80",X"4D",X"EE",X"0E", + X"EC",X"5B",X"59",X"6B",X"A4",X"71",X"B7",X"4D",X"D5",X"F9",X"08",X"D1",X"B7",X"4A",X"CA",X"71", + X"EE",X"0B",X"80",X"9A",X"5D",X"76",X"1A",X"45",X"64",X"5D",X"F7",X"1A",X"5D",X"76",X"8B",X"45", + X"6C",X"5D",X"77",X"23",X"DD",X"D6",X"0C",X"CD",X"6C",X"5D",X"77",X"24",X"B7",X"49",X"DD",X"D6", + X"1C",X"97",X"F8",X"45",X"64",X"5D",X"F7",X"1C",X"BF",X"49",X"4D",X"B2",X"7B",X"5D",X"4B",X"9A", + X"FE",X"BF",X"C9",X"4D",X"DE",X"71",X"DD",X"F7",X"09",X"5D",X"36",X"3C",X"28",X"49",X"CD",X"7C", + X"DA",X"4D",X"A8",X"DA",X"38",X"35",X"49",X"4D",X"E6",X"D9",X"5D",X"F7",X"89",X"49",X"4D",X"5C", + X"5A",X"4D",X"00",X"72",X"A8",X"6E",X"2F",X"49",X"CD",X"2D",X"5A",X"5D",X"75",X"2F",X"54",X"EE", + X"A9",X"5D",X"F7",X"88",X"49",X"4D",X"7F",X"DA",X"4D",X"BD",X"7A",X"29",X"83",X"49",X"4D",X"9B", + X"72",X"5D",X"75",X"2F",X"54",X"C6",X"29",X"5D",X"77",X"20",X"C9",X"4D",X"77",X"72",X"CD",X"B5", + X"7A",X"97",X"CD",X"EA",X"06",X"18",X"01",X"49",X"31",X"08",X"C0",X"97",X"CD",X"FA",X"D5",X"2F", + X"0F",X"2F",X"E6",X"30",X"47",X"74",X"0F",X"2F",X"0F",X"C6",X"C8",X"95",X"C9",X"B9",X"28",X"C8", + X"BF",X"45",X"72",X"75",X"EE",X"BE",X"37",X"BF",X"37",X"A6",X"A8",X"4B",X"34",X"67",X"CD",X"7B", + X"32",X"48",X"19",X"49",X"DD",X"7E",X"29",X"5D",X"7E",X"2A",X"1A",X"4B",X"17",X"EF",X"C9",X"5D", + X"56",X"09",X"5D",X"FE",X"AA",X"BB",X"12",X"35",X"2F",X"6F",X"26",X"08",X"49",X"5D",X"B6",X"0F", + X"E8",X"5D",X"36",X"21",X"A8",X"5D",X"36",X"3A",X"2B",X"49",X"DD",X"B6",X"2F",X"08",X"DD",X"B6", + X"28",X"09",X"5D",X"B6",X"29",X"A8",X"5D",X"B6",X"BA",X"0D",X"49",X"5D",X"B6",X"0F",X"B8",X"5D", + X"36",X"20",X"2A",X"5D",X"36",X"3C",X"D3",X"5D",X"36",X"26",X"29",X"5D",X"36",X"27",X"2D",X"CB", + X"BA",X"DB",X"5D",X"B6",X"AF",X"30",X"5D",X"B6",X"28",X"0A",X"5D",X"B6",X"BC",X"F5",X"5D",X"B6", + X"26",X"29",X"DD",X"B6",X"27",X"2D",X"EB",X"3A",X"73",X"5D",X"36",X"2F",X"78",X"5D",X"36",X"20", + X"AB",X"5D",X"B6",X"1C",X"57",X"5D",X"B6",X"8E",X"A9",X"5D",X"B6",X"8F",X"AD",X"CB",X"BA",X"DB", + X"DD",X"B6",X"2F",X"D8",X"DD",X"B6",X"20",X"2B",X"DD",X"B6",X"3C",X"29",X"DD",X"B6",X"26",X"D7", + X"5D",X"B6",X"2F",X"F3",X"6B",X"1A",X"7B",X"5D",X"B6",X"0F",X"98",X"5D",X"B6",X"88",X"AC",X"5D", + X"36",X"3C",X"2B",X"5D",X"36",X"26",X"D7",X"5D",X"36",X"27",X"D3",X"CB",X"3A",X"73",X"DD",X"B6", + X"0F",X"38",X"5D",X"B6",X"88",X"0D",X"5D",X"B6",X"1C",X"0D",X"5D",X"B6",X"8E",X"F7",X"5D",X"B6", + X"0F",X"D3",X"DD",X"B6",X"09",X"E8",X"DD",X"B6",X"3A",X"D8",X"EB",X"85",X"5C",X"5D",X"36",X"2F", + X"48",X"5D",X"B6",X"88",X"0A",X"5D",X"B6",X"89",X"1C",X"5D",X"B6",X"1A",X"60",X"49",X"5D",X"B6", + X"2F",X"68",X"DD",X"B6",X"08",X"2A",X"DD",X"B6",X"09",X"30",X"DD",X"B6",X"3A",X"C8",X"C9",X"49", + X"4D",X"D4",X"7A",X"5D",X"D6",X"88",X"DE",X"0A",X"6A",X"D2",X"DE",X"5D",X"D6",X"0F",X"DE",X"28", + X"DA",X"52",X"5E",X"5D",X"36",X"20",X"D7",X"5D",X"36",X"2F",X"E0",X"6B",X"DA",X"76",X"DD",X"D6", + X"0E",X"8F",X"6E",X"EB",X"C7",X"36",X"DB",X"4E",X"08",X"E7",X"C9",X"38",X"0D",X"38",X"C8",X"CB", + X"E3",X"73",X"CD",X"85",X"5C",X"80",X"3E",X"5D",X"34",X"2E",X"DD",X"B4",X"0D",X"5D",X"36",X"3A", + X"08",X"5D",X"B6",X"1E",X"0E",X"36",X"00",X"B2",X"48",X"45",X"6B",X"24",X"4B",X"5D",X"D6",X"1E", + X"14",X"5D",X"77",X"3E",X"D6",X"22",X"20",X"31",X"DD",X"B6",X"3E",X"28",X"CD",X"7C",X"73",X"B0", + X"18",X"5D",X"D6",X"8E",X"CD",X"EC",X"5D",X"F7",X"8E",X"5D",X"D6",X"8F",X"CD",X"EC",X"5D",X"F7", + X"0F",X"4D",X"DC",X"FA",X"EB",X"52",X"5E",X"5D",X"35",X"3E",X"E8",X"5D",X"34",X"2E",X"DD",X"B6", + X"8D",X"08",X"5D",X"B6",X"08",X"30",X"92",X"43",X"40",X"DE",X"8A",X"8F",X"6E",X"B1",X"C7",X"36", + X"5C",X"4E",X"28",X"E7",X"56",X"5D",X"77",X"29",X"23",X"D6",X"DD",X"F7",X"2A",X"4D",X"9B",X"32", + X"6B",X"24",X"4B",X"5D",X"4B",X"08",X"EE",X"48",X"92",X"66",X"44",X"56",X"0A",X"CA",X"85",X"DB", + X"DD",X"D6",X"2D",X"7E",X"0A",X"C7",X"AF",X"2D",X"EE",X"B3",X"47",X"96",X"5D",X"4E",X"28",X"E7", + X"56",X"A3",X"76",X"5D",X"46",X"0F",X"5D",X"EE",X"28",X"43",X"CD",X"EA",X"90",X"0E",X"80",X"0D", + X"2B",X"CB",X"3D",X"74",X"0B",X"28",X"DD",X"F1",X"2F",X"5D",X"70",X"20",X"C3",X"A3",X"DD",X"76", + X"29",X"16",X"90",X"0E",X"80",X"8B",X"95",X"CB",X"23",X"DC",X"94",X"5D",X"F7",X"89",X"6B",X"24", + X"6B",X"28",X"EA",X"8C",X"6B",X"5D",X"36",X"28",X"08",X"A1",X"68",X"4C",X"39",X"A8",X"28",X"AE", + X"AE",X"4B",X"C6",X"CA",X"84",X"4B",X"11",X"B8",X"50",X"A1",X"E4",X"DC",X"A2",X"4B",X"CC",X"36", + X"48",X"B2",X"7E",X"4C",X"87",X"B2",X"78",X"4C",X"2E",X"2D",X"21",X"E8",X"4C",X"F7",X"19",X"B8", + X"54",X"CB",X"84",X"4B",X"5D",X"76",X"BE",X"35",X"5D",X"F7",X"BE",X"A0",X"2F",X"07",X"B2",X"48", + X"4C",X"34",X"32",X"6C",X"48",X"07",X"CD",X"00",X"74",X"CB",X"A3",X"20",X"E6",X"2B",X"E8",X"5D", + X"D6",X"18",X"94",X"56",X"AE",X"30",X"A9",X"07",X"5D",X"F7",X"B8",X"8F",X"6E",X"8B",X"C7",X"36", + X"75",X"4E",X"28",X"E7",X"56",X"A3",X"66",X"67",X"16",X"2E",X"39",X"89",X"4F",X"C5",X"29",X"2E", + X"A8",X"45",X"B8",X"A1",X"2A",X"08",X"11",X"43",X"E9",X"35",X"A0",X"71",X"49",X"A6",X"52",X"5D", + X"56",X"2D",X"F6",X"68",X"47",X"4B",X"6E",X"F7",X"C9",X"5F",X"74",X"C8",X"74",X"DA",X"74",X"4D", + X"7C",X"C6",X"7C",X"E1",X"7C",X"2C",X"2C",X"24",X"A9",X"F3",X"7C",X"09",X"9B",X"5D",X"3E",X"8B", + X"B7",X"29",X"D3",X"74",X"29",X"6B",X"7F",X"36",X"2F",X"43",X"28",X"D3",X"74",X"29",X"05",X"70", + X"3E",X"8D",X"71",X"09",X"53",X"DC",X"A9",X"DF",X"79",X"9E",X"2C",X"DC",X"A9",X"F3",X"7C",X"09", + X"CD",X"72",X"AC",X"25",X"4F",X"29",X"D3",X"74",X"29",X"65",X"74",X"C0",X"D7",X"DF",X"C7",X"CF", + X"17",X"E6",X"08",X"E6",X"D7",X"E7",X"08",X"08",X"08",X"67",X"08",X"1F",X"DD",X"9D",X"DD",X"2B", + X"5D",X"A1",X"5D",X"A7",X"5D",X"BD",X"5D",X"D7",X"F7",X"C7",X"E7",X"1F",X"E7",X"DF",X"C7",X"CF", + X"17",X"67",X"77",X"E7",X"67",X"17",X"67",X"F7",X"77",X"67",X"17",X"67",X"F7",X"77",X"E7",X"17", + X"E7",X"D7",X"F7",X"C7",X"E7",X"CF",X"D7",X"DF",X"C7",X"CF",X"BF",X"56",X"28",X"A4",X"2D",X"29", + X"AC",X"6B",X"09",X"AA",X"14",X"08",X"AA",X"B6",X"08",X"AC",X"3B",X"09",X"AC",X"5D",X"D6",X"1E", + X"14",X"EE",X"1F",X"5D",X"77",X"3E",X"DD",X"D6",X"28",X"A0",X"2D",X"CE",X"29",X"5D",X"77",X"28", + X"EE",X"09",X"82",X"0F",X"45",X"A0",X"0C",X"23",X"6B",X"EC",X"DD",X"A3",X"92",X"08",X"45",X"2F", + X"30",X"2D",X"03",X"83",X"EB",X"F1",X"5D",X"A3",X"23",X"5D",X"75",X"2F",X"DD",X"F4",X"08",X"5D", + X"D6",X"0E",X"BF",X"A0",X"3B",X"32",X"89",X"45",X"7E",X"88",X"5D",X"F7",X"89",X"32",X"0E",X"45", + X"B7",X"4A",X"DA",X"76",X"CB",X"D4",X"EA",X"52",X"5E",X"4B",X"6C",X"D5",X"21",X"3F",X"5E",X"80", + X"0B",X"A1",X"9A",X"DE",X"21",X"0B",X"08",X"45",X"B9",X"B9",X"9E",X"E8",X"4C",X"9D",X"DE",X"5D", + X"73",X"29",X"DD",X"F2",X"2A",X"6B",X"DA",X"76",X"DD",X"B5",X"38",X"6A",X"DA",X"76",X"DD",X"B6", + X"0E",X"08",X"6B",X"D2",X"DE",X"5D",X"D6",X"1E",X"94",X"5D",X"F7",X"1E",X"07",X"B0",X"88",X"5D", + X"56",X"25",X"C6",X"29",X"DD",X"F7",X"0D",X"5D",X"56",X"2E",X"B7",X"6A",X"D4",X"75",X"CD",X"54", + X"7A",X"5D",X"D6",X"88",X"BF",X"D2",X"D2",X"DE",X"5D",X"76",X"0F",X"56",X"50",X"DA",X"D2",X"DE", + X"DD",X"B4",X"2E",X"5D",X"36",X"3A",X"38",X"5D",X"36",X"28",X"B0",X"49",X"CD",X"54",X"72",X"5D", + X"D6",X"88",X"DE",X"0A",X"6A",X"D2",X"7E",X"5D",X"D6",X"0F",X"DE",X"28",X"5A",X"D2",X"7E",X"07", + X"32",X"A8",X"4D",X"B2",X"28",X"4D",X"C9",X"68",X"18",X"C8",X"B8",X"08",X"58",X"32",X"68",X"4D", + X"4B",X"67",X"68",X"36",X"90",X"B2",X"E8",X"45",X"A1",X"4F",X"CD",X"5D",X"D6",X"0F",X"F7",X"A3", + X"DD",X"76",X"20",X"F7",X"23",X"5D",X"56",X"21",X"EE",X"22",X"77",X"DE",X"2F",X"5D",X"77",X"21", + X"31",X"DD",X"60",X"07",X"B2",X"5C",X"CD",X"5D",X"B6",X"0E",X"A9",X"5D",X"B6",X"18",X"B8",X"49", + X"CD",X"92",X"FB",X"4D",X"54",X"FA",X"DD",X"4B",X"28",X"E6",X"EA",X"8C",X"6B",X"5D",X"36",X"28", + X"A8",X"CB",X"22",X"4C",X"90",X"02",X"7E",X"48",X"7B",X"33",X"0B",X"DE",X"E8",X"DB",X"90",X"24", + X"76",X"76",X"73",X"98",X"36",X"E0",X"65",X"75",X"99",X"97",X"76",X"4D",X"75",X"28",X"B2",X"E1", + X"F8",X"DE",X"BC",X"1E",X"82",X"09",X"9C",X"DE",X"A9",X"DE",X"3C",X"1A",X"B9",X"29",X"A9",X"14", + X"76",X"29",X"3E",X"36",X"28",X"1E",X"4F",X"5F",X"57",X"CF",X"C7",X"DF",X"D7",X"DE",X"D8",X"85", + X"37",X"38",X"AF",X"08",X"20",X"8D",X"53",X"09",X"07",X"DE",X"AA",X"03",X"F9",X"83",X"FB",X"08", + X"1E",X"4F",X"5F",X"57",X"CF",X"C7",X"DF",X"D7",X"8E",X"D8",X"85",X"B7",X"B8",X"2F",X"28",X"3C", + X"2F",X"9D",X"A9",X"C2",X"7E",X"0A",X"E9",X"1E",X"82",X"AD",X"A8",X"F7",X"D6",X"E5",X"9A",X"93", + X"CC",X"8C",X"2D",X"0F",X"D0",X"B0",X"A0",X"28",X"C6",X"2C",X"DD",X"66",X"29",X"5D",X"66",X"2A", + X"ED",X"55",X"E9",X"59",X"DD",X"7E",X"A8",X"FB",X"4B",X"33",X"92",X"6D",X"C8",X"C6",X"88",X"5D", + X"56",X"21",X"00",X"2A",X"EE",X"2A",X"BB",X"B2",X"A8",X"4A",X"AA",X"B2",X"A9",X"4A",X"3E",X"28", + X"DD",X"7E",X"09",X"3D",X"4B",X"A3",X"5D",X"66",X"0F",X"5D",X"E6",X"88",X"CD",X"FA",X"96",X"08", + X"D2",X"A9",X"5F",X"ED",X"39",X"28",X"2A",X"BF",X"C5",X"72",X"E1",X"7A",X"A0",X"77",X"EB",X"69", + X"DF",X"55",X"D6",X"09",X"95",X"8F",X"2F",X"8D",X"7A",X"20",X"DF",X"75",X"CD",X"EC",X"C7",X"4B", + X"15",X"4B",X"15",X"EE",X"2B",X"80",X"29",X"84",X"4D",X"CD",X"6C",X"EE",X"2B",X"A6",X"28",X"C7", + X"D1",X"A2",X"2A",X"42",X"59",X"6F",X"26",X"08",X"5D",X"76",X"8D",X"8F",X"6E",X"0F",X"57",X"BE", + X"28",X"11",X"56",X"A3",X"66",X"C7",X"12",X"ED",X"E8",X"EE",X"A8",X"5D",X"56",X"28",X"00",X"2A", + X"CE",X"0A",X"17",X"B0",X"8E",X"55",X"56",X"09",X"15",X"3D",X"11",X"4B",X"DC",X"97",X"CD",X"EA", + X"EB",X"FC",X"5F",X"01",X"E6",X"29",X"00",X"2F",X"D5",X"56",X"2A",X"DD",X"7E",X"2B",X"19",X"A2", + X"2E",X"42",X"DD",X"66",X"09",X"A6",X"08",X"97",X"80",X"0E",X"31",X"08",X"08",X"43",X"CD",X"FA", + X"22",X"AC",X"EA",X"CB",X"02",X"AE",X"EA",X"BF",X"C5",X"72",X"22",X"AE",X"EA",X"6B",X"32",X"6C", + X"5D",X"4B",X"08",X"A6",X"6B",X"AA",X"4C",X"6A",X"6C",X"6E",X"6B",X"6D",X"6F",X"EC",X"EE",X"78", + X"45",X"E7",X"71",X"FE",X"50",X"F2",X"A8",X"CC",X"AE",X"CC",X"8C",X"CC",X"BA",X"CC",X"98",X"CC", + X"34",X"64",X"B2",X"64",X"00",X"80",X"10",X"90",X"01",X"81",X"11",X"91",X"02",X"82",X"12",X"92", + X"AB",X"03",X"BB",X"13",X"AC",X"04",X"BC",X"14",X"AD",X"05",X"BD",X"15",X"E8",X"CD",X"C8",X"CD", + X"50",X"65",X"D0",X"65",X"60",X"65",X"E0",X"65",X"70",X"65",X"F0",X"65",X"E8",X"20",X"20",X"20", + X"A0",X"88",X"A0",X"88",X"A0",X"88",X"60",X"E1",X"A0",X"88",X"A0",X"88",X"84",X"98",X"B4",X"90", + X"00",X"E9",X"D2",X"88",X"00",X"88",X"21",X"85",X"11",X"9D",X"31",X"95",X"E2",X"FB",X"02",X"8E", + X"82",X"26",X"86",X"26",X"86",X"26",X"86",X"E3",X"54",X"03",X"A3",X"03",X"A3",X"03",X"A3",X"03", + X"03",X"8B",X"D4",X"99",X"12",X"EF",X"E4",X"E8",X"11",X"88",X"E0",X"F2",X"C0",X"E8",X"88",X"F4", + X"20",X"89",X"54",X"21",X"23",X"C0",X"99",X"80",X"ED",X"29",X"2D",X"88",X"65",X"B0",X"81",X"A5", + X"C0",X"19",X"87",X"4D",X"6B",X"70",X"C0",X"29",X"A0",X"E8",X"31",X"28",X"4D",X"09",X"8D",X"28", + X"65",X"B0",X"81",X"90",X"60",X"39",X"2F",X"4D",X"89",X"8B",X"28",X"C5",X"10",X"DD",X"96",X"9E", + X"8A",X"D5",X"B6",X"38",X"88",X"D5",X"B6",X"25",X"88",X"43",X"3B",X"32",X"26",X"2A",X"06",X"2F", + X"27",X"21",X"74",X"C7",X"6D",X"90",X"74",X"EB",X"A4",X"CB",X"7D",X"35",X"3E",X"E8",X"7D",X"36", + X"9E",X"2A",X"5D",X"FE",X"AD",X"BC",X"DE",X"2B",X"90",X"29",X"8F",X"D5",X"F7",X"25",X"6B",X"8C", + X"6B",X"21",X"DE",X"C0",X"F6",X"32",X"37",X"48",X"99",X"D9",X"DA",X"2E",X"2C",X"76",X"65",X"A0", + X"ED",X"29",X"B7",X"28",X"11",X"E3",X"E9",X"18",X"55",X"29",X"42",X"E8",X"96",X"20",X"31",X"14", + X"C2",X"29",X"D7",X"8C",X"6D",X"C0",X"51",X"39",X"38",X"63",X"8E",X"8E",X"B4",X"CD",X"60",X"F1", + X"31",X"A0",X"63",X"0E",X"8E",X"BC",X"4D",X"E8",X"F1",X"19",X"58",X"C3",X"26",X"20",X"94",X"C5", + X"60",X"F1",X"99",X"60",X"C3",X"2E",X"2D",X"14",X"6D",X"C0",X"51",X"EB",X"D7",X"C0",X"07",X"67", + X"70",X"B7",X"CB",X"69",X"DB",X"7C",X"CE",X"64",X"E9",X"6B",X"EB",X"71",X"D8",X"61",X"EF",X"78", + X"49",X"EF",X"4E",X"F9",X"69",X"EE",X"4E",X"F9",X"69",X"EE",X"6B",X"E8",X"4F",X"DA",X"4F",X"21", + X"9D",X"E9",X"31",X"7E",X"E5",X"8E",X"F7",X"BE",X"0C",X"0E",X"8A",X"88",X"96",X"20",X"4D",X"E8", + X"51",X"E5",X"21",X"A4",X"28",X"19",X"C3",X"E1",X"08",X"15",X"20",X"C5",X"C9",X"08",X"AC",X"00", + X"04",X"05",X"04",X"1B",X"16",X"11",X"95",X"09",X"05",X"01",X"84",X"06",X"11",X"1C",X"17",X"12", + X"9E",X"0A",X"AE",X"02",X"8C",X"07",X"BA",X"1D",X"98",X"13",X"9F",X"0B",X"AF",X"03",X"AB",X"18", + X"03",X"0B",X"03",X"14",X"97",X"CF",X"92",X"A4",X"40",X"37",X"68",X"F9",X"DE",X"20",X"80",X"2E", + X"16",X"D7",X"32",X"34",X"E8",X"C9",X"12",X"30",X"E8",X"21",X"A3",X"EA",X"2E",X"2E",X"96",X"00", + X"0E",X"2B",X"30",X"D2",X"6B",X"E3",X"69",X"A7",X"B2",X"34",X"40",X"BA",X"9C",X"48",X"BF",X"40", + X"02",X"39",X"E8",X"54",X"B5",X"00",X"2E",X"16",X"D7",X"32",X"1C",X"48",X"C9",X"12",X"18",X"48", + X"A1",X"81",X"6A",X"0E",X"0E",X"B6",X"90",X"2E",X"80",X"27",X"A3",X"18",X"F0",X"C1",X"4D",X"1E", + X"62",X"93",X"D8",X"16",X"D7",X"32",X"1C",X"48",X"C9",X"CD",X"BE",X"EA",X"93",X"F8",X"DD",X"E5", + X"6D",X"29",X"35",X"EA",X"50",X"1E",X"08",X"99",X"11",X"FE",X"A3",X"6E",X"C7",X"DE",X"A3",X"5E", + X"23",X"56",X"76",X"32",X"F7",X"55",X"23",X"56",X"23",X"E5",X"B7",X"00",X"0F",X"21",X"2B",X"EB", + X"4D",X"3F",X"6A",X"C5",X"38",X"EA",X"A1",X"21",X"6B",X"43",X"D0",X"E9",X"A1",X"DF",X"6A",X"C5", + X"3F",X"EA",X"CD",X"B8",X"62",X"21",X"D5",X"EA",X"CD",X"3F",X"62",X"E1",X"DD",X"21",X"A8",X"4D", + X"56",X"2B",X"76",X"E5",X"73",X"09",X"45",X"55",X"5D",X"3E",X"08",X"28",X"5D",X"3E",X"8D",X"28", + X"23",X"5E",X"23",X"7E",X"E5",X"02",X"1A",X"48",X"19",X"54",X"E6",X"29",X"67",X"C3",X"E1",X"C5", + X"73",X"0F",X"4D",X"2B",X"D6",X"D5",X"F7",X"21",X"4D",X"13",X"BA",X"F5",X"E9",X"41",X"A1",X"BE", + X"62",X"58",X"9E",X"88",X"B9",X"19",X"61",X"16",X"2B",X"FD",X"A8",X"16",X"2F",X"29",X"D7",X"8A", + X"4D",X"E8",X"F1",X"65",X"A1",X"B4",X"88",X"99",X"CB",X"61",X"00",X"BD",X"A0",X"C4",X"79",X"C1", + X"8E",X"8B",X"D6",X"38",X"D5",X"C9",X"B8",X"AA",X"B8",X"A8",X"B8",X"AE",X"B8",X"9C",X"B8",X"BA", + X"10",X"A8",X"21",X"28",X"D8",X"BE",X"9C",X"43",X"C7",X"EA",X"21",X"28",X"D8",X"BE",X"AA",X"43", + X"67",X"C2",X"89",X"88",X"38",X"16",X"0A",X"EB",X"67",X"C2",X"89",X"88",X"2D",X"16",X"0A",X"EB", + X"C7",X"EA",X"21",X"28",X"89",X"BE",X"AA",X"45",X"FD",X"F5",X"ED",X"C5",X"02",X"3F",X"26",X"20", + X"D6",X"38",X"D5",X"D5",X"41",X"DD",X"F6",X"AD",X"B4",X"D5",X"36",X"8E",X"B0",X"89",X"27",X"DD", + X"F7",X"25",X"DD",X"65",X"4D",X"8C",X"CB",X"F5",X"E9",X"BE",X"19",X"C5",X"95",X"6D",X"F9",X"41", + X"B5",X"20",X"FC",X"DD",X"41",X"C9",X"81",X"27",X"62",X"2D",X"F8",X"3E",X"28",X"19",X"FE",X"12", + X"98",X"48",X"49",X"2B",X"AB",X"3B",X"BB",X"AB",X"A3",X"21",X"99",X"31",X"81",X"A1",X"91",X"E8", + X"60",X"D8",X"68",X"95",X"30",X"66",X"62",X"45",X"62",X"7C",X"62",X"5B",X"62",X"6A",X"62",X"49", + X"C2",X"56",X"43",X"8D",X"88",X"27",X"C3",X"D5",X"88",X"0E",X"14",X"C9",X"8A",X"29",X"BA",X"EB", + X"86",X"89",X"15",X"C6",X"E1",X"25",X"28",X"A1",X"63",X"B6",X"29",X"94",X"76",X"42",X"1C",X"88", + X"94",X"EB",X"36",X"29",X"DE",X"C8",X"41",X"28",X"88",X"B7",X"C3",X"26",X"89",X"6D",X"1A",X"CA", + X"03",X"89",X"0F",X"C3",X"9E",X"88",X"5E",X"48",X"EB",X"49",X"EC",X"4A",X"ED",X"4E",X"C9",X"4F", + X"C2",X"40",X"C3",X"58",X"53",X"59",X"54",X"5A",X"55",X"5E",X"D1",X"5F",X"D2",X"50",X"D3",X"38", + X"08",X"F0",X"28",X"62",X"63",X"2A",X"21",X"76",X"A1",X"76",X"39",X"20",X"A8",X"28",X"5A",X"EB", + X"0C",X"A9",X"DF",X"81",X"DF",X"B9",X"68",X"91",X"68",X"3B",X"0E",X"E4",X"08",X"E2",X"6B",X"2A", + X"69",X"E9",X"B3",X"E9",X"38",X"20",X"50",X"28",X"52",X"EB",X"2A",X"AD",X"62",X"8D",X"62",X"3A", + X"88",X"00",X"08",X"02",X"6B",X"2A",X"2D",X"EB",X"35",X"EB",X"08",X"D7",X"F0",X"BF",X"AF",X"A6", + X"26",X"85",X"B6",X"97",X"28",X"DE",X"EF",X"8C",X"17",X"28",X"28",X"68",X"2D",X"2F",X"00",X"A7", + X"F7",X"B7",X"38",X"B0",X"07",X"4F",X"D7",X"C7",X"76",X"28",X"08",X"A7",X"2F",X"37",X"BF",X"D4", + X"C3",X"C7",X"3D",X"DF",X"D7",X"97",X"84",X"33",X"EF",X"28",X"28",X"D7",X"2F",X"C7",X"D0",X"88", + X"A5",X"08",X"BF",X"DE",X"B8",X"A6",X"08",X"4F",X"F0",X"28",X"08",X"B7",X"3F",X"9F",X"A7",X"86", + X"85",X"28",X"D7",X"97",X"34",X"A3",X"22",X"2F",X"C5",X"28",X"DD",X"56",X"2D",X"D6",X"0C",X"DA", + X"93",X"32",X"DE",X"3A",X"7A",X"13",X"9A",X"F6",X"8D",X"A8",X"8C",X"BA",X"EF",X"48",X"4B",X"4F", + X"00",X"2D",X"DD",X"36",X"28",X"28",X"C9",X"DD",X"56",X"28",X"E6",X"DC",X"F6",X"A8",X"DD",X"77", + X"08",X"A7",X"5D",X"7F",X"0E",X"D5",X"F7",X"25",X"5D",X"7F",X"8A",X"D5",X"F7",X"3C",X"5D",X"7F", + X"1A",X"DD",X"77",X"23",X"DD",X"77",X"0C",X"12",X"18",X"48",X"26",X"28",X"47",X"1E",X"0F",X"CD", + X"88",X"6D",X"D4",X"07",X"57",X"1E",X"08",X"29",X"4E",X"EF",X"11",X"DE",X"A3",X"5E",X"5D",X"7B", + X"29",X"DD",X"72",X"2A",X"DD",X"36",X"3E",X"2A",X"3E",X"28",X"12",X"3C",X"E8",X"AF",X"5F",X"21", + X"EE",X"ED",X"11",X"FE",X"A3",X"6E",X"C7",X"D5",X"D6",X"2D",X"7E",X"24",X"2F",X"DF",X"11",X"FE", + X"0F",X"5F",X"9E",X"88",X"6B",X"3A",X"63",X"C5",X"EB",X"BA",X"E8",X"09",X"63",X"52",X"46",X"89", + X"5D",X"7B",X"8F",X"D5",X"F7",X"20",X"A3",X"FE",X"4D",X"44",X"D3",X"D5",X"F7",X"21",X"5D",X"3E", + X"3A",X"88",X"4B",X"3B",X"1A",X"D9",X"A8",X"21",X"B7",X"C4",X"7D",X"E5",X"59",X"29",X"2B",X"88", + X"CD",X"30",X"A1",X"20",X"88",X"99",X"55",X"5C",X"33",X"3E",X"88",X"09",X"98",X"28",X"CD",X"30", + X"79",X"DD",X"D5",X"8F",X"F4",X"E6",X"29",X"DD",X"D7",X"A8",X"C7",X"C3",X"A8",X"CD",X"CC",X"D3", + X"7E",X"2C",X"5D",X"7F",X"A9",X"D5",X"B6",X"2E",X"89",X"D5",X"B6",X"3E",X"A8",X"C5",X"96",X"ED", + X"B2",X"8C",X"E8",X"5F",X"B2",X"87",X"E8",X"4F",X"B2",X"B8",X"E8",X"CB",X"D3",X"20",X"0E",X"CB", + X"97",X"46",X"80",X"01",X"DE",X"B8",X"90",X"26",X"96",X"B8",X"6B",X"1E",X"C4",X"46",X"80",X"01", + X"76",X"C8",X"B0",X"8A",X"B6",X"C8",X"7D",X"CB",X"2D",X"CE",X"A0",X"AB",X"7D",X"CB",X"28",X"4E", + X"5D",X"3E",X"AC",X"20",X"6B",X"99",X"C4",X"E5",X"64",X"D5",X"4B",X"28",X"0E",X"D5",X"B6",X"24", + X"D0",X"DD",X"D7",X"B8",X"4B",X"3B",X"1A",X"10",X"1E",X"E0",X"79",X"08",X"81",X"93",X"65",X"DD", + X"ED",X"51",X"21",X"2B",X"88",X"E5",X"B8",X"29",X"A8",X"28",X"11",X"DD",X"74",X"1B",X"B6",X"28", + X"89",X"98",X"28",X"C5",X"10",X"DD",X"96",X"9E",X"29",X"CD",X"36",X"C5",X"79",X"DD",X"D5",X"8F", + X"D4",X"66",X"89",X"D5",X"F7",X"20",X"77",X"DD",X"00",X"C5",X"6C",X"FB",X"5D",X"7F",X"A9",X"BA", + X"2C",X"48",X"FF",X"12",X"27",X"48",X"EF",X"12",X"18",X"48",X"6B",X"73",X"80",X"A8",X"6B",X"17", + X"6E",X"A8",X"29",X"43",X"89",X"ED",X"6E",X"A0",X"29",X"F6",X"78",X"B8",X"0A",X"BE",X"78",X"D5", + X"CB",X"2D",X"6E",X"00",X"0E",X"DD",X"77",X"3A",X"DD",X"36",X"2E",X"88",X"DD",X"CB",X"28",X"0E", + X"6B",X"13",X"9A",X"E5",X"64",X"D5",X"F7",X"3A",X"5D",X"3E",X"0E",X"08",X"5D",X"C3",X"08",X"4E", + X"EB",X"13",X"1A",X"98",X"A0",X"E0",X"DD",X"56",X"2D",X"0F",X"0F",X"0F",X"4F",X"E6",X"2B",X"F6", + X"F0",X"5F",X"D1",X"66",X"60",X"76",X"08",X"DF",X"21",X"20",X"08",X"E5",X"B8",X"C1",X"16",X"ED", + X"A2",X"ED",X"86",X"ED",X"92",X"ED",X"EE",X"ED",X"FA",X"ED",X"DE",X"ED",X"C2",X"ED",X"F6",X"ED", + X"0A",X"EE",X"8E",X"EE",X"9A",X"EE",X"2E",X"EE",X"3A",X"EE",X"BE",X"EE",X"CA",X"EE",X"5E",X"EE", + X"62",X"EE",X"46",X"EE",X"52",X"EE",X"AE",X"EE",X"BA",X"EE",X"9E",X"EE",X"82",X"EE",X"B6",X"EE", + X"42",X"EE",X"C6",X"EE",X"D2",X"EE",X"66",X"EE",X"72",X"EE",X"F6",X"EE",X"8A",X"EF",X"1E",X"EF", + X"22",X"EF",X"06",X"EF",X"12",X"EF",X"F8",X"B0",X"30",X"B0",X"F8",X"E0",X"30",X"E0",X"F8",X"10", + X"38",X"10",X"20",X"B8",X"68",X"B8",X"20",X"E8",X"68",X"E8",X"20",X"18",X"68",X"18",X"40",X"A0", + X"30",X"A0",X"E8",X"70",X"20",X"F0",X"E8",X"00",X"30",X"80",X"E0",X"B0",X"20",X"B0",X"C8",X"E0", + X"38",X"E0",X"50",X"10",X"38",X"10",X"E8",X"B0",X"E8",X"70",X"E8",X"10",X"C0",X"10",X"E8",X"40", + X"C8",X"40",X"78",X"60",X"B0",X"60",X"28",X"E0",X"78",X"00",X"B0",X"00",X"A8",X"80",X"78",X"B0", + X"40",X"B0",X"40",X"E0",X"58",X"E0",X"40",X"10",X"58",X"10",X"00",X"E0",X"00",X"10",X"70",X"30", + X"F0",X"60",X"F0",X"F0",X"F0",X"80",X"30",X"30",X"78",X"30",X"70",X"30",X"B8",X"30",X"B0",X"30", + X"58",X"30",X"C0",X"A8",X"00",X"68",X"C0",X"08",X"00",X"08",X"C0",X"80",X"00",X"80",X"98",X"80", + X"10",X"F0",X"60",X"E8",X"A0",X"E8",X"C8",X"F0",X"F0",X"20",X"58",X"80",X"F8",X"80",X"40",X"D8", + X"10",X"08",X"F0",X"88",X"B0",X"80",X"E0",X"60",X"38",X"60",X"F8",X"00",X"20",X"00",X"A8",X"80", + X"D0",X"20",X"68",X"B8",X"78",X"B8",X"60",X"B8",X"A0",X"B8",X"B0",X"B8",X"E8",X"B8",X"78",X"A0", + X"10",X"A0",X"D8",X"78",X"10",X"78",X"D8",X"88",X"10",X"88",X"08",X"B0",X"08",X"70",X"D0",X"F0", + X"B8",X"F0",X"60",X"00",X"A0",X"00",X"78",X"B8",X"B0",X"B8",X"D7",X"80",X"78",X"F0",X"B0",X"F0", + X"77",X"08",X"E0",X"A8",X"38",X"A8",X"D8",X"60",X"10",X"60",X"B0",X"F8",X"68",X"F8",X"10",X"E8", + X"90",X"C0",X"E8",X"C0",X"20",X"00",X"00",X"00",X"30",X"00",X"38",X"80",X"98",X"08",X"A0",X"08", + X"20",X"08",X"F8",X"88",X"C0",X"88",X"D8",X"68",X"20",X"68",X"08",X"E8",X"D8",X"08",X"10",X"08", + X"A8",X"00",X"40",X"E8",X"E8",X"E8",X"40",X"D0",X"E8",X"D0",X"40",X"00",X"E8",X"00",X"00",X"C8", + X"20",X"68",X"77",X"F8",X"F0",X"F8",X"90",X"40",X"10",X"40",X"D8",X"60",X"20",X"60",X"D8",X"F0", + X"80",X"F0",X"78",X"00",X"80",X"00",X"18",X"80",X"F0",X"80",X"18",X"18",X"F0",X"18",X"18",X"68", + X"50",X"40",X"C0",X"30",X"38",X"30",X"C0",X"60",X"38",X"60",X"C0",X"F0",X"38",X"F0",X"E0",X"A8", + X"A0",X"80",X"40",X"F8",X"A0",X"F8",X"40",X"18",X"A0",X"18",X"68",X"B0",X"48",X"18",X"00",X"18", + X"38",X"30",X"30",X"18",X"40",X"70",X"D8",X"10",X"10",X"10",X"88",X"10",X"A0",X"40",X"08",X"40", + X"D8",X"68",X"D8",X"B8",X"D8",X"B0",X"D8",X"C0",X"D8",X"08",X"D8",X"20",X"D8",X"68",X"60",X"B0", + X"A0",X"B0",X"48",X"70",X"00",X"70",X"40",X"70",X"00",X"10",X"A8",X"A8",X"E8",X"A8",X"A0",X"A8", + X"C0",X"A8",X"68",X"40",X"C8",X"40",X"74",X"A8",X"74",X"A8",X"74",X"A8",X"74",X"A8",X"74",X"A8", + X"7C",X"A8",X"0C",X"A8",X"BC",X"78",X"44",X"78",X"F8",X"F0",X"10",X"F0",X"0C",X"08",X"DC",X"40", + X"8C",X"F8",X"BC",X"80",X"A4",X"80",X"74",X"F8",X"A8",X"60",X"38",X"70",X"60",X"70",X"80",X"70", + X"F0",X"70",X"98",X"18",X"70",X"18",X"BA",X"E1",X"AD",X"E1",X"4F",X"E1",X"6C",X"E1",X"79",X"E1", + X"56",X"E1",X"8B",X"E1",X"98",X"E1",X"A5",X"E1",X"B2",X"E1",X"97",X"E1",X"CC",X"E1",X"D9",X"E1", + X"66",X"E1",X"73",X"E1",X"08",X"28",X"08",X"2A",X"0B",X"2B",X"09",X"29",X"08",X"29",X"0A",X"29", + X"28",X"29",X"2A",X"29",X"B2",X"EF",X"93",X"EF",X"EC",X"EF",X"CD",X"EF",X"FE",X"EF",X"EC",X"EF", + X"B3",X"EF",X"32",X"EF",X"B3",X"EF",X"B9",X"E0",X"4A",X"E0",X"CB",X"E0",X"32",X"EF",X"E0",X"EF", + X"DF",X"EF",X"C0",X"EF",X"B2",X"EF",X"DF",X"EF",X"F1",X"EF",X"D2",X"EF",X"F1",X"EF",X"DF",X"EF", + X"71",X"EF",X"F2",X"EF",X"71",X"EF",X"0B",X"E0",X"8C",X"E0",X"1D",X"E0",X"9E",X"E0",X"2F",X"E0", + X"30",X"E0",X"3C",X"21",X"83",X"28",X"66",X"E0",X"29",X"D0",X"21",X"3C",X"0A",X"96",X"28",X"EE", + X"E8",X"29",X"A4",X"AA",X"1C",X"22",X"B6",X"28",X"6E",X"E0",X"09",X"FC",X"2B",X"3C",X"8B",X"59", + X"28",X"EE",X"40",X"29",X"14",X"AC",X"3C",X"23",X"F9",X"28",X"66",X"E0",X"29",X"30",X"25",X"3C", + X"0F",X"0D",X"08",X"EE",X"E8",X"29",X"14",X"AE",X"1C",X"2F",X"05",X"28",X"6E",X"E0",X"09",X"A8", + X"27",X"3C",X"0B",X"59",X"28",X"EE",X"40",X"29",X"84",X"AF",X"3C",X"22",X"96",X"28",X"66",X"E0", + X"89",X"00",X"A0",X"20",X"8D",X"AB",X"88",X"EE",X"E0",X"29",X"D8",X"A1",X"8D",X"2C",X"98",X"28", + X"66",X"E0",X"29",X"F0",X"01",X"8B",X"2C",X"A8",X"28",X"C6",X"40",X"89",X"8C",X"A1",X"09",X"8F", + X"B0",X"28",X"C6",X"E0",X"89",X"10",X"A1",X"23",X"8F",X"6E",X"88",X"EE",X"E0",X"29",X"38",X"A1", + X"0E",X"8F",X"5B",X"88",X"66",X"E0",X"29",X"45",X"01",X"9D",X"0A",X"68",X"28",X"C6",X"40",X"89", + X"CF",X"A2",X"9A",X"22",X"22",X"28",X"C6",X"E0",X"89",X"31",X"A3",X"3A",X"AB",X"93",X"88",X"EE", + X"40",X"89",X"CD",X"A3",X"3C",X"A9",X"83",X"88",X"66",X"E0",X"29",X"1B",X"04",X"AD",X"2F",X"DC", + X"88",X"EE",X"E0",X"29",X"CF",X"A5",X"88",X"D7",X"37",X"9F",X"97",X"A7",X"86",X"35",X"9C",X"7A", + X"9B",X"8E",X"B6",X"57",X"A4",X"88",X"85",X"E0",X"B6",X"E0",X"97",X"E0",X"E7",X"E0",X"F0",X"E0", + X"71",X"E0",X"71",X"E0",X"50",X"E0",X"47",X"E0",X"00",X"E0",X"59",X"E0",X"7A",X"E0",X"68",X"E0", + X"A0",X"E0",X"F9",X"E0",X"DA",X"E0",X"C8",X"E0",X"28",X"88",X"28",X"88",X"2B",X"8B",X"2B",X"8B", + X"A9",X"20",X"C8",X"28",X"BD",X"E1",X"8B",X"73",X"91",X"8B",X"91",X"C3",X"91",X"21",X"A8",X"68", + X"28",X"BD",X"41",X"89",X"33",X"92",X"09",X"8F",X"10",X"88",X"1D",X"E1",X"29",X"F3",X"32",X"A9", + X"8E",X"B8",X"88",X"35",X"E1",X"29",X"32",X"BA",X"AD",X"2F",X"DC",X"28",X"BD",X"E1",X"89",X"D8", + X"32",X"AB",X"08",X"D8",X"28",X"BD",X"41",X"89",X"4B",X"93",X"0F",X"8D",X"6E",X"88",X"1D",X"E1", + X"8B",X"8B",X"93",X"C6",X"93",X"B1",X"94",X"21",X"8F",X"B0",X"88",X"35",X"E1",X"29",X"0C",X"BC", + X"09",X"8E",X"30",X"88",X"1D",X"E1",X"29",X"4B",X"34",X"AC",X"2D",X"97",X"28",X"BD",X"41",X"89", + X"F1",X"BC",X"8F",X"2E",X"5C",X"28",X"9D",X"E1",X"09",X"BD",X"3D",X"22",X"88",X"60",X"08",X"35", + X"41",X"29",X"8F",X"BD",X"0D",X"2E",X"48",X"28",X"1D",X"E1",X"29",X"57",X"35",X"28",X"38",X"30", + X"28",X"A0",X"3C",X"B5",X"B7",X"3C",X"1D",X"AF",X"A5",X"D7",X"47",X"28",X"A3",X"20",X"0D",X"AB", + X"28",X"7C",X"41",X"29",X"6D",X"EC",X"45",X"EC",X"BD",X"EC",X"08",X"2D",X"23",X"28",X"7C",X"E1", + X"09",X"95",X"6C",X"CD",X"6C",X"25",X"6D",X"22",X"0E",X"BE",X"08",X"7C",X"E9",X"29",X"25",X"E5", + X"E1",X"E5",X"1D",X"E6",X"28",X"2F",X"2D",X"2B",X"27",X"A7",X"28",X"2C",X"D7",X"2F",X"10",X"B7", + X"F6",X"D5",X"F0",X"EF",X"89",X"2E",X"38",X"28",X"08",X"E2",X"09",X"55",X"6D",X"3B",X"6E",X"61", + X"66",X"21",X"2E",X"B8",X"28",X"28",X"42",X"29",X"57",X"EE",X"B5",X"EE",X"C3",X"EE",X"0A",X"2D", + X"AD",X"28",X"08",X"E2",X"09",X"A9",X"6F",X"7B",X"6F",X"0D",X"6F",X"21",X"0E",X"B8",X"08",X"38", + X"42",X"29",X"B7",X"EF",X"C5",X"EF",X"23",X"E0",X"08",X"2D",X"23",X"28",X"20",X"E2",X"29",X"71", + X"E8",X"09",X"E8",X"81",X"E8",X"20",X"0E",X"A2",X"08",X"38",X"EA",X"29",X"51",X"E0",X"09",X"E1", + X"31",X"E1",X"0A",X"2E",X"36",X"28",X"30",X"E2",X"29",X"E9",X"41",X"15",X"41",X"51",X"41",X"20", + X"0D",X"AB",X"08",X"68",X"EA",X"29",X"1D",X"E2",X"BD",X"E2",X"6D",X"E2",X"8A",X"2E",X"3E",X"28", + X"68",X"E2",X"29",X"05",X"42",X"41",X"42",X"2D",X"43",X"22",X"2E",X"BE",X"28",X"68",X"42",X"29", + X"49",X"E3",X"FD",X"E3",X"B1",X"E3",X"8C",X"2F",X"CD",X"28",X"48",X"E2",X"09",X"DD",X"EB",X"61", + X"44",X"15",X"44",X"22",X"2E",X"A2",X"28",X"68",X"42",X"29",X"F1",X"E4",X"05",X"E5",X"41",X"E5", + X"88",X"D7",X"36",X"8C",X"23",X"85",X"34",X"D0",X"8F",X"2C",X"BC",X"AD",X"F7",X"A5",X"88",X"A8", + X"28",X"77",X"F7",X"47",X"83",X"87",X"20",X"25",X"2F",X"8C",X"30",X"A5",X"E8",X"08",X"28",X"98", + X"88",X"D7",X"57",X"CF",X"23",X"A7",X"80",X"94",X"8F",X"2C",X"90",X"D5",X"48",X"08",X"88",X"A8", + X"28",X"77",X"C5",X"47",X"AD",X"8C",X"20",X"44",X"2F",X"84",X"30",X"A5",X"57",X"A7",X"28",X"80", + X"88",X"28",X"8C",X"AC",X"80",X"B8",X"37",X"B7",X"47",X"2F",X"08",X"C6",X"9D",X"D5",X"77",X"28", + X"E0",X"E2",X"F2",X"E2",X"38",X"E3",X"06",X"E3",X"68",X"E3",X"7E",X"E3",X"44",X"E3",X"52",X"E3", + X"02",X"E3",X"30",X"E3",X"64",X"E3",X"76",X"E3",X"BC",X"E4",X"CE",X"E4",X"F8",X"E4",X"E2",X"E4", + X"A8",X"E4",X"A2",X"E4",X"90",X"E4",X"CE",X"E4",X"E0",X"E4",X"F6",X"E4",X"2C",X"E5",X"3C",X"E5", + X"86",X"E5",X"B0",X"E5",X"DE",X"E5",X"F4",X"E5",X"3A",X"E5",X"10",X"E5",X"4A",X"E5",X"9C",X"E6", + X"06",X"E6",X"14",X"E6",X"5A",X"E6",X"74",X"E6",X"C1",X"E2",X"29",X"E3",X"1F",X"E3",X"31",X"E3", + X"ED",X"E3",X"C1",X"E3",X"D3",X"E3",X"19",X"E3",X"25",X"E3",X"5B",X"E3",X"55",X"E3",X"AD",X"E4", + X"31",X"E4",X"4F",X"E4",X"61",X"E4",X"75",X"E4",X"B9",X"E4",X"85",X"E4",X"E9",X"E4",X"FB",X"E4", + X"63",X"E4",X"73",X"E4",X"8D",X"E5",X"BD",X"E5",X"A7",X"E5",X"CF",X"E5",X"E1",X"E5",X"2D",X"E5", + X"A5",X"E5",X"B5",X"E5",X"C3",X"E5",X"05",X"E6",X"35",X"E6",X"4B",X"E6",X"67",X"E6",X"A9",X"E6", + X"8C",X"CE",X"41",X"EE",X"43",X"CE",X"44",X"EE",X"46",X"2C",X"78",X"C9",X"F8",X"CB",X"78",X"CC", + X"58",X"46",X"2F",X"1C",X"E1",X"D4",X"E2",X"9C",X"E3",X"54",X"E3",X"1C",X"E4",X"D4",X"E5",X"DC", + X"66",X"2F",X"A2",X"C9",X"CA",X"CA",X"AA",X"CB",X"C2",X"CB",X"A2",X"CC",X"CA",X"CD",X"EA",X"CE", + X"2F",X"EE",X"E1",X"F6",X"E1",X"D6",X"E2",X"F6",X"E4",X"7C",X"E5",X"CC",X"E2",X"F4",X"E5",X"2F", + X"D8",X"C9",X"D2",X"CA",X"7A",X"C9",X"72",X"CA",X"7A",X"CC",X"DC",X"CE",X"7A",X"CE",X"09",X"D0", + X"E1",X"2F",X"6A",X"CE",X"4E",X"CB",X"D8",X"CC",X"62",X"CE",X"C6",X"C9",X"46",X"CB",X"D0",X"CC", + X"0E",X"4E",X"62",X"7E",X"63",X"DE",X"63",X"DC",X"64",X"7E",X"66",X"E4",X"66",X"2C",X"66",X"C9", + X"C8",X"CA",X"C6",X"CC",X"62",X"CE",X"2D",X"E6",X"E2",X"F6",X"E3",X"66",X"E4",X"76",X"E5",X"E6", + X"66",X"2D",X"58",X"CA",X"48",X"CB",X"78",X"CC",X"68",X"CD",X"58",X"CE",X"0B",X"6A",X"63",X"CA", + X"E4",X"6A",X"E6",X"2B",X"54",X"CB",X"DC",X"CC",X"54",X"CE",X"0B",X"64",X"E1",X"10",X"E1",X"DC", + X"61",X"44",X"62",X"30",X"63",X"D4",X"63",X"64",X"64",X"10",X"64",X"D8",X"64",X"FA",X"63",X"66", + X"E6",X"20",X"A6",X"C9",X"B2",X"C9",X"CE",X"CA",X"26",X"CB",X"4E",X"CC",X"A6",X"CC",X"78",X"CE", + X"E8",X"CE",X"0D",X"B4",X"62",X"36",X"63",X"AE",X"64",X"E2",X"65",X"E6",X"66",X"2D",X"0A",X"CA", + X"20",X"CB",X"18",X"CC",X"7C",X"CD",X"78",X"CE",X"0D",X"04",X"E1",X"90",X"E1",X"A0",X"E2",X"B8", + X"63",X"32",X"64",X"B2",X"64",X"2A",X"65",X"EA",X"65",X"62",X"66",X"F8",X"66",X"24",X"63",X"A0", + X"E4",X"22",X"E4",X"24",X"AA",X"C9",X"2C",X"CC",X"24",X"CC",X"5C",X"CD",X"14",X"CD",X"4E",X"CE", + X"7C",X"CE",X"86",X"C9",X"AA",X"CA",X"1E",X"CC",X"3A",X"CB",X"3C",X"CC",X"0C",X"E6",X"62",X"D0", + X"E3",X"6A",X"E5",X"62",X"E6",X"2C",X"78",X"CA",X"EE",X"CB",X"54",X"CD",X"74",X"CE",X"2F",X"14", + X"41",X"08",X"42",X"38",X"44",X"BA",X"44",X"AE",X"45",X"68",X"45",X"F8",X"46",X"2F",X"24",X"C9", + X"AE",X"42",X"3A",X"44",X"30",X"44",X"48",X"45",X"7C",X"46",X"52",X"46",X"0A",X"EA",X"E2",X"E2", + X"42",X"7A",X"43",X"FA",X"43",X"72",X"44",X"F2",X"44",X"6A",X"45",X"EA",X"45",X"E2",X"46",X"62", + X"E6",X"AA",X"7C",X"42",X"74",X"42",X"4C",X"43",X"44",X"43",X"6C",X"44",X"64",X"44",X"5C",X"45", + X"F4",X"CD",X"DC",X"CE",X"D4",X"CE",X"8C",X"4C",X"43",X"F2",X"42",X"70",X"45",X"EC",X"46",X"2C", + X"6C",X"42",X"D2",X"43",X"66",X"45",X"5A",X"46",X"2C",X"04",X"E2",X"56",X"E3",X"9E",X"E5",X"CC", + X"46",X"2C",X"3A",X"CA",X"68",X"CB",X"A0",X"CD",X"F2",X"CE",X"8D",X"CE",X"41",X"C4",X"42",X"DA", + X"E3",X"B0",X"E5",X"F6",X"E6",X"8D",X"D8",X"41",X"FA",X"42",X"CC",X"43",X"2E",X"45",X"68",X"46", + X"A8",X"64",X"42",X"FE",X"42",X"50",X"43",X"28",X"44",X"66",X"45",X"A8",X"45",X"FE",X"45",X"7C", + X"E6",X"A8",X"48",X"42",X"72",X"42",X"C0",X"43",X"16",X"44",X"1E",X"45",X"48",X"45",X"70",X"45", + X"E2",X"CE",X"8D",X"E6",X"42",X"9C",X"43",X"D2",X"44",X"68",X"46",X"F8",X"46",X"2D",X"D8",X"CA", + X"8A",X"43",X"EC",X"44",X"78",X"46",X"56",X"46",X"2C",X"92",X"E2",X"B4",X"E2",X"BA",X"E3",X"CA", + X"46",X"2E",X"90",X"CA",X"B6",X"CA",X"8C",X"CC",X"96",X"CC",X"B8",X"CD",X"F6",X"CE",X"8A",X"A4", + X"E1",X"D4",X"E6",X"8E",X"26",X"42",X"1C",X"43",X"3C",X"44",X"0C",X"45",X"6C",X"46",X"1E",X"45", + X"8D",X"2A",X"42",X"AC",X"43",X"2A",X"44",X"AC",X"45",X"6A",X"46",X"2D",X"B4",X"CA",X"BA",X"CB", + X"14",X"44",X"1A",X"45",X"54",X"46",X"2A",X"B0",X"E5",X"F6",X"E6",X"8C",X"56",X"42",X"BA",X"43", + X"8A",X"CD",X"48",X"CE",X"08",X"2F",X"0C",X"CA",X"2C",X"CA",X"90",X"CB",X"B0",X"CB",X"C4",X"CC", + X"C4",X"CC",X"68",X"CE",X"2C",X"EC",X"E2",X"CC",X"E3",X"AA",X"E5",X"FE",X"E6",X"2C",X"58",X"CA", + X"D0",X"CB",X"9A",X"CD",X"4E",X"CE",X"0C",X"CA",X"62",X"82",X"64",X"96",X"64",X"EA",X"66",X"2C", + X"DC",X"CA",X"A8",X"CC",X"BC",X"CC",X"5C",X"CE",X"2F",X"7C",X"E2",X"5C",X"E3",X"7C",X"E5",X"9C", + X"61",X"BC",X"63",X"9C",X"64",X"FC",X"66",X"2F",X"84",X"C9",X"8C",X"CB",X"84",X"CC",X"CC",X"CE", + X"44",X"CA",X"C4",X"CB",X"44",X"CD",X"09",X"AC",X"E1",X"50",X"E2",X"CC",X"E2",X"DE",X"E2",X"10", + X"64",X"8C",X"64",X"9E",X"64",X"78",X"66",X"EC",X"66",X"21",X"C2",X"CA",X"82",X"CC",X"9C",X"C9", + X"DC",X"CA",X"5C",X"CE",X"C0",X"CA",X"80",X"CC",X"70",X"CE",X"9C",X"CC",X"08",X"0C",X"E4",X"74", + X"65",X"CA",X"62",X"C6",X"61",X"D0",X"62",X"86",X"64",X"68",X"66",X"E4",X"66",X"2E",X"46",X"CA", + X"FA",X"C9",X"54",X"CE",X"62",X"CD",X"D4",X"CA",X"AA",X"CC",X"2D",X"66",X"E6",X"34",X"E3",X"EA", + X"66",X"C4",X"64",X"F2",X"66",X"2D",X"4C",X"CE",X"52",X"CC",X"DC",X"CE",X"2A",X"CB",X"78",X"CE", + X"2A",X"30",X"E4",X"7E",X"E6",X"2E",X"FE",X"C9",X"3E",X"CC",X"26",X"CB",X"40",X"CD",X"14",X"CB", + X"FC",X"CD",X"1C",X"4A",X"62",X"4A",X"64",X"42",X"61",X"42",X"63",X"62",X"66",X"5A",X"62",X"5A", + X"E4",X"52",X"E1",X"52",X"E3",X"72",X"E6",X"CA",X"E2",X"CA",X"E4",X"C2",X"E1",X"C2",X"E3",X"E2", + X"66",X"DA",X"62",X"DA",X"64",X"D2",X"61",X"D2",X"63",X"F2",X"66",X"3C",X"46",X"C9",X"46",X"CB", + X"6E",X"CE",X"CE",X"CA",X"CA",X"CC",X"FE",X"C9",X"FE",X"CB",X"7E",X"CE",X"DE",X"CA",X"DE",X"CC", + X"46",X"C9",X"46",X"CB",X"C6",X"CE",X"66",X"CA",X"66",X"CC",X"56",X"C9",X"56",X"CB",X"D6",X"CE", + X"D6",X"42",X"D6",X"44",X"0C",X"4A",X"E2",X"28",X"E4",X"EE",X"E6",X"5A",X"E2",X"38",X"E4",X"FE", + X"46",X"CA",X"42",X"80",X"44",X"E6",X"46",X"DA",X"42",X"90",X"44",X"F6",X"46",X"28",X"8B",X"0C", + X"E4",X"C0",X"E6",X"52",X"E2",X"8B",X"AA",X"44",X"7C",X"46",X"F0",X"42",X"2F",X"2E",X"E2",X"7C", + X"43",X"E4",X"45",X"86",X"42",X"B6",X"44",X"F2",X"46",X"EC",X"46",X"2F",X"8A",X"CC",X"CE",X"CE", + X"BA",X"42",X"7C",X"45",X"E4",X"43",X"B2",X"42",X"5C",X"46",X"2E",X"C8",X"E6",X"06",X"E3",X"E4", + X"45",X"FC",X"46",X"DC",X"42",X"92",X"44",X"2E",X"0C",X"CC",X"6A",X"CA",X"EC",X"CE",X"DA",X"CD", + X"98",X"43",X"5A",X"46",X"2E",X"4A",X"E2",X"18",X"E4",X"FA",X"E6",X"42",X"E2",X"14",X"E4",X"E2", + X"46",X"2E",X"2C",X"CC",X"7E",X"CA",X"DE",X"CE",X"C6",X"CE",X"10",X"CC",X"76",X"CA",X"5E",X"E6", + X"E3",X"E6",X"28",X"E7",X"39",X"E7",X"3E",X"E7",X"1F",X"E7",X"14",X"E7",X"49",X"E7",X"5E",X"E7", + X"D3",X"E7",X"1C",X"E7",X"25",X"E7",X"36",X"E7",X"57",X"E7",X"AC",X"F8",X"BD",X"F8",X"92",X"F8", + X"4F",X"D0",X"58",X"D0",X"65",X"D0",X"46",X"D0",X"AB",X"D0",X"B8",X"D0",X"B9",X"D0",X"9E",X"D0", + X"23",X"F8",X"34",X"F8",X"49",X"F8",X"6A",X"F8",X"7B",X"F8",X"44",X"F8",X"95",X"F9",X"96",X"F9", + X"6B",X"D1",X"5C",X"D1",X"5D",X"D1",X"2E",X"F4",X"E2",X"F4",X"E3",X"74",X"E3",X"74",X"E4",X"F4", + X"45",X"F4",X"46",X"26",X"BA",X"CA",X"BA",X"CB",X"3A",X"CB",X"FA",X"CC",X"BA",X"CD",X"FA",X"CE", + X"54",X"41",X"54",X"42",X"D4",X"42",X"D4",X"43",X"54",X"44",X"54",X"45",X"D4",X"45",X"54",X"46", + X"88",X"42",X"61",X"42",X"62",X"4C",X"64",X"6C",X"65",X"C4",X"61",X"C4",X"62",X"CE",X"64",X"CE", + X"E5",X"2A",X"FC",X"CB",X"FC",X"CC",X"2C",X"E8",X"E2",X"E8",X"E3",X"E8",X"E5",X"E8",X"E6",X"26", + X"C6",X"CA",X"CE",X"CC",X"C6",X"CC",X"CE",X"CE",X"D6",X"C9",X"DE",X"CD",X"D6",X"CD",X"DE",X"CE", + X"C6",X"CA",X"46",X"CC",X"C6",X"CC",X"46",X"CE",X"D4",X"CB",X"54",X"CE",X"2E",X"76",X"E2",X"56", + X"64",X"76",X"65",X"76",X"66",X"DA",X"63",X"DA",X"64",X"22",X"9E",X"CA",X"9E",X"CB",X"96",X"CB", + X"9E",X"CC",X"1E",X"CD",X"5E",X"CE",X"D4",X"CA",X"D4",X"CB",X"D4",X"CD",X"54",X"CE",X"0A",X"76", + X"61",X"36",X"63",X"EE",X"61",X"AE",X"62",X"16",X"63",X"36",X"64",X"14",X"64",X"74",X"65",X"56", + X"E5",X"76",X"E6",X"38",X"AE",X"CC",X"6E",X"CE",X"38",X"CA",X"38",X"CB",X"98",X"CC",X"58",X"CD", + X"D6",X"CD",X"DE",X"CE",X"26",X"CC",X"6E",X"CD",X"36",X"CC",X"7E",X"CE",X"BE",X"CA",X"BE",X"CD", + X"96",X"CD",X"56",X"CE",X"0C",X"60",X"E4",X"60",X"E6",X"5A",X"E2",X"7A",X"E6",X"16",X"E1",X"76", + X"66",X"C2",X"62",X"E2",X"66",X"FC",X"64",X"FC",X"66",X"D6",X"65",X"F6",X"66",X"20",X"2A",X"CA", + X"A2",X"CA",X"2A",X"CB",X"6A",X"CD",X"CE",X"CD",X"4E",X"CE",X"A2",X"CD",X"62",X"CE",X"1C",X"4E", + X"62",X"6E",X"64",X"4E",X"64",X"6E",X"66",X"46",X"63",X"66",X"66",X"5E",X"62",X"7E",X"64",X"5E", + X"E4",X"7E",X"E6",X"56",X"E1",X"76",X"E5",X"56",X"E5",X"76",X"E6",X"CE",X"E2",X"EE",X"E4",X"CE", + X"64",X"EE",X"66",X"C6",X"63",X"E6",X"66",X"DE",X"62",X"FE",X"64",X"DE",X"64",X"FE",X"66",X"D6", + X"E1",X"F6",X"E5",X"D6",X"E5",X"F6",X"E6",X"22",X"CA",X"CA",X"CA",X"CB",X"FA",X"CD",X"7A",X"CE", + X"7E",X"62",X"7E",X"66",X"42",X"65",X"62",X"66",X"D4",X"62",X"D4",X"63",X"28",X"CC",X"C4",X"8C", + X"CD",X"06",X"CD",X"66",X"CE",X"FA",X"CC",X"BA",X"CD",X"98",X"CD",X"F8",X"CE",X"22",X"E8",X"C9", + X"C0",X"61",X"7C",X"62",X"5C",X"62",X"E6",X"63",X"C6",X"63",X"FC",X"64",X"BC",X"65",X"02",X"65", + X"E2",X"CE",X"26",X"7C",X"C9",X"5C",X"CB",X"DC",X"CA",X"FC",X"CD",X"44",X"CD",X"64",X"CE",X"12", + X"C5",X"DA",X"C6",X"C2",X"C2",X"CA",X"C5",X"EA",X"C1",X"E2",X"C3",X"B6",X"C1",X"BE",X"C4",X"0C", + X"5E",X"CD",X"7E",X"CE",X"C0",X"CD",X"70",X"CE",X"2E",X"18",X"CA",X"38",X"CB",X"8A",X"CC",X"AA", + X"C5",X"B0",X"C5",X"F8",X"C6",X"0C",X"F2",X"60",X"B2",X"61",X"02",X"65",X"62",X"66",X"2A",X"34", + X"C9",X"BC",X"CA",X"1E",X"CA",X"3E",X"CB",X"9C",X"CB",X"BC",X"CC",X"1E",X"CC",X"3E",X"CD",X"84", + X"C5",X"EC",X"C6",X"0E",X"5A",X"62",X"1A",X"63",X"26",X"64",X"26",X"65",X"96",X"65",X"F6",X"66", + X"28",X"2E",X"7E",X"CC",X"3E",X"CD",X"EE",X"CC",X"AE",X"CD",X"82",X"CD",X"E2",X"CE",X"2E",X"1E", + X"C1",X"16",X"C4",X"DE",X"C3",X"DE",X"C6",X"3C",X"C5",X"7C",X"C6",X"88",X"2A",X"65",X"6A",X"66", + X"5E",X"CD",X"7E",X"CE",X"C2",X"CD",X"E2",X"CE",X"BE",X"CD",X"FE",X"CE",X"2A",X"B0",X"CD",X"90", + X"C5",X"0C",X"E4",X"61",X"C4",X"62",X"C4",X"65",X"E4",X"66",X"28",X"5A",X"C5",X"5A",X"C6",X"96", + X"CB",X"76",X"CE",X"E4",X"CD",X"E4",X"CE",X"F6",X"CD",X"F6",X"CE",X"2C",X"64",X"C9",X"44",X"C9", + X"54",X"65",X"74",X"66",X"20",X"48",X"C1",X"40",X"C2",X"48",X"C3",X"40",X"C4",X"48",X"C5",X"48", + X"CE",X"60",X"CA",X"40",X"CB",X"60",X"CC",X"60",X"CE",X"78",X"C9",X"58",X"CA",X"78",X"CB",X"58", + X"64",X"58",X"65",X"58",X"66",X"D8",X"62",X"D0",X"63",X"D8",X"64",X"D8",X"66",X"68",X"61",X"60", + X"E2",X"E8",X"E3",X"C8",X"E4",X"E8",X"E5",X"E8",X"E6",X"E0",X"E2",X"C0",X"E3",X"E0",X"E4",X"E0", + X"66",X"78",X"61",X"70",X"62",X"78",X"63",X"70",X"64",X"78",X"65",X"78",X"66",X"F8",X"62",X"F0", + X"E3",X"F0",X"E4",X"F0",X"E6",X"28",X"2E",X"2E",X"E5",X"6E",X"E6",X"16",X"E1",X"76",X"E6",X"F8", + X"63",X"78",X"66",X"8C",X"48",X"62",X"08",X"64",X"48",X"65",X"48",X"66",X"50",X"63",X"58",X"66", + X"60",X"CA",X"E0",X"CB",X"60",X"CC",X"60",X"CE",X"F0",X"CB",X"70",X"CE",X"28",X"22",X"2E",X"CC", + X"06",X"64",X"D8",X"62",X"D0",X"62",X"28",X"64",X"20",X"64",X"EA",X"62",X"E2",X"62",X"20",X"65", + X"60",X"CE",X"08",X"4D",X"69",X"FA",X"08",X"5D",X"56",X"21",X"30",X"2C",X"A8",X"6B",X"AB",X"F9", + X"38",X"CE",X"18",X"AE",X"08",X"5D",X"C6",X"0F",X"5D",X"E6",X"88",X"45",X"62",X"43",X"4D",X"58", + X"72",X"31",X"E8",X"D7",X"29",X"28",X"2B",X"4D",X"33",X"FA",X"CD",X"F5",X"72",X"ED",X"2E",X"29", + X"4D",X"3B",X"7A",X"C1",X"49",X"4D",X"49",X"7A",X"5D",X"76",X"89",X"DE",X"0F",X"88",X"26",X"08", + X"DD",X"C6",X"2F",X"5D",X"66",X"20",X"C5",X"62",X"C3",X"4D",X"78",X"FA",X"39",X"68",X"28",X"21", + X"08",X"0A",X"4D",X"3B",X"7A",X"4D",X"FD",X"7A",X"ED",X"AE",X"09",X"4D",X"3B",X"7A",X"E9",X"49", + X"CD",X"69",X"72",X"5D",X"56",X"21",X"A8",X"94",X"DD",X"C6",X"2F",X"5D",X"66",X"20",X"2E",X"28", + X"01",X"2E",X"18",X"45",X"62",X"43",X"4D",X"58",X"7A",X"C5",X"21",X"08",X"09",X"4D",X"3B",X"7A", + X"CD",X"F5",X"72",X"31",X"E8",X"D7",X"2E",X"2A",X"CD",X"BB",X"72",X"E9",X"C9",X"00",X"CD",X"69", + X"F2",X"28",X"5D",X"76",X"29",X"B0",X"AE",X"88",X"7E",X"18",X"6B",X"8E",X"F2",X"98",X"5D",X"66", + X"2F",X"5D",X"66",X"20",X"2E",X"28",X"09",X"2E",X"38",X"45",X"6A",X"43",X"CD",X"78",X"FA",X"C5", + X"21",X"08",X"A9",X"4D",X"B3",X"7A",X"4D",X"FD",X"F2",X"B9",X"E8",X"08",X"26",X"0B",X"4D",X"3B", + X"FA",X"C1",X"C9",X"4B",X"29",X"4B",X"66",X"20",X"29",X"2C",X"38",X"29",X"C9",X"39",X"EB",X"BB", + X"F2",X"5D",X"C6",X"09",X"5D",X"E6",X"AA",X"EE",X"4B",X"30",X"A3",X"6E",X"05",X"4B",X"A1",X"49", + X"6F",X"C6",X"30",X"AF",X"2F",X"AF",X"4F",X"70",X"E6",X"C8",X"2F",X"AF",X"2F",X"D6",X"C8",X"EF", + X"CB",X"A4",X"A4",X"45",X"53",X"9A",X"C8",X"72",X"EE",X"09",X"77",X"45",X"72",X"74",X"EE",X"09", + X"1F",X"75",X"1F",X"3F",X"1F",X"C6",X"B6",X"34",X"47",X"A6",X"28",X"29",X"C9",X"75",X"E6",X"48", + X"57",X"75",X"6E",X"0A",X"EE",X"BF",X"BB",X"67",X"49",X"75",X"EE",X"40",X"57",X"75",X"7E",X"0A", + X"E6",X"B7",X"B3",X"67",X"C9",X"32",X"4B",X"48",X"0F",X"2F",X"0F",X"67",X"E6",X"2B",X"F6",X"D0", + X"E7",X"75",X"EE",X"60",X"FE",X"89",X"C7",X"B9",X"B0",X"42",X"96",X"89",X"26",X"08",X"4B",X"EE", + X"00",X"2C",X"77",X"BA",X"3B",X"AC",X"23",X"34",X"D6",X"24",X"20",X"DA",X"16",X"D7",X"3A",X"AD", + X"24",X"49",X"92",X"43",X"C8",X"2F",X"07",X"2F",X"C7",X"C6",X"AB",X"D6",X"50",X"E7",X"D5",X"C6", + X"C8",X"D6",X"21",X"67",X"29",X"2B",X"28",X"7D",X"7C",X"45",X"B0",X"49",X"DD",X"76",X"3A",X"5D", + X"56",X"1B",X"4D",X"2A",X"F3",X"5D",X"F3",X"1B",X"80",X"1C",X"5D",X"66",X"AF",X"5D",X"E6",X"88", + X"3E",X"28",X"F2",X"DE",X"FA",X"BD",X"5F",X"39",X"DD",X"F5",X"2F",X"5D",X"74",X"20",X"DD",X"76", + X"1C",X"97",X"48",X"5D",X"56",X"1D",X"4D",X"2A",X"7B",X"5D",X"F3",X"1D",X"5D",X"66",X"89",X"5D", + X"66",X"22",X"3E",X"28",X"B7",X"FA",X"19",X"FB",X"3D",X"57",X"19",X"5D",X"75",X"21",X"DD",X"F4", + X"8A",X"49",X"2B",X"FF",X"CA",X"3C",X"7B",X"C6",X"8F",X"7F",X"D2",X"4B",X"87",X"4B",X"87",X"4B", + X"07",X"4B",X"07",X"49",X"E6",X"27",X"5F",X"D2",X"E6",X"D8",X"2F",X"27",X"2F",X"27",X"C9",X"5D", + X"46",X"8C",X"5D",X"EE",X"1A",X"5D",X"56",X"8B",X"4D",X"E9",X"7B",X"5D",X"F7",X"1A",X"78",X"5D", + X"CB",X"28",X"DE",X"49",X"DD",X"46",X"0E",X"5D",X"6E",X"3C",X"DD",X"56",X"0F",X"4D",X"41",X"FB", + X"5D",X"F7",X"1C",X"D8",X"5D",X"4B",X"08",X"D6",X"49",X"71",X"BF",X"70",X"DA",X"13",X"7B",X"97", + X"D2",X"F5",X"73",X"29",X"4F",X"D3",X"91",X"DA",X"B4",X"FB",X"EB",X"9F",X"73",X"D3",X"B7",X"D0", + X"DA",X"83",X"7B",X"89",X"47",X"D2",X"7D",X"7B",X"6B",X"37",X"7B",X"89",X"47",X"52",X"7D",X"7B", + X"EB",X"9C",X"73",X"BF",X"F2",X"89",X"73",X"29",X"4F",X"D1",X"93",X"FA",X"B7",X"FB",X"EB",X"9C", + X"7B",X"73",X"BF",X"70",X"FA",X"A7",X"7B",X"89",X"47",X"52",X"91",X"7B",X"6B",X"37",X"7B",X"89", + X"4F",X"FA",X"99",X"FB",X"53",X"B7",X"C9",X"D1",X"B7",X"49",X"DD",X"D6",X"3C",X"94",X"D2",X"40", + X"7B",X"56",X"39",X"5D",X"F7",X"1C",X"58",X"35",X"5D",X"F7",X"1C",X"49",X"4D",X"64",X"7B",X"C5", + X"CD",X"D6",X"73",X"11",X"0C",X"4B",X"66",X"80",X"D2",X"E9",X"51",X"2F",X"AF",X"2F",X"4E",X"4B", + X"91",X"99",X"95",X"49",X"5D",X"66",X"09",X"5D",X"E6",X"0A",X"46",X"2D",X"4B",X"31",X"39",X"4B", + X"11",X"4B",X"11",X"61",X"2C",X"FD",X"E6",X"D0",X"0F",X"07",X"0F",X"47",X"F1",X"49",X"ED",X"4D", + X"F8",X"7A",X"69",X"B9",X"E8",X"08",X"D0",X"4B",X"E6",X"20",X"AE",X"EF",X"11",X"2C",X"6B",X"0F", + X"FC",X"B8",X"29",X"49",X"19",X"2C",X"CB",X"E6",X"20",X"D9",X"38",X"D0",X"C9",X"BE",X"4F",X"8F", + X"2F",X"8F",X"B0",X"09",X"34",X"8F",X"2E",X"A3",X"57",X"6E",X"A3",X"AE",X"A8",X"45",X"B8",X"49", + X"B7",X"5D",X"35",X"3E",X"E8",X"5D",X"70",X"3E",X"F5",X"5D",X"56",X"38",X"6F",X"8F",X"5F",X"BE", + X"A8",X"39",X"D6",X"A3",X"5D",X"F7",X"A9",X"76",X"5D",X"F7",X"AA",X"D1",X"BF",X"70",X"A0",X"88", + X"14",X"11",X"10",X"23",X"87",X"CB",X"77",X"FC",X"FE",X"29",X"17",X"30",X"2A",X"71",X"15",X"5D", + X"F7",X"18",X"97",X"49",X"A1",X"FB",X"F4",X"B9",X"A8",X"67",X"21",X"39",X"A8",X"45",X"B8",X"A1", + X"F3",X"FC",X"39",X"5D",X"48",X"A9",X"2B",X"28",X"C5",X"90",X"C9",X"28",X"38",X"28",X"28",X"21", + X"A8",X"08",X"28",X"08",X"A8",X"0F",X"A8",X"08",X"AE",X"08",X"A8",X"0D",X"A8",X"08",X"AC",X"08", + X"2B",X"2B",X"2B",X"2A",X"2A",X"2A",X"29",X"60",X"74",X"61",X"61",X"6B",X"61",X"71",X"74",X"63", + X"6B",X"5C",X"EF",X"CD",X"7C",X"5C",X"FB",X"4D",X"A0",X"28",X"EF",X"49",X"92",X"08",X"C8",X"4B", + X"6F",X"CA",X"66",X"FE",X"CD",X"4C",X"FE",X"56",X"2F",X"D8",X"32",X"B9",X"CF",X"4D",X"E8",X"FF", + X"A1",X"08",X"C7",X"B9",X"DD",X"40",X"21",X"0B",X"A8",X"45",X"B8",X"36",X"8B",X"4D",X"B5",X"4D", + X"12",X"B9",X"CF",X"34",X"F6",X"20",X"08",X"32",X"B9",X"CF",X"CD",X"34",X"F0",X"A2",X"BA",X"CF", + X"F6",X"76",X"FD",X"B9",X"28",X"08",X"11",X"76",X"FD",X"4D",X"52",X"7C",X"F9",X"6F",X"F9",X"22", + X"BA",X"CF",X"76",X"F7",X"39",X"20",X"28",X"39",X"71",X"49",X"12",X"B9",X"CF",X"6F",X"AF",X"D5", + X"29",X"6F",X"26",X"08",X"A1",X"9C",X"67",X"29",X"B6",X"DE",X"59",X"B9",X"8B",X"1E",X"F9",X"8B", + X"5F",X"21",X"28",X"28",X"C5",X"63",X"35",X"CF",X"2C",X"59",X"12",X"BD",X"E7",X"EE",X"20",X"D6", + X"80",X"0A",X"96",X"DD",X"59",X"4D",X"04",X"F8",X"59",X"32",X"09",X"40",X"06",X"08",X"26",X"08", + X"CB",X"67",X"00",X"2E",X"CB",X"D7",X"20",X"2A",X"0E",X"2C",X"C5",X"D0",X"5F",X"92",X"34",X"CF", + X"94",X"B2",X"3C",X"67",X"4D",X"09",X"F8",X"32",X"3C",X"67",X"94",X"B2",X"3C",X"67",X"4D",X"09", + X"50",X"CD",X"50",X"9B",X"20",X"2B",X"14",X"A0",X"12",X"92",X"36",X"CF",X"D6",X"2F",X"30",X"A0", + X"59",X"2E",X"08",X"59",X"8F",X"5B",X"88",X"27",X"47",X"4B",X"71",X"B2",X"0E",X"40",X"A0",X"98", + X"E6",X"B8",X"CA",X"32",X"75",X"B2",X"2E",X"48",X"12",X"78",X"E8",X"BF",X"CA",X"32",X"75",X"DE", + X"0A",X"B0",X"0D",X"4B",X"E1",X"4A",X"9A",X"7D",X"D6",X"56",X"DE",X"20",X"0B",X"56",X"DF",X"C8", + X"36",X"75",X"C9",X"95",X"07",X"57",X"E6",X"2A",X"2F",X"BB",X"5F",X"4B",X"7B",X"6A",X"EF",X"FD", + X"59",X"4B",X"39",X"59",X"4B",X"73",X"6A",X"1A",X"7E",X"59",X"4B",X"11",X"59",X"4B",X"F3",X"CA", + X"30",X"FE",X"D9",X"4B",X"B1",X"59",X"EB",X"71",X"75",X"8F",X"32",X"BE",X"E7",X"6B",X"1A",X"FD", + X"8F",X"B2",X"3D",X"67",X"6B",X"B1",X"7D",X"59",X"4B",X"F9",X"59",X"CA",X"40",X"7D",X"59",X"4B", + X"F9",X"59",X"16",X"03",X"CD",X"BD",X"6D",X"D6",X"D6",X"77",X"20",X"30",X"16",X"75",X"77",X"59", + X"4D",X"04",X"F8",X"BD",X"25",X"59",X"83",X"CA",X"B1",X"7D",X"59",X"BC",X"24",X"59",X"A3",X"B6", + X"5F",X"6B",X"91",X"FD",X"D6",X"76",X"20",X"20",X"16",X"75",X"77",X"59",X"CD",X"0C",X"50",X"49", + X"D6",X"A3",X"59",X"4D",X"8C",X"F8",X"34",X"AC",X"D0",X"59",X"DE",X"0C",X"78",X"B6",X"7E",X"CB", + X"91",X"FD",X"D9",X"4B",X"51",X"59",X"00",X"20",X"12",X"BD",X"CF",X"56",X"27",X"5A",X"91",X"FD", + X"59",X"4B",X"D9",X"59",X"D6",X"35",X"DE",X"49",X"B0",X"0A",X"96",X"DF",X"F7",X"CB",X"C8",X"7D", + X"D9",X"4B",X"71",X"59",X"00",X"20",X"12",X"BD",X"CF",X"56",X"27",X"5A",X"91",X"FD",X"D9",X"4B", + X"F9",X"59",X"D6",X"34",X"DE",X"68",X"A0",X"0A",X"96",X"49",X"F7",X"CB",X"C8",X"7D",X"4D",X"68", + X"FF",X"2E",X"2C",X"07",X"32",X"B9",X"CF",X"4D",X"34",X"F0",X"22",X"BA",X"CF",X"F6",X"56",X"D5", + X"31",X"88",X"A8",X"39",X"D6",X"D5",X"26",X"0E",X"50",X"3D",X"36",X"08",X"A1",X"B6",X"70",X"39", + X"56",X"22",X"BA",X"CF",X"E5",X"B9",X"20",X"28",X"19",X"F6",X"5F",X"07",X"DB",X"20",X"07",X"C6", + X"B0",X"B2",X"AE",X"40",X"D3",X"20",X"3A",X"32",X"F8",X"40",X"BF",X"73",X"80",X"1B",X"92",X"58", + X"48",X"56",X"2A",X"B0",X"20",X"32",X"2E",X"48",X"CB",X"E7",X"53",X"20",X"2C",X"C1",X"F1",X"D1", + X"49",X"F6",X"F7",X"C1",X"F7",X"B8",X"C9",X"CD",X"ED",X"4D",X"91",X"8B",X"E9",X"C9",X"F9",X"28", + X"F1",X"F7",X"39",X"20",X"28",X"39",X"08",X"F7",X"12",X"B9",X"CF",X"34",X"D6",X"2F",X"20",X"1C", + X"05",X"A0",X"98",X"49",X"ED",X"55",X"E9",X"A1",X"A8",X"67",X"31",X"0B",X"A8",X"AE",X"AF",X"6A", + X"D5",X"76",X"28",X"16",X"30",X"2F",X"19",X"2C",X"38",X"D1",X"16",X"D7",X"C9",X"CA",X"D2",X"FE", + X"ED",X"A3",X"DD",X"76",X"A9",X"16",X"B0",X"0F",X"E9",X"55",X"D6",X"08",X"6B",X"56",X"F6",X"CA", + X"D1",X"FE",X"23",X"55",X"56",X"2A",X"96",X"30",X"C7",X"C1",X"51",X"43",X"21",X"3C",X"CF",X"97", + X"CD",X"FA",X"64",X"6D",X"31",X"1C",X"67",X"20",X"9F",X"CD",X"A1",X"19",X"67",X"45",X"98",X"C9", + X"39",X"B8",X"E7",X"A1",X"05",X"CF",X"C5",X"98",X"39",X"33",X"E7",X"A1",X"1A",X"CF",X"6F",X"96", + X"0F",X"98",X"47",X"70",X"26",X"08",X"CD",X"10",X"47",X"8F",X"29",X"7F",X"36",X"08",X"A1",X"9C", + X"E7",X"11",X"51",X"06",X"2A",X"B6",X"5D",X"55",X"7C",X"33",X"C5",X"B8",X"4F",X"A1",X"3D",X"CF", + X"36",X"08",X"57",X"39",X"92",X"88",X"40",X"CE",X"09",X"A7",X"F7",X"71",X"A1",X"08",X"67",X"8F", + X"A9",X"57",X"51",X"36",X"28",X"11",X"C3",X"DD",X"E5",X"E9",X"29",X"2B",X"28",X"CD",X"B0",X"49", + X"A1",X"AA",X"F8",X"AE",X"0B",X"36",X"88",X"CD",X"4D",X"11",X"F8",X"A3",X"69",X"B8",X"F0",X"34", + X"CD",X"19",X"50",X"A3",X"D6",X"27",X"20",X"DF",X"21",X"28",X"E7",X"16",X"0B",X"96",X"09",X"36", + X"8B",X"28",X"26",X"0B",X"D6",X"97",X"A0",X"0D",X"34",X"BC",X"A3",X"B8",X"77",X"56",X"18",X"30", + X"0D",X"47",X"2F",X"27",X"2F",X"27",X"E6",X"27",X"F6",X"B8",X"CD",X"0C",X"50",X"D1",X"3C",X"EE", + X"8F",X"D6",X"38",X"4D",X"04",X"F8",X"34",X"A3",X"D6",X"B8",X"66",X"36",X"38",X"4D",X"04",X"F8", + X"1C",X"14",X"08",X"94",X"D6",X"38",X"EA",X"F7",X"77",X"A1",X"3D",X"CF",X"39",X"23",X"3B",X"96", + X"89",X"28",X"D6",X"EF",X"27",X"AF",X"27",X"AF",X"EE",X"8F",X"FE",X"38",X"4D",X"04",X"F8",X"BC", + X"50",X"EE",X"0F",X"FE",X"30",X"4D",X"AC",X"F0",X"3D",X"14",X"1C",X"A3",X"08",X"94",X"D6",X"38", + X"A0",X"D7",X"A1",X"9C",X"67",X"3E",X"8B",X"36",X"89",X"BE",X"1E",X"28",X"26",X"0B",X"D6",X"4D", + X"AC",X"F0",X"23",X"34",X"38",X"D0",X"1C",X"14",X"08",X"94",X"D6",X"38",X"20",X"C3",X"EB",X"D3", + X"29",X"C5",X"7D",X"22",X"B2",X"67",X"ED",X"B9",X"28",X"08",X"11",X"32",X"B4",X"67",X"F6",X"F7", + X"E1",X"F7",X"02",X"BD",X"CF",X"A3",X"22",X"BD",X"CF",X"D9",X"E1",X"49",X"AF",X"8F",X"AF",X"8F", + X"C7",X"A6",X"A8",X"21",X"81",X"B9",X"69",X"D2",X"11",X"49",X"AB",X"8D",X"EE",X"CC",X"69",X"4B", + X"63",X"71",X"28",X"2E",X"21",X"7B",X"7D",X"78",X"6D",X"7A",X"A8",X"78",X"64",X"69",X"71",X"6D", + X"FA",X"5B",X"A8",X"89",X"AE",X"5A",X"E9",X"CE",X"6B",X"28",X"A0",X"28",X"FB",X"4B",X"6F",X"5A", + X"6D",X"A8",X"7A",X"6C",X"74",X"66",X"69",X"65",X"6D",X"28",X"23",X"2F",X"B9",X"7B",X"7C",X"28", + X"2D",X"0F",X"B2",X"CE",X"EC",X"08",X"2F",X"0F",X"B3",X"5A",X"EC",X"08",X"B9",X"0F",X"B4",X"5C", + X"60",X"28",X"3B",X"2F",X"BD",X"7C",X"60",X"28",X"3D",X"2F",X"BE",X"7C",X"60",X"28",X"3F",X"2F", + X"B7",X"5C",X"68",X"08",X"ED",X"CD",X"4D",X"A0",X"70",X"F7",X"A3",X"28",X"F7",X"28",X"69",X"C1", + X"C9",X"28",X"87",X"7E",X"23",X"FE",X"23",X"C5",X"CD",X"80",X"F0",X"43",X"E1",X"28",X"C5",X"80", + X"32",X"BB",X"00",X"16",X"A0",X"77",X"00",X"49",X"FD",X"DD",X"C3",X"A6",X"A8",X"21",X"81",X"21", + X"01",X"21",X"01",X"72",X"2F",X"8D",X"47",X"B9",X"28",X"C0",X"19",X"D9",X"F1",X"49",X"28",X"2F", + X"57",X"BF",X"57",X"0F",X"ED",X"32",X"1C",X"F9",X"B2",X"3F",X"C8",X"B2",X"65",X"40",X"31",X"C9", + X"52",X"A1",X"14",X"F1",X"2E",X"2C",X"56",X"F6",X"3A",X"C5",X"21",X"20",X"28",X"39",X"C3",X"C1", + X"32",X"A3",X"ED",X"A1",X"30",X"08",X"11",X"43",X"E9",X"B8",X"43",X"C1",X"CB",X"A1",X"E7",X"F9", + X"29",X"D7",X"24",X"36",X"21",X"4D",X"E8",X"F1",X"21",X"EE",X"28",X"39",X"C3",X"32",X"2C",X"48", + X"EE",X"38",X"07",X"2F",X"07",X"A1",X"7B",X"F9",X"47",X"AE",X"08",X"29",X"D6",X"A3",X"E6",X"67", + X"16",X"22",X"E5",X"A1",X"5C",X"F0",X"CD",X"6F",X"51",X"E9",X"2E",X"2A",X"CD",X"E8",X"51",X"4D", + X"58",X"F9",X"94",X"C5",X"A1",X"6A",X"F8",X"4D",X"4F",X"F9",X"E9",X"AE",X"0A",X"4D",X"68",X"F9", + X"CD",X"78",X"51",X"94",X"E5",X"A1",X"40",X"F0",X"CD",X"6F",X"51",X"E9",X"2E",X"2A",X"CD",X"E8", + X"F9",X"4D",X"58",X"F9",X"6B",X"F7",X"68",X"A9",X"F7",X"0B",X"4D",X"68",X"F9",X"BB",X"33",X"49", + X"E5",X"A1",X"BB",X"F1",X"2E",X"21",X"CD",X"E8",X"51",X"A1",X"22",X"28",X"19",X"CB",X"E1",X"49", + X"CD",X"80",X"32",X"BB",X"30",X"F2",X"49",X"4D",X"D8",X"5C",X"5A",X"49",X"28",X"58",X"CC",X"49", + X"59",X"6D",X"7A",X"F3",X"51",X"09",X"51",X"0F",X"51",X"05",X"51",X"A8",X"33",X"A8",X"10",X"B9", + X"3E",X"28",X"3B",X"39",X"38",X"3A",X"38",X"28",X"3C",X"39",X"3A",X"3A",X"3C",X"28",X"3C",X"39", + X"34",X"BA",X"10",X"B8",X"30",X"B8",X"30",X"A8",X"78",X"7C",X"7B",X"74",X"C7",X"B0",X"17",X"D0", + X"8F",X"DB",X"98",X"4D",X"A7",X"F9",X"4D",X"76",X"FA",X"4D",X"D2",X"FB",X"6B",X"D9",X"FC",X"4D", + X"AD",X"F2",X"21",X"28",X"E0",X"21",X"28",X"38",X"CD",X"B8",X"52",X"B0",X"0A",X"96",X"28",X"4D", + X"E1",X"FA",X"96",X"09",X"4D",X"E1",X"FA",X"A1",X"08",X"D0",X"21",X"08",X"88",X"4D",X"38",X"FA", + X"16",X"2A",X"DC",X"C1",X"52",X"A1",X"28",X"48",X"29",X"28",X"38",X"4D",X"30",X"F2",X"16",X"2B", + X"5C",X"E1",X"FA",X"A1",X"08",X"50",X"21",X"08",X"88",X"4D",X"38",X"FA",X"B0",X"1C",X"96",X"0C", + X"CD",X"C1",X"52",X"96",X"2D",X"4D",X"C1",X"F2",X"16",X"2E",X"CD",X"C1",X"52",X"96",X"2F",X"4D", + X"41",X"FA",X"4D",X"D4",X"74",X"4D",X"C7",X"FC",X"90",X"F3",X"4D",X"37",X"72",X"A1",X"A0",X"08", + X"D9",X"A1",X"28",X"28",X"CD",X"6A",X"F2",X"36",X"28",X"5C",X"C1",X"F2",X"21",X"28",X"68",X"4D", + X"EA",X"FA",X"96",X"09",X"5C",X"E1",X"72",X"4D",X"5C",X"FC",X"4D",X"67",X"74",X"30",X"53",X"49", + X"56",X"FF",X"07",X"F7",X"07",X"8E",X"D6",X"D7",X"37",X"C8",X"72",X"A3",X"0B",X"70",X"B1",X"A0", + X"47",X"49",X"21",X"08",X"A0",X"4D",X"FF",X"FA",X"D3",X"59",X"9E",X"A3",X"A0",X"0C",X"59",X"72", + X"D9",X"16",X"23",X"59",X"C8",X"B7",X"C9",X"B9",X"28",X"28",X"E5",X"DD",X"39",X"A8",X"28",X"87", + X"CD",X"FA",X"79",X"C1",X"A0",X"0B",X"A3",X"A3",X"03",X"73",X"8E",X"7F",X"A3",X"72",X"8E",X"FF", + X"23",X"4B",X"12",X"4B",X"1B",X"B0",X"20",X"72",X"C6",X"00",X"7F",X"73",X"C6",X"38",X"5F",X"2B", + X"D0",X"91",X"A0",X"56",X"49",X"4D",X"2B",X"FD",X"4D",X"61",X"74",X"A1",X"1D",X"FD",X"4D",X"39", + X"F5",X"A1",X"8B",X"F5",X"CD",X"B9",X"F5",X"45",X"5B",X"82",X"F5",X"A1",X"84",X"F5",X"2E",X"20", + X"4D",X"DA",X"75",X"A1",X"07",X"FD",X"26",X"88",X"4D",X"E8",X"75",X"45",X"53",X"D3",X"75",X"A1", + X"55",X"F5",X"2E",X"20",X"EB",X"72",X"F5",X"4D",X"23",X"F5",X"CD",X"C9",X"F4",X"A1",X"CA",X"F5", + X"4D",X"39",X"75",X"A1",X"83",X"FD",X"4D",X"39",X"75",X"45",X"53",X"A2",X"75",X"A1",X"04",X"FD", + X"2E",X"2A",X"CD",X"72",X"F5",X"A1",X"C0",X"F5",X"2E",X"2A",X"CD",X"E0",X"F5",X"45",X"5B",X"53", + X"75",X"A1",X"5D",X"FD",X"26",X"0A",X"6B",X"DA",X"75",X"45",X"53",X"D3",X"75",X"8F",X"2B",X"7F", + X"21",X"DC",X"F5",X"CB",X"BD",X"F5",X"CD",X"D7",X"F4",X"4D",X"23",X"F5",X"87",X"5B",X"38",X"4B", + X"D7",X"20",X"0B",X"07",X"5B",X"8D",X"59",X"6F",X"59",X"4D",X"9A",X"FB",X"4D",X"69",X"FB",X"58", + X"D9",X"4B",X"69",X"59",X"EC",X"88",X"53",X"B0",X"F0",X"49",X"87",X"5B",X"38",X"4B",X"57",X"80", + X"0B",X"07",X"5B",X"8D",X"59",X"11",X"47",X"59",X"6C",X"8B",X"FD",X"A1",X"F1",X"FD",X"26",X"0F", + X"CD",X"E0",X"55",X"4D",X"7D",X"F3",X"21",X"B2",X"56",X"26",X"2D",X"4D",X"71",X"F5",X"D9",X"4B", + X"61",X"59",X"48",X"A1",X"DD",X"FE",X"4D",X"39",X"FD",X"A1",X"BE",X"FE",X"31",X"08",X"8A",X"AE", + X"2C",X"4D",X"71",X"F5",X"C9",X"59",X"CB",X"61",X"D9",X"31",X"28",X"28",X"E8",X"31",X"28",X"2D", + X"49",X"07",X"5B",X"88",X"31",X"0D",X"1B",X"AE",X"0E",X"A1",X"69",X"FE",X"07",X"B0",X"0C",X"A1", + X"64",X"F6",X"B7",X"00",X"ED",X"7D",X"CD",X"BD",X"55",X"79",X"E9",X"D0",X"D6",X"2D",X"20",X"2D", + X"00",X"2F",X"97",X"28",X"25",X"28",X"58",X"28",X"D3",X"CE",X"0A",X"7F",X"00",X"B8",X"D2",X"4D", + X"7D",X"F3",X"C3",X"8F",X"DB",X"28",X"39",X"39",X"0E",X"11",X"C3",X"4D",X"83",X"F3",X"B7",X"49", + X"8F",X"5B",X"0C",X"B9",X"19",X"98",X"4D",X"A3",X"FB",X"97",X"49",X"27",X"47",X"AF",X"27",X"AF", + X"E6",X"2E",X"6F",X"D1",X"0F",X"EE",X"29",X"B8",X"6F",X"D1",X"0F",X"07",X"E6",X"29",X"B0",X"47", + X"26",X"0B",X"A1",X"69",X"FE",X"4B",X"91",X"30",X"0B",X"A1",X"6C",X"FE",X"6D",X"DD",X"4D",X"3D", + X"55",X"79",X"E9",X"D3",X"EE",X"2A",X"5F",X"30",X"C1",X"49",X"CD",X"D7",X"54",X"4D",X"0B",X"F5", + X"8F",X"DB",X"98",X"A1",X"6F",X"FE",X"26",X"0B",X"4D",X"E8",X"FD",X"A1",X"00",X"FE",X"8F",X"28", + X"16",X"38",X"18",X"2D",X"76",X"F6",X"87",X"5B",X"08",X"4B",X"67",X"4C",X"0C",X"F4",X"CB",X"C7", + X"4C",X"8C",X"74",X"4B",X"77",X"A0",X"45",X"F6",X"8F",X"DB",X"38",X"49",X"8F",X"DB",X"39",X"DB", + X"30",X"F6",X"CD",X"A7",X"F4",X"32",X"F7",X"F6",X"4F",X"43",X"56",X"DB",X"30",X"A3",X"08",X"CE", + X"A9",X"A7",X"99",X"30",X"AC",X"07",X"A1",X"00",X"76",X"28",X"4D",X"CE",X"74",X"35",X"49",X"B9", + X"8C",X"C4",X"C3",X"28",X"4F",X"28",X"51",X"C6",X"D8",X"AF",X"2F",X"AF",X"2F",X"D6",X"B8",X"F7", + X"A3",X"B6",X"A8",X"A3",X"D1",X"C6",X"2F",X"D6",X"B0",X"F7",X"A3",X"B6",X"A8",X"49",X"F6",X"F6", + X"87",X"5B",X"20",X"27",X"E6",X"B8",X"20",X"DE",X"C9",X"4D",X"D7",X"F4",X"CD",X"23",X"F5",X"A1", + X"AA",X"E0",X"96",X"29",X"31",X"09",X"A8",X"EB",X"4D",X"54",X"74",X"AE",X"3C",X"36",X"A2",X"4D", + X"5C",X"F4",X"16",X"AB",X"6B",X"B9",X"B7",X"28",X"CD",X"5C",X"F4",X"36",X"A0",X"AE",X"32",X"4D", + X"DC",X"FC",X"96",X"2E",X"26",X"09",X"31",X"F5",X"57",X"4D",X"DC",X"FC",X"96",X"2D",X"26",X"9C", + X"CD",X"5C",X"F4",X"36",X"AC",X"AE",X"29",X"B9",X"97",X"D7",X"CD",X"5C",X"F4",X"36",X"AF",X"AE", + X"3A",X"4D",X"DC",X"FC",X"A1",X"10",X"76",X"B9",X"A9",X"D0",X"96",X"0C",X"21",X"0F",X"A8",X"45", + X"B0",X"43",X"29",X"21",X"28",X"29",X"C3",X"35",X"EA",X"84",X"F4",X"A1",X"84",X"F6",X"39",X"28", + X"D8",X"36",X"AC",X"A9",X"28",X"08",X"CD",X"90",X"CB",X"A9",X"28",X"08",X"01",X"43",X"95",X"A0", + X"DD",X"CB",X"CF",X"F4",X"77",X"A3",X"36",X"28",X"19",X"B8",X"D1",X"49",X"87",X"DB",X"31",X"53", + X"49",X"D3",X"96",X"18",X"7B",X"99",X"49",X"07",X"5B",X"88",X"4B",X"FF",X"B7",X"48",X"F6",X"07", + X"DB",X"20",X"CB",X"FF",X"20",X"D0",X"76",X"07",X"DB",X"20",X"CB",X"FF",X"20",X"C1",X"C9",X"F6", + X"F6",X"F6",X"8F",X"5B",X"88",X"27",X"EE",X"0C",X"A0",X"75",X"49",X"4D",X"61",X"FC",X"A1",X"08", + X"F8",X"31",X"29",X"58",X"29",X"D7",X"3E",X"B6",X"28",X"CD",X"B0",X"A1",X"28",X"58",X"39",X"28", + X"E0",X"A9",X"08",X"88",X"CD",X"90",X"96",X"F7",X"B2",X"89",X"D2",X"B2",X"19",X"D2",X"6B",X"D4", + X"54",X"56",X"23",X"76",X"23",X"ED",X"CD",X"6C",X"55",X"CB",X"E1",X"8F",X"C5",X"A8",X"3A",X"33", + X"9E",X"A0",X"F1",X"49",X"FD",X"DD",X"C3",X"A6",X"08",X"21",X"81",X"21",X"81",X"21",X"81",X"72", + X"2F",X"BD",X"47",X"31",X"28",X"C0",X"19",X"79",X"F1",X"49",X"ED",X"7D",X"E5",X"4D",X"35",X"F5", + X"E9",X"D9",X"69",X"3C",X"14",X"B8",X"73",X"49",X"6D",X"4D",X"39",X"FD",X"A3",X"C9",X"30",X"F0", + X"C9",X"6D",X"FD",X"46",X"23",X"66",X"23",X"CB",X"09",X"CB",X"CD",X"BD",X"55",X"A3",X"F9",X"69", + X"30",X"E7",X"49",X"DD",X"6D",X"BE",X"08",X"A9",X"48",X"08",X"4D",X"10",X"FD",X"C9",X"79",X"49", + X"E5",X"4D",X"6C",X"F5",X"7C",X"55",X"3B",X"B6",X"28",X"CD",X"B0",X"E9",X"C9",X"2B",X"0C",X"7A", + X"49",X"CD",X"08",X"0B",X"18",X"5C",X"4D",X"5B",X"5C",X"08",X"0F",X"89",X"C9",X"4B",X"08",X"0F", + X"0C",X"BF",X"33",X"28",X"09",X"24",X"10",X"BC",X"28",X"23",X"0C",X"B0",X"35",X"28",X"0D",X"24", + X"B8",X"B9",X"08",X"8F",X"8C",X"39",X"38",X"38",X"08",X"19",X"8C",X"39",X"38",X"39",X"08",X"1B", + X"0C",X"B9",X"30",X"BA",X"28",X"3D",X"0C",X"B9",X"30",X"BB",X"28",X"2F",X"3A",X"6F",X"4F",X"67", + X"4C",X"08",X"0B",X"8C",X"5A",X"CF",X"CD",X"08",X"0F",X"8C",X"39",X"39",X"B9",X"08",X"89",X"8C", + X"31",X"B8",X"36",X"28",X"6A",X"69",X"6C",X"A8",X"28",X"2A",X"0B",X"61",X"4E",X"78",X"7D",X"7C", + X"A8",X"0A",X"B9",X"5C",X"ED",X"5B",X"FC",X"08",X"AD",X"8C",X"EB",X"CF",X"69",X"CE",X"A0",X"39", + X"28",X"2F",X"24",X"6B",X"67",X"61",X"66",X"A8",X"BA",X"28",X"21",X"23",X"7B",X"6D",X"7A",X"7E", + X"69",X"4B",X"ED",X"08",X"2B",X"8A",X"B1",X"58",X"A0",X"5B",X"FC",X"49",X"FA",X"5C",X"A8",X"8D", + X"22",X"BA",X"78",X"A8",X"7B",X"7C",X"69",X"7A",X"7C",X"28",X"27",X"2F",X"B9",X"28",X"27",X"21", + X"F8",X"CC",X"E9",X"D9",X"ED",X"5A",X"A8",X"19",X"28",X"CA",X"FD",X"CD",X"F8",X"08",X"BB",X"0F", + X"7A",X"61",X"6F",X"60",X"7C",X"28",X"3D",X"20",X"64",X"6D",X"6E",X"7C",X"28",X"27",X"39",X"BA", + X"A8",X"CF",X"6E",X"08",X"A0",X"28",X"A8",X"89",X"2B",X"5B",X"6F",X"5D",X"6E",X"4C",X"A8",X"89", + X"39",X"7C",X"6D",X"7B",X"7C",X"28",X"3A",X"24",X"7B",X"67",X"7D",X"66",X"6C",X"A8",X"28",X"3E", + X"89",X"02",X"8B",X"04",X"8D",X"06",X"8F",X"80",X"09",X"82",X"0B",X"86",X"0F",X"10",X"99",X"13", + X"2F",X"B0",X"B7",X"48",X"4F",X"D0",X"D7",X"29",X"2A",X"2B",X"2C",X"2D",X"2E",X"2F",X"20",X"38", + X"38",X"28",X"20",X"38",X"30",X"48",X"E8",X"48",X"88",X"00",X"C8",X"40",X"B8",X"BF",X"B0",X"08", + X"28",X"28",X"1E",X"F7",X"68",X"E7",X"B8",X"28",X"28",X"28",X"1E",X"F7",X"F8",X"17",X"B8",X"28", + X"A8",X"08",X"9E",X"FF",X"80",X"C7",X"B0",X"08",X"A8",X"08",X"9E",X"FF",X"A8",X"08",X"57",X"F7", + X"28",X"28",X"D7",X"D7",X"28",X"28",X"D7",X"D7",X"28",X"28",X"D7",X"D7",X"31",X"39",X"38",X"34", + X"2F",X"30",X"35",X"2F",X"32",X"34",X"20",X"53",X"45",X"47",X"41",X"20",X"52",X"2F",X"44",X"20", + X"5B",X"5B",X"20",X"46",X"4C",X"49",X"43",X"4B",X"59",X"20",X"21",X"21",X"5D",X"5D",X"20",X"20", + X"4F",X"4C",X"44",X"20",X"4E",X"41",X"4D",X"45",X"20",X"31",X"29",X"20",X"42",X"55",X"53",X"54", + X"59",X"20",X"32",X"29",X"20",X"46",X"4C",X"49",X"50",X"50",X"20",X"50",X"52",X"4F",X"47",X"52", + X"41",X"4D",X"45",X"44",X"20",X"42",X"59",X"20",X"48",X"49",X"44",X"45",X"4B",X"49",X"2E",X"49", + X"53",X"48",X"49",X"4B",X"41",X"57",X"41",X"20",X"53",X"48",X"55",X"49",X"43",X"48",X"49",X"2E", + X"4B",X"41",X"54",X"41",X"47",X"49",X"20",X"47",X"41",X"4D",X"45",X"20",X"44",X"45",X"53",X"49", + X"47",X"4E",X"45",X"44",X"20",X"42",X"59",X"20",X"59",X"4F",X"4A",X"49",X"2E",X"49",X"53",X"48", + X"49",X"49",X"20",X"43",X"48",X"41",X"52",X"41",X"43",X"54",X"4F",X"52",X"20",X"44",X"45",X"53", + X"49",X"47",X"4E",X"45",X"44",X"20",X"42",X"59",X"20",X"59",X"4F",X"53",X"48",X"49",X"4B",X"49", + X"2E",X"4B",X"41",X"57",X"41",X"53",X"41",X"4B",X"49",X"20",X"53",X"45",X"43",X"55",X"52",X"49", + X"54",X"59",X"20",X"42",X"59",X"20",X"53",X"2E",X"4B",X"41",X"54",X"41",X"47",X"49",X"20",X"41", + X"4C",X"4C",X"20",X"52",X"49",X"47",X"48",X"54",X"20",X"52",X"45",X"53",X"45",X"52",X"56",X"45", + X"44",X"20",X"5B",X"5B",X"20",X"44",X"4F",X"4E",X"27",X"54",X"20",X"43",X"4F",X"50",X"59",X"20", + X"21",X"21",X"20",X"5D",X"5D",X"20",X"5B",X"5B",X"20",X"44",X"4F",X"4E",X"27",X"54",X"20",X"43", + X"4F",X"50",X"59",X"20",X"21",X"21",X"20",X"5D",X"5D",X"20",X"5B",X"5B",X"20",X"44",X"4F",X"4E", + X"27",X"54",X"20",X"43",X"4F",X"50",X"59",X"20",X"21",X"21",X"20",X"5D",X"5D",X"20",X"5B",X"5B", + X"20",X"44",X"4F",X"4E",X"27",X"54",X"20",X"43",X"4F",X"50",X"59",X"20",X"21",X"21",X"20",X"5D"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/snd_rom.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/snd_rom.vhd new file mode 100644 index 00000000..70d4f9b4 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/snd_rom.vhd @@ -0,0 +1,534 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity snd_rom is +port ( + clk : in std_logic; + addr : in std_logic_vector(12 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of snd_rom is + type rom is array(0 to 8191) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"F3",X"ED",X"56",X"31",X"00",X"84",X"C3",X"7E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"38",X"30",X"48", + X"2C",X"31",X"33",X"48",X"2C",X"30",X"2C",X"30",X"F5",X"3E",X"01",X"32",X"10",X"80",X"F1",X"FB", + X"C9",X"44",X"45",X"46",X"57",X"09",X"54",X"41",X"42",X"30",X"30",X"0D",X"0A",X"09",X"44",X"45", + X"46",X"42",X"09",X"30",X"2C",X"46",X"4C",X"47",X"56",X"4F",X"4C",X"2C",X"30",X"2C",X"30",X"0D", + X"0A",X"0D",X"0A",X"0D",X"0A",X"54",X"F5",X"E5",X"3A",X"00",X"E0",X"2A",X"11",X"80",X"77",X"23", + X"CB",X"65",X"28",X"03",X"21",X"00",X"80",X"22",X"11",X"80",X"E1",X"F1",X"ED",X"45",X"CD",X"98", + X"04",X"21",X"00",X"80",X"11",X"01",X"80",X"01",X"FF",X"07",X"36",X"00",X"ED",X"B0",X"21",X"12", + X"80",X"36",X"80",X"21",X"00",X"80",X"11",X"01",X"80",X"01",X"0F",X"00",X"36",X"80",X"ED",X"B0", + X"FB",X"CD",X"B3",X"04",X"3A",X"10",X"80",X"A7",X"28",X"F7",X"AF",X"32",X"10",X"80",X"DD",X"21", + X"30",X"80",X"06",X"10",X"C5",X"DD",X"CB",X"00",X"7E",X"C4",X"C7",X"00",X"11",X"20",X"00",X"DD", + X"19",X"C1",X"10",X"F0",X"C3",X"A1",X"00",X"DD",X"5E",X"03",X"DD",X"56",X"04",X"13",X"DD",X"73", + X"03",X"DD",X"72",X"04",X"DD",X"6E",X"05",X"DD",X"66",X"06",X"B7",X"ED",X"52",X"CC",X"4D",X"02", + X"DD",X"CB",X"03",X"46",X"C0",X"DD",X"5E",X"11",X"DD",X"56",X"12",X"7B",X"B2",X"20",X"07",X"DD", + X"36",X"17",X"0F",X"C3",X"C2",X"01",X"DD",X"CB",X"00",X"6E",X"20",X"33",X"DD",X"7E",X"0B",X"B7", + X"20",X"08",X"DD",X"73",X"13",X"DD",X"72",X"14",X"18",X"59",X"3D",X"21",X"79",X"07",X"23",X"DD", + X"4E",X"0E",X"06",X"00",X"09",X"09",X"4E",X"23",X"66",X"69",X"0E",X"04",X"09",X"4E",X"23",X"66", + X"69",X"4F",X"06",X"00",X"09",X"09",X"7E",X"23",X"66",X"6F",X"CD",X"1A",X"02",X"18",X"34",X"D5", + X"DD",X"6E",X"15",X"DD",X"66",X"16",X"B7",X"ED",X"52",X"F5",X"7D",X"F2",X"40",X"01",X"ED",X"44", + X"67",X"DD",X"5E",X"03",X"CD",X"5A",X"07",X"DD",X"5E",X"05",X"CD",X"66",X"07",X"5F",X"16",X"00", + X"F1",X"7B",X"F2",X"5B",X"01",X"ED",X"44",X"28",X"02",X"15",X"5F",X"E1",X"19",X"DD",X"75",X"13", + X"DD",X"74",X"14",X"DD",X"7E",X"0C",X"B7",X"20",X"0B",X"DD",X"7E",X"0D",X"2F",X"E6",X"0F",X"DD", + X"77",X"17",X"18",X"23",X"3D",X"21",X"79",X"07",X"23",X"DD",X"4E",X"0E",X"06",X"00",X"09",X"09", + X"4E",X"23",X"66",X"69",X"0E",X"02",X"09",X"4E",X"23",X"66",X"69",X"4F",X"06",X"00",X"09",X"09", + X"7E",X"23",X"66",X"6F",X"CD",X"E0",X"01",X"DD",X"CB",X"00",X"76",X"20",X"25",X"DD",X"7E",X"01", + X"E6",X"0F",X"4F",X"06",X"00",X"21",X"D5",X"01",X"09",X"4E",X"DD",X"7E",X"13",X"E6",X"0F",X"B1", + X"CD",X"5C",X"04",X"DD",X"7E",X"13",X"E6",X"F0",X"DD",X"B6",X"14",X"0F",X"0F",X"0F",X"0F",X"CD", + X"5C",X"04",X"DD",X"7E",X"01",X"E6",X"0F",X"4F",X"06",X"00",X"21",X"D9",X"01",X"09",X"7E",X"DD", + X"B6",X"17",X"C3",X"5C",X"04",X"80",X"A0",X"C0",X"C0",X"90",X"B0",X"D0",X"F0",X"DD",X"77",X"0F", + X"E5",X"DD",X"7E",X"0F",X"CB",X"3F",X"F5",X"4F",X"06",X"00",X"09",X"F1",X"7E",X"E1",X"38",X"14", + X"0F",X"0F",X"0F",X"0F",X"B7",X"28",X"E6",X"FE",X"10",X"20",X"05",X"DD",X"35",X"0F",X"18",X"E0", + X"FE",X"20",X"28",X"0B",X"DD",X"34",X"0F",X"F6",X"F0",X"DD",X"86",X"0D",X"3C",X"38",X"01",X"AF", + X"2F",X"E6",X"0F",X"DD",X"77",X"17",X"C9",X"DD",X"77",X"10",X"E5",X"DD",X"7E",X"10",X"CB",X"3F", + X"F5",X"4F",X"06",X"00",X"09",X"F1",X"7E",X"E1",X"38",X"11",X"0F",X"0F",X"0F",X"0F",X"B7",X"CA", + X"17",X"02",X"FE",X"10",X"20",X"05",X"DD",X"35",X"10",X"18",X"DF",X"DD",X"34",X"10",X"2F",X"E6", + X"0F",X"6F",X"26",X"00",X"EB",X"19",X"DD",X"75",X"13",X"DD",X"74",X"14",X"C9",X"DD",X"5E",X"07", + X"DD",X"56",X"08",X"1A",X"13",X"B7",X"FA",X"D2",X"02",X"DD",X"CB",X"00",X"5E",X"20",X"59",X"B7", + X"28",X"03",X"DD",X"86",X"09",X"21",X"C6",X"06",X"4F",X"06",X"00",X"09",X"09",X"7E",X"DD",X"77", + X"11",X"23",X"7E",X"DD",X"77",X"12",X"DD",X"CB",X"00",X"6E",X"28",X"16",X"1A",X"13",X"DD",X"86", + X"09",X"21",X"C6",X"06",X"4F",X"06",X"00",X"09",X"09",X"7E",X"DD",X"77",X"15",X"23",X"7E",X"DD", + X"77",X"16",X"D5",X"1A",X"67",X"DD",X"5E",X"02",X"CD",X"5A",X"07",X"D1",X"DD",X"75",X"05",X"DD", + X"74",X"06",X"AF",X"DD",X"77",X"0F",X"DD",X"77",X"10",X"13",X"DD",X"73",X"07",X"DD",X"72",X"08", + X"AF",X"DD",X"77",X"03",X"DD",X"77",X"04",X"C9",X"DD",X"77",X"12",X"1A",X"13",X"DD",X"77",X"11", + X"DD",X"CB",X"00",X"6E",X"28",X"CC",X"1A",X"13",X"DD",X"77",X"16",X"1A",X"13",X"DD",X"77",X"15", + X"18",X"C0",X"21",X"E5",X"02",X"E5",X"E6",X"3F",X"21",X"E9",X"02",X"4F",X"06",X"00",X"09",X"09", + X"7E",X"23",X"66",X"6F",X"E9",X"13",X"C3",X"53",X"02",X"C4",X"03",X"1D",X"03",X"22",X"03",X"37", + X"03",X"E9",X"03",X"4B",X"03",X"62",X"03",X"67",X"03",X"72",X"03",X"8D",X"03",X"6C",X"03",X"A0", + X"03",X"A8",X"03",X"C0",X"03",X"C6",X"03",X"CC",X"03",X"D2",X"03",X"D8",X"03",X"E0",X"03",X"F3", + X"03",X"00",X"04",X"15",X"04",X"1D",X"04",X"25",X"04",X"34",X"04",X"45",X"04",X"1A",X"DD",X"77", + X"02",X"C9",X"1A",X"DD",X"77",X"0D",X"C9",X"0F",X"0E",X"0D",X"0C",X"0B",X"0A",X"09",X"07",X"08", + X"06",X"05",X"04",X"03",X"02",X"01",X"00",X"1A",X"D5",X"5F",X"DD",X"66",X"02",X"CD",X"5A",X"07", + X"DD",X"75",X"03",X"DD",X"74",X"04",X"D1",X"E1",X"C3",X"A9",X"02",X"1A",X"F6",X"E0",X"F5",X"CD", + X"5C",X"04",X"F1",X"F6",X"FC",X"3C",X"20",X"05",X"DD",X"CB",X"00",X"B6",X"C9",X"DD",X"CB",X"00", + X"F6",X"C9",X"1A",X"DD",X"77",X"0C",X"C9",X"1A",X"DD",X"77",X"0B",X"C9",X"EB",X"5E",X"23",X"56", + X"1B",X"C9",X"1A",X"4F",X"13",X"1A",X"47",X"C5",X"DD",X"E5",X"E1",X"DD",X"35",X"0A",X"DD",X"4E", + X"0A",X"DD",X"35",X"0A",X"06",X"00",X"09",X"72",X"2B",X"73",X"D1",X"1B",X"C9",X"DD",X"E5",X"E1", + X"DD",X"4E",X"0A",X"06",X"00",X"09",X"5E",X"23",X"56",X"DD",X"34",X"0A",X"DD",X"34",X"0A",X"C9", + X"1A",X"DD",X"86",X"09",X"DD",X"77",X"09",X"C9",X"1A",X"13",X"C6",X"18",X"4F",X"06",X"00",X"DD", + X"E5",X"E1",X"09",X"7E",X"B7",X"20",X"02",X"1A",X"77",X"13",X"35",X"C2",X"6C",X"03",X"13",X"C9", + X"DD",X"CB",X"00",X"EE",X"1B",X"C9",X"DD",X"CB",X"00",X"AE",X"1B",X"C9",X"DD",X"CB",X"00",X"DE", + X"1B",X"C9",X"DD",X"CB",X"00",X"9E",X"1B",X"C9",X"1A",X"DD",X"B6",X"00",X"DD",X"77",X"00",X"C9", + X"1A",X"2F",X"DD",X"A6",X"00",X"DD",X"77",X"00",X"C9",X"CD",X"4D",X"04",X"DD",X"36",X"00",X"00", + X"E1",X"E1",X"C9",X"21",X"20",X"80",X"CB",X"96",X"21",X"90",X"80",X"CB",X"96",X"C3",X"E9",X"03", + X"21",X"20",X"80",X"36",X"00",X"06",X"04",X"11",X"20",X"00",X"21",X"30",X"80",X"CB",X"96",X"19", + X"10",X"FB",X"C3",X"E9",X"03",X"21",X"90",X"80",X"CB",X"96",X"C3",X"E9",X"03",X"21",X"30",X"80", + X"CB",X"96",X"C3",X"E9",X"03",X"21",X"20",X"80",X"CB",X"9E",X"CB",X"96",X"21",X"90",X"80",X"CB", + X"96",X"C3",X"E9",X"03",X"21",X"20",X"80",X"CB",X"A6",X"CB",X"9E",X"CB",X"96",X"21",X"90",X"80", + X"CB",X"96",X"C3",X"E9",X"03",X"21",X"70",X"80",X"CB",X"96",X"C3",X"E9",X"03",X"DD",X"7E",X"01", + X"E6",X"0F",X"4F",X"06",X"00",X"21",X"D9",X"01",X"09",X"7E",X"F6",X"0F",X"DD",X"CB",X"00",X"56", + X"C0",X"ED",X"47",X"DD",X"7E",X"01",X"E6",X"F0",X"FE",X"10",X"28",X"06",X"ED",X"57",X"32",X"00", + X"C0",X"C9",X"ED",X"57",X"32",X"00",X"A0",X"C9",X"E5",X"21",X"00",X"80",X"11",X"01",X"80",X"01", + X"0F",X"00",X"36",X"80",X"ED",X"B0",X"CD",X"8B",X"04",X"E1",X"C9",X"21",X"30",X"80",X"11",X"31", + X"80",X"01",X"FF",X"01",X"36",X"00",X"ED",X"B0",X"21",X"AF",X"04",X"11",X"00",X"A0",X"01",X"04", + X"00",X"ED",X"B0",X"21",X"AF",X"04",X"11",X"00",X"C0",X"01",X"04",X"00",X"ED",X"B0",X"C9",X"9F", + X"BF",X"DF",X"FF",X"06",X"10",X"21",X"00",X"80",X"7E",X"A7",X"28",X"BC",X"FE",X"80",X"28",X"09", + X"36",X"80",X"C5",X"E5",X"CD",X"CD",X"04",X"E1",X"C1",X"23",X"10",X"EC",X"C9",X"21",X"F4",X"04", + X"01",X"13",X"00",X"ED",X"B9",X"C0",X"21",X"F5",X"04",X"09",X"09",X"7E",X"23",X"66",X"6F",X"79", + X"08",X"E9",X"81",X"82",X"83",X"84",X"85",X"86",X"87",X"88",X"89",X"8A",X"8B",X"8C",X"8D",X"8E", + X"8F",X"90",X"91",X"92",X"93",X"1B",X"05",X"2F",X"05",X"43",X"05",X"6E",X"05",X"57",X"05",X"8F", + X"05",X"A3",X"05",X"B7",X"05",X"D0",X"05",X"E4",X"05",X"0B",X"06",X"24",X"06",X"25",X"06",X"26", + X"06",X"37",X"06",X"48",X"06",X"5F",X"06",X"78",X"06",X"79",X"06",X"CD",X"8B",X"04",X"21",X"20", + X"80",X"36",X"00",X"23",X"36",X"00",X"21",X"A1",X"07",X"11",X"30",X"80",X"C3",X"A4",X"06",X"CD", + X"8B",X"04",X"21",X"20",X"80",X"36",X"00",X"23",X"36",X"00",X"21",X"D9",X"08",X"11",X"30",X"80", + X"C3",X"A4",X"06",X"CD",X"8B",X"04",X"21",X"20",X"80",X"36",X"00",X"23",X"36",X"00",X"21",X"95", + X"0C",X"11",X"30",X"80",X"C3",X"A4",X"06",X"21",X"20",X"80",X"3A",X"20",X"80",X"E6",X"C0",X"C0", + X"CB",X"EE",X"CD",X"94",X"06",X"21",X"A7",X"10",X"11",X"30",X"81",X"C3",X"A4",X"06",X"3A",X"21", + X"80",X"CB",X"7F",X"C2",X"EA",X"05",X"21",X"20",X"80",X"3A",X"20",X"80",X"E6",X"F8",X"C0",X"CB", + X"D6",X"21",X"90",X"80",X"CB",X"D6",X"21",X"EB",X"0F",X"11",X"30",X"81",X"C3",X"A4",X"06",X"CD", + X"8B",X"04",X"21",X"20",X"80",X"36",X"00",X"23",X"36",X"00",X"21",X"F2",X"10",X"11",X"30",X"80", + X"C3",X"A4",X"06",X"CD",X"8B",X"04",X"21",X"20",X"80",X"36",X"00",X"23",X"36",X"00",X"21",X"10", + X"12",X"11",X"30",X"80",X"C3",X"A4",X"06",X"21",X"21",X"80",X"CB",X"FE",X"3A",X"20",X"80",X"E6", + X"FC",X"C0",X"21",X"90",X"80",X"CB",X"D6",X"21",X"2C",X"13",X"11",X"30",X"81",X"C3",X"A4",X"06", + X"3A",X"20",X"80",X"E6",X"E0",X"C0",X"21",X"30",X"80",X"CB",X"D6",X"21",X"A1",X"13",X"11",X"B0", + X"81",X"C3",X"A4",X"06",X"21",X"21",X"80",X"CB",X"7E",X"C8",X"21",X"21",X"80",X"CB",X"BE",X"21", + X"20",X"80",X"3A",X"20",X"80",X"E6",X"F8",X"C0",X"CB",X"D6",X"21",X"90",X"80",X"CB",X"D6",X"21", + X"25",X"14",X"11",X"30",X"81",X"3E",X"09",X"08",X"C3",X"A4",X"06",X"21",X"20",X"80",X"3A",X"20", + X"80",X"E6",X"F0",X"C0",X"CB",X"DE",X"21",X"90",X"80",X"CB",X"D6",X"21",X"39",X"15",X"11",X"30", + X"81",X"C3",X"A4",X"06",X"C9",X"C9",X"CD",X"8B",X"04",X"21",X"20",X"80",X"36",X"00",X"21",X"1F", + X"16",X"11",X"30",X"80",X"C3",X"A4",X"06",X"21",X"20",X"80",X"CB",X"FE",X"CD",X"94",X"06",X"21", + X"AE",X"16",X"11",X"30",X"81",X"C3",X"A4",X"06",X"21",X"20",X"80",X"3A",X"20",X"80",X"E6",X"80", + X"C0",X"CB",X"F6",X"CD",X"94",X"06",X"21",X"29",X"17",X"11",X"30",X"81",X"C3",X"A4",X"06",X"21", + X"20",X"80",X"3A",X"20",X"80",X"E6",X"E0",X"C0",X"CB",X"CE",X"21",X"90",X"80",X"CB",X"D6",X"21", + X"D2",X"17",X"11",X"30",X"81",X"C3",X"A4",X"06",X"C9",X"21",X"20",X"80",X"3A",X"20",X"80",X"E6", + X"E0",X"C0",X"21",X"70",X"80",X"CB",X"D6",X"21",X"A3",X"18",X"11",X"F0",X"81",X"C3",X"A4",X"06", + X"06",X"04",X"18",X"02",X"06",X"10",X"11",X"20",X"00",X"21",X"30",X"80",X"CB",X"D6",X"19",X"10", + X"FB",X"C3",X"98",X"04",X"7E",X"23",X"66",X"6F",X"46",X"23",X"C5",X"7E",X"23",X"E5",X"66",X"6F", + X"01",X"0E",X"00",X"ED",X"B0",X"08",X"12",X"08",X"13",X"AF",X"06",X"11",X"12",X"13",X"10",X"FC", + X"E1",X"23",X"C1",X"10",X"E5",X"C9",X"00",X"00",X"FF",X"03",X"C7",X"03",X"90",X"03",X"5D",X"03", + X"2D",X"03",X"FF",X"02",X"D4",X"02",X"AB",X"02",X"85",X"02",X"61",X"02",X"3F",X"02",X"1E",X"02", + X"00",X"02",X"E3",X"01",X"C8",X"01",X"AF",X"01",X"96",X"01",X"80",X"01",X"6A",X"01",X"56",X"01", + X"43",X"01",X"30",X"01",X"1F",X"01",X"0F",X"01",X"00",X"01",X"F2",X"00",X"E4",X"00",X"D7",X"00", + X"CB",X"00",X"C0",X"00",X"B5",X"00",X"AB",X"00",X"A1",X"00",X"98",X"00",X"90",X"00",X"88",X"00", + X"80",X"00",X"79",X"00",X"72",X"00",X"6C",X"00",X"66",X"00",X"60",X"00",X"5B",X"00",X"55",X"00", + X"51",X"00",X"4C",X"00",X"48",X"00",X"44",X"00",X"40",X"00",X"3C",X"00",X"39",X"00",X"36",X"00", + X"33",X"00",X"30",X"00",X"2D",X"00",X"2B",X"00",X"28",X"00",X"26",X"00",X"24",X"00",X"22",X"00", + X"20",X"00",X"1E",X"00",X"1C",X"00",X"1B",X"00",X"19",X"00",X"18",X"00",X"16",X"00",X"15",X"00", + X"13",X"00",X"12",X"00",X"11",X"00",X"10",X"00",X"0F",X"00",X"16",X"00",X"6A",X"06",X"08",X"29", + X"30",X"01",X"19",X"10",X"FA",X"C9",X"06",X"08",X"ED",X"6A",X"7C",X"38",X"03",X"BB",X"38",X"03", + X"93",X"67",X"B7",X"10",X"F3",X"7D",X"17",X"2F",X"C9",X"13",X"A1",X"07",X"D9",X"08",X"95",X"0C", + X"EB",X"0F",X"A7",X"10",X"F2",X"10",X"10",X"12",X"2C",X"13",X"A1",X"13",X"25",X"14",X"39",X"15", + X"C1",X"15",X"DB",X"15",X"1F",X"16",X"AE",X"16",X"29",X"17",X"D2",X"17",X"36",X"18",X"A3",X"18", + X"FF",X"A5",X"07",X"CA",X"08",X"04",X"AE",X"07",X"BB",X"07",X"C8",X"07",X"D5",X"07",X"80",X"10", + X"00",X"00",X"00",X"01",X"00",X"E2",X"07",X"07",X"20",X"00",X"00",X"80",X"11",X"00",X"00",X"00", + X"01",X"00",X"F7",X"07",X"07",X"20",X"00",X"00",X"80",X"12",X"00",X"00",X"00",X"01",X"00",X"21", + X"08",X"07",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00",X"01",X"00",X"0C",X"08",X"EF",X"20", + X"00",X"00",X"82",X"0D",X"81",X"14",X"86",X"01",X"88",X"36",X"08",X"88",X"45",X"08",X"88",X"52", + X"08",X"88",X"5D",X"08",X"8A",X"E2",X"07",X"82",X"0E",X"81",X"14",X"86",X"02",X"88",X"62",X"08", + X"88",X"6A",X"08",X"88",X"72",X"08",X"88",X"7A",X"08",X"8A",X"F7",X"07",X"82",X"0D",X"81",X"14", + X"86",X"01",X"88",X"82",X"08",X"88",X"8C",X"08",X"88",X"82",X"08",X"88",X"96",X"08",X"8A",X"0C", + X"08",X"82",X"0D",X"81",X"14",X"86",X"01",X"88",X"A0",X"08",X"88",X"AE",X"08",X"88",X"A0",X"08", + X"88",X"BC",X"08",X"8A",X"21",X"08",X"19",X"02",X"1D",X"02",X"20",X"02",X"19",X"02",X"1D",X"02", + X"20",X"02",X"25",X"04",X"89",X"22",X"04",X"1E",X"04",X"22",X"02",X"1E",X"02",X"22",X"02",X"25", + X"02",X"89",X"25",X"02",X"25",X"02",X"29",X"04",X"2C",X"02",X"29",X"06",X"89",X"27",X"06",X"20", + X"0A",X"89",X"2C",X"01",X"8C",X"00",X"10",X"62",X"08",X"89",X"2A",X"01",X"8C",X"00",X"10",X"6A", + X"08",X"89",X"29",X"01",X"8C",X"00",X"10",X"72",X"08",X"89",X"27",X"01",X"8C",X"00",X"10",X"7A", + X"08",X"89",X"20",X"02",X"1D",X"02",X"8C",X"01",X"04",X"82",X"08",X"89",X"22",X"02",X"1E",X"02", + X"8C",X"01",X"04",X"8C",X"08",X"89",X"24",X"02",X"20",X"02",X"8C",X"01",X"04",X"96",X"08",X"89", + X"1D",X"02",X"19",X"02",X"20",X"02",X"19",X"02",X"8C",X"02",X"02",X"A0",X"08",X"89",X"1E",X"02", + X"19",X"02",X"22",X"02",X"19",X"02",X"8C",X"02",X"02",X"AE",X"08",X"89",X"20",X"02",X"1B",X"02", + X"20",X"02",X"18",X"02",X"8C",X"02",X"02",X"A0",X"08",X"89",X"CE",X"08",X"D4",X"08",X"CE",X"FE", + X"DC",X"BA",X"A9",X"01",X"EF",X"EC",X"BA",X"01",X"FF",X"DD",X"08",X"0C",X"0C",X"03",X"E4",X"08", + X"F1",X"08",X"FE",X"08",X"80",X"10",X"00",X"00",X"00",X"01",X"00",X"33",X"09",X"0C",X"20",X"00", + X"00",X"80",X"11",X"00",X"00",X"00",X"01",X"00",X"0E",X"09",X"0C",X"20",X"00",X"00",X"80",X"12", + X"00",X"00",X"00",X"01",X"00",X"52",X"09",X"18",X"20",X"00",X"00",X"81",X"1A",X"89",X"88",X"0B", + X"09",X"82",X"0E",X"88",X"6D",X"09",X"82",X"0D",X"88",X"F2",X"09",X"88",X"17",X"0A",X"88",X"3C", + X"0A",X"88",X"61",X"0A",X"88",X"86",X"0A",X"88",X"AB",X"0A",X"88",X"CA",X"0A",X"88",X"E5",X"0A", + X"8A",X"16",X"09",X"88",X"0B",X"09",X"82",X"0E",X"88",X"9E",X"09",X"82",X"0C",X"88",X"0E",X"0B", + X"88",X"1F",X"0B",X"88",X"2C",X"0B",X"88",X"45",X"0B",X"88",X"5A",X"0B",X"88",X"75",X"0B",X"8A", + X"3B",X"09",X"88",X"0B",X"09",X"82",X"0E",X"88",X"CF",X"09",X"82",X"0D",X"86",X"0C",X"88",X"84", + X"0B",X"88",X"A5",X"0B",X"88",X"C6",X"0B",X"88",X"E7",X"0B",X"8A",X"5A",X"09",X"86",X"01",X"2C", + X"01",X"2E",X"01",X"2C",X"01",X"2B",X"01",X"86",X"02",X"2C",X"02",X"20",X"02",X"86",X"07",X"2C", + X"02",X"2A",X"02",X"29",X"02",X"27",X"02",X"86",X"03",X"25",X"03",X"86",X"02",X"27",X"01",X"86", + X"0B",X"29",X"02",X"2A",X"02",X"2C",X"02",X"00",X"02",X"20",X"02",X"00",X"02",X"89",X"86",X"01", + X"29",X"01",X"2A",X"01",X"29",X"01",X"28",X"01",X"86",X"02",X"29",X"02",X"00",X"02",X"86",X"07", + X"29",X"02",X"27",X"02",X"25",X"02",X"24",X"02",X"86",X"03",X"20",X"03",X"86",X"02",X"1E",X"01", + X"86",X"0B",X"1D",X"02",X"1B",X"02",X"1D",X"02",X"00",X"02",X"1D",X"02",X"00",X"02",X"89",X"86", + X"0C",X"01",X"06",X"86",X"0B",X"01",X"02",X"86",X"07",X"01",X"02",X"08",X"02",X"0D",X"02",X"08", + X"02",X"86",X"0C",X"01",X"04",X"05",X"04",X"86",X"0B",X"01",X"02",X"00",X"02",X"01",X"02",X"00", + X"02",X"89",X"86",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"2C",X"01",X"2A",X"01", + X"2C",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"2C",X"01",X"2A",X"01", + X"2C",X"01",X"86",X"02",X"2A",X"01",X"89",X"86",X"01",X"29",X"01",X"2A",X"01",X"2C",X"01",X"2E", + X"01",X"30",X"01",X"31",X"01",X"30",X"01",X"29",X"01",X"2A",X"01",X"2C",X"01",X"2A",X"01",X"86", + X"02",X"29",X"01",X"86",X"03",X"2A",X"02",X"86",X"04",X"27",X"02",X"89",X"86",X"01",X"27",X"01", + X"29",X"01",X"27",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"27",X"01", + X"29",X"01",X"27",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"86",X"02",X"29",X"01", + X"89",X"86",X"01",X"27",X"01",X"29",X"01",X"2A",X"01",X"2C",X"01",X"2E",X"01",X"30",X"01",X"2E", + X"01",X"2C",X"01",X"2A",X"01",X"2E",X"01",X"2C",X"01",X"86",X"02",X"2B",X"01",X"86",X"03",X"2C", + X"02",X"86",X"04",X"29",X"02",X"89",X"86",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01", + X"2C",X"01",X"2B",X"01",X"2C",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01",X"29",X"01",X"2A",X"01", + X"2C",X"01",X"2B",X"01",X"2C",X"01",X"86",X"02",X"2A",X"01",X"89",X"86",X"01",X"29",X"01",X"2A", + X"01",X"2C",X"01",X"2E",X"01",X"30",X"01",X"31",X"01",X"30",X"01",X"2E",X"01",X"2C",X"01",X"30", + X"01",X"2E",X"01",X"2D",X"01",X"86",X"05",X"2E",X"04",X"89",X"86",X"06",X"31",X"01",X"30",X"01", + X"31",X"02",X"25",X"01",X"24",X"01",X"25",X"02",X"2E",X"01",X"2D",X"01",X"2E",X"02",X"22",X"01", + X"21",X"01",X"22",X"02",X"89",X"86",X"01",X"2C",X"01",X"2E",X"01",X"2C",X"01",X"86",X"02",X"20", + X"01",X"86",X"01",X"2A",X"01",X"2C",X"01",X"2A",X"01",X"86",X"02",X"20",X"01",X"86",X"01",X"27", + X"01",X"26",X"01",X"27",X"01",X"86",X"02",X"20",X"01",X"2C",X"02",X"20",X"02",X"89",X"86",X"08", + X"20",X"0A",X"86",X"09",X"1D",X"02",X"1E",X"02",X"1F",X"02",X"86",X"08",X"20",X"0A",X"89",X"86", + X"09",X"25",X"02",X"24",X"02",X"22",X"02",X"86",X"08",X"20",X"0A",X"89",X"86",X"09",X"1E",X"02", + X"1D",X"02",X"1B",X"02",X"86",X"08",X"1E",X"0A",X"86",X"09",X"1D",X"02",X"1B",X"02",X"19",X"02", + X"86",X"08",X"20",X"0A",X"89",X"86",X"09",X"1D",X"02",X"1E",X"02",X"1F",X"02",X"86",X"08",X"20", + X"0A",X"86",X"09",X"1E",X"02",X"1D",X"02",X"1E",X"02",X"89",X"86",X"06",X"29",X"01",X"28",X"01", + X"29",X"02",X"1D",X"01",X"1C",X"01",X"1D",X"02",X"2A",X"01",X"29",X"01",X"2A",X"02",X"1E",X"01", + X"1D",X"01",X"1E",X"02",X"89",X"86",X"08",X"1B",X"09",X"00",X"01",X"86",X"09",X"1B",X"02",X"1D", + X"02",X"1E",X"02",X"89",X"01",X"02",X"0D",X"02",X"08",X"02",X"0D",X"02",X"01",X"02",X"0D",X"02", + X"08",X"02",X"0D",X"02",X"01",X"02",X"0D",X"02",X"08",X"02",X"0D",X"02",X"0A",X"02",X"08",X"02", + X"06",X"02",X"05",X"02",X"89",X"03",X"02",X"0C",X"02",X"0F",X"02",X"0C",X"02",X"08",X"02",X"0C", + X"02",X"08",X"02",X"0C",X"02",X"08",X"02",X"0C",X"02",X"0F",X"02",X"0C",X"02",X"0D",X"02",X"08", + X"02",X"05",X"02",X"01",X"02",X"89",X"01",X"02",X"0D",X"02",X"08",X"02",X"0D",X"02",X"01",X"02", + X"0D",X"02",X"08",X"02",X"0D",X"02",X"01",X"02",X"0D",X"02",X"08",X"02",X"0D",X"02",X"0A",X"02", + X"06",X"02",X"0D",X"02",X"06",X"02",X"89",X"86",X"0C",X"01",X"04",X"86",X"0B",X"08",X"02",X"0D", + X"02",X"86",X"0C",X"01",X"04",X"86",X"0B",X"06",X"02",X"0D",X"02",X"86",X"0C",X"0C",X"04",X"08", + X"04",X"86",X"0B",X"08",X"02",X"06",X"02",X"05",X"02",X"03",X"02",X"89",X"24",X"0C",X"2C",X"0C", + X"24",X"0C",X"2C",X"0C",X"33",X"0C",X"43",X"0C",X"4F",X"0C",X"5C",X"0C",X"5C",X"0C",X"65",X"0C", + X"7D",X"0C",X"86",X"0C",X"DE",X"FF",X"FF",X"EE",X"DC",X"BA",X"99",X"01",X"DE",X"FF",X"ED",X"B9", + X"75",X"32",X"01",X"CD",X"EF",X"FF",X"FE",X"ED",X"DC",X"CB",X"BB",X"AA",X"AA",X"99",X"99",X"98", + X"88",X"77",X"01",X"CD",X"ED",X"FF",X"FE",X"EE",X"DD",X"DC",X"CB",X"97",X"53",X"21",X"01",X"DE", + X"FF",X"FE",X"ED",X"DC",X"CC",X"BB",X"AA",X"99",X"88",X"76",X"65",X"01",X"DD",X"DD",X"EE",X"EE", + X"FF",X"FF",X"EE",X"EE",X"00",X"AB",X"CD",X"EF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EE", + X"EE",X"ED",X"DD",X"DD",X"CC",X"CC",X"CB",X"BB",X"BB",X"AA",X"AA",X"A9",X"01",X"DE",X"FF",X"FF", + X"FF",X"ED",X"DA",X"87",X"43",X"01",X"EF",X"FF",X"FE",X"EE",X"EE",X"DD",X"DD",X"DC",X"CC",X"BB", + X"BA",X"A9",X"98",X"01",X"FF",X"99",X"0C",X"BE",X"0F",X"05",X"A4",X"0C",X"B2",X"0C",X"C0",X"0C", + X"CE",X"0C",X"DC",X"0C",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"EA",X"0C",X"0C",X"20",X"00", + X"00",X"0F",X"80",X"21",X"00",X"00",X"00",X"01",X"00",X"17",X"0D",X"0C",X"20",X"00",X"00",X"0E", + X"80",X"10",X"00",X"00",X"00",X"01",X"00",X"40",X"0D",X"00",X"20",X"00",X"00",X"0F",X"80",X"11", + X"00",X"00",X"00",X"05",X"00",X"EA",X"0C",X"0C",X"20",X"00",X"00",X"0E",X"80",X"12",X"00",X"00", + X"00",X"01",X"00",X"70",X"0D",X"00",X"20",X"00",X"00",X"0E",X"81",X"18",X"86",X"01",X"20",X"02", + X"88",X"9D",X"0D",X"88",X"A8",X"0D",X"88",X"B7",X"0D",X"88",X"C2",X"0D",X"88",X"9D",X"0D",X"88", + X"A8",X"0D",X"88",X"B7",X"0D",X"88",X"CD",X"0D",X"88",X"DA",X"0D",X"88",X"EB",X"0D",X"88",X"FC", + X"0D",X"88",X"0D",X"0E",X"8A",X"F0",X"0C",X"81",X"18",X"86",X"03",X"1D",X"02",X"88",X"18",X"0E", + X"88",X"2D",X"0E",X"88",X"42",X"0E",X"88",X"57",X"0E",X"8C",X"00",X"02",X"1D",X"0D",X"88",X"57", + X"0E",X"88",X"57",X"0E",X"88",X"6E",X"0E",X"88",X"8F",X"0E",X"88",X"8F",X"0E",X"8A",X"1D",X"0D", + X"81",X"18",X"86",X"04",X"0D",X"02",X"88",X"A4",X"0E",X"88",X"B9",X"0E",X"88",X"CE",X"0E",X"88", + X"E3",X"0E",X"88",X"A4",X"0E",X"88",X"B9",X"0E",X"88",X"CE",X"0E",X"88",X"F8",X"0E",X"88",X"0D", + X"0F",X"88",X"0D",X"0F",X"88",X"1E",X"0F",X"88",X"2F",X"0F",X"88",X"3C",X"0F",X"8A",X"46",X"0D", + X"81",X"18",X"00",X"02",X"86",X"02",X"88",X"51",X"0F",X"88",X"60",X"0F",X"88",X"6D",X"0F",X"88", + X"7A",X"0F",X"88",X"51",X"0F",X"88",X"60",X"0F",X"88",X"6D",X"0F",X"88",X"85",X"0F",X"88",X"92", + X"0F",X"88",X"A3",X"0F",X"88",X"B4",X"0F",X"88",X"BB",X"0F",X"8A",X"74",X"0D",X"25",X"04",X"25", + X"02",X"29",X"02",X"2C",X"06",X"2C",X"02",X"89",X"2E",X"02",X"2C",X"02",X"2A",X"02",X"29",X"02", + X"2A",X"04",X"27",X"02",X"20",X"02",X"89",X"24",X"04",X"24",X"02",X"25",X"02",X"27",X"06",X"20", + X"02",X"89",X"2C",X"04",X"2A",X"02",X"27",X"02",X"29",X"06",X"20",X"02",X"89",X"2C",X"02",X"2A", + X"02",X"29",X"02",X"27",X"02",X"25",X"06",X"20",X"02",X"89",X"27",X"02",X"27",X"02",X"27",X"02", + X"20",X"02",X"29",X"02",X"29",X"02",X"29",X"02",X"20",X"02",X"89",X"27",X"02",X"27",X"02",X"27", + X"02",X"20",X"02",X"29",X"02",X"2C",X"02",X"2E",X"02",X"30",X"02",X"89",X"31",X"02",X"2C",X"02", + X"2C",X"02",X"29",X"02",X"2A",X"02",X"25",X"02",X"25",X"02",X"22",X"02",X"89",X"25",X"0F",X"86", + X"03",X"25",X"0F",X"86",X"01",X"20",X"02",X"89",X"25",X"02",X"1D",X"01",X"20",X"02",X"25",X"01", + X"1D",X"02",X"25",X"02",X"1D",X"01",X"20",X"02",X"25",X"01",X"1D",X"02",X"89",X"25",X"02",X"1D", + X"01",X"20",X"02",X"25",X"01",X"1D",X"02",X"25",X"02",X"1E",X"01",X"20",X"02",X"27",X"01",X"18", + X"02",X"89",X"20",X"02",X"18",X"01",X"1B",X"02",X"20",X"01",X"18",X"02",X"20",X"02",X"18",X"01", + X"1B",X"02",X"20",X"01",X"18",X"02",X"89",X"20",X"02",X"18",X"01",X"1B",X"01",X"1E",X"01",X"20", + X"01",X"18",X"02",X"25",X"02",X"1D",X"01",X"20",X"02",X"25",X"01",X"1D",X"02",X"89",X"25",X"01", + X"2C",X"01",X"2C",X"01",X"29",X"01",X"2C",X"01",X"29",X"01",X"29",X"01",X"25",X"01",X"2A",X"01", + X"19",X"01",X"19",X"01",X"16",X"01",X"19",X"01",X"16",X"01",X"16",X"01",X"12",X"01",X"89",X"19", + X"02",X"1D",X"01",X"20",X"02",X"1D",X"01",X"19",X"02",X"19",X"02",X"1D",X"01",X"20",X"02",X"1D", + X"01",X"19",X"02",X"89",X"11",X"02",X"0D",X"02",X"14",X"02",X"0D",X"02",X"11",X"01",X"11",X"01", + X"0D",X"02",X"14",X"01",X"14",X"01",X"0D",X"02",X"89",X"11",X"02",X"0D",X"02",X"14",X"02",X"0D", + X"02",X"12",X"01",X"12",X"01",X"0D",X"02",X"0F",X"01",X"0F",X"01",X"08",X"02",X"89",X"0C",X"02", + X"08",X"02",X"0F",X"02",X"08",X"02",X"0C",X"01",X"0C",X"01",X"08",X"02",X"0F",X"01",X"0F",X"01", + X"08",X"02",X"89",X"0C",X"02",X"08",X"02",X"0F",X"02",X"08",X"02",X"11",X"01",X"11",X"01",X"0D", + X"02",X"14",X"01",X"14",X"01",X"14",X"02",X"89",X"0C",X"02",X"08",X"02",X"0F",X"02",X"08",X"02", + X"11",X"01",X"11",X"01",X"0D",X"02",X"0D",X"01",X"0D",X"01",X"0D",X"02",X"89",X"0C",X"02",X"08", + X"02",X"0F",X"02",X"08",X"02",X"11",X"02",X"0D",X"02",X"14",X"02",X"0D",X"02",X"89",X"0D",X"02", + X"01",X"02",X"0D",X"02",X"01",X"02",X"12",X"02",X"06",X"02",X"12",X"02",X"06",X"02",X"89",X"0D", + X"02",X"0D",X"01",X"0D",X"05",X"0D",X"02",X"0D",X"01",X"0D",X"05",X"89",X"0D",X"02",X"11",X"01", + X"14",X"02",X"11",X"01",X"0D",X"02",X"0D",X"02",X"11",X"01",X"14",X"02",X"11",X"01",X"0D",X"02", + X"89",X"00",X"02",X"2C",X"02",X"2C",X"02",X"2C",X"02",X"29",X"06",X"25",X"01",X"25",X"01",X"89", + X"25",X"02",X"24",X"02",X"20",X"02",X"20",X"02",X"1E",X"04",X"1B",X"04",X"89",X"00",X"02",X"27", + X"02",X"27",X"02",X"27",X"02",X"24",X"06",X"20",X"02",X"89",X"1B",X"02",X"1B",X"02",X"20",X"02", + X"20",X"02",X"20",X"08",X"89",X"1B",X"02",X"1B",X"02",X"20",X"04",X"20",X"02",X"1D",X"02",X"19", + X"04",X"89",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02", + X"20",X"02",X"89",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"20",X"02",X"22", + X"02",X"24",X"02",X"89",X"86",X"04",X"25",X"08",X"25",X"08",X"89",X"25",X"20",X"89",X"C6",X"0F", + X"D0",X"0F",X"D9",X"0F",X"DF",X"0F",X"CE",X"FF",X"FE",X"DC",X"BB",X"BB",X"AA",X"AA",X"98",X"01", + X"BC",X"DE",X"FD",X"CB",X"BB",X"BB",X"BB",X"AA",X"01",X"CD",X"EF",X"FF",X"ED",X"CB",X"01",X"EF", + X"ED",X"CB",X"BB",X"BB",X"BB",X"BB",X"BB",X"BA",X"98",X"01",X"FF",X"EF",X"0F",X"9B",X"10",X"03", + X"F6",X"0F",X"03",X"10",X"10",X"10",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"1D",X"10",X"00", + X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"01",X"00",X"47",X"10",X"00",X"20",X"00",X"00", + X"80",X"22",X"00",X"00",X"00",X"01",X"00",X"71",X"10",X"00",X"20",X"00",X"00",X"81",X"01",X"86", + X"01",X"82",X"0E",X"31",X"02",X"36",X"03",X"3A",X"03",X"82",X"0F",X"8C",X"00",X"03",X"23",X"10", + X"3A",X"03",X"3D",X"03",X"42",X"03",X"82",X"0E",X"86",X"02",X"8D",X"31",X"3D",X"0A",X"8E",X"82", + X"0F",X"8C",X"00",X"03",X"3A",X"10",X"93",X"81",X"01",X"86",X"01",X"82",X"0E",X"3D",X"02",X"3A", + X"03",X"36",X"03",X"82",X"0F",X"8C",X"01",X"03",X"23",X"10",X"36",X"03",X"3A",X"03",X"3D",X"05", + X"82",X"0E",X"86",X"02",X"8D",X"38",X"44",X"0A",X"8E",X"82",X"0F",X"8C",X"01",X"03",X"64",X"10", + X"84",X"81",X"01",X"86",X"01",X"82",X"0E",X"36",X"02",X"31",X"03",X"36",X"03",X"82",X"0F",X"8C", + X"02",X"03",X"23",X"10",X"31",X"04",X"36",X"03",X"3A",X"03",X"86",X"02",X"82",X"0E",X"8D",X"29", + X"35",X"0A",X"8E",X"82",X"0F",X"8C",X"02",X"03",X"8E",X"10",X"84",X"9F",X"10",X"A2",X"10",X"FE", + X"DD",X"01",X"FE",X"DC",X"A9",X"01",X"FF",X"AB",X"10",X"E6",X"10",X"03",X"B2",X"10",X"BF",X"10", + X"CC",X"10",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"D9",X"10",X"02",X"20",X"00",X"00",X"80", + X"21",X"00",X"00",X"00",X"01",X"00",X"D9",X"10",X"0A",X"20",X"00",X"00",X"80",X"22",X"00",X"00", + X"00",X"01",X"00",X"D9",X"10",X"0E",X"20",X"00",X"00",X"82",X"0F",X"81",X"01",X"86",X"01",X"28", + X"01",X"29",X"1E",X"00",X"32",X"94",X"E8",X"10",X"EF",X"FE",X"DD",X"CC",X"BA",X"99",X"88",X"77", + X"01",X"FF",X"F6",X"10",X"A0",X"11",X"05",X"01",X"11",X"0E",X"11",X"1B",X"11",X"28",X"11",X"35", + X"11",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"42",X"11",X"11",X"20",X"00",X"00",X"80",X"21", + X"00",X"00",X"00",X"01",X"00",X"42",X"11",X"05",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00", + X"01",X"00",X"62",X"11",X"05",X"20",X"00",X"00",X"80",X"10",X"00",X"00",X"00",X"01",X"00",X"62", + X"11",X"05",X"20",X"00",X"00",X"80",X"11",X"00",X"00",X"00",X"01",X"00",X"86",X"11",X"05",X"20", + X"00",X"00",X"81",X"14",X"82",X"0F",X"86",X"01",X"25",X"01",X"26",X"01",X"25",X"01",X"26",X"01", + X"86",X"02",X"25",X"02",X"1D",X"02",X"86",X"03",X"20",X"04",X"8D",X"86",X"04",X"25",X"19",X"08", + X"8E",X"84",X"81",X"14",X"82",X"0F",X"86",X"05",X"00",X"04",X"29",X"02",X"25",X"02",X"86",X"01", + X"25",X"01",X"26",X"01",X"25",X"01",X"26",X"01",X"86",X"02",X"25",X"02",X"1D",X"02",X"8D",X"86", + X"04",X"20",X"19",X"04",X"8E",X"84",X"81",X"14",X"82",X"0F",X"86",X"05",X"31",X"02",X"2C",X"02", + X"25",X"02",X"20",X"02",X"19",X"02",X"14",X"02",X"8D",X"86",X"04",X"0D",X"19",X"08",X"8E",X"84", + X"AA",X"11",X"B0",X"11",X"BB",X"11",X"D0",X"11",X"FA",X"11",X"BC",X"EF",X"FF",X"FE",X"DC",X"01", + X"DF",X"FE",X"DC",X"CC",X"CC",X"CC",X"CC",X"CB",X"A9",X"75",X"01",X"67",X"89",X"AB",X"CD",X"ED", + X"DF",X"DF",X"DF",X"CF",X"CF",X"CF",X"CF",X"BF",X"BF",X"BF",X"AF",X"AF",X"AE",X"DC",X"85",X"01", + X"EF",X"EF",X"EF",X"EF",X"EF",X"DE",X"DE",X"DE",X"DE",X"DE",X"CD",X"CD",X"CD",X"CD",X"CD",X"BC", + X"BC",X"BC",X"BC",X"BC",X"AB",X"AB",X"AB",X"AB",X"AB",X"9A",X"9A",X"9A",X"9A",X"9A",X"89",X"89", + X"89",X"78",X"78",X"67",X"67",X"67",X"56",X"56",X"42",X"01",X"EF",X"FF",X"FE",X"DC",X"BA",X"99", + X"88",X"77",X"66",X"55",X"44",X"77",X"66",X"55",X"44",X"33",X"55",X"44",X"33",X"22",X"01",X"FF", + X"14",X"12",X"FD",X"12",X"06",X"21",X"12",X"2E",X"12",X"3B",X"12",X"48",X"12",X"55",X"12",X"62", + X"12",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"6F",X"12",X"00",X"20",X"00",X"00",X"80",X"21", + X"00",X"00",X"00",X"01",X"00",X"6F",X"12",X"F4",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00", + X"01",X"00",X"99",X"12",X"00",X"20",X"00",X"00",X"80",X"10",X"00",X"00",X"00",X"01",X"00",X"99", + X"12",X"00",X"20",X"00",X"00",X"80",X"11",X"00",X"00",X"00",X"01",X"00",X"D0",X"12",X"0C",X"20", + X"00",X"00",X"80",X"12",X"00",X"00",X"00",X"01",X"00",X"D0",X"12",X"00",X"20",X"00",X"00",X"82", + X"0F",X"81",X"14",X"86",X"01",X"3D",X"01",X"38",X"01",X"35",X"01",X"31",X"01",X"2C",X"01",X"29", + X"01",X"25",X"01",X"20",X"01",X"86",X"04",X"1D",X"01",X"19",X"01",X"14",X"01",X"11",X"01",X"8C", + X"00",X"02",X"6F",X"12",X"86",X"02",X"3D",X"04",X"84",X"82",X"0F",X"81",X"14",X"86",X"02",X"00", + X"04",X"3D",X"01",X"38",X"01",X"35",X"01",X"31",X"01",X"86",X"04",X"2C",X"01",X"29",X"01",X"25", + X"01",X"20",X"01",X"1D",X"01",X"19",X"01",X"14",X"01",X"11",X"01",X"0D",X"01",X"11",X"01",X"14", + X"01",X"19",X"01",X"1D",X"01",X"20",X"01",X"25",X"01",X"29",X"01",X"86",X"02",X"25",X"04",X"84", + X"82",X"0F",X"81",X"14",X"86",X"03",X"00",X"08",X"01",X"01",X"05",X"01",X"08",X"01",X"0D",X"01", + X"11",X"01",X"14",X"01",X"19",X"01",X"1D",X"01",X"20",X"01",X"25",X"01",X"29",X"01",X"2C",X"01", + X"25",X"01",X"20",X"01",X"1D",X"01",X"19",X"01",X"86",X"02",X"01",X"04",X"84",X"05",X"13",X"11", + X"13",X"26",X"13",X"0B",X"13",X"FE",X"DD",X"DC",X"BB",X"BA",X"01",X"DE",X"FF",X"FE",X"DC",X"BA", + X"01",X"CD",X"FF",X"FE",X"EE",X"DD",X"CC",X"CC",X"CC",X"CC",X"CC",X"BB",X"BA",X"AA",X"A9",X"99", + X"99",X"99",X"88",X"88",X"87",X"01",X"DE",X"FF",X"DC",X"BB",X"01",X"FF",X"30",X"13",X"8C",X"13", + X"03",X"37",X"13",X"44",X"13",X"51",X"13",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"5E",X"13", + X"0B",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"01",X"00",X"75",X"13",X"F7",X"20",X"00", + X"00",X"80",X"22",X"00",X"00",X"00",X"01",X"00",X"75",X"13",X"FD",X"20",X"00",X"00",X"82",X"0F", + X"81",X"01",X"86",X"01",X"2B",X"01",X"2C",X"09",X"86",X"00",X"2F",X"01",X"30",X"09",X"86",X"02", + X"30",X"01",X"31",X"10",X"95",X"82",X"0F",X"81",X"01",X"86",X"02",X"2B",X"01",X"2C",X"09",X"86", + X"01",X"2F",X"01",X"30",X"09",X"86",X"03",X"30",X"01",X"31",X"10",X"84",X"92",X"13",X"96",X"13", + X"9B",X"13",X"DF",X"ED",X"CC",X"01",X"DF",X"EE",X"DC",X"B7",X"01",X"EF",X"FF",X"EC",X"A8",X"01", + X"FF",X"A5",X"13",X"1C",X"14",X"01",X"A8",X"13",X"80",X"10",X"00",X"00",X"00",X"01",X"00",X"B5", + X"13",X"FF",X"20",X"00",X"00",X"81",X"01",X"82",X"0F",X"86",X"01",X"1B",X"02",X"1D",X"0D",X"1D", + X"02",X"1E",X"0D",X"1D",X"02",X"1F",X"0D",X"22",X"02",X"24",X"0D",X"18",X"02",X"19",X"0D",X"1B", + X"02",X"1D",X"0D",X"1D",X"02",X"1F",X"0D",X"24",X"02",X"25",X"0D",X"22",X"02",X"24",X"0D",X"24", + X"02",X"25",X"0D",X"1B",X"02",X"1D",X"0D",X"29",X"02",X"2A",X"0D",X"29",X"02",X"2A",X"0D",X"1E", + X"02",X"20",X"0D",X"16",X"02",X"18",X"0D",X"24",X"02",X"25",X"0D",X"25",X"02",X"27",X"0D",X"2A", + X"02",X"2C",X"0D",X"25",X"02",X"28",X"0D",X"22",X"02",X"24",X"0D",X"24",X"02",X"25",X"0D",X"25", + X"02",X"27",X"0D",X"2A",X"02",X"2D",X"0D",X"22",X"02",X"30",X"0D",X"96",X"1E",X"14",X"FF",X"FF", + X"EC",X"A8",X"77",X"01",X"FF",X"27",X"14",X"03",X"2E",X"14",X"3B",X"14",X"48",X"14",X"80",X"20", + X"00",X"00",X"00",X"01",X"00",X"55",X"14",X"00",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00", + X"09",X"00",X"C5",X"14",X"F4",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00",X"0C",X"00",X"C5", + X"14",X"F4",X"20",X"00",X"00",X"81",X"01",X"8F",X"82",X"0F",X"00",X"14",X"01",X"00",X"17",X"01", + X"00",X"1C",X"01",X"00",X"1E",X"01",X"00",X"20",X"01",X"00",X"24",X"01",X"00",X"28",X"01",X"00", + X"2C",X"01",X"00",X"30",X"01",X"00",X"37",X"01",X"00",X"41",X"01",X"00",X"4B",X"01",X"00",X"55", + X"01",X"00",X"64",X"01",X"00",X"78",X"01",X"00",X"82",X"01",X"00",X"8C",X"01",X"00",X"96",X"01", + X"00",X"A0",X"01",X"82",X"0E",X"00",X"AA",X"01",X"00",X"B4",X"01",X"00",X"BE",X"01",X"00",X"C8", + X"01",X"00",X"DC",X"01",X"00",X"F0",X"01",X"01",X"05",X"01",X"01",X"19",X"01",X"01",X"2D",X"01", + X"01",X"41",X"01",X"82",X"0D",X"01",X"55",X"01",X"01",X"69",X"01",X"01",X"7D",X"01",X"01",X"91", + X"01",X"01",X"A5",X"01",X"93",X"81",X"01",X"8F",X"82",X"0F",X"00",X"23",X"01",X"00",X"28",X"01", + X"00",X"2D",X"01",X"00",X"32",X"01",X"00",X"37",X"01",X"00",X"3C",X"01",X"00",X"41",X"01",X"00", + X"46",X"01",X"00",X"4B",X"01",X"00",X"50",X"01",X"00",X"55",X"01",X"00",X"5A",X"01",X"00",X"64", + X"01",X"00",X"6E",X"01",X"00",X"78",X"01",X"00",X"82",X"01",X"00",X"8C",X"01",X"00",X"96",X"01", + X"00",X"A0",X"01",X"00",X"AA",X"01",X"82",X"0E",X"00",X"B4",X"01",X"00",X"BE",X"01",X"00",X"C8", + X"01",X"00",X"D2",X"01",X"00",X"DC",X"01",X"00",X"E6",X"01",X"00",X"F0",X"01",X"00",X"FA",X"01", + X"01",X"05",X"01",X"01",X"0F",X"01",X"82",X"0D",X"01",X"19",X"01",X"01",X"23",X"01",X"01",X"2D", + X"01",X"01",X"41",X"01",X"01",X"55",X"01",X"84",X"FF",X"3D",X"15",X"B6",X"15",X"03",X"44",X"15", + X"51",X"15",X"5E",X"15",X"80",X"20",X"00",X"00",X"00",X"01",X"00",X"6B",X"15",X"00",X"20",X"00", + X"00",X"80",X"21",X"00",X"00",X"00",X"02",X"00",X"6B",X"15",X"00",X"20",X"00",X"00",X"80",X"22", + X"00",X"00",X"00",X"01",X"00",X"6B",X"15",X"00",X"20",X"00",X"00",X"81",X"01",X"86",X"02",X"82", + X"0C",X"36",X"01",X"82",X"0C",X"3A",X"01",X"82",X"0C",X"3A",X"01",X"82",X"0D",X"3B",X"01",X"82", + X"0D",X"3B",X"01",X"82",X"0E",X"3C",X"01",X"82",X"0F",X"3C",X"02",X"3D",X"02",X"82",X"0E",X"86", + X"01",X"3E",X"03",X"86",X"02",X"82",X"0D",X"30",X"02",X"82",X"0D",X"35",X"02",X"82",X"0C",X"33", + X"01",X"82",X"0E",X"31",X"01",X"82",X"0D",X"2F",X"02",X"82",X"0D",X"2F",X"02",X"2E",X"02",X"82", + X"0C",X"86",X"01",X"2D",X"09",X"97",X"BA",X"15",X"BE",X"15",X"FC",X"A7",X"51",X"01",X"FE",X"01", + X"FF",X"C3",X"15",X"01",X"C6",X"15",X"80",X"21",X"00",X"00",X"00",X"01",X"00",X"D3",X"15",X"00", + X"20",X"00",X"00",X"81",X"32",X"82",X"0F",X"00",X"0A",X"96",X"FF",X"DF",X"15",X"15",X"16",X"02", + X"E4",X"15",X"F1",X"15",X"80",X"23",X"00",X"00",X"00",X"01",X"00",X"FE",X"15",X"00",X"20",X"00", + X"00",X"80",X"13",X"00",X"00",X"00",X"01",X"00",X"06",X"16",X"00",X"20",X"00",X"00",X"88",X"0E", + X"16",X"85",X"04",X"0D",X"04",X"84",X"88",X"0E",X"16",X"85",X"00",X"3D",X"04",X"84",X"81",X"16", + X"82",X"0F",X"86",X"01",X"89",X"17",X"16",X"13",X"46",X"79",X"AB",X"AD",X"EF",X"00",X"FF",X"23", + X"16",X"9E",X"16",X"03",X"2A",X"16",X"37",X"16",X"44",X"16",X"80",X"20",X"00",X"00",X"00",X"01", + X"00",X"51",X"16",X"07",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"08",X"00",X"51",X"16", + X"FB",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00",X"01",X"00",X"7E",X"16",X"FB",X"20",X"00", + X"00",X"81",X"15",X"82",X"0F",X"86",X"01",X"2E",X"01",X"2C",X"01",X"2A",X"02",X"2A",X"02",X"2A", + X"02",X"2E",X"01",X"2C",X"01",X"2A",X"02",X"2A",X"02",X"2A",X"02",X"2E",X"01",X"2C",X"01",X"2A", + X"02",X"35",X"01",X"33",X"01",X"31",X"02",X"38",X"01",X"35",X"01",X"36",X"02",X"84",X"81",X"15", + X"82",X"0F",X"86",X"02",X"00",X"02",X"22",X"01",X"1E",X"01",X"25",X"01",X"1E",X"01",X"8C",X"01", + X"05",X"86",X"16",X"19",X"01",X"19",X"01",X"19",X"01",X"19",X"01",X"1E",X"02",X"84",X"A2",X"16", + X"A8",X"16",X"AC",X"EF",X"FF",X"EC",X"BA",X"01",X"EF",X"FE",X"DC",X"BA",X"01",X"FF",X"B2",X"16", + X"21",X"17",X"03",X"B9",X"16",X"C6",X"16",X"D3",X"16",X"80",X"20",X"00",X"00",X"00",X"01",X"00", + X"E0",X"16",X"00",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"01",X"00",X"FB",X"16",X"00", + X"20",X"00",X"00",X"80",X"13",X"00",X"00",X"00",X"01",X"00",X"0A",X"17",X"00",X"20",X"00",X"00", + X"82",X"0F",X"81",X"01",X"86",X"01",X"2C",X"08",X"25",X"08",X"29",X"08",X"2C",X"07",X"31",X"07", + X"35",X"07",X"38",X"06",X"3D",X"06",X"41",X"06",X"41",X"03",X"94",X"82",X"0F",X"81",X"01",X"86", + X"01",X"19",X"10",X"25",X"0F",X"20",X"14",X"01",X"0C",X"84",X"82",X"0F",X"81",X"01",X"86",X"01", + X"85",X"07",X"8F",X"00",X"03",X"10",X"00",X"05",X"0F",X"00",X"07",X"14",X"00",X"14",X"0C",X"90", + X"84",X"23",X"17",X"EF",X"EF",X"CB",X"AA",X"01",X"FF",X"2D",X"17",X"C4",X"17",X"06",X"3A",X"17", + X"47",X"17",X"54",X"17",X"61",X"17",X"6E",X"17",X"7B",X"17",X"80",X"20",X"00",X"00",X"00",X"01", + X"00",X"88",X"17",X"00",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"0A",X"00",X"9B",X"17", + X"00",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00",X"14",X"00",X"AE",X"17",X"00",X"20",X"00", + X"00",X"00",X"10",X"00",X"00",X"00",X"01",X"00",X"C1",X"17",X"00",X"20",X"00",X"00",X"00",X"11", + X"00",X"00",X"00",X"01",X"00",X"C1",X"17",X"00",X"20",X"00",X"00",X"00",X"12",X"00",X"00",X"00", + X"01",X"00",X"C1",X"17",X"00",X"20",X"00",X"00",X"81",X"08",X"82",X"0F",X"86",X"01",X"25",X"02", + X"31",X"02",X"3D",X"02",X"25",X"02",X"31",X"02",X"3D",X"06",X"94",X"81",X"08",X"82",X"0F",X"86", + X"01",X"2C",X"02",X"38",X"02",X"44",X"02",X"2C",X"02",X"38",X"02",X"44",X"06",X"94",X"81",X"08", + X"82",X"0F",X"86",X"01",X"29",X"02",X"35",X"02",X"41",X"02",X"29",X"02",X"35",X"02",X"41",X"05", + X"94",X"00",X"01",X"84",X"C6",X"17",X"CD",X"EF",X"FF",X"ED",X"DC",X"CB",X"BA",X"A9",X"98",X"87", + X"01",X"FF",X"D6",X"17",X"31",X"18",X"03",X"DD",X"17",X"EA",X"17",X"F7",X"17",X"80",X"20",X"00", + X"00",X"00",X"01",X"00",X"04",X"18",X"00",X"20",X"00",X"00",X"80",X"21",X"00",X"00",X"00",X"01", + X"00",X"04",X"18",X"00",X"20",X"00",X"00",X"80",X"22",X"00",X"00",X"00",X"01",X"00",X"04",X"18", + X"00",X"20",X"00",X"00",X"81",X"04",X"86",X"01",X"82",X"0B",X"20",X"01",X"82",X"0D",X"2C",X"01", + X"82",X"0C",X"25",X"01",X"82",X"0E",X"31",X"01",X"82",X"0D",X"29",X"01",X"82",X"0F",X"35",X"01", + X"82",X"0E",X"2C",X"01",X"82",X"0E",X"38",X"01",X"82",X"0D",X"31",X"01",X"82",X"0C",X"3D",X"01", + X"98",X"33",X"18",X"EF",X"01",X"FF",X"38",X"18",X"03",X"3F",X"18",X"4C",X"18",X"59",X"18",X"80", + X"10",X"00",X"00",X"00",X"01",X"00",X"66",X"18",X"00",X"20",X"00",X"00",X"80",X"11",X"00",X"00", + X"00",X"01",X"00",X"7A",X"18",X"00",X"20",X"00",X"00",X"80",X"12",X"00",X"00",X"00",X"01",X"00", + X"8E",X"18",X"00",X"20",X"00",X"00",X"81",X"0D",X"82",X"0F",X"0D",X"01",X"01",X"01",X"05",X"01", + X"08",X"01",X"0D",X"01",X"8C",X"00",X"02",X"66",X"18",X"99",X"81",X"0D",X"82",X"0F",X"01",X"01", + X"0D",X"01",X"08",X"01",X"05",X"01",X"01",X"01",X"8C",X"00",X"02",X"7A",X"18",X"99",X"81",X"0D", + X"82",X"0F",X"05",X"01",X"11",X"01",X"01",X"01",X"01",X"01",X"05",X"01",X"8C",X"00",X"02",X"8E", + X"18",X"99",X"FF",X"A5",X"18",X"01",X"A8",X"18",X"80",X"13",X"00",X"00",X"00",X"01",X"00",X"B5", + X"18",X"00",X"20",X"00",X"00",X"82",X"0F",X"81",X"05",X"85",X"07",X"8F",X"8D",X"00",X"01",X"00", + X"05",X"01",X"00",X"05",X"00",X"0A",X"01",X"00",X"0A",X"00",X"0F",X"01",X"00",X"0F",X"00",X"14", + X"01",X"00",X"14",X"00",X"1E",X"01",X"00",X"1E",X"00",X"28",X"01",X"00",X"28",X"00",X"3C",X"01", + X"00",X"3C",X"00",X"37",X"01",X"00",X"37",X"00",X"32",X"01",X"8C",X"00",X"0A",X"DB",X"18",X"82", + X"0E",X"00",X"37",X"00",X"32",X"01",X"82",X"0D",X"00",X"36",X"00",X"31",X"01",X"82",X"0C",X"00", + X"35",X"00",X"30",X"01",X"82",X"0B",X"00",X"34",X"00",X"2F",X"01",X"82",X"0A",X"00",X"33",X"00", + X"2E",X"01",X"82",X"09",X"00",X"32",X"00",X"2D",X"01",X"99",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/spr_rom.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/spr_rom.vhd new file mode 100644 index 00000000..f23607e3 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/spr_rom.vhd @@ -0,0 +1,2070 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity spr_rom is +port ( + clk : in std_logic; + addr : in std_logic_vector(14 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of spr_rom is + type rom is array(0 to 32767) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"00",X"02",X"23",X"00",X"30",X"FF",X"02",X"21",X"12",X"33",X"00",X"FF",X"32",X"99",X"29",X"93", + X"30",X"FF",X"38",X"AA",X"8A",X"A8",X"30",X"FF",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"D8",X"AD", + X"8D",X"A8",X"D0",X"FF",X"77",X"24",X"44",X"27",X"70",X"FF",X"7E",X"44",X"45",X"47",X"E0",X"FF", + X"02",X"35",X"56",X"32",X"00",X"FF",X"00",X"00",X"30",X"00",X"00",X"FF",X"00",X"03",X"13",X"00", + X"00",X"FF",X"00",X"31",X"91",X"30",X"00",X"FF",X"03",X"19",X"A9",X"13",X"00",X"FF",X"33",X"19", + X"A9",X"13",X"30",X"FF",X"03",X"21",X"91",X"23",X"00",X"FF",X"00",X"32",X"33",X"30",X"00",X"FF", + X"00",X"06",X"06",X"00",X"00",X"FF",X"04",X"56",X"86",X"55",X"00",X"FF",X"00",X"02",X"23",X"00", + X"30",X"FF",X"02",X"21",X"11",X"23",X"00",X"FF",X"32",X"99",X"29",X"92",X"30",X"FF",X"38",X"AA", + X"8A",X"A8",X"30",X"FF",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF", + X"77",X"24",X"44",X"27",X"70",X"FF",X"7E",X"44",X"45",X"57",X"E0",X"FF",X"02",X"35",X"56",X"32", + X"00",X"FF",X"00",X"02",X"92",X"00",X"00",X"FF",X"00",X"39",X"A9",X"30",X"00",X"FF",X"02",X"89", + X"99",X"82",X"00",X"FF",X"02",X"89",X"99",X"82",X"00",X"FF",X"02",X"81",X"91",X"82",X"00",X"FF", + X"30",X"28",X"08",X"30",X"30",X"FF",X"05",X"66",X"06",X"66",X"00",X"FF",X"00",X"02",X"23",X"00", + X"30",X"FF",X"02",X"22",X"12",X"33",X"00",X"FF",X"32",X"99",X"29",X"93",X"30",X"FF",X"38",X"AA", + X"8A",X"A8",X"30",X"FF",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF", + X"77",X"24",X"44",X"27",X"70",X"FF",X"7E",X"44",X"45",X"47",X"E0",X"FF",X"02",X"35",X"56",X"32", + X"00",X"FF",X"00",X"02",X"12",X"00",X"00",X"FF",X"00",X"31",X"91",X"30",X"00",X"FF",X"83",X"1A", + X"A9",X"13",X"80",X"FF",X"33",X"19",X"99",X"13",X"30",X"FF",X"03",X"51",X"11",X"53",X"00",X"FF", + X"00",X"62",X"33",X"60",X"00",X"FF",X"00",X"80",X"00",X"80",X"00",X"FF",X"00",X"02",X"23",X"03", + X"00",X"FF",X"02",X"22",X"12",X"23",X"00",X"FF",X"32",X"99",X"29",X"92",X"30",X"FF",X"38",X"AA", + X"8A",X"A8",X"30",X"FF",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF", + X"77",X"24",X"44",X"27",X"70",X"FF",X"7E",X"44",X"85",X"47",X"E0",X"FF",X"02",X"35",X"56",X"32", + X"00",X"FF",X"00",X"02",X"12",X"00",X"00",X"FF",X"00",X"3A",X"A9",X"30",X"00",X"FF",X"02",X"89", + X"99",X"82",X"00",X"FF",X"03",X"89",X"99",X"83",X"00",X"FF",X"08",X"35",X"25",X"28",X"00",X"FF", + X"00",X"84",X"34",X"80",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"30",X"32",X"23",X"30", + X"00",X"FF",X"03",X"29",X"22",X"33",X"00",X"FF",X"33",X"22",X"23",X"1A",X"30",X"FF",X"33",X"32", + X"88",X"AA",X"80",X"FF",X"33",X"38",X"88",X"AD",X"80",X"FF",X"33",X"33",X"88",X"AD",X"80",X"FF", + X"33",X"37",X"73",X"34",X"00",X"FF",X"03",X"3E",X"73",X"36",X"40",X"FF",X"00",X"33",X"33",X"66", + X"00",X"FF",X"00",X"00",X"30",X"00",X"00",X"FF",X"00",X"03",X"11",X"00",X"00",X"FF",X"00",X"83", + X"1A",X"90",X"00",X"FF",X"88",X"23",X"19",X"90",X"00",X"FF",X"21",X"13",X"19",X"10",X"00",X"FF", + X"03",X"31",X"11",X"00",X"00",X"FF",X"00",X"31",X"26",X"60",X"00",X"FF",X"00",X"06",X"00",X"00", + X"00",X"FF",X"00",X"66",X"66",X"00",X"00",X"FF",X"30",X"21",X"22",X"30",X"00",X"FF",X"02",X"1A", + X"12",X"33",X"00",X"FF",X"32",X"11",X"12",X"1A",X"30",X"FF",X"33",X"22",X"23",X"AA",X"80",X"FF", + X"33",X"33",X"88",X"AD",X"80",X"FF",X"33",X"38",X"88",X"AD",X"80",X"FF",X"33",X"33",X"88",X"AD", + X"80",X"FF",X"03",X"37",X"73",X"34",X"00",X"FF",X"00",X"3E",X"73",X"66",X"40",X"FF",X"00",X"00", + X"30",X"00",X"00",X"FF",X"00",X"03",X"12",X"00",X"00",X"FF",X"08",X"33",X"19",X"10",X"00",X"FF", + X"08",X"23",X"9A",X"90",X"00",X"FF",X"02",X"92",X"19",X"10",X"00",X"FF",X"00",X"31",X"11",X"00", + X"00",X"FF",X"05",X"55",X"26",X"00",X"00",X"FF",X"00",X"00",X"05",X"00",X"00",X"FF",X"00",X"00", + X"66",X"65",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"30",X"32",X"22",X"30",X"00",X"FF",X"00",X"00",X"00",X"00",X"03",X"22",X"92",X"33", + X"00",X"FF",X"00",X"00",X"02",X"08",X"33",X"22",X"23",X"1A",X"30",X"FF",X"00",X"00",X"32",X"88", + X"33",X"32",X"88",X"AA",X"80",X"FF",X"00",X"00",X"21",X"28",X"33",X"38",X"88",X"AD",X"80",X"FF", + X"00",X"03",X"21",X"28",X"33",X"33",X"88",X"AD",X"80",X"FF",X"30",X"88",X"32",X"12",X"33",X"37", + X"73",X"34",X"00",X"FF",X"08",X"81",X"13",X"23",X"03",X"3E",X"73",X"36",X"40",X"FF",X"00",X"01", + X"91",X"33",X"33",X"33",X"33",X"66",X"00",X"FF",X"00",X"04",X"81",X"11",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"44",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"04",X"40",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"66",X"60",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"30",X"22",X"23",X"30",X"00",X"FF",X"00",X"00",X"00",X"00",X"02",X"19", + X"23",X"33",X"00",X"FF",X"00",X"00",X"00",X"00",X"32",X"22",X"23",X"1A",X"30",X"FF",X"00",X"00", + X"00",X"00",X"33",X"22",X"88",X"AA",X"80",X"FF",X"03",X"00",X"00",X"00",X"33",X"38",X"88",X"AD", + X"80",X"FF",X"33",X"30",X"33",X"00",X"33",X"33",X"88",X"AD",X"80",X"FF",X"03",X"33",X"21",X"30", + X"33",X"37",X"73",X"34",X"00",X"FF",X"00",X"01",X"33",X"33",X"03",X"3E",X"73",X"36",X"40",X"FF", + X"00",X"01",X"13",X"33",X"11",X"33",X"33",X"66",X"00",X"FF",X"00",X"05",X"11",X"33",X"30",X"00", + X"00",X"00",X"00",X"FF",X"00",X"44",X"60",X"22",X"30",X"00",X"00",X"00",X"00",X"FF",X"00",X"46", + X"00",X"88",X"23",X"00",X"00",X"00",X"00",X"FF",X"00",X"46",X"00",X"08",X"02",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"02", + X"00",X"22",X"30",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"32",X"22",X"23",X"80",X"00",X"FF", + X"00",X"00",X"00",X"03",X"22",X"2A",X"A3",X"AA",X"00",X"FF",X"00",X"00",X"00",X"03",X"28",X"8A", + X"C8",X"CA",X"00",X"FF",X"02",X"00",X"00",X"03",X"88",X"8C",X"D8",X"DC",X"00",X"FF",X"33",X"20", + X"00",X"03",X"38",X"8C",X"D8",X"DC",X"00",X"FF",X"03",X"33",X"32",X"22",X"17",X"74",X"4B",X"47", + X"00",X"FF",X"00",X"00",X"23",X"29",X"2E",X"E4",X"44",X"87",X"00",X"FF",X"00",X"00",X"13",X"32", + X"21",X"22",X"55",X"60",X"00",X"FF",X"00",X"05",X"1A",X"33",X"20",X"00",X"00",X"00",X"00",X"FF", + X"00",X"04",X"B1",X"33",X"30",X"00",X"00",X"00",X"00",X"FF",X"00",X"04",X"60",X"DD",X"32",X"00", + X"00",X"00",X"00",X"FF",X"00",X"05",X"80",X"0D",X"03",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"02",X"23",X"00",X"30", + X"00",X"FF",X"00",X"00",X"00",X"03",X"22",X"12",X"23",X"00",X"00",X"FF",X"00",X"00",X"00",X"32", + X"AA",X"2A",X"A2",X"30",X"00",X"FF",X"00",X"00",X"00",X"38",X"AC",X"8C",X"A8",X"30",X"00",X"FF", + X"00",X"00",X"00",X"88",X"CD",X"8D",X"C8",X"80",X"00",X"FF",X"00",X"00",X"00",X"D8",X"CD",X"8D", + X"C8",X"D0",X"00",X"FF",X"00",X"00",X"00",X"77",X"24",X"44",X"27",X"70",X"00",X"FF",X"00",X"00", + X"00",X"7E",X"44",X"85",X"47",X"E0",X"00",X"FF",X"08",X"00",X"00",X"03",X"D5",X"56",X"32",X"00", + X"00",X"FF",X"00",X"80",X"02",X"23",X"30",X"00",X"00",X"00",X"00",X"FF",X"00",X"08",X"33",X"12", + X"13",X"00",X"00",X"00",X"00",X"FF",X"08",X"88",X"33",X"33",X"29",X"30",X"00",X"00",X"00",X"FF", + X"00",X"00",X"83",X"38",X"29",X"80",X"00",X"00",X"00",X"FF",X"00",X"00",X"08",X"81",X"10",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"06",X"08",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"44",X"44",X"86",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"33",X"30",X"30",X"00",X"00",X"FF",X"00",X"00",X"00",X"32", + X"21",X"22",X"30",X"00",X"00",X"FF",X"00",X"00",X"03",X"2A",X"A2",X"AA",X"23",X"00",X"00",X"FF", + X"00",X"00",X"03",X"8A",X"C8",X"CA",X"83",X"00",X"00",X"FF",X"00",X"00",X"08",X"8C",X"D8",X"DC", + X"88",X"00",X"00",X"FF",X"00",X"00",X"0D",X"8C",X"D8",X"DC",X"8D",X"00",X"00",X"FF",X"00",X"00", + X"07",X"72",X"44",X"42",X"77",X"00",X"00",X"FF",X"00",X"00",X"07",X"E4",X"48",X"54",X"7E",X"00", + X"00",X"FF",X"00",X"00",X"00",X"33",X"55",X"63",X"20",X"00",X"00",X"FF",X"00",X"00",X"00",X"08", + X"D2",X"00",X"00",X"00",X"00",X"FF",X"00",X"03",X"32",X"11",X"21",X"30",X"00",X"00",X"00",X"FF", + X"00",X"08",X"33",X"22",X"1A",X"90",X"00",X"00",X"00",X"FF",X"00",X"00",X"83",X"33",X"19",X"90", + X"00",X"00",X"00",X"FF",X"00",X"20",X"08",X"32",X"19",X"10",X"60",X"00",X"00",X"FF",X"00",X"08", + X"88",X"C1",X"41",X"16",X"00",X"00",X"00",X"FF",X"00",X"33",X"38",X"22",X"42",X"60",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"05",X"40",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"33",X"30",X"03",X"00",X"00",X"FF",X"00",X"00",X"00",X"32",X"12",X"22", + X"30",X"00",X"00",X"FF",X"00",X"00",X"03",X"AA",X"3A",X"A2",X"23",X"00",X"00",X"FF",X"00",X"00", + X"08",X"AA",X"8A",X"AA",X"83",X"00",X"00",X"FF",X"00",X"00",X"08",X"AD",X"8D",X"AA",X"88",X"00", + X"00",X"FF",X"00",X"00",X"08",X"AD",X"8D",X"AA",X"8D",X"00",X"00",X"FF",X"00",X"00",X"07",X"74", + X"44",X"42",X"77",X"08",X"00",X"FF",X"00",X"00",X"0E",X"44",X"44",X"54",X"7E",X"38",X"00",X"FF", + X"00",X"00",X"00",X"24",X"85",X"83",X"23",X"88",X"66",X"FF",X"00",X"00",X"00",X"00",X"6C",X"19", + X"AA",X"28",X"06",X"FF",X"00",X"00",X"00",X"80",X"22",X"31",X"9A",X"92",X"66",X"FF",X"00",X"00", + X"08",X"32",X"23",X"31",X"99",X"91",X"D4",X"FF",X"00",X"00",X"00",X"22",X"33",X"33",X"21",X"11", + X"D4",X"FF",X"00",X"00",X"08",X"33",X"30",X"D8",X"33",X"33",X"44",X"FF",X"00",X"00",X"00",X"03", + X"00",X"8D",X"D3",X"80",X"04",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"02",X"23",X"00",X"30",X"FF",X"02",X"21",X"12",X"33", + X"00",X"FF",X"32",X"22",X"22",X"23",X"30",X"FF",X"32",X"11",X"21",X"12",X"30",X"FF",X"88",X"AA", + X"8A",X"A8",X"80",X"FF",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF",X"77",X"A4",X"44",X"A7",X"70",X"FF", + X"7E",X"44",X"85",X"47",X"E0",X"FF",X"80",X"05",X"56",X"00",X"80",X"FF",X"83",X"31",X"91",X"33", + X"80",X"FF",X"33",X"1A",X"A9",X"13",X"30",X"FF",X"33",X"19",X"99",X"13",X"30",X"FF",X"03",X"51", + X"11",X"53",X"00",X"FF",X"00",X"62",X"33",X"60",X"00",X"FF",X"00",X"80",X"00",X"80",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"02",X"23",X"00", + X"30",X"FF",X"02",X"22",X"23",X"33",X"00",X"FF",X"32",X"21",X"12",X"33",X"30",X"FF",X"32",X"22", + X"22",X"23",X"30",X"FF",X"32",X"11",X"21",X"12",X"30",X"FF",X"88",X"99",X"89",X"98",X"80",X"FF", + X"D8",X"AD",X"8D",X"A8",X"D0",X"FF",X"77",X"25",X"45",X"28",X"70",X"FF",X"E3",X"38",X"45",X"33", + X"E0",X"FF",X"03",X"35",X"86",X"33",X"00",X"FF",X"33",X"8A",X"A9",X"83",X"30",X"FF",X"38",X"49", + X"99",X"48",X"30",X"FF",X"08",X"51",X"11",X"58",X"00",X"FF",X"00",X"62",X"33",X"60",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"09",X"00",X"00",X"00", + X"00",X"FF",X"00",X"02",X"23",X"00",X"30",X"FF",X"02",X"22",X"23",X"33",X"00",X"FF",X"32",X"21", + X"12",X"33",X"3A",X"FF",X"32",X"22",X"22",X"23",X"30",X"FF",X"32",X"22",X"22",X"22",X"30",X"FF", + X"82",X"23",X"83",X"22",X"80",X"FF",X"D8",X"31",X"81",X"38",X"D0",X"FF",X"71",X"11",X"41",X"11", + X"70",X"FF",X"12",X"28",X"42",X"22",X"10",X"FF",X"23",X"35",X"86",X"23",X"20",X"FF",X"24",X"3A", + X"AA",X"44",X"30",X"FF",X"04",X"59",X"99",X"55",X"00",X"FF",X"00",X"62",X"11",X"60",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"0A",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"02",X"23",X"00",X"30",X"FF",X"02",X"21", + X"12",X"33",X"00",X"FF",X"32",X"22",X"22",X"23",X"30",X"FF",X"32",X"22",X"22",X"22",X"30",X"FF", + X"82",X"23",X"83",X"22",X"80",X"FF",X"D1",X"11",X"11",X"38",X"D0",X"FF",X"11",X"22",X"12",X"11", + X"70",X"FF",X"12",X"28",X"43",X"22",X"10",X"FF",X"05",X"55",X"86",X"23",X"20",X"FF",X"05",X"5A", + X"AA",X"33",X"30",X"FF",X"06",X"69",X"99",X"54",X"00",X"FF",X"00",X"32",X"11",X"60",X"00",X"FF", + X"33",X"33",X"88",X"83",X"38",X"FF",X"04",X"01",X"9A",X"91",X"13",X"43",X"9A",X"A9",X"38",X"FF", + X"05",X"00",X"11",X"10",X"00",X"45",X"9E",X"E9",X"80",X"FF",X"00",X"00",X"00",X"00",X"05",X"46", + X"58",X"88",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"FF",X"00",X"00",X"80",X"00", + X"00",X"03",X"22",X"23",X"00",X"FF",X"00",X"88",X"80",X"00",X"00",X"32",X"22",X"22",X"30",X"FF", + X"08",X"83",X"30",X"00",X"03",X"32",X"1A",X"22",X"33",X"FF",X"00",X"00",X"22",X"28",X"03",X"32", + X"22",X"22",X"33",X"FF",X"40",X"03",X"21",X"92",X"03",X"33",X"26",X"23",X"33",X"FF",X"44",X"51", + X"32",X"12",X"33",X"33",X"88",X"83",X"33",X"FF",X"46",X"61",X"33",X"33",X"33",X"33",X"88",X"83", + X"38",X"FF",X"40",X"01",X"93",X"33",X"13",X"43",X"9A",X"A9",X"38",X"FF",X"60",X"00",X"9A",X"10", + X"00",X"45",X"97",X"79",X"80",X"FF",X"00",X"00",X"00",X"00",X"05",X"46",X"58",X"88",X"00",X"FF", + X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"1D", + X"00",X"FF",X"D1",X"13",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"33",X"13",X"13",X"13", + X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13", + X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D", + X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00", + X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11", + X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1", + X"11",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13", + X"11",X"D0",X"FF",X"D1",X"13",X"11",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33", + X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00", + X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD", + X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1", + X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"11",X"13",X"13",X"13",X"13",X"13", + X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"11",X"13", + X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0", + X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD", + X"DD",X"DD",X"D0",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D", + X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"31",X"13",X"33",X"13",X"33", + X"11",X"D0",X"FF",X"D1",X"31",X"31",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"31",X"31", + X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"33",X"33",X"13",X"13",X"13",X"13",X"11",X"D0", + X"FF",X"D1",X"11",X"31",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11", + X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"00", + X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11", + X"1D",X"00",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"13",X"11", + X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13",X"11",X"D0", + X"FF",X"D1",X"11",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"33", + X"13",X"33",X"11",X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00", + X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD", + X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"33", + X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0", + X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"13",X"13", + X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D", + X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD", + X"D0",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11", + X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"13",X"33",X"13",X"33",X"13", + X"33",X"11",X"D0",X"FF",X"D1",X"33",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1", + X"13",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"13",X"13",X"13", + X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF", + X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD", + X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0", + X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13", + X"33",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"11",X"13",X"13",X"13",X"13", + X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13",X"13",X"13",X"11", + X"D0",X"FF",X"D1",X"13",X"11",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13", + X"33",X"13",X"33",X"13",X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11", + X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0", + X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11", + X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13", + X"33",X"13",X"33",X"11",X"D0",X"FF",X"D1",X"11",X"13",X"13",X"13",X"13",X"13",X"13",X"13",X"11", + X"D0",X"FF",X"D1",X"13",X"33",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"11", + X"13",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13", + X"33",X"13",X"33",X"11",X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"1D", + X"00",X"FF",X"00",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"00",X"DD", + X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11", + X"11",X"11",X"11",X"1D",X"00",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"13",X"33",X"11", + X"D0",X"FF",X"D1",X"13",X"11",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13", + X"33",X"13",X"13",X"13",X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"11",X"13",X"13",X"13",X"13", + X"13",X"13",X"13",X"11",X"D0",X"FF",X"D1",X"13",X"33",X"13",X"33",X"13",X"33",X"13",X"33",X"11", + X"D0",X"FF",X"0D",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"1D",X"00",X"FF",X"00",X"DD", + X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"33",X"33",X"33",X"33",X"33",X"33", + X"33",X"33",X"FF",X"55",X"25",X"25",X"25",X"50",X"00",X"00",X"00",X"FF",X"55",X"55",X"55",X"55", + X"50",X"00",X"00",X"00",X"FF",X"55",X"25",X"25",X"25",X"50",X"00",X"00",X"00",X"FF",X"55",X"55", + X"55",X"55",X"50",X"00",X"00",X"00",X"FF",X"55",X"25",X"25",X"25",X"50",X"00",X"00",X"00",X"FF", + X"55",X"55",X"55",X"55",X"00",X"00",X"00",X"00",X"FF",X"05",X"25",X"25",X"25",X"00",X"00",X"00", + X"00",X"FF",X"05",X"55",X"55",X"50",X"00",X"00",X"00",X"00",X"FF",X"05",X"25",X"25",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"55",X"50",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"FF",X"52", + X"52",X"52",X"54",X"00",X"00",X"00",X"00",X"FF",X"55",X"55",X"55",X"54",X"50",X"00",X"00",X"00", + X"FF",X"05",X"25",X"25",X"25",X"45",X"00",X"00",X"00",X"FF",X"00",X"55",X"55",X"55",X"54",X"50", + X"00",X"00",X"FF",X"00",X"05",X"25",X"25",X"25",X"45",X"00",X"00",X"FF",X"00",X"00",X"55",X"55", + X"55",X"45",X"00",X"00",X"FF",X"00",X"00",X"05",X"52",X"52",X"55",X"00",X"00",X"FF",X"00",X"00", + X"00",X"05",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"01",X"37",X"85",X"00",X"FF",X"13",X"33",X"9A",X"50",X"FF",X"02",X"44",X"46",X"00",X"FF",X"00", + X"24",X"60",X"00",X"FF",X"00",X"04",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"66", + X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"FF", + X"44",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54",X"54", + X"FF",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22", + X"22",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"30",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"20",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"46",X"64",X"20",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"20",X"40",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10",X"01",X"11", + X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"10",X"01", + X"C1",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10", + X"01",X"11",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"06",X"70",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"05",X"46",X"67",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"02",X"25",X"45", + X"66",X"70",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"03", + X"22",X"45",X"46",X"67",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"32",X"25",X"45",X"66",X"70",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"03",X"22",X"45",X"46",X"70",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"32",X"25",X"46",X"67",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"33",X"45",X"66",X"70",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"22",X"22",X"45",X"46",X"67", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"46",X"64",X"20",X"32",X"25", + X"45",X"66",X"70",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"20",X"40",X"00", + X"03",X"22",X"45",X"46",X"60",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10",X"01",X"11", + X"00",X"00",X"00",X"32",X"25",X"40",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"10",X"01", + X"C1",X"00",X"00",X"00",X"00",X"03",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10", + X"01",X"11",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"66",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"45",X"66",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"22",X"45",X"66",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"22",X"45", + X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"22",X"45",X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"22",X"45",X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"22",X"45",X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"45",X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"45",X"66",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"32",X"45",X"66",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"20",X"22",X"45",X"66",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"46",X"64",X"20",X"22",X"45", + X"66",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"20",X"40",X"00", + X"22",X"45",X"66",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10",X"01",X"11", + X"00",X"00",X"22",X"45",X"66",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"10",X"01", + X"C1",X"00",X"00",X"00",X"22",X"45",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"10", + X"01",X"11",X"00",X"00",X"00",X"00",X"22",X"00",X"FF",X"22",X"22",X"22",X"FF",X"27",X"77",X"77", + X"FF",X"00",X"55",X"00",X"FF",X"00",X"55",X"00",X"FF",X"00",X"55",X"00",X"FF",X"00",X"55",X"00", + X"FF",X"00",X"55",X"00",X"FF",X"00",X"55",X"00",X"FF",X"00",X"02",X"00",X"00",X"FF",X"00",X"27", + X"20",X"00",X"FF",X"02",X"77",X"00",X"00",X"FF",X"27",X"75",X"50",X"00",X"FF",X"07",X"00",X"55", + X"00",X"FF",X"00",X"00",X"05",X"50",X"FF",X"00",X"00",X"00",X"55",X"FF",X"00",X"00",X"00",X"05", + X"FF",X"00",X"00",X"00",X"00",X"FF",X"22",X"00",X"00",X"00",X"FF",X"27",X"00",X"00",X"00",X"FF", + X"27",X"55",X"55",X"55",X"FF",X"27",X"55",X"55",X"55",X"FF",X"27",X"00",X"00",X"00",X"FF",X"27", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"B1",X"B0",X"FF",X"00",X"BB",X"B0", + X"FF",X"00",X"0A",X"00",X"FF",X"0A",X"0A",X"0A",X"FF",X"00",X"AA",X"A0",X"FF",X"02",X"22",X"22", + X"FF",X"00",X"22",X"20",X"FF",X"00",X"22",X"20",X"FF",X"00",X"0B",X"00",X"00",X"FF",X"00",X"1B", + X"00",X"00",X"FF",X"0B",X"BA",X"0A",X"00",X"FF",X"00",X"00",X"AA",X"20",X"FF",X"00",X"0A",X"A2", + X"22",X"FF",X"00",X"00",X"22",X"22",X"FF",X"00",X"00",X"02",X"20",X"FF",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"0A",X"02",X"00",X"FF",X"BB",X"00",X"A2",X"22",X"FF", + X"1B",X"AA",X"A2",X"22",X"FF",X"BB",X"00",X"A2",X"22",X"FF",X"00",X"0A",X"02",X"00",X"FF",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"08",X"CC",X"EE",X"00",X"FF",X"08",X"CD", + X"EE",X"88",X"FF",X"08",X"CD",X"EE",X"0C",X"FF",X"08",X"CD",X"EE",X"0C",X"FF",X"08",X"CD",X"EE", + X"0C",X"FF",X"08",X"CD",X"EE",X"C0",X"FF",X"08",X"CD",X"EE",X"00",X"FF",X"08",X"CD",X"EE",X"00", + X"FF",X"00",X"08",X"CC",X"C0",X"00",X"FF",X"00",X"CC",X"80",X"0C",X"00",X"FF",X"0C",X"ED",X"C8", + X"00",X"E0",X"FF",X"CE",X"EE",X"DD",X"80",X"E0",X"FF",X"0E",X"EE",X"ED",X"C8",X"00",X"FF",X"00", + X"EE",X"ED",X"DC",X"80",X"FF",X"00",X"0E",X"EE",X"ED",X"00",X"FF",X"00",X"00",X"EE",X"E0",X"00", + X"FF",X"00",X"00",X"00",X"00",X"FF",X"08",X"88",X"80",X"00",X"FF",X"0E",X"00",X"0C",X"00",X"FF", + X"CC",X"CC",X"CC",X"C0",X"FF",X"DD",X"DD",X"DD",X"D0",X"FF",X"EE",X"EE",X"EE",X"E0",X"FF",X"EE", + X"EE",X"EE",X"E0",X"FF",X"EE",X"EE",X"EE",X"E0",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"07", + X"7E",X"E0",X"00",X"FF",X"00",X"00",X"00",X"00",X"82",X"88",X"00",X"0D",X"70",X"00",X"FF",X"00", + X"00",X"00",X"08",X"88",X"88",X"80",X"00",X"E0",X"00",X"FF",X"00",X"00",X"EE",X"ED",X"65",X"50", + X"00",X"EE",X"EE",X"00",X"FF",X"00",X"88",X"88",X"EE",X"DD",X"50",X"0E",X"89",X"88",X"E0",X"FF", + X"02",X"88",X"88",X"8E",X"EE",X"EE",X"E8",X"21",X"28",X"8E",X"FF",X"01",X"26",X"99",X"9C",X"CC", + X"70",X"08",X"86",X"68",X"8E",X"FF",X"02",X"84",X"68",X"8C",X"97",X"77",X"08",X"86",X"48",X"80", + X"FF",X"00",X"88",X"88",X"00",X"00",X"00",X"00",X"88",X"88",X"00",X"FF",X"70",X"00",X"FF",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"0C",X"C0",X"FF",X"00",X"08",X"80", + X"FF",X"02",X"CC",X"D0",X"FF",X"0C",X"0C",X"D0",X"FF",X"0C",X"0C",X"D0",X"FF",X"02",X"CC",X"D0", + X"FF",X"00",X"0C",X"D0",X"FF",X"00",X"C1",X"C0",X"FF",X"0C",X"C2",X"CC",X"FF",X"CC",X"00",X"00", + X"00",X"FF",X"D8",X"00",X"00",X"00",X"FF",X"0D",X"C0",X"00",X"00",X"FF",X"0C",X"DC",X"00",X"00", + X"FF",X"02",X"0D",X"C0",X"00",X"FF",X"00",X"CC",X"DC",X"CC",X"FF",X"00",X"00",X"C1",X"C0",X"FF", + X"00",X"00",X"CC",X"00",X"FF",X"00",X"00",X"C0",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"C0",X"FF",X"00",X"00",X"00",X"0C",X"C0",X"FF",X"C8",X"CC",X"CC",X"C1", + X"C0",X"FF",X"C8",X"DD",X"DD",X"DC",X"C0",X"FF",X"00",X"C0",X"0C",X"00",X"C0",X"FF",X"00",X"2C", + X"C2",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"CC",X"C1",X"00",X"FF",X"0C", + X"DD",X"DD",X"20",X"FF",X"CC",X"C0",X"0C",X"CC",X"FF",X"00",X"0C",X"C0",X"00",X"FF",X"00",X"C1", + X"1C",X"00",X"FF",X"0C",X"13",X"31",X"C0",X"FF",X"C2",X"C1",X"1C",X"CC",X"FF",X"DD",X"DD",X"DD", + X"DD",X"FF",X"00",X"01",X"2C",X"C0",X"00",X"FF",X"00",X"CD",X"CC",X"00",X"00",X"FF",X"0C",X"D0", + X"C0",X"00",X"00",X"FF",X"CD",X"0C",X"CC",X"CC",X"00",X"FF",X"CC",X"CC",X"31",X"CC",X"D0",X"FF", + X"CC",X"0C",X"31",X"CD",X"00",X"FF",X"C0",X"0C",X"CC",X"D0",X"00",X"FF",X"00",X"0C",X"2D",X"00", + X"00",X"FF",X"00",X"00",X"D0",X"00",X"00",X"FF",X"00",X"C0",X"00",X"CD",X"FF",X"02",X"C0",X"0C", + X"CD",X"FF",X"1D",X"C0",X"C1",X"CD",X"FF",X"CD",X"0C",X"13",X"1D",X"FF",X"CD",X"0C",X"13",X"1D", + X"FF",X"CD",X"C0",X"C1",X"CD",X"FF",X"0C",X"C0",X"0C",X"2D",X"FF",X"00",X"C0",X"00",X"CD",X"FF", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"10",X"FF",X"22",X"CC",X"22",X"01",X"FF",X"11", + X"11",X"11",X"01",X"FF",X"01",X"11",X"10",X"10",X"FF",X"00",X"77",X"00",X"00",X"FF",X"11",X"11", + X"11",X"10",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"11",X"00",X"FF",X"00",X"00",X"20", + X"10",X"FF",X"00",X"0C",X"10",X"10",X"FF",X"00",X"C1",X"11",X"00",X"FF",X"02",X"11",X"10",X"01", + X"FF",X"21",X"11",X"10",X"10",X"FF",X"01",X"11",X"71",X"00",X"FF",X"00",X"00",X"10",X"00",X"FF", + X"00",X"01",X"00",X"00",X"FF",X"00",X"10",X"00",X"00",X"FF",X"11",X"10",X"00",X"FF",X"10",X"01", + X"01",X"FF",X"02",X"10",X"01",X"FF",X"02",X"11",X"01",X"FF",X"0C",X"11",X"71",X"FF",X"0C",X"11", + X"71",X"FF",X"02",X"11",X"01",X"FF",X"02",X"10",X"01",X"FF",X"ED",X"00",X"FF",X"00",X"00",X"EE", + X"E0",X"00",X"FF",X"00",X"04",X"44",X"50",X"00",X"FF",X"00",X"43",X"23",X"45",X"00",X"FF",X"00", + X"42",X"31",X"75",X"00",X"FF",X"00",X"53",X"33",X"45",X"00",X"FF",X"00",X"05",X"33",X"59",X"A0", + X"FF",X"53",X"44",X"56",X"00",X"00",X"FF",X"42",X"23",X"43",X"50",X"00",X"FF",X"53",X"34",X"33", + X"50",X"00",X"FF",X"06",X"54",X"45",X"00",X"00",X"FF",X"77",X"66",X"60",X"00",X"00",X"FF",X"00", + X"0A",X"00",X"00",X"00",X"FF",X"00",X"99",X"A0",X"00",X"00",X"FF",X"00",X"04",X"44",X"50",X"00", + X"FF",X"00",X"43",X"23",X"45",X"00",X"FF",X"00",X"42",X"31",X"75",X"00",X"FF",X"00",X"53",X"33", + X"45",X"00",X"FF",X"00",X"05",X"33",X"59",X"A0",X"FF",X"65",X"44",X"56",X"00",X"00",X"FF",X"53", + X"22",X"43",X"50",X"00",X"FF",X"53",X"34",X"33",X"50",X"00",X"FF",X"06",X"54",X"45",X"00",X"00", + X"FF",X"00",X"66",X"60",X"00",X"00",X"FF",X"08",X"A7",X"00",X"00",X"00",X"FF",X"00",X"99",X"00", + X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"23",X"17",X"50",X"FF",X"00", + X"04",X"22",X"34",X"50",X"FF",X"00",X"05",X"33",X"33",X"5A",X"FF",X"05",X"44",X"54",X"45",X"00", + X"FF",X"53",X"22",X"34",X"50",X"00",X"FF",X"53",X"34",X"33",X"50",X"00",X"FF",X"06",X"54",X"45", + X"50",X"00",X"FF",X"00",X"66",X"66",X"00",X"00",X"FF",X"09",X"9A",X"70",X"00",X"00",X"FF",X"00", + X"07",X"77",X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"22",X"11",X"50", + X"FF",X"00",X"04",X"22",X"17",X"50",X"FF",X"00",X"65",X"33",X"24",X"59",X"FF",X"32",X"26",X"54", + X"44",X"A0",X"FF",X"53",X"22",X"56",X"60",X"00",X"FF",X"53",X"33",X"53",X"34",X"00",X"FF",X"05", + X"55",X"43",X"35",X"00",X"FF",X"00",X"05",X"55",X"50",X"00",X"FF",X"00",X"0A",X"A0",X"00",X"00", + X"FF",X"00",X"00",X"98",X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"22", + X"11",X"50",X"FF",X"00",X"04",X"22",X"17",X"50",X"FF",X"00",X"05",X"33",X"24",X"59",X"FF",X"00", + X"66",X"54",X"44",X"90",X"FF",X"00",X"32",X"56",X"60",X"00",X"FF",X"03",X"23",X"53",X"30",X"00", + X"FF",X"02",X"55",X"43",X"30",X"00",X"FF",X"00",X"A5",X"55",X"50",X"00",X"FF",X"00",X"0A",X"00", + X"00",X"00",X"FF",X"04",X"40",X"74",X"44",X"50",X"FF",X"03",X"37",X"42",X"11",X"45",X"FF",X"54", + X"46",X"42",X"17",X"35",X"FF",X"45",X"55",X"43",X"33",X"37",X"FF",X"44",X"34",X"54",X"43",X"50", + X"FF",X"A4",X"32",X"46",X"0A",X"00",X"FF",X"05",X"45",X"60",X"00",X"00",X"FF",X"00",X"A0",X"00", + X"00",X"00",X"FF",X"0A",X"00",X"44",X"00",X"00",X"FF",X"00",X"45",X"33",X"00",X"00",X"FF",X"04", + X"32",X"55",X"00",X"00",X"FF",X"A3",X"32",X"46",X"55",X"50",X"FF",X"64",X"43",X"64",X"33",X"46", + X"FF",X"65",X"34",X"A9",X"37",X"15",X"FF",X"56",X"55",X"53",X"33",X"35",X"FF",X"35",X"60",X"64", + X"73",X"46",X"FF",X"00",X"00",X"06",X"55",X"60",X"FF",X"00",X"0A",X"00",X"A0",X"FF",X"05",X"55", + X"45",X"00",X"FF",X"55",X"53",X"53",X"50",X"FF",X"43",X"54",X"53",X"30",X"FF",X"32",X"43",X"32", + X"30",X"FF",X"25",X"43",X"35",X"20",X"FF",X"06",X"65",X"55",X"60",X"FF",X"00",X"64",X"33",X"46", + X"FF",X"00",X"51",X"31",X"15",X"FF",X"00",X"57",X"37",X"15",X"FF",X"00",X"64",X"33",X"46",X"FF", + X"00",X"06",X"55",X"60",X"FF",X"00",X"04",X"43",X"50",X"00",X"FF",X"00",X"41",X"21",X"15",X"00", + X"FF",X"00",X"47",X"37",X"14",X"00",X"FF",X"00",X"43",X"83",X"35",X"00",X"FF",X"04",X"62",X"A2", + X"46",X"40",X"FF",X"33",X"45",X"55",X"56",X"32",X"FF",X"54",X"55",X"23",X"55",X"45",X"FF",X"05", + X"63",X"22",X"36",X"50",X"FF",X"00",X"05",X"44",X"50",X"00",X"FF",X"00",X"00",X"80",X"90",X"00", + X"FF",X"00",X"00",X"A0",X"A0",X"00",X"FF",X"00",X"44",X"35",X"00",X"FF",X"04",X"12",X"11",X"50", + X"FF",X"04",X"73",X"71",X"40",X"FF",X"04",X"38",X"33",X"50",X"FF",X"06",X"2A",X"24",X"60",X"FF", + X"54",X"55",X"55",X"65",X"FF",X"42",X"52",X"35",X"34",X"FF",X"52",X"42",X"24",X"25",X"FF",X"00", + X"54",X"45",X"00",X"FF",X"00",X"0A",X"0A",X"00",X"FF",X"00",X"03",X"34",X"40",X"FF",X"00",X"33", + X"23",X"44",X"FF",X"00",X"33",X"71",X"37",X"FF",X"00",X"33",X"33",X"94",X"FF",X"00",X"42",X"39", + X"9A",X"FF",X"00",X"65",X"34",X"A0",X"FF",X"06",X"23",X"54",X"56",X"FF",X"03",X"33",X"52",X"45", + X"FF",X"05",X"45",X"44",X"63",X"FF",X"00",X"65",X"66",X"00",X"FF",X"00",X"99",X"0A",X"00",X"FF", + X"00",X"00",X"88",X"A0",X"FF",X"00",X"33",X"34",X"00",X"FF",X"03",X"32",X"23",X"40",X"FF",X"03", + X"73",X"37",X"40",X"FF",X"03",X"13",X"31",X"40",X"FF",X"04",X"39",X"93",X"40",X"FF",X"00",X"4A", + X"A4",X"00",X"FF",X"06",X"55",X"55",X"60",X"FF",X"05",X"33",X"34",X"50",X"FF",X"35",X"43",X"35", + X"53",X"FF",X"00",X"55",X"55",X"00",X"FF",X"00",X"AA",X"0A",X"00",X"FF",X"0A",X"9A",X"AA",X"A0", + X"FF",X"00",X"00",X"22",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"02",X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"23",X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"02",X"3E", + X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"07",X"CC",X"CC", + X"CB",X"00",X"00",X"66",X"66",X"66",X"00",X"00",X"00",X"00",X"00",X"FF",X"73",X"3E",X"EE",X"E3", + X"00",X"7C",X"54",X"DD",X"DD",X"45",X"00",X"00",X"02",X"00",X"FF",X"CC",X"CC",X"CC",X"CA",X"67", + X"55",X"CC",X"44",X"44",X"5C",X"77",X"00",X"03",X"00",X"FF",X"CC",X"CC",X"CC",X"C6",X"45",X"63", + X"3C",X"CC",X"BB",X"C5",X"66",X"70",X"06",X"00",X"FF",X"73",X"EE",X"E7",X"65",X"63",X"32",X"22", + X"2E",X"EE",X"EE",X"E3",X"67",X"04",X"00",X"FF",X"73",X"EE",X"E7",X"66",X"33",X"22",X"22",X"22", + X"22",X"22",X"2E",X"36",X"05",X"00",X"FF",X"07",X"EE",X"33",X"63",X"22",X"11",X"12",X"22",X"22", + X"11",X"22",X"E3",X"60",X"00",X"FF",X"07",X"3E",X"33",X"EE",X"22",X"55",X"66",X"66",X"33",X"E1", + X"12",X"23",X"49",X"E0",X"FF",X"00",X"76",X"33",X"EE",X"E5",X"6E",X"33",X"33",X"3E",X"A1",X"12", + X"23",X"48",X"80",X"FF",X"00",X"66",X"73",X"33",X"56",X"E3",X"33",X"33",X"EA",X"71",X"12",X"E3", + X"50",X"00",X"FF",X"00",X"05",X"67",X"64",X"43",X"63",X"33",X"3E",X"A7",X"22",X"22",X"E6",X"5D", + X"00",X"FF",X"00",X"00",X"56",X"5D",X"43",X"66",X"3E",X"AA",X"73",X"22",X"EE",X"65",X"04",X"00", + X"FF",X"00",X"00",X"05",X"44",X"D4",X"77",X"77",X"77",X"63",X"3E",X"E6",X"50",X"08",X"00",X"FF", + X"00",X"00",X"00",X"D4",X"44",X"45",X"57",X"75",X"66",X"66",X"75",X"00",X"08",X"00",X"FF",X"00", + X"00",X"00",X"00",X"D4",X"44",X"45",X"55",X"54",X"44",X"00",X"00",X"09",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"0D",X"DD",X"DD",X"DD",X"00",X"00",X"00",X"00",X"00",X"FF",X"0D",X"00",X"0D", + X"00",X"FF",X"DC",X"00",X"0C",X"D0",X"FF",X"0D",X"C4",X"CD",X"00",X"FF",X"00",X"08",X"00",X"00", + X"FF",X"00",X"C4",X"C0",X"00",X"FF",X"0C",X"40",X"4C",X"00",X"FF",X"D4",X"00",X"04",X"D0",X"FF", + X"D4",X"00",X"04",X"D0",X"FF",X"0C",X"00",X"0C",X"00",X"FF",X"00",X"DD",X"C0",X"00",X"00",X"FF", + X"00",X"0C",X"D0",X"00",X"00",X"FF",X"D0",X"00",X"D0",X"00",X"00",X"FF",X"DC",X"08",X"CC",X"CD", + X"00",X"FF",X"CD",X"DC",X"04",X"44",X"D0",X"FF",X"00",X"0C",X"40",X"04",X"C0",X"FF",X"00",X"0C", + X"40",X"00",X"C0",X"FF",X"00",X"0D",X"44",X"00",X"00",X"FF",X"00",X"00",X"DC",X"C0",X"00",X"FF", + X"0D",X"00",X"00",X"DD",X"00",X"FF",X"DC",X"D0",X"0C",X"44",X"C0",X"FF",X"00",X"C0",X"C4",X"00", + X"00",X"FF",X"00",X"48",X"40",X"00",X"00",X"FF",X"00",X"C0",X"C4",X"00",X"00",X"FF",X"DC",X"D0", + X"0C",X"44",X"C0",X"FF",X"0D",X"00",X"00",X"DD",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"09",X"00",X"00",X"FF",X"08",X"89",X"98",X"80",X"FF",X"81",X"38",X"88",X"88",X"FF",X"82", + X"88",X"88",X"88",X"FF",X"88",X"88",X"88",X"88",X"FF",X"08",X"88",X"88",X"80",X"FF",X"08",X"88", + X"8A",X"80",X"FF",X"00",X"8A",X"AA",X"00",X"FF",X"00",X"88",X"80",X"00",X"FF",X"08",X"88",X"88", + X"80",X"FF",X"08",X"88",X"88",X"AA",X"FF",X"09",X"88",X"88",X"8A",X"FF",X"99",X"88",X"88",X"8A", + X"FF",X"08",X"38",X"88",X"88",X"FF",X"08",X"12",X"88",X"80",X"FF",X"00",X"88",X"80",X"00",X"FF", + X"00",X"00",X"00",X"00",X"FF",X"90",X"08",X"88",X"00",X"FF",X"09",X"98",X"88",X"80",X"FF",X"83", + X"88",X"88",X"80",X"FF",X"81",X"38",X"88",X"88",X"FF",X"88",X"88",X"88",X"AA",X"FF",X"08",X"88", + X"8A",X"AA",X"FF",X"00",X"08",X"AA",X"00",X"FF",X"00",X"00",X"10",X"00",X"00",X"FF",X"00",X"01", + X"11",X"00",X"00",X"FF",X"10",X"08",X"88",X"0E",X"E0",X"FF",X"01",X"01",X"11",X"E0",X"E0",X"FF", + X"01",X"01",X"11",X"00",X"E0",X"FF",X"01",X"11",X"11",X"E0",X"E0",X"FF",X"00",X"01",X"11",X"0E", + X"00",X"FF",X"00",X"01",X"11",X"00",X"00",X"FF",X"00",X"00",X"0E",X"E0",X"FF",X"01",X"11",X"0E", + X"0E",X"FF",X"01",X"18",X"1E",X"0E",X"FF",X"01",X"81",X"11",X"0E",X"FF",X"00",X"11",X"11",X"10", + X"FF",X"10",X"01",X"11",X"11",X"FF",X"01",X"11",X"11",X"10",X"FF",X"00",X"10",X"01",X"00",X"FF", + X"00",X"EE",X"EE",X"00",X"FF",X"00",X"E0",X"00",X"E0",X"FF",X"00",X"0E",X"0E",X"00",X"FF",X"01", + X"81",X"11",X"11",X"FF",X"11",X"81",X"11",X"11",X"FF",X"01",X"81",X"11",X"11",X"FF",X"00",X"00", + X"01",X"00",X"FF",X"00",X"01",X"11",X"00",X"FF",X"00",X"0B",X"00",X"FF",X"00",X"05",X"00",X"FF", + X"00",X"05",X"00",X"FF",X"00",X"55",X"50",X"FF",X"00",X"11",X"50",X"FF",X"00",X"11",X"50",X"FF", + X"00",X"11",X"50",X"FF",X"00",X"55",X"50",X"FF",X"00",X"55",X"50",X"FF",X"00",X"00",X"00",X"FF", + X"B0",X"00",X"00",X"00",X"FF",X"05",X"00",X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"F0",X"00", + X"55",X"50",X"00",X"FF",X"00",X"51",X"55",X"00",X"FF",X"00",X"01",X"15",X"50",X"FF",X"00",X"00", + X"15",X"50",X"FF",X"00",X"00",X"05",X"50",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"05",X"55",X"55",X"50",X"FF", + X"B5",X"55",X"11",X"15",X"50",X"FF",X"00",X"05",X"11",X"15",X"50",X"FF",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"09",X"90",X"90", + X"00",X"FF",X"00",X"99",X"99",X"00",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"EE",X"E9",X"EE",X"E0", + X"FF",X"99",X"99",X"99",X"90",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF", + X"00",X"90",X"E0",X"00",X"FF",X"90",X"9E",X"EE",X"00",X"FF",X"99",X"9E",X"E9",X"E0",X"FF",X"0E", + X"E9",X"9E",X"EE",X"FF",X"EE",X"E9",X"9E",X"E0",X"FF",X"0E",X"9E",X"E9",X"00",X"FF",X"00",X"EE", + X"E0",X"00",X"FF",X"00",X"0E",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"EE",X"9E", + X"E0",X"FF",X"09",X"EE",X"9E",X"E0",X"FF",X"99",X"EE",X"9E",X"E0",X"FF",X"09",X"99",X"99",X"90", + X"FF",X"99",X"EE",X"9E",X"E0",X"FF",X"90",X"EE",X"9E",X"E0",X"FF",X"00",X"EE",X"9E",X"E0",X"FF", + X"0B",X"DE",X"DD",X"DB",X"FF",X"00",X"BE",X"DD",X"B0",X"FF",X"00",X"0B",X"DB",X"00",X"FF",X"00", + X"00",X"B0",X"00",X"FF",X"00",X"00",X"B0",X"00",X"FF",X"00",X"00",X"B0",X"00",X"FF",X"00",X"00", + X"B0",X"00",X"FF",X"00",X"00",X"B0",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"EE",X"EE", + X"EE",X"01",X"10",X"FF",X"AA",X"AA",X"AA",X"10",X"01",X"FF",X"AA",X"AA",X"AA",X"00",X"01",X"FF", + X"AA",X"AA",X"AA",X"00",X"01",X"FF",X"AA",X"AA",X"AA",X"11",X"10",X"FF",X"AA",X"AA",X"AA",X"00", + X"00",X"FF",X"AA",X"AA",X"AA",X"00",X"00",X"FF",X"00",X"00",X"00",X"01",X"10",X"FF",X"00",X"00", + X"E0",X"10",X"01",X"FF",X"00",X"0E",X"AA",X"10",X"01",X"FF",X"00",X"EA",X"AA",X"A0",X"10",X"FF", + X"0E",X"AA",X"AA",X"AA",X"10",X"FF",X"EA",X"AA",X"AA",X"AA",X"A0",X"FF",X"0A",X"AA",X"AA",X"AA", + X"00",X"FF",X"00",X"AA",X"AA",X"A0",X"00",X"FF",X"00",X"0A",X"AA",X"00",X"00",X"FF",X"00",X"00", + X"A0",X"00",X"00",X"FF",X"00",X"11",X"10",X"00",X"FF",X"01",X"00",X"01",X"00",X"FF",X"01",X"00", + X"01",X"00",X"FF",X"00",X"10",X"01",X"00",X"FF",X"0E",X"AA",X"AA",X"AA",X"FF",X"0E",X"AA",X"AA", + X"AA",X"FF",X"0E",X"AA",X"AA",X"AA",X"00",X"00",X"00",X"FF",X"00",X"08",X"00",X"FF",X"00",X"08", + X"00",X"FF",X"00",X"88",X"80",X"FF",X"08",X"88",X"88",X"FF",X"0E",X"EE",X"EB",X"FF",X"0E",X"EE", + X"EB",X"FF",X"0E",X"EE",X"EB",X"FF",X"0E",X"EE",X"EB",X"FF",X"0E",X"EE",X"EB",X"FF",X"0E",X"EE", + X"EB",X"FF",X"0C",X"BB",X"BC",X"FF",X"80",X"00",X"00",X"00",X"00",X"FF",X"08",X"88",X"80",X"00", + X"00",X"FF",X"08",X"8E",X"EB",X"00",X"00",X"FF",X"08",X"EE",X"EB",X"B0",X"00",X"FF",X"08",X"EE", + X"EE",X"BB",X"00",X"FF",X"00",X"EE",X"EE",X"EB",X"C0",X"FF",X"00",X"0E",X"EE",X"EB",X"00",X"FF", + X"00",X"00",X"EE",X"B0",X"00",X"FF",X"00",X"00",X"0C",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"8B",X"BB",X"BB",X"BC",X"FF", + X"00",X"08",X"8E",X"EE",X"EE",X"EB",X"FF",X"08",X"88",X"8E",X"EE",X"EE",X"EB",X"FF",X"00",X"08", + X"8E",X"EE",X"EE",X"EB",X"FF",X"00",X"00",X"8E",X"EE",X"EE",X"EC",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"10",X"00",X"00",X"FF",X"00",X"0D",X"DD",X"00", + X"10",X"FF",X"BB",X"BB",X"BB",X"B1",X"01",X"FF",X"0B",X"BB",X"BB",X"B0",X"01",X"FF",X"00",X"BB", + X"BB",X"B1",X"11",X"FF",X"00",X"BB",X"BB",X"B0",X"00",X"FF",X"00",X"00",X"00",X"10",X"FF",X"00", + X"00",X"01",X"01",X"FF",X"00",X"00",X"B1",X"01",X"FF",X"00",X"1D",X"BB",X"01",X"FF",X"00",X"DB", + X"BB",X"B0",X"FF",X"00",X"BB",X"BB",X"BB",X"FF",X"0B",X"BB",X"BB",X"B0",X"FF",X"BB",X"BB",X"BB", + X"00",X"FF",X"00",X"00",X"B0",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"11",X"10",X"FF", + X"01",X"00",X"10",X"FF",X"00",X"10",X"10",X"FF",X"00",X"BB",X"BB",X"FF",X"0D",X"BB",X"BB",X"FF", + X"1D",X"BB",X"BB",X"FF",X"0D",X"BB",X"BB",X"FF",X"00",X"BB",X"BB",X"FF",X"00",X"BB",X"00",X"FF", + X"00",X"B0",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"11",X"00",X"00",X"FF", + X"00",X"99",X"99",X"99",X"00",X"FF",X"18",X"88",X"88",X"88",X"81",X"FF",X"19",X"99",X"99",X"99", + X"11",X"FF",X"09",X"99",X"99",X"99",X"90",X"FF",X"09",X"99",X"99",X"99",X"90",X"FF",X"00",X"99", + X"99",X"99",X"00",X"FF",X"00",X"00",X"98",X"10",X"FF",X"00",X"19",X"81",X"10",X"FF",X"01",X"98", + X"99",X"90",X"FF",X"09",X"89",X"99",X"90",X"FF",X"98",X"99",X"99",X"90",X"FF",X"89",X"99",X"99", + X"00",X"FF",X"19",X"99",X"90",X"00",X"FF",X"00",X"99",X"00",X"00",X"FF",X"00",X"11",X"00",X"00", + X"FF",X"00",X"81",X"99",X"00",X"FF",X"09",X"89",X"99",X"90",X"FF",X"09",X"89",X"99",X"90",X"FF", + X"19",X"89",X"99",X"90",X"FF",X"19",X"89",X"99",X"90",X"FF",X"09",X"89",X"99",X"90",X"FF",X"09", + X"89",X"99",X"90",X"FF",X"00",X"89",X"99",X"00",X"FF",X"00",X"11",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"09",X"90",X"00",X"00",X"99",X"99",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"98",X"89",X"90",X"09",X"88",X"88",X"90",X"00", + X"00",X"0B",X"BB",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"09",X"88",X"88", + X"8B",X"98",X"88",X"88",X"9B",X"00",X"00",X"B8",X"88",X"B0",X"BB",X"BB",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"98",X"88",X"89",X"9B",X"B8",X"88",X"88",X"9B",X"BB",X"B0",X"B8",X"88",X"8B", + X"88",X"88",X"BB",X"00",X"00",X"FF",X"00",X"00",X"99",X"88",X"88",X"98",X"88",X"8B",X"98",X"89", + X"88",X"B8",X"8B",X"88",X"88",X"88",X"88",X"88",X"88",X"B0",X"00",X"FF",X"00",X"09",X"88",X"88", + X"89",X"88",X"88",X"88",X"B9",X"88",X"88",X"B8",X"88",X"88",X"88",X"88",X"88",X"99",X"98",X"8B", + X"00",X"FF",X"00",X"98",X"88",X"88",X"88",X"88",X"88",X"88",X"B9",X"98",X"88",X"88",X"88",X"88", + X"88",X"88",X"88",X"88",X"89",X"9B",X"B0",X"FF",X"0B",X"88",X"8B",X"88",X"88",X"88",X"88",X"88", + X"B8",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"89",X"9B",X"FF",X"0B",X"88", + X"8B",X"88",X"88",X"88",X"88",X"88",X"B8",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88", + X"88",X"88",X"9B",X"FF",X"0B",X"88",X"8B",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88", + X"88",X"88",X"88",X"88",X"89",X"88",X"88",X"88",X"9B",X"FF",X"00",X"B8",X"89",X"BB",X"88",X"88", + X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"89",X"88",X"88",X"88",X"9B",X"FF", + X"00",X"B9",X"9B",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88", + X"89",X"88",X"88",X"89",X"B0",X"FF",X"00",X"B9",X"9B",X"88",X"88",X"88",X"88",X"88",X"88",X"88", + X"88",X"88",X"98",X"88",X"98",X"88",X"89",X"98",X"89",X"9B",X"00",X"FF",X"00",X"0B",X"B9",X"98", + X"9B",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"89",X"89",X"88",X"88",X"99",X"99",X"BB",X"B0", + X"00",X"FF",X"00",X"00",X"B9",X"99",X"9B",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"89",X"99", + X"98",X"89",X"9B",X"BB",X"00",X"00",X"00",X"FF",X"00",X"00",X"0B",X"BB",X"9B",X"88",X"88",X"89", + X"88",X"88",X"88",X"88",X"89",X"99",X"99",X"BB",X"B0",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"B9",X"B8",X"88",X"88",X"98",X"88",X"88",X"89",X"9B",X"BB",X"BB",X"00",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"0B",X"98",X"98",X"89",X"98",X"88",X"88",X"99", + X"BB",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"0B", + X"99",X"99",X"9B",X"88",X"8B",X"BB",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"BB",X"BB",X"B0",X"BB",X"B0",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"99",X"B0",X"00",X"00", + X"00",X"B9",X"9B",X"00",X"00",X"00",X"FF",X"00",X"00",X"09",X"99",X"B0",X"99",X"89",X"9B",X"00", + X"0B",X"BB",X"B8",X"88",X"BB",X"00",X"00",X"FF",X"00",X"00",X"98",X"88",X"9B",X"88",X"88",X"9B", + X"B0",X"B8",X"88",X"88",X"99",X"99",X"B0",X"00",X"FF",X"00",X"09",X"88",X"88",X"89",X"B8",X"9B", + X"B8",X"9B",X"88",X"88",X"88",X"88",X"88",X"9B",X"00",X"FF",X"00",X"98",X"88",X"88",X"88",X"B9", + X"88",X"88",X"8B",X"88",X"88",X"98",X"88",X"88",X"8B",X"00",X"FF",X"00",X"98",X"88",X"88",X"88", + X"99",X"98",X"88",X"9B",X"88",X"88",X"88",X"89",X"88",X"99",X"B0",X"FF",X"00",X"98",X"8B",X"98", + X"88",X"98",X"88",X"88",X"88",X"88",X"88",X"88",X"89",X"99",X"88",X"90",X"FF",X"00",X"98",X"89", + X"98",X"88",X"98",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"98",X"88",X"99",X"FF",X"09",X"89", + X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"98",X"88",X"9B",X"FF",X"98", + X"88",X"88",X"88",X"88",X"88",X"98",X"88",X"88",X"88",X"88",X"88",X"88",X"99",X"89",X"9B",X"FF", + X"0B",X"B9",X"88",X"88",X"89",X"89",X"88",X"88",X"88",X"88",X"88",X"88",X"88",X"99",X"99",X"B0", + X"FF",X"00",X"00",X"B9",X"98",X"98",X"89",X"88",X"88",X"88",X"88",X"88",X"98",X"89",X"99",X"9B", + X"00",X"FF",X"00",X"00",X"B9",X"99",X"88",X"89",X"88",X"88",X"88",X"88",X"88",X"99",X"99",X"BB", + X"00",X"00",X"FF",X"00",X"00",X"0B",X"98",X"89",X"8B",X"88",X"88",X"88",X"88",X"89",X"B9",X"9B", + X"B0",X"00",X"00",X"FF",X"00",X"00",X"00",X"BB",X"99",X"9B",X"98",X"88",X"88",X"88",X"99",X"BB", + X"B0",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"0B",X"99",X"99",X"B9",X"88",X"88",X"99",X"BB", + X"BB",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"BB",X"B9",X"9B",X"99",X"99",X"BB", + X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"0B",X"BB",X"BB",X"BB", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"7E", + X"E0",X"00",X"FF",X"00",X"00",X"00",X"00",X"82",X"88",X"00",X"0D",X"70",X"00",X"FF",X"00",X"00", + X"00",X"08",X"88",X"88",X"80",X"00",X"E0",X"00",X"FF",X"00",X"00",X"EE",X"7D",X"69",X"50",X"00", + X"EE",X"EE",X"00",X"FF",X"00",X"21",X"28",X"EE",X"DD",X"50",X"0E",X"88",X"21",X"E0",X"FF",X"08", + X"82",X"88",X"8E",X"EE",X"EE",X"E8",X"88",X"81",X"2E",X"FF",X"08",X"86",X"6B",X"B7",X"77",X"C0", + X"08",X"86",X"68",X"8E",X"FF",X"08",X"84",X"68",X"8C",X"DD",X"D0",X"08",X"86",X"48",X"80",X"FF", + X"00",X"88",X"88",X"00",X"00",X"00",X"00",X"88",X"88",X"00",X"FF",X"00",X"00",X"00",X"00",X"02", + X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04", + X"22",X"34",X"50",X"FF",X"00",X"04",X"27",X"77",X"70",X"FF",X"00",X"05",X"33",X"37",X"70",X"FF", + X"53",X"44",X"53",X"35",X"9A",X"FF",X"42",X"23",X"43",X"50",X"00",X"FF",X"53",X"34",X"33",X"60", + X"00",X"FF",X"06",X"54",X"45",X"00",X"00",X"FF",X"77",X"66",X"60",X"00",X"00",X"FF",X"00",X"0A", + X"00",X"00",X"00",X"FF",X"00",X"99",X"A0",X"00",X"00",X"FF",X"00",X"04",X"44",X"50",X"00",X"FF", + X"00",X"43",X"23",X"45",X"00",X"FF",X"00",X"42",X"77",X"77",X"00",X"FF",X"00",X"53",X"33",X"77", + X"00",X"FF",X"00",X"05",X"33",X"59",X"A0",X"FF",X"65",X"44",X"56",X"00",X"00",X"FF",X"53",X"22", + X"43",X"50",X"00",X"FF",X"53",X"34",X"33",X"50",X"00",X"FF",X"06",X"54",X"45",X"00",X"00",X"FF", + X"00",X"66",X"60",X"00",X"00",X"FF",X"08",X"A7",X"00",X"00",X"00",X"FF",X"00",X"99",X"00",X"00", + X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"27",X"77",X"70",X"FF",X"00",X"04", + X"22",X"37",X"70",X"FF",X"00",X"05",X"33",X"33",X"5A",X"FF",X"05",X"44",X"54",X"45",X"00",X"FF", + X"53",X"22",X"34",X"50",X"00",X"FF",X"53",X"34",X"33",X"50",X"00",X"FF",X"06",X"54",X"45",X"50", + X"00",X"FF",X"00",X"66",X"66",X"00",X"00",X"FF",X"09",X"9A",X"70",X"00",X"00",X"FF",X"00",X"07", + X"77",X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"27",X"77",X"70",X"FF", + X"00",X"04",X"22",X"17",X"70",X"FF",X"00",X"65",X"33",X"24",X"59",X"FF",X"32",X"26",X"54",X"44", + X"A0",X"FF",X"53",X"22",X"56",X"60",X"00",X"FF",X"53",X"33",X"53",X"34",X"00",X"FF",X"05",X"55", + X"43",X"35",X"00",X"FF",X"00",X"05",X"55",X"50",X"00",X"FF",X"00",X"0A",X"A0",X"00",X"00",X"FF", + X"00",X"00",X"98",X"00",X"00",X"FF",X"00",X"00",X"44",X"45",X"00",X"FF",X"00",X"04",X"27",X"77", + X"70",X"FF",X"00",X"04",X"22",X"47",X"70",X"FF",X"00",X"05",X"33",X"24",X"59",X"FF",X"00",X"66", + X"54",X"44",X"90",X"FF",X"00",X"32",X"56",X"60",X"00",X"FF",X"03",X"23",X"53",X"30",X"00",X"FF", + X"02",X"55",X"43",X"30",X"00",X"FF",X"00",X"A5",X"55",X"50",X"00",X"FF",X"00",X"0A",X"00",X"00", + X"00",X"FF",X"00",X"04",X"33",X"50",X"00",X"FF",X"00",X"41",X"71",X"75",X"00",X"FF",X"00",X"71", + X"11",X"15",X"00",X"FF",X"00",X"77",X"77",X"77",X"00",X"FF",X"04",X"67",X"7A",X"77",X"40",X"FF", + X"33",X"45",X"55",X"56",X"32",X"FF",X"54",X"55",X"23",X"55",X"45",X"FF",X"05",X"63",X"22",X"36", + X"50",X"FF",X"00",X"05",X"44",X"50",X"00",X"FF",X"00",X"00",X"80",X"90",X"00",X"FF",X"00",X"00", + X"A0",X"A0",X"00",X"FF",X"00",X"44",X"35",X"00",X"FF",X"04",X"17",X"17",X"50",X"FF",X"07",X"11", + X"11",X"70",X"FF",X"07",X"77",X"77",X"70",X"FF",X"06",X"77",X"A7",X"70",X"FF",X"54",X"55",X"55", + X"65",X"FF",X"42",X"52",X"35",X"34",X"FF",X"52",X"42",X"24",X"25",X"FF",X"00",X"54",X"45",X"00", + X"FF",X"00",X"0A",X"0A",X"00",X"FF",X"00",X"03",X"34",X"40",X"FF",X"00",X"43",X"23",X"44",X"FF", + X"00",X"77",X"77",X"77",X"FF",X"00",X"33",X"77",X"97",X"FF",X"00",X"42",X"39",X"9A",X"FF",X"00", + X"65",X"34",X"A0",X"FF",X"06",X"23",X"54",X"56",X"FF",X"03",X"33",X"52",X"45",X"FF",X"05",X"45", + X"44",X"63",X"FF",X"00",X"65",X"66",X"00",X"FF",X"00",X"99",X"0A",X"00",X"FF",X"00",X"00",X"88", + X"A0",X"FF",X"00",X"33",X"34",X"00",X"FF",X"03",X"32",X"23",X"40",X"FF",X"07",X"77",X"77",X"70", + X"FF",X"07",X"77",X"37",X"70",X"FF",X"04",X"39",X"93",X"40",X"FF",X"00",X"4A",X"A4",X"00",X"FF", + X"06",X"55",X"55",X"60",X"FF",X"05",X"33",X"34",X"50",X"FF",X"35",X"43",X"35",X"53",X"FF",X"00", + X"55",X"55",X"00",X"FF",X"00",X"AA",X"0A",X"00",X"FF",X"0A",X"9A",X"AA",X"A0",X"FF",X"00",X"AA", + X"0A",X"00",X"FF",X"0A",X"9A",X"AA",X"A0",X"FF",X"00",X"00",X"00",X"00",X"00",X"60",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"60",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"08",X"58", + X"50",X"00",X"FF",X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00",X"FF",X"00",X"00",X"00",X"08", + X"65",X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"09",X"A5",X"51",X"15",X"70",X"FF",X"00",X"00", + X"00",X"87",X"65",X"11",X"19",X"70",X"FF",X"00",X"00",X"00",X"9A",X"65",X"51",X"1A",X"3A",X"FF", + X"00",X"00",X"00",X"87",X"75",X"45",X"62",X"2C",X"FF",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22", + X"2C",X"FF",X"00",X"00",X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00",X"00", + X"80",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"09",X"A6",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"86",X"64",X"40",X"00",X"FF",X"00",X"00",X"00",X"00",X"9A",X"3E",X"20",X"00",X"FF",X"08", + X"70",X"00",X"09",X"68",X"D5",X"40",X"00",X"FF",X"00",X"09",X"00",X"58",X"A3",X"DE",X"50",X"00", + X"FF",X"00",X"00",X"69",X"00",X"86",X"76",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"07",X"60", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"77",X"66",X"55",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"60",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"08",X"58",X"50",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"86", + X"46",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"08",X"65",X"45",X"57",X"00",X"FF",X"00",X"00", + X"00",X"00",X"09",X"A5",X"51",X"15",X"70",X"FF",X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"19", + X"70",X"FF",X"00",X"00",X"00",X"00",X"9A",X"65",X"51",X"1A",X"3A",X"FF",X"00",X"00",X"00",X"00", + X"87",X"75",X"45",X"62",X"2C",X"FF",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF", + X"00",X"00",X"00",X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"80",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"08",X"60",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"9A",X"54",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"9A",X"3D",X"22",X"00", + X"00",X"FF",X"08",X"79",X"00",X"09",X"7A",X"EC",X"D4",X"90",X"00",X"FF",X"00",X"00",X"69",X"58", + X"A6",X"55",X"CD",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"86",X"55",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"07",X"60",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"77",X"66", + X"55",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"60", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"08",X"58",X"50",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"86",X"46",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"08",X"65",X"45",X"57",X"00",X"FF", + X"00",X"00",X"00",X"00",X"09",X"A5",X"51",X"15",X"70",X"FF",X"00",X"00",X"00",X"00",X"87",X"65", + X"11",X"19",X"70",X"FF",X"00",X"00",X"00",X"00",X"9A",X"65",X"51",X"1A",X"3A",X"FF",X"00",X"00", + X"00",X"00",X"87",X"75",X"45",X"62",X"2C",X"FF",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22", + X"2C",X"FF",X"00",X"00",X"00",X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"80",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"96",X"70",X"00",X"00",X"FF", + X"00",X"00",X"00",X"09",X"97",X"63",X"D9",X"00",X"00",X"FF",X"87",X"96",X"95",X"97",X"6E",X"54", + X"33",X"99",X"00",X"FF",X"00",X"00",X"00",X"8A",X"54",X"2C",X"03",X"30",X"00",X"FF",X"00",X"00", + X"00",X"08",X"54",X"50",X"00",X"E3",X"00",X"FF",X"00",X"00",X"00",X"00",X"76",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"07",X"76",X"65",X"50",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"60",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"58", + X"50",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"08",X"65",X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"09",X"A5", + X"51",X"15",X"70",X"FF",X"00",X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"19",X"70",X"FF",X"00", + X"00",X"00",X"00",X"00",X"9A",X"65",X"51",X"1A",X"3A",X"FF",X"00",X"00",X"00",X"00",X"00",X"87", + X"75",X"45",X"62",X"2C",X"FF",X"00",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF", + X"00",X"00",X"00",X"00",X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00",X"79", + X"79",X"00",X"80",X"00",X"00",X"FF",X"00",X"00",X"00",X"08",X"5A",X"5A",X"79",X"77",X"00",X"00", + X"FF",X"08",X"79",X"69",X"69",X"5E",X"4E",X"44",X"54",X"00",X"00",X"FF",X"00",X"00",X"00",X"64", + X"26",X"24",X"3C",X"40",X"00",X"00",X"FF",X"00",X"00",X"09",X"44",X"87",X"60",X"53",X"90",X"00", + X"00",X"FF",X"00",X"00",X"05",X"59",X"00",X"00",X"03",X"90",X"00",X"00",X"FF",X"00",X"00",X"90", + X"00",X"00",X"00",X"0C",X"C0",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"60",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"58",X"50",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"08", + X"65",X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"09",X"A5",X"51",X"15",X"70",X"FF", + X"00",X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"19",X"70",X"FF",X"00",X"00",X"00",X"00",X"00", + X"9A",X"65",X"51",X"1A",X"3A",X"FF",X"00",X"00",X"00",X"00",X"00",X"87",X"75",X"45",X"62",X"2C", + X"FF",X"00",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF",X"00",X"00",X"00",X"00", + X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"07",X"97",X"90",X"08",X"60",X"00", + X"00",X"FF",X"00",X"00",X"00",X"86",X"A4",X"A7",X"97",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"95",X"22",X"54",X"44",X"00",X"00",X"00",X"FF",X"08",X"70",X"09",X"86",X"42",X"73",X"C2",X"00", + X"00",X"00",X"FF",X"00",X"09",X"50",X"08",X"59",X"03",X"90",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"07",X"44",X"43",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"90",X"39",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"06",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"75", + X"00",X"70",X"00",X"FF",X"00",X"00",X"00",X"68",X"57",X"80",X"00",X"FF",X"00",X"00",X"07",X"65", + X"54",X"70",X"00",X"FF",X"00",X"00",X"76",X"11",X"55",X"67",X"00",X"FF",X"00",X"0A",X"71",X"19", + X"14",X"51",X"00",X"FF",X"00",X"07",X"76",X"1A",X"14",X"61",X"00",X"FF",X"00",X"09",X"A6",X"55", + X"CC",X"AC",X"00",X"FF",X"00",X"08",X"77",X"C2",X"22",X"22",X"C0",X"FF",X"00",X"00",X"AE",X"C2", + X"22",X"22",X"C0",X"FF",X"00",X"00",X"09",X"7C",X"C9",X"9C",X"00",X"FF",X"00",X"00",X"79",X"79", + X"80",X"00",X"00",X"FF",X"00",X"0A",X"6A",X"66",X"79",X"00",X"00",X"FF",X"00",X"09",X"52",X"26", + X"64",X"60",X"00",X"FF",X"80",X"98",X"64",X"23",X"64",X"56",X"00",X"FF",X"79",X"50",X"85",X"93", + X"30",X"56",X"00",X"FF",X"00",X"00",X"74",X"24",X"00",X"07",X"70",X"FF",X"00",X"00",X"00",X"09", + X"00",X"00",X"88",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"07",X"00",X"00",X"07",X"00",X"FF",X"00",X"07",X"60",X"00",X"67",X"00",X"FF", + X"00",X"07",X"54",X"45",X"57",X"00",X"FF",X"00",X"06",X"15",X"45",X"16",X"00",X"FF",X"00",X"61", + X"91",X"59",X"11",X"60",X"FF",X"00",X"66",X"A1",X"6A",X"15",X"60",X"FF",X"0E",X"65",X"22",X"92", + X"24",X"5E",X"FF",X"06",X"52",X"22",X"22",X"22",X"66",X"FF",X"00",X"E5",X"22",X"B2",X"26",X"E0", + X"FF",X"00",X"00",X"00",X"80",X"00",X"00",X"FF",X"00",X"00",X"06",X"55",X"60",X"00",X"FF",X"00", + X"00",X"65",X"44",X"55",X"00",X"FF",X"00",X"00",X"DA",X"22",X"4A",X"60",X"FF",X"00",X"00",X"36", + X"42",X"46",X"77",X"FF",X"00",X"02",X"2A",X"44",X"4A",X"08",X"FF",X"08",X"00",X"96",X"65",X"60", + X"00",X"FF",X"00",X"96",X"06",X"08",X"00",X"00",X"FF",X"00",X"00",X"65",X"45",X"86",X"00",X"FF", + X"00",X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"07",X"50",X"07",X"00",X"FF",X"00",X"00", + X"06",X"85",X"78",X"00",X"FF",X"00",X"00",X"76",X"55",X"47",X"00",X"FF",X"00",X"07",X"61",X"15", + X"56",X"70",X"FF",X"00",X"77",X"11",X"19",X"45",X"10",X"FF",X"00",X"77",X"51",X"1A",X"46",X"10", + X"FF",X"00",X"9A",X"65",X"5C",X"CA",X"C0",X"FF",X"00",X"87",X"7C",X"C2",X"22",X"2C",X"FF",X"00", + X"0A",X"EC",X"22",X"22",X"2C",X"FF",X"00",X"00",X"77",X"CC",X"99",X"C0",X"FF",X"00",X"00",X"00", + X"80",X"00",X"00",X"FF",X"00",X"00",X"09",X"A6",X"00",X"00",X"FF",X"00",X"00",X"86",X"64",X"40", + X"00",X"FF",X"00",X"00",X"9A",X"3E",X"20",X"00",X"FF",X"00",X"09",X"68",X"D5",X"40",X"00",X"FF", + X"00",X"08",X"A3",X"DE",X"50",X"00",X"FF",X"00",X"50",X"86",X"76",X"00",X"00",X"FF",X"09",X"78", + X"07",X"60",X"00",X"00",X"FF",X"00",X"00",X"77",X"66",X"55",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"70",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"87",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"65",X"57", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"A5",X"DD",X"45",X"60",X"00",X"FF",X"00",X"00", + X"00",X"00",X"05",X"5D",X"DB",X"54",X"56",X"77",X"FF",X"00",X"00",X"00",X"00",X"0A",X"25",X"B9", + X"65",X"45",X"70",X"FF",X"00",X"00",X"00",X"00",X"06",X"22",X"25",X"9B",X"D6",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"22",X"92",X"BD",X"D6",X"00",X"FF",X"00",X"00",X"04",X"00",X"00",X"0B", + X"22",X"5D",X"5A",X"00",X"FF",X"00",X"00",X"04",X"43",X"75",X"68",X"22",X"25",X"60",X"00",X"FF", + X"00",X"00",X"00",X"9A",X"54",X"25",X"06",X"26",X"A0",X"00",X"FF",X"87",X"00",X"95",X"95",X"44", + X"25",X"00",X"00",X"00",X"00",X"FF",X"00",X"96",X"00",X"A6",X"54",X"56",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"06",X"57",X"65",X"A3",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"87",X"08", + X"79",X"94",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"07",X"50",X"04",X"40",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"80",X"00",X"00",X"00",X"6A", + X"70",X"00",X"00",X"FF",X"09",X"00",X"40",X"00",X"0E",X"55",X"66",X"00",X"00",X"FF",X"06",X"00", + X"44",X"00",X"05",X"25",X"6D",X"67",X"77",X"FF",X"07",X"90",X"04",X"60",X"02",X"22",X"BD",X"B5", + X"60",X"FF",X"06",X"67",X"6A",X"56",X"02",X"22",X"99",X"54",X"00",X"FF",X"08",X"04",X"42",X"45", + X"8B",X"29",X"65",X"44",X"00",X"FF",X"05",X"54",X"22",X"45",X"02",X"22",X"99",X"55",X"00",X"FF", + X"07",X"04",X"44",X"56",X"02",X"22",X"BD",X"B5",X"60",X"FF",X"07",X"07",X"6A",X"50",X"06",X"24", + X"5D",X"67",X"77",X"FF",X"00",X"00",X"76",X"00",X"0E",X"65",X"66",X"00",X"00",X"FF",X"00",X"08", + X"70",X"00",X"00",X"69",X"70",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"05",X"60",X"00",X"FF",X"05",X"44",X"45",X"60",X"FF",X"54",X"21",X"24",X"56",X"FF",X"54", + X"21",X"24",X"56",X"FF",X"65",X"52",X"45",X"66",X"FF",X"06",X"62",X"46",X"60",X"FF",X"00",X"04", + X"60",X"00",X"FF",X"00",X"05",X"60",X"00",X"FF",X"04",X"44",X"50",X"FF",X"42",X"12",X"45",X"FF", + X"42",X"12",X"45",X"FF",X"65",X"24",X"56",X"FF",X"00",X"24",X"00",X"FF",X"00",X"11",X"10",X"FF", + X"01",X"11",X"11",X"FF",X"00",X"01",X"00",X"FF",X"00",X"07",X"00",X"00",X"07",X"00",X"FF",X"00", + X"07",X"60",X"00",X"67",X"00",X"FF",X"00",X"07",X"54",X"45",X"57",X"00",X"FF",X"00",X"06",X"15", + X"45",X"16",X"00",X"FF",X"00",X"61",X"91",X"59",X"11",X"60",X"FF",X"00",X"66",X"A1",X"6A",X"15", + X"60",X"FF",X"0E",X"65",X"22",X"92",X"24",X"5E",X"FF",X"06",X"52",X"22",X"22",X"22",X"66",X"FF", + X"00",X"E5",X"22",X"B2",X"26",X"E0",X"FF",X"00",X"22",X"50",X"00",X"00",X"00",X"FF",X"00",X"44", + X"50",X"00",X"00",X"00",X"FF",X"00",X"07",X"87",X"77",X"87",X"00",X"FF",X"00",X"07",X"69",X"A9", + X"67",X"00",X"FF",X"00",X"87",X"54",X"45",X"57",X"80",X"FF",X"00",X"86",X"15",X"45",X"16",X"80", + X"FF",X"00",X"61",X"19",X"51",X"91",X"60",X"FF",X"00",X"66",X"1A",X"61",X"A5",X"60",X"FF",X"0E", + X"65",X"22",X"92",X"24",X"5E",X"FF",X"06",X"52",X"22",X"22",X"22",X"66",X"FF",X"00",X"E5",X"22", + X"B2",X"26",X"E0",X"FF",X"00",X"22",X"50",X"00",X"06",X"60",X"FF",X"00",X"44",X"50",X"00",X"05", + X"60",X"FF",X"00",X"00",X"00",X"00",X"05",X"50",X"FF",X"00",X"00",X"00",X"00",X"02",X"50",X"FF", + X"00",X"00",X"00",X"00",X"02",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"08",X"58",X"50",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00",X"FF",X"00", + X"00",X"00",X"00",X"08",X"65",X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"00",X"09",X"A5",X"51", + X"19",X"70",X"FF",X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"1E",X"70",X"FF",X"00",X"00",X"00", + X"00",X"9A",X"65",X"51",X"11",X"3A",X"FF",X"00",X"00",X"00",X"00",X"87",X"75",X"45",X"62",X"2C", + X"FF",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF",X"00",X"00",X"00",X"00",X"08", + X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"08",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"9A",X"52", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"9A",X"54",X"63",X"90",X"00",X"FF",X"00",X"00",X"00", + X"09",X"7A",X"E3",X"37",X"29",X"00",X"FF",X"00",X"00",X"69",X"58",X"A3",X"36",X"50",X"64",X"00", + X"FF",X"08",X"79",X"00",X"00",X"84",X"56",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"07",X"43", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"95",X"33",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"09",X"66",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"60",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"08",X"58",X"50",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00", + X"FF",X"00",X"00",X"00",X"00",X"08",X"65",X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"00",X"09", + X"A5",X"51",X"19",X"70",X"FF",X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"1A",X"70",X"FF",X"00", + X"00",X"00",X"00",X"9A",X"65",X"51",X"11",X"3A",X"FF",X"00",X"00",X"00",X"00",X"87",X"75",X"45", + X"62",X"2C",X"FF",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF",X"00",X"00",X"00", + X"00",X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00", + X"FF",X"00",X"00",X"00",X"69",X"6A",X"79",X"77",X"00",X"00",X"FF",X"00",X"00",X"69",X"69",X"4E", + X"44",X"54",X"00",X"00",X"FF",X"00",X"09",X"00",X"8A",X"23",X"35",X"49",X"00",X"00",X"FF",X"09", + X"80",X"09",X"33",X"46",X"50",X"C4",X"90",X"00",X"FF",X"00",X"00",X"03",X"39",X"80",X"00",X"0C", + X"40",X"00",X"FF",X"00",X"00",X"95",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"60", + X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"58",X"50",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"86",X"46",X"60",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"08",X"65", + X"45",X"57",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"09",X"A5",X"51",X"11",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"87",X"65",X"11",X"1A",X"70",X"FF",X"00",X"00",X"00",X"00",X"00",X"9A", + X"65",X"51",X"19",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"87",X"75",X"45",X"52",X"2A",X"FF", + X"00",X"00",X"00",X"00",X"00",X"9A",X"E5",X"45",X"22",X"2C",X"FF",X"08",X"70",X"00",X"00",X"79", + X"08",X"77",X"66",X"39",X"90",X"FF",X"00",X"09",X"00",X"08",X"59",X"79",X"00",X"80",X"00",X"00", + X"FF",X"00",X"00",X"69",X"6A",X"A7",X"5A",X"79",X"77",X"00",X"00",X"FF",X"00",X"00",X"00",X"08", + X"24",X"A7",X"44",X"54",X"00",X"00",X"FF",X"00",X"00",X"88",X"44",X"55",X"24",X"3C",X"40",X"00", + X"00",X"FF",X"00",X"00",X"84",X"86",X"88",X"65",X"53",X"90",X"00",X"00",X"FF",X"00",X"96",X"68", + X"00",X"00",X"00",X"73",X"90",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"C9", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"06",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"06",X"06",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"85",X"85",X"00",X"00",X"FF",X"00",X"00", + X"00",X"08",X"64",X"66",X"00",X"00",X"FF",X"00",X"00",X"00",X"86",X"54",X"55",X"70",X"00",X"FF", + X"00",X"00",X"00",X"9A",X"55",X"11",X"57",X"00",X"FF",X"00",X"00",X"08",X"76",X"51",X"11",X"97", + X"00",X"FF",X"00",X"00",X"09",X"A6",X"55",X"11",X"A3",X"A0",X"FF",X"00",X"00",X"08",X"77",X"54", + X"56",X"22",X"C0",X"FF",X"00",X"00",X"09",X"AE",X"54",X"52",X"22",X"C0",X"FF",X"00",X"00",X"00", + X"87",X"76",X"63",X"99",X"00",X"FF",X"00",X"00",X"00",X"00",X"08",X"00",X"00",X"08",X"FF",X"00", + X"00",X"00",X"00",X"9A",X"68",X"88",X"82",X"FF",X"00",X"00",X"00",X"08",X"66",X"42",X"22",X"20", + X"FF",X"00",X"00",X"00",X"09",X"AE",X"54",X"00",X"00",X"FF",X"87",X"00",X"00",X"96",X"64",X"54", + X"00",X"00",X"FF",X"00",X"90",X"05",X"8A",X"E5",X"55",X"00",X"00",X"FF",X"00",X"06",X"90",X"08", + X"67",X"60",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"76",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"07",X"76",X"65",X"50",X"00",X"FF",X"00",X"07",X"00",X"00",X"07",X"00",X"FF",X"00",X"07", + X"60",X"00",X"67",X"00",X"FF",X"00",X"07",X"54",X"45",X"57",X"00",X"FF",X"00",X"06",X"15",X"45", + X"16",X"00",X"FF",X"00",X"61",X"91",X"59",X"11",X"60",X"FF",X"00",X"66",X"A1",X"6A",X"15",X"60", + X"FF",X"0E",X"65",X"22",X"92",X"24",X"5E",X"FF",X"06",X"52",X"22",X"22",X"22",X"66",X"FF",X"00", + X"E5",X"22",X"B2",X"26",X"E0",X"FF",X"00",X"77",X"00",X"00",X"07",X"70",X"FF",X"00",X"55",X"00", + X"00",X"05",X"50",X"FF",X"00",X"22",X"00",X"00",X"02",X"20",X"FF",X"00",X"02",X"00",X"00",X"02", + X"00",X"FF",X"00",X"00",X"22",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"02",X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"23",X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"02", + X"3E",X"EE",X"E2",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"07",X"CC", + X"CC",X"CB",X"00",X"00",X"66",X"66",X"66",X"00",X"00",X"00",X"00",X"00",X"FF",X"73",X"3E",X"EE", + X"E3",X"00",X"7C",X"54",X"DD",X"DD",X"45",X"00",X"00",X"00",X"00",X"FF",X"CC",X"CC",X"CC",X"CA", + X"67",X"55",X"CC",X"44",X"44",X"5C",X"77",X"00",X"00",X"00",X"FF",X"CC",X"CC",X"CC",X"C6",X"45", + X"63",X"3C",X"CC",X"BB",X"C5",X"66",X"70",X"00",X"00",X"FF",X"73",X"EE",X"E7",X"65",X"63",X"32", + X"22",X"2E",X"EE",X"EE",X"E3",X"67",X"00",X"00",X"FF",X"73",X"EE",X"E7",X"66",X"33",X"22",X"22", + X"22",X"22",X"22",X"2E",X"36",X"00",X"00",X"FF",X"07",X"EE",X"33",X"63",X"22",X"11",X"12",X"22", + X"22",X"11",X"22",X"E3",X"60",X"00",X"FF",X"07",X"3E",X"33",X"EE",X"22",X"55",X"66",X"66",X"33", + X"E1",X"12",X"23",X"48",X"80",X"FF",X"00",X"76",X"33",X"EE",X"E5",X"6E",X"33",X"33",X"3E",X"A1", + X"12",X"23",X"49",X"E0",X"FF",X"00",X"66",X"73",X"33",X"56",X"E3",X"33",X"33",X"EA",X"71",X"12", + X"E3",X"50",X"00",X"FF",X"00",X"05",X"67",X"64",X"43",X"63",X"33",X"3E",X"A7",X"22",X"22",X"E6", + X"50",X"00",X"FF",X"00",X"00",X"56",X"5D",X"43",X"66",X"3E",X"AA",X"73",X"22",X"EE",X"65",X"00", + X"00",X"FF",X"00",X"00",X"05",X"44",X"D4",X"77",X"77",X"77",X"63",X"3E",X"E6",X"50",X"00",X"00", + X"FF",X"00",X"00",X"00",X"D4",X"44",X"45",X"57",X"75",X"66",X"66",X"75",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"D4",X"44",X"45",X"55",X"54",X"44",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"0D",X"DD",X"DD",X"DD",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"07",X"7E",X"E0",X"00",X"FF",X"00",X"00",X"00",X"00",X"83",X"88",X"00", + X"0D",X"70",X"00",X"FF",X"00",X"00",X"00",X"08",X"88",X"88",X"80",X"00",X"E0",X"00",X"FF",X"00", + X"00",X"EE",X"ED",X"69",X"50",X"00",X"EE",X"EE",X"00",X"FF",X"00",X"88",X"88",X"EE",X"D6",X"50", + X"0E",X"88",X"88",X"E0",X"FF",X"08",X"88",X"88",X"2E",X"77",X"7E",X"E8",X"88",X"88",X"8E",X"FF", + X"08",X"86",X"4C",X"CE",X"66",X"80",X"08",X"84",X"68",X"8E",X"FF",X"08",X"86",X"68",X"8D",X"DD", + X"D0",X"08",X"86",X"68",X"80",X"FF",X"00",X"88",X"88",X"00",X"00",X"00",X"00",X"88",X"31",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"7E",X"E0",X"00",X"FF",X"00",X"00",X"00",X"00", + X"83",X"88",X"00",X"0D",X"70",X"00",X"FF",X"00",X"00",X"00",X"08",X"88",X"88",X"80",X"00",X"E0", + X"00",X"FF",X"00",X"00",X"EE",X"ED",X"69",X"50",X"00",X"EE",X"EE",X"00",X"FF",X"00",X"88",X"88", + X"EE",X"D6",X"50",X"0E",X"88",X"88",X"E0",X"FF",X"08",X"88",X"88",X"DE",X"77",X"7E",X"E8",X"88", + X"88",X"8E",X"FF",X"08",X"86",X"4C",X"CE",X"66",X"80",X"08",X"84",X"68",X"8E",X"FF",X"08",X"86", + X"68",X"8D",X"DD",X"D0",X"08",X"D6",X"68",X"80",X"FF",X"00",X"88",X"88",X"00",X"00",X"00",X"00", + X"D8",X"88",X"00",X"FF",X"03",X"00",X"22",X"30",X"00",X"FF",X"00",X"31",X"22",X"23",X"80",X"FF", + X"03",X"19",X"22",X"AA",X"3A",X"FF",X"03",X"22",X"88",X"AB",X"3B",X"FF",X"03",X"38",X"88",X"BD", + X"3D",X"FF",X"03",X"33",X"88",X"BD",X"3D",X"FF",X"08",X"33",X"77",X"24",X"45",X"FF",X"00",X"83", + X"E7",X"44",X"44",X"FF",X"00",X"08",X"82",X"66",X"60",X"FF",X"00",X"00",X"08",X"00",X"00",X"FF", + X"00",X"03",X"12",X"30",X"00",X"FF",X"02",X"32",X"19",X"13",X"33",X"FF",X"21",X"22",X"11",X"11", + X"20",X"FF",X"21",X"32",X"22",X"33",X"00",X"FF",X"83",X"33",X"38",X"00",X"00",X"FF",X"08",X"88", + X"80",X"00",X"00",X"FF",X"00",X"60",X"00",X"00",X"00",X"FF",X"06",X"66",X"60",X"00",X"00",X"FF", + X"00",X"80",X"22",X"30",X"00",X"FF",X"00",X"81",X"22",X"23",X"80",X"FF",X"02",X"92",X"2A",X"A3", + X"AA",X"FF",X"03",X"28",X"8A",X"B8",X"AB",X"FF",X"03",X"88",X"8B",X"D8",X"BD",X"FF",X"03",X"38", + X"8B",X"D8",X"BD",X"FF",X"08",X"17",X"74",X"44",X"57",X"FF",X"00",X"3E",X"E4",X"44",X"4E",X"FF", + X"00",X"08",X"82",X"66",X"60",X"FF",X"00",X"00",X"08",X"00",X"00",X"FF",X"00",X"82",X"11",X"30", + X"00",X"FF",X"03",X"32",X"11",X"91",X"33",X"FF",X"31",X"22",X"21",X"22",X"20",X"FF",X"22",X"32", + X"22",X"33",X"00",X"FF",X"03",X"53",X"38",X"00",X"00",X"FF",X"00",X"58",X"80",X"00",X"00",X"FF", + X"05",X"55",X"00",X"00",X"00",X"FF",X"00",X"00",X"22",X"30",X"00",X"FF",X"00",X"22",X"11",X"12", + X"30",X"FF",X"03",X"29",X"92",X"99",X"23",X"FF",X"03",X"8A",X"A8",X"AA",X"83",X"FF",X"08",X"8A", + X"D8",X"DA",X"88",X"FF",X"0D",X"8A",X"D8",X"DA",X"8D",X"FF",X"07",X"72",X"44",X"42",X"77",X"FF", + X"07",X"E4",X"44",X"55",X"7E",X"FF",X"00",X"23",X"55",X"63",X"20",X"FF",X"00",X"00",X"08",X"80", + X"00",X"FF",X"00",X"03",X"33",X"30",X"00",X"FF",X"01",X"12",X"11",X"92",X"33",X"FF",X"31",X"22", + X"21",X"11",X"20",X"FF",X"83",X"32",X"22",X"33",X"00",X"FF",X"08",X"86",X"38",X"00",X"00",X"FF", + X"00",X"55",X"56",X"00",X"00",X"FF",X"00",X"00",X"22",X"30",X"08",X"FF",X"00",X"22",X"11",X"12", + X"30",X"FF",X"03",X"29",X"92",X"99",X"23",X"FF",X"03",X"8A",X"A8",X"AA",X"83",X"FF",X"08",X"8A", + X"D8",X"DA",X"88",X"FF",X"0D",X"8A",X"D8",X"DA",X"8D",X"FF",X"07",X"72",X"44",X"42",X"77",X"FF", + X"07",X"E4",X"48",X"55",X"7E",X"FF",X"00",X"23",X"55",X"63",X"80",X"FF",X"00",X"00",X"08",X"80", + X"00",X"FF",X"00",X"00",X"33",X"30",X"00",X"FF",X"02",X"12",X"21",X"93",X"33",X"FF",X"21",X"22", + X"11",X"11",X"20",X"FF",X"32",X"22",X"22",X"33",X"00",X"FF",X"08",X"23",X"23",X"00",X"00",X"FF", + X"00",X"88",X"60",X"00",X"00",X"FF",X"00",X"06",X"66",X"00",X"00",X"FF",X"00",X"00",X"FF",X"00", + X"00",X"88",X"44",X"55",X"24",X"3C",X"40",X"00",X"00",X"FF",X"00",X"00",X"84",X"86",X"88",X"65", + X"53",X"90",X"00",X"00",X"FF",X"00",X"96",X"68",X"00",X"00",X"00",X"73",X"90",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"C9",X"00",X"00",X"FF",X"00",X"00",X"00",X"09",X"09", + X"00",X"90",X"FF",X"00",X"00",X"09",X"03",X"34",X"44",X"00",X"FF",X"00",X"09",X"03",X"34",X"67", + X"55",X"C0",X"FF",X"00",X"00",X"34",X"46",X"66",X"5C",X"E0",X"FF",X"00",X"00",X"45",X"32",X"34", + X"44",X"E4",X"FF",X"08",X"03",X"57",X"61",X"22",X"24",X"43",X"FF",X"00",X"35",X"24",X"65",X"12", + X"62",X"30",X"FF",X"00",X"01",X"18",X"9A",X"11",X"9E",X"00",X"FF",X"00",X"00",X"08",X"9A",X"E0", + X"88",X"E0",X"FF",X"00",X"00",X"00",X"09",X"09",X"00",X"90",X"FF",X"00",X"00",X"09",X"03",X"34", + X"44",X"00",X"FF",X"00",X"09",X"03",X"34",X"67",X"55",X"C0",X"FF",X"00",X"00",X"34",X"23",X"66", + X"5C",X"E0",X"FF",X"00",X"00",X"47",X"55",X"34",X"44",X"E4",X"FF",X"00",X"02",X"56",X"65",X"22", + X"24",X"43",X"FF",X"08",X"04",X"38",X"9A",X"12",X"62",X"30",X"FF",X"00",X"22",X"18",X"9A",X"19", + X"AE",X"00",X"FF",X"00",X"00",X"EE",X"E0",X"08",X"90",X"00",X"FF",X"00",X"00",X"00",X"09",X"09", + X"00",X"90",X"FF",X"00",X"00",X"09",X"03",X"34",X"44",X"00",X"FF",X"00",X"09",X"03",X"45",X"67", + X"55",X"E0",X"FF",X"00",X"00",X"34",X"55",X"66",X"5C",X"E0",X"FF",X"00",X"00",X"46",X"63",X"34", + X"44",X"C4",X"FF",X"00",X"03",X"36",X"75",X"22",X"24",X"43",X"FF",X"09",X"05",X"24",X"44",X"19", + X"A2",X"30",X"FF",X"00",X"33",X"18",X"9A",X"19",X"A1",X"10",X"FF",X"00",X"00",X"E8",X"9A",X"00", + X"01",X"10",X"FF",X"00",X"00",X"00",X"08",X"09",X"09",X"00",X"FF",X"00",X"00",X"08",X"03",X"44", + X"44",X"00",X"FF",X"00",X"00",X"83",X"67",X"54",X"EC",X"4E",X"FF",X"00",X"00",X"35",X"76",X"54", + X"EC",X"4E",X"FF",X"00",X"00",X"45",X"63",X"33",X"CC",X"4C",X"FF",X"00",X"02",X"55",X"37",X"52", + X"44",X"43",X"FF",X"08",X"03",X"14",X"3A",X"A1",X"23",X"30",X"FF",X"00",X"12",X"18",X"8A",X"A1", + X"11",X"10",X"FF",X"00",X"00",X"E8",X"8E",X"E0",X"01",X"10",X"FF",X"00",X"00",X"08",X"09",X"09", + X"00",X"FF",X"00",X"00",X"03",X"44",X"56",X"43",X"FF",X"00",X"08",X"45",X"5E",X"C5",X"EC",X"FF", + X"00",X"84",X"54",X"6E",X"C4",X"EC",X"FF",X"00",X"34",X"54",X"5C",X"C4",X"CC",X"FF",X"00",X"46", + X"43",X"55",X"66",X"54",X"FF",X"81",X"33",X"64",X"23",X"44",X"30",X"FF",X"01",X"88",X"A9",X"11", + X"11",X"10",X"FF",X"00",X"01",X"A9",X"11",X"08",X"80",X"FF",X"00",X"00",X"80",X"90",X"00",X"FF", + X"00",X"03",X"44",X"44",X"30",X"FF",X"00",X"35",X"CC",X"5C",X"C3",X"FF",X"05",X"46",X"EC",X"5E", + X"C4",X"FF",X"06",X"46",X"EC",X"5E",X"C4",X"FF",X"04",X"35",X"56",X"65",X"53",X"FF",X"83",X"33", + X"45",X"54",X"3E",X"FF",X"11",X"A9",X"22",X"22",X"89",X"FF",X"01",X"A9",X"11",X"E8",X"9A",X"FF", + X"00",X"00",X"00",X"00",X"31",X"80",X"FF",X"00",X"00",X"00",X"03",X"30",X"00",X"FF",X"00",X"00", + X"0A",X"A3",X"53",X"90",X"FF",X"00",X"00",X"E9",X"45",X"54",X"00",X"FF",X"00",X"00",X"88",X"65", + X"54",X"39",X"FF",X"0A",X"98",X"11",X"12",X"66",X"30",X"FF",X"00",X"12",X"66",X"65",X"66",X"30", + X"FF",X"03",X"22",X"32",X"55",X"67",X"49",X"FF",X"04",X"EC",X"46",X"24",X"55",X"40",X"FF",X"00", + X"EC",X"44",X"44",X"44",X"00",X"FF",X"00",X"CC",X"44",X"44",X"30",X"90",X"FF",X"00",X"02",X"23", + X"20",X"00",X"00",X"FF",X"00",X"00",X"90",X"09",X"00",X"00",X"FF",X"00",X"00",X"09",X"00",X"90", + X"00",X"00",X"FF",X"08",X"09",X"03",X"33",X"44",X"09",X"00",X"FF",X"01",X"03",X"44",X"66",X"75", + X"40",X"00",X"FF",X"03",X"35",X"55",X"66",X"65",X"43",X"00",X"FF",X"00",X"33",X"55",X"25",X"54", + X"44",X"09",X"FF",X"00",X"0A",X"46",X"16",X"52",X"44",X"20",X"FF",X"00",X"0A",X"98",X"16",X"26", + X"44",X"30",X"FF",X"00",X"00",X"E8",X"16",X"34",X"44",X"29",X"FF",X"00",X"00",X"00",X"82",X"2C", + X"CC",X"20",X"FF",X"00",X"00",X"00",X"91",X"2E",X"EC",X"00",X"FF",X"00",X"00",X"00",X"A0",X"34", + X"00",X"00",X"FF",X"80",X"00",X"00",X"00",X"FF",X"02",X"40",X"00",X"00",X"FF",X"01",X"53",X"00", + X"00",X"FF",X"E1",X"25",X"39",X"00",X"FF",X"E1",X"25",X"50",X"00",X"FF",X"88",X"47",X"54",X"90", + X"FF",X"99",X"66",X"44",X"00",X"FF",X"AA",X"54",X"46",X"39",X"FF",X"0E",X"12",X"56",X"30",X"FF", + X"EE",X"22",X"67",X"49",X"FF",X"89",X"65",X"55",X"30",X"FF",X"89",X"25",X"54",X"30",X"FF",X"00", + X"34",X"CC",X"39",X"FF",X"00",X"14",X"EE",X"C0",X"FF",X"00",X"01",X"50",X"00",X"FF",X"00",X"80", + X"00",X"00",X"FF",X"02",X"00",X"00",X"00",X"FF",X"02",X"53",X"00",X"00",X"FF",X"13",X"35",X"39", + X"00",X"FF",X"E1",X"25",X"50",X"00",X"FF",X"18",X"87",X"64",X"90",X"FF",X"09",X"96",X"74",X"00", + X"FF",X"0A",X"A4",X"46",X"39",X"FF",X"0E",X"12",X"56",X"30",X"FF",X"89",X"22",X"67",X"49",X"FF", + X"8A",X"65",X"55",X"30",X"FF",X"08",X"25",X"54",X"30",X"FF",X"08",X"34",X"CC",X"39",X"FF",X"00", + X"24",X"EE",X"C0",X"FF",X"00",X"02",X"50",X"00",X"FF",X"00",X"80",X"00",X"00",X"FF",X"02",X"00", + X"00",X"00",X"FF",X"02",X"43",X"00",X"00",X"FF",X"03",X"65",X"30",X"00",X"FF",X"02",X"25",X"59", + X"00",X"FF",X"02",X"26",X"64",X"00",X"FF",X"88",X"47",X"64",X"90",X"FF",X"99",X"57",X"46",X"30", + X"FF",X"AA",X"42",X"56",X"39",X"FF",X"02",X"96",X"64",X"40",X"FF",X"02",X"A6",X"63",X"39",X"FF", + X"18",X"33",X"34",X"30",X"FF",X"11",X"34",X"CC",X"39",X"FF",X"00",X"24",X"EE",X"40",X"FF",X"00", + X"02",X"50",X"00",X"FF",X"00",X"00",X"00",X"90",X"90",X"80",X"FF",X"00",X"00",X"90",X"33",X"43", + X"30",X"FF",X"00",X"90",X"33",X"46",X"75",X"53",X"FF",X"00",X"03",X"44",X"33",X"66",X"43",X"FF", + X"00",X"35",X"56",X"63",X"55",X"43",X"FF",X"80",X"56",X"76",X"62",X"22",X"30",X"FF",X"03",X"32", + X"66",X"51",X"26",X"20",X"FF",X"00",X"11",X"89",X"A1",X"19",X"E0",X"FF",X"0E",X"E0",X"89",X"AE", + X"08",X"8E",X"FF",X"00",X"00",X"09",X"23",X"09",X"FF",X"00",X"02",X"22",X"25",X"20",X"FF",X"00", + X"24",X"94",X"45",X"52",X"FF",X"02",X"46",X"66",X"54",X"63",X"FF",X"02",X"46",X"77",X"64",X"63", + X"FF",X"02",X"56",X"97",X"64",X"23",X"FF",X"02",X"35",X"66",X"54",X"11",X"FF",X"00",X"11",X"28", + X"9A",X"19",X"FF",X"00",X"89",X"08",X"9A",X"00",X"FF",X"00",X"22",X"22",X"00",X"FF",X"02",X"49", + X"54",X"20",X"FF",X"02",X"46",X"75",X"20",X"FF",X"24",X"59",X"55",X"42",X"FF",X"25",X"22",X"22", + X"42",X"FF",X"22",X"49",X"44",X"22",X"FF",X"24",X"66",X"65",X"42",X"FF",X"34",X"69",X"76",X"52", + X"FF",X"35",X"67",X"76",X"52",X"FF",X"24",X"56",X"65",X"42",X"FF",X"E3",X"49",X"43",X"2E",X"FF", + X"89",X"A0",X"08",X"9A",X"FF",X"00",X"00",X"22",X"00",X"00",X"FF",X"00",X"0C",X"55",X"C0",X"88", + X"FF",X"08",X"2E",X"94",X"E2",X"A9",X"FF",X"09",X"24",X"67",X"52",X"62",X"FF",X"03",X"45",X"95", + X"54",X"30",X"FF",X"03",X"52",X"44",X"44",X"30",X"FF",X"00",X"33",X"94",X"42",X"30",X"FF",X"08", + X"36",X"66",X"53",X"00",X"FF",X"09",X"36",X"97",X"63",X"00",X"FF",X"00",X"36",X"77",X"63",X"00", + X"FF",X"00",X"03",X"96",X"40",X"00",X"FF",X"00",X"03",X"56",X"30",X"00",X"FF",X"00",X"00",X"35", + X"00",X"00",X"FF",X"00",X"00",X"02",X"00",X"00",X"FF",X"00",X"00",X"00",X"80",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"43",X"00",X"FF",X"00",X"00",X"00",X"90",X"CE",X"E3",X"00",X"FF",X"00", + X"00",X"00",X"02",X"CC",X"C5",X"21",X"FF",X"00",X"00",X"00",X"23",X"44",X"44",X"41",X"FF",X"00", + X"09",X"09",X"33",X"57",X"7A",X"3E",X"FF",X"00",X"00",X"35",X"66",X"55",X"69",X"20",X"FF",X"00", + X"03",X"55",X"67",X"72",X"33",X"20",X"FF",X"08",X"04",X"62",X"24",X"54",X"33",X"00",X"FF",X"00", + X"22",X"32",X"28",X"9A",X"20",X"00",X"FF",X"00",X"00",X"00",X"08",X"9A",X"00",X"00",X"FF",X"00", + X"80",X"00",X"00",X"00",X"FF",X"02",X"00",X"00",X"00",X"00",X"FF",X"02",X"43",X"09",X"00",X"00", + X"FF",X"03",X"65",X"30",X"00",X"00",X"FF",X"02",X"25",X"59",X"00",X"00",X"FF",X"02",X"26",X"63", + X"20",X"90",X"FF",X"88",X"47",X"63",X"32",X"00",X"FF",X"99",X"57",X"55",X"4C",X"C0",X"FF",X"AA", + X"42",X"57",X"4C",X"E0",X"FF",X"02",X"33",X"67",X"4C",X"E4",X"FF",X"00",X"33",X"9A",X"45",X"33", + X"FF",X"00",X"02",X"23",X"42",X"00",X"FF",X"00",X"00",X"0E",X"11",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"13",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"01",X"00",X"34",X"43",X"01",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"33",X"62",X"24",X"32",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"34",X"23",X"52",X"42",X"20",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"13",X"42",X"36",X"43",X"23",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"03",X"42",X"35",X"73",X"23",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"42",X"52",X"54",X"43",X"20",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"33",X"22",X"22",X"43",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"32",X"44",X"21",X"30",X"10",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"23",X"03",X"30",X"30",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"10",X"00",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"04",X"44",X"00",X"00",X"00",X"FF",X"00", + X"00",X"04",X"44",X"44",X"44",X"40",X"00",X"FF",X"00",X"00",X"44",X"88",X"88",X"88",X"44",X"00", + X"FF",X"00",X"04",X"48",X"88",X"88",X"88",X"84",X"40",X"FF",X"00",X"04",X"88",X"88",X"85",X"55", + X"84",X"45",X"FF",X"00",X"04",X"88",X"85",X"55",X"45",X"58",X"44",X"FF",X"08",X"04",X"48",X"85", + X"54",X"76",X"58",X"44",X"FF",X"40",X"04",X"48",X"85",X"45",X"63",X"58",X"44",X"FF",X"00",X"00", + X"44",X"88",X"74",X"47",X"55",X"45",X"FF",X"00",X"40",X"04",X"48",X"85",X"64",X"55",X"85",X"FF", + X"00",X"00",X"00",X"44",X"45",X"03",X"58",X"85",X"FF",X"05",X"40",X"00",X"00",X"00",X"35",X"48", + X"50",X"FF",X"00",X"54",X"00",X"00",X"47",X"44",X"48",X"00",X"FF",X"00",X"55",X"74",X"43",X"44", + X"48",X"80",X"04",X"FF",X"00",X"05",X"55",X"44",X"48",X"80",X"00",X"00",X"FF",X"00",X"00",X"05", + X"50",X"50",X"00",X"70",X"80",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"54",X"44",X"55",X"50",X"00",X"00",X"FF",X"00",X"04",X"44",X"44",X"48",X"85", + X"00",X"00",X"FF",X"00",X"44",X"48",X"88",X"55",X"88",X"80",X"00",X"FF",X"04",X"48",X"85",X"55", + X"55",X"54",X"48",X"00",X"FF",X"04",X"88",X"55",X"63",X"74",X"35",X"48",X"00",X"FF",X"04",X"88", + X"54",X"76",X"46",X"03",X"44",X"80",X"FF",X"44",X"88",X"55",X"45",X"45",X"50",X"7A",X"80",X"FF", + X"44",X"88",X"85",X"54",X"78",X"40",X"44",X"45",X"FF",X"44",X"88",X"85",X"55",X"88",X"40",X"03", + X"40",X"FF",X"04",X"88",X"88",X"88",X"84",X"40",X"04",X"45",X"FF",X"04",X"48",X"88",X"88",X"44", + X"00",X"04",X"55",X"FF",X"00",X"44",X"88",X"44",X"40",X"00",X"07",X"50",X"FF",X"00",X"04",X"44", + X"44",X"00",X"00",X"45",X"50",X"FF",X"00",X"00",X"00",X"00",X"00",X"04",X"55",X"00",X"FF",X"00", + X"00",X"00",X"04",X"00",X"05",X"00",X"00",X"FF",X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"40", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"04",X"44",X"44", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"04",X"44",X"44",X"44",X"44",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"44",X"44",X"88",X"88",X"84",X"44",X"00",X"00",X"FF",X"00",X"00",X"04", + X"44",X"88",X"88",X"88",X"84",X"45",X"48",X"00",X"FF",X"00",X"00",X"04",X"48",X"88",X"88",X"88", + X"88",X"44",X"50",X"80",X"FF",X"00",X"00",X"44",X"48",X"88",X"98",X"88",X"88",X"84",X"40",X"00", + X"FF",X"00",X"00",X"44",X"48",X"88",X"87",X"63",X"78",X"84",X"44",X"00",X"FF",X"00",X"00",X"54", + X"88",X"88",X"74",X"44",X"37",X"88",X"44",X"00",X"FF",X"00",X"00",X"54",X"88",X"87",X"54",X"34", + X"43",X"88",X"44",X"00",X"FF",X"00",X"00",X"04",X"88",X"87",X"55",X"33",X"47",X"88",X"84",X"00", + X"FF",X"00",X"08",X"04",X"88",X"89",X"33",X"39",X"43",X"88",X"84",X"00",X"FF",X"00",X"00",X"00", + X"48",X"88",X"73",X"38",X"57",X"48",X"45",X"00",X"FF",X"00",X"00",X"00",X"55",X"88",X"88",X"88", + X"78",X"88",X"85",X"00",X"FF",X"00",X"08",X"07",X"05",X"58",X"88",X"00",X"07",X"88",X"55",X"80", + X"FF",X"00",X"00",X"04",X"70",X"00",X"00",X"00",X"48",X"85",X"45",X"00",X"FF",X"00",X"00",X"00", + X"44",X"07",X"77",X"07",X"78",X"44",X"50",X"00",X"FF",X"00",X"00",X"40",X"00",X"44",X"44",X"66", + X"84",X"4A",X"40",X"00",X"FF",X"00",X"00",X"04",X"70",X"07",X"88",X"44",X"44",X"54",X"00",X"00", + X"FF",X"00",X"00",X"04",X"44",X"44",X"44",X"44",X"55",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"54",X"44",X"45",X"55",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"08",X"00",X"00",X"00", + X"FF",X"00",X"00",X"08",X"00",X"44",X"44",X"45",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"04", + X"54",X"44",X"48",X"84",X"85",X"45",X"40",X"00",X"FF",X"00",X"00",X"45",X"44",X"48",X"88",X"88", + X"88",X"54",X"A4",X"00",X"FF",X"00",X"00",X"44",X"48",X"88",X"88",X"84",X"88",X"84",X"45",X"00", + X"FF",X"00",X"04",X"44",X"88",X"87",X"37",X"37",X"87",X"88",X"44",X"50",X"FF",X"00",X"04",X"88", + X"88",X"73",X"44",X"45",X"70",X"47",X"84",X"50",X"FF",X"00",X"44",X"88",X"88",X"34",X"43",X"98", + X"80",X"07",X"64",X"45",X"FF",X"00",X"44",X"88",X"88",X"64",X"33",X"33",X"80",X"00",X"64",X"45", + X"FF",X"00",X"44",X"88",X"88",X"74",X"45",X"33",X"88",X"07",X"48",X"45",X"FF",X"00",X"44",X"88", + X"89",X"87",X"55",X"37",X"88",X"07",X"48",X"44",X"FF",X"00",X"44",X"48",X"88",X"88",X"77",X"98", + X"88",X"07",X"47",X"44",X"FF",X"00",X"04",X"48",X"88",X"88",X"88",X"88",X"85",X"00",X"40",X"44", + X"FF",X"00",X"04",X"44",X"88",X"88",X"88",X"88",X"55",X"04",X"00",X"44",X"FF",X"00",X"00",X"44", + X"44",X"48",X"88",X"84",X"50",X"74",X"07",X"45",X"FF",X"00",X"00",X"04",X"44",X"44",X"44",X"40", + X"07",X"40",X"04",X"40",X"FF",X"00",X"00",X"00",X"04",X"45",X"50",X"00",X"00",X"00",X"40",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"08",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"02",X"23",X"00",X"30",X"FF",X"02",X"21",X"12",X"33",X"00",X"FF",X"32",X"99",X"29", + X"93",X"30",X"FF",X"38",X"AA",X"8A",X"A8",X"30",X"FF",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"D8", + X"AD",X"8D",X"A8",X"D0",X"FF",X"77",X"24",X"44",X"27",X"70",X"FF",X"7E",X"44",X"85",X"47",X"E0", + X"FF",X"02",X"35",X"56",X"32",X"00",X"FF",X"00",X"00",X"30",X"00",X"00",X"FF",X"00",X"03",X"13", + X"00",X"00",X"FF",X"00",X"31",X"91",X"30",X"00",X"FF",X"02",X"23",X"A2",X"23",X"00",X"FF",X"02", + X"28",X"A8",X"23",X"00",X"FF",X"03",X"81",X"91",X"83",X"00",X"FF",X"00",X"32",X"33",X"30",X"00", + X"FF",X"04",X"56",X"06",X"00",X"00",X"FF",X"00",X"56",X"86",X"55",X"00",X"FF",X"06",X"00",X"00", + X"FF",X"00",X"05",X"56",X"65",X"56",X"00",X"FF",X"00",X"80",X"22",X"30",X"00",X"00",X"FF",X"00", + X"81",X"22",X"23",X"80",X"00",X"FF",X"02",X"92",X"2A",X"B3",X"AB",X"00",X"FF",X"03",X"28",X"8B", + X"D8",X"BD",X"00",X"FF",X"03",X"88",X"8B",X"D8",X"BD",X"00",X"FF",X"03",X"38",X"8A",X"A8",X"AA", + X"00",X"FF",X"08",X"17",X"74",X"44",X"57",X"00",X"FF",X"00",X"3E",X"E4",X"44",X"4E",X"00",X"FF", + X"00",X"08",X"82",X"66",X"60",X"00",X"0F",X"00",X"00",X"00",X"80",X"01",X"20",X"FF",X"00",X"00", + X"32",X"92",X"23",X"28",X"FF",X"08",X"08",X"32",X"23",X"31",X"80",X"0F",X"00",X"88",X"22",X"33", + X"98",X"80",X"0F",X"00",X"08",X"33",X"29",X"98",X"00",X"FF",X"00",X"00",X"88",X"99",X"30",X"00", + X"0F",X"00",X"00",X"06",X"0D",X"00",X"00",X"FF",X"00",X"05",X"56",X"D5",X"56",X"00",X"FF",X"08", + X"02",X"23",X"00",X"00",X"00",X"FF",X"08",X"12",X"22",X"38",X"00",X"00",X"FF",X"29",X"22",X"AB", + X"3A",X"B0",X"00",X"FF",X"32",X"88",X"BD",X"8B",X"D0",X"00",X"FF",X"38",X"88",X"BD",X"8B",X"D0", + X"00",X"FF",X"33",X"88",X"AA",X"8A",X"A0",X"00",X"FF",X"81",X"77",X"44",X"45",X"70",X"00",X"FF", + X"03",X"EE",X"44",X"44",X"E0",X"88",X"FF",X"00",X"88",X"26",X"66",X"D8",X"80",X"FF",X"00",X"00", + X"80",X"02",X"18",X"80",X"FF",X"00",X"32",X"11",X"21",X"28",X"00",X"FF",X"08",X"31",X"13",X"32", + X"80",X"00",X"FF",X"88",X"22",X"33",X"98",X"80",X"00",X"FF",X"08",X"33",X"29",X"98",X"00",X"00", + X"FF",X"00",X"88",X"99",X"36",X"60",X"00",X"FF",X"00",X"06",X"00",X"00",X"00",X"00",X"FF",X"05", + X"56",X"D0",X"00",X"00",X"00",X"FF",X"00",X"00",X"02",X"23",X"00",X"30",X"FF",X"00",X"02",X"21", + X"12",X"33",X"00",X"FF",X"00",X"32",X"99",X"29",X"93",X"30",X"FF",X"00",X"38",X"AA",X"8A",X"A8", + X"30",X"FF",X"00",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"00",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF", + X"00",X"77",X"24",X"44",X"27",X"70",X"FF",X"00",X"7E",X"44",X"45",X"47",X"E0",X"FF",X"00",X"02", + X"35",X"56",X"32",X"00",X"FF",X"00",X"00",X"00",X"30",X"00",X"00",X"FF",X"03",X"33",X"33",X"13", + X"33",X"33",X"FF",X"00",X"33",X"31",X"91",X"33",X"30",X"FF",X"00",X"03",X"19",X"A9",X"13",X"00", + X"FF",X"00",X"00",X"19",X"A9",X"10",X"00",X"FF",X"00",X"00",X"21",X"91",X"20",X"00",X"FF",X"00", + X"00",X"02",X"33",X"30",X"00",X"FF",X"00",X"00",X"06",X"00",X"60",X"00",X"FF",X"00",X"05",X"56", + X"00",X"56",X"D0",X"FF",X"00",X"00",X"02",X"23",X"00",X"30",X"FF",X"00",X"02",X"21",X"12",X"33", + X"00",X"FF",X"00",X"32",X"99",X"29",X"93",X"30",X"FF",X"00",X"38",X"AA",X"8A",X"A8",X"30",X"FF", + X"00",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"00",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF",X"00",X"77", + X"24",X"44",X"27",X"70",X"FF",X"00",X"7E",X"44",X"45",X"47",X"E0",X"FF",X"00",X"00",X"85",X"55", + X"22",X"38",X"FF",X"83",X"33",X"31",X"23",X"33",X"80",X"FF",X"08",X"33",X"19",X"92",X"38",X"00", + X"FF",X"00",X"81",X"9A",X"99",X"30",X"00",X"FF",X"00",X"01",X"9A",X"91",X"20",X"00",X"FF",X"00", + X"03",X"19",X"12",X"30",X"00",X"FF",X"00",X"00",X"33",X"33",X"00",X"00",X"FF",X"00",X"00",X"60", + X"06",X"00",X"00",X"FF",X"00",X"55",X"60",X"05",X"6D",X"00",X"FF",X"00",X"00",X"02",X"23",X"00", + X"30",X"FF",X"00",X"02",X"21",X"12",X"33",X"00",X"FF",X"00",X"32",X"99",X"29",X"93",X"30",X"FF", + X"00",X"38",X"AA",X"8A",X"A8",X"30",X"FF",X"00",X"88",X"AD",X"8D",X"A8",X"80",X"FF",X"00",X"D8", + X"AD",X"8D",X"A8",X"D0",X"FF",X"00",X"77",X"24",X"44",X"27",X"70",X"FF",X"00",X"7E",X"44",X"45", + X"47",X"E0",X"FF",X"00",X"02",X"35",X"56",X"32",X"00",X"FF",X"00",X"00",X"00",X"30",X"00",X"00", + X"FF",X"03",X"33",X"33",X"13",X"33",X"33",X"FF",X"00",X"33",X"31",X"91",X"33",X"30",X"FF",X"00", + X"03",X"19",X"A9",X"13",X"00",X"FF",X"00",X"00",X"19",X"A9",X"10",X"D0",X"FF",X"00",X"00",X"21", + X"91",X"20",X"60",X"FF",X"00",X"00",X"02",X"33",X"D6",X"50",X"FF",X"00",X"00",X"06",X"00",X"00", + X"60",X"FF",X"00",X"05",X"56",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"02",X"23",X"00",X"30",X"FF",X"00",X"02",X"21",X"12",X"33",X"00",X"FF",X"00",X"32", + X"22",X"22",X"23",X"30",X"FF",X"00",X"38",X"AA",X"8A",X"A8",X"30",X"FF",X"00",X"88",X"AB",X"8B", + X"A8",X"80",X"FF",X"00",X"D8",X"AD",X"8D",X"A8",X"D0",X"FF",X"00",X"77",X"24",X"44",X"27",X"70", + X"FF",X"00",X"7E",X"43",X"43",X"47",X"E0",X"FF",X"00",X"02",X"33",X"53",X"32",X"00",X"FF",X"00", + X"00",X"33",X"33",X"33",X"00",X"FF",X"00",X"03",X"33",X"13",X"33",X"30",X"FF",X"00",X"03",X"33", + X"91",X"33",X"30",X"FF",X"00",X"02",X"39",X"A9",X"12",X"00",X"FF",X"00",X"00",X"29",X"A9",X"10", + X"00",X"FF",X"00",X"00",X"22",X"22",X"20",X"00",X"FF",X"00",X"06",X"00",X"00",X"60",X"00",X"FF", + X"66",X"60",X"00",X"06",X"66",X"60",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"02",X"23",X"08",X"00",X"FF",X"02",X"21",X"12",X"38",X"00",X"FF",X"32", + X"22",X"22",X"23",X"30",X"FF",X"32",X"22",X"22",X"22",X"30",X"FF",X"32",X"22",X"32",X"23",X"30", + X"FF",X"D8",X"AA",X"8A",X"A8",X"D0",X"FF",X"78",X"CD",X"8D",X"C8",X"70",X"FF",X"77",X"24",X"44", + X"27",X"70",X"FF",X"08",X"64",X"44",X"68",X"00",X"FF",X"03",X"86",X"56",X"83",X"00",X"FF",X"33", + X"1A",X"A9",X"13",X"30",X"FF",X"33",X"19",X"A9",X"13",X"30",X"FF",X"03",X"21",X"91",X"23",X"00", + X"FF",X"00",X"32",X"33",X"30",X"00",X"FF",X"00",X"06",X"06",X"00",X"00",X"FF",X"04",X"56",X"86", + X"55",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"03",X"33",X"00",X"00",X"FF",X"00",X"03",X"21", + X"12",X"33",X"00",X"FF",X"80",X"32",X"19",X"91",X"23",X"30",X"8F",X"08",X"32",X"19",X"11",X"23", + X"38",X"8F",X"08",X"32",X"21",X"12",X"23",X"38",X"FF",X"08",X"33",X"22",X"22",X"23",X"38",X"FF", + X"08",X"83",X"32",X"22",X"33",X"80",X"FF",X"00",X"88",X"33",X"33",X"38",X"80",X"FF",X"00",X"08", + X"65",X"45",X"68",X"00",X"FF",X"00",X"03",X"26",X"56",X"23",X"00",X"FF",X"00",X"00",X"19",X"99", + X"10",X"00",X"FF",X"00",X"00",X"06",X"06",X"00",X"00",X"FF",X"00",X"04",X"56",X"86",X"55",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"05",X"55",X"05",X"55",X"00",X"00",X"FF",X"00",X"55",X"D5",X"34",X"D5",X"30",X"00",X"FF", + X"00",X"4D",X"DD",X"2D",X"DD",X"20",X"00",X"FF",X"04",X"48",X"81",X"21",X"88",X"22",X"00",X"FF", + X"05",X"55",X"55",X"45",X"55",X"32",X"00",X"FF",X"5E",X"E4",X"54",X"34",X"53",X"33",X"20",X"FF", + X"54",X"43",X"33",X"33",X"33",X"33",X"20",X"FF",X"44",X"2E",X"E2",X"22",X"EE",X"2A",X"32",X"FF", + X"42",X"E1",X"EE",X"7E",X"E1",X"E2",X"AA",X"FF",X"BB",X"77",X"17",X"77",X"17",X"7C",X"CB",X"FF", + X"77",X"77",X"77",X"77",X"77",X"77",X"CC",X"FF",X"77",X"77",X"77",X"77",X"77",X"77",X"7C",X"FF", + X"EE",X"EE",X"EE",X"EE",X"EE",X"EE",X"EC",X"FF",X"11",X"22",X"99",X"99",X"22",X"11",X"1C",X"FF", + X"00",X"05",X"55",X"05",X"55",X"00",X"00",X"FF",X"00",X"55",X"D5",X"34",X"D5",X"30",X"00",X"FF", + X"00",X"4D",X"DD",X"2D",X"DD",X"20",X"00",X"FF",X"04",X"48",X"81",X"21",X"88",X"22",X"00",X"FF", + X"00",X"05",X"55",X"05",X"55",X"00",X"00",X"FF",X"00",X"55",X"D5",X"34",X"D5",X"30",X"00",X"FF", + X"00",X"4D",X"DD",X"2D",X"DD",X"20",X"00",X"FF",X"04",X"48",X"81",X"21",X"88",X"22",X"00",X"FF", + X"05",X"55",X"55",X"45",X"55",X"32",X"00",X"FF",X"5E",X"E4",X"54",X"34",X"53",X"33",X"20",X"FF", + X"54",X"43",X"33",X"33",X"33",X"33",X"20",X"FF",X"44",X"2E",X"E2",X"22",X"EE",X"2A",X"32",X"FF", + X"00",X"05",X"55",X"05",X"55",X"00",X"00",X"FF",X"00",X"55",X"D5",X"34",X"D5",X"30",X"00",X"FF", + X"00",X"4D",X"DD",X"2D",X"DD",X"20",X"00",X"FF",X"04",X"48",X"81",X"21",X"88",X"22",X"00",X"FF", + X"05",X"55",X"55",X"45",X"55",X"32",X"00",X"FF",X"5E",X"E4",X"54",X"34",X"53",X"33",X"20",X"FF", + X"54",X"43",X"33",X"33",X"33",X"33",X"20",X"FF",X"44",X"2E",X"E2",X"22",X"EE",X"2A",X"32",X"FF", + X"42",X"E1",X"EE",X"7E",X"E1",X"E2",X"AA",X"FF",X"BB",X"77",X"17",X"77",X"17",X"7C",X"CB",X"FF", + X"77",X"77",X"77",X"77",X"77",X"77",X"CC",X"FF",X"77",X"77",X"77",X"77",X"77",X"77",X"7C",X"FF", + X"00",X"55",X"D5",X"34",X"D5",X"30",X"00",X"FF",X"00",X"4D",X"DD",X"2D",X"DD",X"20",X"00",X"FF", + X"04",X"48",X"81",X"21",X"88",X"22",X"00",X"FF",X"05",X"55",X"55",X"45",X"55",X"32",X"00",X"FF", + X"5E",X"E4",X"54",X"34",X"53",X"33",X"20",X"FF",X"54",X"43",X"33",X"33",X"33",X"33",X"20",X"FF", + X"44",X"2E",X"E2",X"22",X"EE",X"2A",X"32",X"FF",X"42",X"E1",X"EE",X"7E",X"E1",X"E2",X"AA",X"FF", + X"BB",X"77",X"17",X"77",X"17",X"7C",X"CB",X"FF",X"77",X"77",X"77",X"77",X"77",X"77",X"CC",X"FF", + X"77",X"77",X"77",X"77",X"77",X"77",X"7C",X"FF",X"EE",X"EE",X"EE",X"EE",X"EE",X"EE",X"EC",X"FF", + X"11",X"22",X"99",X"99",X"22",X"11",X"1C",X"FF",X"C7",X"77",X"EE",X"8E",X"77",X"77",X"7B",X"FF", + X"00",X"00",X"00",X"55",X"50",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"05",X"5D",X"53",X"4D", + X"53",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"D2",X"DD",X"D2",X"00",X"00",X"FF",X"00",X"00", + X"44",X"88",X"12",X"18",X"82",X"20",X"00",X"FF",X"00",X"00",X"55",X"55",X"54",X"55",X"53",X"20", + X"00",X"FF",X"00",X"05",X"EE",X"45",X"43",X"45",X"33",X"32",X"00",X"FF",X"00",X"05",X"44",X"33", + X"33",X"33",X"33",X"32",X"00",X"FF",X"00",X"54",X"42",X"EE",X"22",X"2E",X"E2",X"A3",X"20",X"FF", + X"00",X"44",X"2E",X"1E",X"E7",X"EE",X"1E",X"2A",X"A0",X"FF",X"0A",X"3B",X"B7",X"71",X"77",X"71", + X"77",X"CC",X"BA",X"FF",X"03",X"B7",X"77",X"77",X"77",X"77",X"77",X"7C",X"CB",X"FF",X"0B",X"C7", + X"77",X"77",X"77",X"77",X"77",X"77",X"CB",X"FF",X"0B",X"CE",X"EE",X"EE",X"EE",X"EE",X"EE",X"EE", + X"CB",X"FF",X"0B",X"C1",X"12",X"29",X"99",X"92",X"21",X"11",X"CB",X"FF",X"0B",X"BC",X"77",X"7E", + X"E8",X"E7",X"77",X"77",X"BA",X"FF",X"02",X"BB",X"E7",X"77",X"AA",X"A7",X"77",X"EB",X"A0",X"FF", + X"0D",X"44",X"BB",X"BC",X"77",X"7C",X"CB",X"AA",X"20",X"FF",X"02",X"22",X"AA",X"BB",X"EE",X"7B", + X"BA",X"A2",X"30",X"FF",X"00",X"03",X"43",X"3A",X"AA",X"AE",X"26",X"26",X"20",X"FF",X"00",X"00", + X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D",X"20", + X"00",X"FF",X"00",X"00",X"00",X"55",X"50",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"05",X"5D", + X"53",X"4D",X"53",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"D2",X"DD",X"D2",X"00",X"00",X"FF", + X"00",X"00",X"44",X"DD",X"D2",X"DD",X"D2",X"20",X"00",X"FF",X"00",X"00",X"55",X"67",X"64",X"57", + X"63",X"20",X"00",X"FF",X"00",X"05",X"6E",X"76",X"43",X"45",X"54",X"32",X"00",X"FF",X"00",X"05", + X"64",X"33",X"33",X"33",X"34",X"42",X"00",X"FF",X"00",X"54",X"42",X"EE",X"32",X"3E",X"E2",X"A3", + X"20",X"FF",X"00",X"44",X"2E",X"11",X"E7",X"E1",X"1E",X"2A",X"A0",X"FF",X"0A",X"3B",X"B7",X"7C", + X"77",X"7C",X"77",X"CC",X"BA",X"FF",X"03",X"B7",X"77",X"77",X"77",X"77",X"77",X"7C",X"CB",X"FF", + X"0B",X"C7",X"7E",X"EE",X"EE",X"EE",X"EE",X"77",X"CB",X"FF",X"0B",X"C1",X"DD",X"8D",X"88",X"D8", + X"8D",X"D1",X"CB",X"FF",X"0B",X"C1",X"12",X"99",X"99",X"99",X"21",X"11",X"CB",X"FF",X"0B",X"CC", + X"7E",X"EE",X"E8",X"E7",X"77",X"77",X"CA",X"FF",X"00",X"BC",X"CE",X"E7",X"AA",X"A7",X"77",X"CB", + X"A0",X"FF",X"02",X"2A",X"BC",X"C7",X"77",X"77",X"CC",X"AA",X"20",X"FF",X"0D",X"45",X"AA",X"BC", + X"EE",X"7C",X"BA",X"A2",X"30",X"FF",X"02",X"22",X"42",X"AA",X"AA",X"AA",X"22",X"44",X"40",X"FF", + X"0D",X"45",X"65",X"55",X"43",X"45",X"55",X"66",X"70",X"FF",X"00",X"22",X"E7",X"76",X"55",X"56", + X"67",X"7E",X"E0",X"FF",X"00",X"0E",X"EE",X"77",X"65",X"64",X"24",X"24",X"20",X"FF",X"00",X"00", + X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D",X"20", + X"00",X"FF",X"00",X"00",X"00",X"55",X"50",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"05",X"5D", + X"53",X"4D",X"53",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"D2",X"DD",X"D2",X"00",X"00",X"FF", + X"00",X"00",X"44",X"DD",X"D2",X"DD",X"D2",X"20",X"00",X"FF",X"00",X"00",X"55",X"67",X"64",X"57", + X"63",X"20",X"00",X"FF",X"00",X"05",X"6E",X"44",X"43",X"45",X"54",X"32",X"00",X"FF",X"00",X"05", + X"63",X"EE",X"23",X"2E",X"E3",X"42",X"00",X"FF",X"00",X"54",X"4E",X"11",X"E2",X"E1",X"1E",X"A3", + X"20",X"FF",X"00",X"4B",X"7E",X"E7",X"77",X"77",X"77",X"CB",X"A0",X"FF",X"0A",X"B7",X"E7",X"7C", + X"CC",X"77",X"77",X"7C",X"BA",X"FF",X"03",X"CE",X"7D",X"88",X"88",X"CC",X"CC",X"7C",X"CB",X"FF", + X"0B",X"C7",X"D8",X"88",X"D8",X"D8",X"8D",X"C7",X"CB",X"FF",X"0B",X"7D",X"D1",X"12",X"22",X"22", + X"11",X"DD",X"CB",X"FF",X"0B",X"C1",X"12",X"99",X"99",X"99",X"21",X"11",X"CB",X"FF",X"0B",X"CC", + X"ED",X"DD",X"DD",X"DD",X"DD",X"E7",X"CA",X"FF",X"07",X"B7",X"EE",X"EE",X"EE",X"EE",X"EE",X"CB", + X"A0",X"FF",X"02",X"2A",X"BE",X"77",X"AA",X"A7",X"CC",X"AA",X"20",X"FF",X"05",X"53",X"AA",X"C7", + X"77",X"77",X"CA",X"A2",X"40",X"FF",X"02",X"22",X"55",X"AA",X"EE",X"EA",X"34",X"45",X"50",X"FF", + X"04",X"76",X"66",X"55",X"43",X"45",X"55",X"66",X"70",X"FF",X"00",X"22",X"E7",X"76",X"55",X"56", + X"67",X"7E",X"E0",X"FF",X"00",X"0E",X"EE",X"77",X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00",X"01", + X"EE",X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"0E",X"EE",X"76",X"55",X"54",X"24",X"24", + X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"0D",X"20",X"00",X"FF",X"00",X"00",X"00",X"55",X"50",X"55",X"50",X"00",X"00",X"FF", + X"00",X"00",X"04",X"4D",X"43",X"4D",X"43",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"D2",X"DD", + X"D2",X"00",X"00",X"FF",X"00",X"00",X"44",X"88",X"12",X"88",X"12",X"20",X"00",X"FF",X"00",X"00", + X"45",X"55",X"54",X"55",X"53",X"20",X"00",X"FF",X"00",X"04",X"55",X"EE",X"43",X"4E",X"E5",X"32", + X"00",X"FF",X"00",X"05",X"5E",X"11",X"E3",X"E1",X"1E",X"42",X"00",X"FF",X"00",X"55",X"B7",X"77", + X"77",X"77",X"77",X"B3",X"20",X"FF",X"00",X"AC",X"77",X"7C",X"CC",X"C7",X"77",X"CB",X"A0",X"FF", + X"0B",X"C7",X"7C",X"C8",X"88",X"8C",X"C7",X"7C",X"BA",X"FF",X"0C",X"77",X"CD",X"88",X"88",X"88", + X"8D",X"C7",X"CB",X"FF",X"0B",X"EC",X"DE",X"11",X"11",X"11",X"1D",X"8C",X"CB",X"FF",X"0E",X"7D", + X"11",X"12",X"22",X"22",X"21",X"1D",X"CB",X"FF",X"07",X"71",X"12",X"99",X"99",X"99",X"22",X"11", + X"CB",X"FF",X"0C",X"77",X"ED",X"D8",X"88",X"D8",X"DD",X"E7",X"CA",X"FF",X"00",X"B7",X"EE",X"EE", + X"EE",X"EE",X"EE",X"CB",X"A0",X"FF",X"00",X"66",X"BE",X"77",X"AA",X"A7",X"CC",X"AA",X"20",X"FF", + X"00",X"22",X"AA",X"C7",X"77",X"77",X"CA",X"A2",X"40",X"FF",X"04",X"5E",X"55",X"AA",X"EE",X"EA", + X"34",X"45",X"50",X"FF",X"02",X"22",X"66",X"55",X"43",X"45",X"55",X"66",X"70",X"FF",X"05",X"55", + X"E7",X"76",X"55",X"56",X"67",X"7E",X"E0",X"FF",X"00",X"22",X"EE",X"77",X"65",X"66",X"7E",X"EE", + X"E0",X"FF",X"00",X"01",X"EE",X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"0E",X"EE",X"76", + X"55",X"54",X"24",X"24",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"0D",X"20",X"00",X"FF",X"00",X"00",X"00",X"55",X"50",X"55", + X"50",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"43",X"DD",X"43",X"00",X"00",X"FF",X"00",X"00", + X"04",X"DD",X"D2",X"88",X"14",X"00",X"00",X"FF",X"00",X"00",X"34",X"88",X"12",X"88",X"14",X"30", + X"00",X"FF",X"00",X"00",X"35",X"55",X"54",X"55",X"55",X"53",X"00",X"FF",X"00",X"03",X"5E",X"E3", + X"43",X"EE",X"46",X"65",X"00",X"FF",X"00",X"03",X"E1",X"1E",X"4E",X"11",X"E4",X"55",X"30",X"FF", + X"00",X"35",X"B7",X"77",X"77",X"77",X"7E",X"B4",X"40",X"FF",X"00",X"AC",X"7D",X"D8",X"88",X"87", + X"7E",X"77",X"43",X"FF",X"0B",X"C7",X"D8",X"8D",X"8D",X"88",X"8C",X"C7",X"7A",X"FF",X"0C",X"7D", + X"D8",X"11",X"11",X"1D",X"88",X"8C",X"7B",X"FF",X"0C",X"ED",X"D1",X"11",X"11",X"11",X"1D",X"88", + X"7B",X"FF",X"0C",X"7D",X"11",X"22",X"12",X"22",X"11",X"1D",X"7B",X"FF",X"0C",X"71",X"12",X"99", + X"22",X"99",X"21",X"11",X"CB",X"FF",X"0C",X"C7",X"29",X"99",X"99",X"99",X"9D",X"E7",X"7A",X"FF", + X"00",X"77",X"7E",X"D8",X"88",X"8D",X"DE",X"77",X"A0",X"FF",X"00",X"07",X"77",X"EE",X"EE",X"EE", + X"77",X"7A",X"20",X"FF",X"00",X"34",X"77",X"77",X"BA",X"B7",X"77",X"A2",X"40",X"FF",X"00",X"22", + X"24",X"7E",X"EE",X"77",X"74",X"45",X"50",X"FF",X"04",X"57",X"76",X"5E",X"EE",X"E5",X"55",X"66", + X"70",X"FF",X"02",X"22",X"27",X"76",X"55",X"56",X"67",X"7E",X"E0",X"FF",X"00",X"45",X"5E",X"77", + X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00",X"22",X"2E",X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF", + X"00",X"0E",X"EE",X"76",X"55",X"54",X"24",X"24",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D", + X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D",X"20",X"00",X"FF",X"00",X"00", + X"00",X"55",X"40",X"45",X"50",X"00",X"00",X"FF",X"00",X"00",X"04",X"4D",X"43",X"4D",X"43",X"00", + X"00",X"FF",X"00",X"00",X"34",X"DD",X"D2",X"DD",X"D2",X"00",X"00",X"FF",X"00",X"03",X"44",X"88", + X"12",X"88",X"12",X"00",X"00",X"FF",X"00",X"04",X"55",X"55",X"54",X"35",X"53",X"20",X"00",X"FF", + X"00",X"35",X"7E",X"77",X"55",X"35",X"54",X"32",X"00",X"FF",X"00",X"47",X"E6",X"55",X"5E",X"E2", + X"54",X"EE",X"00",X"FF",X"03",X"37",X"65",X"BB",X"71",X"17",X"BE",X"11",X"E0",X"FF",X"03",X"56", + X"5B",X"BE",X"E7",X"77",X"77",X"CB",X"A0",X"FF",X"03",X"55",X"BB",X"7E",X"E7",X"77",X"77",X"7C", + X"BA",X"FF",X"05",X"5B",X"B7",X"E7",X"77",X"D8",X"88",X"DD",X"D3",X"FF",X"04",X"5B",X"7E",X"77", + X"DD",X"21",X"11",X"11",X"D3",X"FF",X"05",X"BC",X"E7",X"CD",X"99",X"22",X"21",X"11",X"1D",X"FF", + X"03",X"BC",X"EE",X"D9",X"99",X"99",X"92",X"21",X"D3",X"FF",X"03",X"3C",X"77",X"ED",X"DD",X"DD", + X"DD",X"DD",X"DA",X"FF",X"00",X"3B",X"C7",X"7E",X"EE",X"EE",X"EE",X"77",X"A0",X"FF",X"00",X"2A", + X"BC",X"C7",X"7C",X"CA",X"AA",X"AA",X"30",X"FF",X"04",X"77",X"AA",X"BC",X"C7",X"77",X"7B",X"23", + X"00",X"FF",X"02",X"22",X"55",X"AB",X"BC",X"CE",X"EB",X"34",X"00",X"FF",X"47",X"77",X"66",X"55", + X"43",X"43",X"35",X"55",X"00",X"FF",X"22",X"22",X"E7",X"76",X"55",X"56",X"66",X"67",X"00",X"FF", + X"04",X"77",X"EE",X"77",X"65",X"66",X"67",X"7E",X"00",X"FF",X"02",X"22",X"EE",X"77",X"65",X"66", + X"7E",X"E1",X"00",X"FF",X"00",X"EE",X"EE",X"76",X"55",X"E2",X"52",X"52",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"D2",X"42",X"D2",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"D2",X"00", + X"00",X"FF",X"00",X"00",X"00",X"04",X"57",X"40",X"45",X"50",X"00",X"00",X"FF",X"00",X"00",X"00", + X"45",X"77",X"76",X"47",X"73",X"00",X"00",X"FF",X"00",X"00",X"04",X"57",X"5D",X"D6",X"4D",X"D5", + X"00",X"00",X"FF",X"00",X"00",X"35",X"54",X"88",X"16",X"48",X"81",X"00",X"00",X"FF",X"00",X"03", + X"45",X"44",X"55",X"54",X"35",X"53",X"20",X"00",X"FF",X"00",X"05",X"55",X"7E",X"77",X"55",X"35", + X"54",X"32",X"00",X"FF",X"00",X"35",X"57",X"EE",X"75",X"5E",X"EE",X"E4",X"EE",X"00",X"FF",X"00", + X"56",X"67",X"77",X"53",X"35",X"11",X"E3",X"61",X"B0",X"FF",X"03",X"56",X"67",X"55",X"3C",X"C7", + X"77",X"77",X"CB",X"A0",X"FF",X"04",X"55",X"66",X"63",X"CE",X"EE",X"77",X"77",X"7C",X"BA",X"FF", + X"05",X"75",X"66",X"3C",X"EE",X"EE",X"77",X"77",X"EE",X"E3",X"FF",X"06",X"77",X"55",X"3E",X"EE", + X"88",X"E7",X"7E",X"88",X"B2",X"FF",X"06",X"75",X"54",X"C7",X"EE",X"88",X"E7",X"E2",X"11",X"14", + X"FF",X"05",X"54",X"54",X"CE",X"7E",X"EE",X"77",X"E9",X"91",X"D2",X"FF",X"05",X"54",X"43",X"3C", + X"E7",X"77",X"7C",X"77",X"EE",X"EA",X"FF",X"04",X"53",X"33",X"33",X"CC",X"CC",X"CE",X"EE",X"77", + X"A0",X"FF",X"65",X"E5",X"45",X"54",X"33",X"CC",X"EE",X"7C",X"00",X"00",X"FF",X"22",X"26",X"66", + X"55",X"43",X"22",X"EE",X"C0",X"00",X"00",X"FF",X"66",X"77",X"77",X"65",X"43",X"43",X"33",X"40", + X"00",X"00",X"FF",X"22",X"2E",X"E7",X"76",X"55",X"55",X"55",X"40",X"00",X"00",X"FF",X"44",X"EE", + X"EE",X"76",X"55",X"66",X"66",X"60",X"00",X"00",X"FF",X"22",X"E1",X"EE",X"76",X"55",X"77",X"7E", + X"E0",X"00",X"00",X"FF",X"0E",X"EE",X"EE",X"77",X"57",X"25",X"25",X"20",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"04",X"24",X"24",X"20",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D", + X"20",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"02",X"35",X"77",X"42",X"45",X"30",X"00",X"00", + X"FF",X"00",X"00",X"02",X"34",X"77",X"77",X"74",X"47",X"70",X"00",X"00",X"FF",X"00",X"00",X"23", + X"45",X"77",X"66",X"77",X"47",X"70",X"00",X"00",X"FF",X"00",X"02",X"43",X"55",X"76",X"44",X"11", + X"76",X"10",X"00",X"00",X"FF",X"00",X"04",X"43",X"56",X"66",X"66",X"77",X"15",X"12",X"20",X"00", + X"FF",X"00",X"34",X"54",X"56",X"65",X"54",X"46",X"77",X"54",X"32",X"00",X"FF",X"03",X"34",X"56", + X"55",X"55",X"77",X"6E",X"54",X"EE",X"4E",X"E0",X"FF",X"03",X"47",X"67",X"76",X"57",X"45",X"55", + X"4E",X"E1",X"E6",X"B0",X"FF",X"04",X"57",X"EE",X"75",X"54",X"5B",X"C7",X"77",X"77",X"5B",X"A0", + X"FF",X"04",X"36",X"EE",X"65",X"4A",X"B7",X"EE",X"EE",X"77",X"77",X"BA",X"FF",X"05",X"35",X"66", + X"55",X"AB",X"C7",X"E8",X"8E",X"E7",X"77",X"EE",X"FF",X"05",X"43",X"55",X"54",X"AC",X"77",X"E8", + X"8E",X"EE",X"7E",X"12",X"FF",X"06",X"54",X"35",X"54",X"AA",X"C7",X"EE",X"EE",X"8E",X"E1",X"91", + X"FF",X"45",X"E5",X"43",X"33",X"33",X"CC",X"77",X"7E",X"E7",X"7E",X"12",X"FF",X"22",X"22",X"44", + X"33",X"43",X"3C",X"CC",X"CC",X"7B",X"77",X"EE",X"FF",X"45",X"E6",X"65",X"44",X"33",X"33",X"3B", + X"BB",X"BB",X"BB",X"A0",X"FF",X"22",X"2E",X"E5",X"55",X"53",X"44",X"33",X"20",X"00",X"00",X"00", + X"FF",X"45",X"EE",X"E7",X"76",X"35",X"53",X"55",X"40",X"00",X"00",X"00",X"FF",X"22",X"EE",X"EE", + X"76",X"55",X"66",X"56",X"60",X"00",X"00",X"00",X"FF",X"0E",X"E1",X"EE",X"76",X"56",X"77",X"7E", + X"E0",X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EE",X"75",X"62",X"52",X"42",X"E0",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"02",X"42",X"42",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"D2",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"55",X"50",X"55",X"50", + X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"43",X"DD",X"43",X"00",X"00",X"FF",X"00",X"00",X"04", + X"81",X"82",X"81",X"84",X"00",X"00",X"FF",X"00",X"00",X"34",X"44",X"42",X"44",X"44",X"30",X"00", + X"FF",X"00",X"00",X"35",X"EE",X"54",X"5E",X"E5",X"53",X"00",X"FF",X"00",X"03",X"5E",X"11",X"E3", + X"E1",X"1E",X"65",X"00",X"FF",X"00",X"03",X"47",X"77",X"77",X"77",X"E4",X"55",X"30",X"FF",X"00", + X"34",X"78",X"88",X"88",X"77",X"7E",X"B4",X"40",X"FF",X"00",X"47",X"D8",X"D8",X"8D",X"88",X"7E", + X"77",X"43",X"FF",X"0B",X"C7",X"D8",X"11",X"11",X"18",X"8C",X"C7",X"7A",X"FF",X"0C",X"7D",X"D1", + X"11",X"11",X"11",X"18",X"DC",X"7B",X"FF",X"0C",X"ED",X"11",X"11",X"11",X"11",X"11",X"DD",X"7B", + X"FF",X"0C",X"7D",X"11",X"22",X"12",X"22",X"11",X"1D",X"7B",X"FF",X"0C",X"71",X"12",X"99",X"99", + X"99",X"21",X"11",X"CB",X"FF",X"03",X"C7",X"EE",X"EE",X"EE",X"EE",X"EE",X"E7",X"7A",X"FF",X"00", + X"37",X"77",X"7C",X"AA",X"BC",X"77",X"77",X"A0",X"FF",X"00",X"55",X"77",X"7E",X"EE",X"E7",X"77", + X"A2",X"40",X"FF",X"00",X"22",X"44",X"7E",X"EE",X"77",X"74",X"45",X"50",X"FF",X"03",X"66",X"E6", + X"54",X"44",X"45",X"55",X"66",X"70",X"FF",X"02",X"22",X"27",X"76",X"55",X"56",X"67",X"7E",X"E0", + X"FF",X"00",X"35",X"5E",X"77",X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00",X"22",X"2E",X"77",X"65", + X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"0E",X"EE",X"76",X"55",X"54",X"24",X"24",X"20",X"FF",X"00", + X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D", + X"20",X"00",X"FF",X"00",X"00",X"00",X"33",X"30",X"33",X"20",X"00",X"00",X"FF",X"00",X"00",X"0B", + X"CC",X"33",X"3C",X"CB",X"00",X"00",X"FF",X"00",X"00",X"2C",X"17",X"74",X"77",X"1C",X"20",X"00", + X"FF",X"00",X"00",X"27",X"7E",X"EE",X"EE",X"77",X"30",X"00",X"FF",X"00",X"02",X"77",X"EB",X"BB", + X"BB",X"E7",X"73",X"00",X"FF",X"00",X"02",X"7E",X"B8",X"D8",X"D8",X"BE",X"73",X"00",X"FF",X"00", + X"57",X"EB",X"D8",X"D8",X"D8",X"DB",X"E7",X"40",X"FF",X"00",X"77",X"EB",X"D1",X"11",X"11",X"DB", + X"E7",X"50",X"FF",X"07",X"8E",X"BD",X"11",X"22",X"21",X"1D",X"EE",X"E5",X"FF",X"07",X"EE",X"EE", + X"EE",X"EE",X"EE",X"EE",X"EE",X"87",X"FF",X"05",X"EE",X"E7",X"77",X"BA",X"B7",X"77",X"77",X"E7", + X"FF",X"0A",X"C7",X"77",X"77",X"77",X"77",X"77",X"77",X"7C",X"FF",X"0A",X"BC",X"77",X"CA",X"AA", + X"AA",X"AC",X"77",X"CB",X"FF",X"00",X"AB",X"7C",X"AB",X"BB",X"BA",X"AA",X"C7",X"C0",X"FF",X"00", + X"AA",X"BC",X"AB",X"BB",X"BB",X"AA",X"CC",X"C0",X"FF",X"00",X"0A",X"BA",X"AB",X"BB",X"BB",X"AA", + X"AC",X"20",X"FF",X"00",X"03",X"AA",X"BB",X"BB",X"BB",X"B4",X"AA",X"20",X"FF",X"00",X"03",X"A4", + X"4B",X"BB",X"B4",X"44",X"A2",X"40",X"FF",X"00",X"05",X"44",X"44",X"44",X"44",X"44",X"45",X"50", + X"FF",X"00",X"22",X"26",X"54",X"44",X"45",X"55",X"66",X"70",X"FF",X"05",X"55",X"57",X"76",X"55", + X"56",X"67",X"7E",X"E0",X"FF",X"02",X"22",X"2E",X"77",X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00", + X"45",X"5E",X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"22",X"2E",X"76",X"55",X"54",X"24", + X"24",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"0D",X"20",X"00",X"FF",X"00",X"00",X"03",X"3E",X"EE",X"32",X"00",X"00",X"FF", + X"00",X"00",X"BC",X"E1",X"11",X"EC",X"B0",X"00",X"FF",X"00",X"0E",X"E7",X"1D",X"DD",X"17",X"CC", + X"00",X"FF",X"00",X"E8",X"E7",X"77",X"77",X"77",X"EC",X"C0",X"FF",X"00",X"EE",X"77",X"EE",X"EE", + X"77",X"EE",X"E0",X"FF",X"00",X"77",X"77",X"CB",X"BA",X"C7",X"77",X"E0",X"FF",X"05",X"77",X"7C", + X"55",X"55",X"AC",X"77",X"7C",X"FF",X"07",X"77",X"7C",X"56",X"55",X"3C",X"C7",X"CC",X"FF",X"0C", + X"77",X"7C",X"56",X"55",X"AB",X"BC",X"CC",X"FF",X"0C",X"77",X"CC",X"56",X"55",X"AA",X"BB",X"CC", + X"FF",X"0C",X"CC",X"C5",X"66",X"55",X"AA",X"BB",X"BB",X"FF",X"0B",X"BB",X"B5",X"66",X"55",X"AA", + X"BB",X"BB",X"FF",X"0B",X"BB",X"55",X"66",X"55",X"5A",X"AB",X"BB",X"FF",X"03",X"BB",X"56",X"66", + X"55",X"5A",X"AB",X"BB",X"FF",X"02",X"A5",X"56",X"66",X"55",X"5A",X"3A",X"BB",X"FF",X"00",X"2A", + X"5C",X"66",X"55",X"4A",X"AA",X"BB",X"FF",X"00",X"23",X"AA",X"C6",X"54",X"AA",X"AA",X"AB",X"FF", + X"00",X"2A",X"AA",X"A6",X"4A",X"AA",X"AA",X"A3",X"FF",X"04",X"64",X"43",X"AA",X"AA",X"44",X"44", + X"5A",X"FF",X"02",X"26",X"65",X"33",X"44",X"55",X"56",X"67",X"FF",X"35",X"5E",X"77",X"63",X"35", + X"66",X"77",X"EE",X"FF",X"22",X"2E",X"E7",X"76",X"56",X"67",X"EE",X"EE",X"FF",X"04",X"5E",X"E7", + X"76",X"56",X"7E",X"EE",X"1E",X"FF",X"02",X"2E",X"E7",X"65",X"55",X"42",X"42",X"42",X"FF",X"00", + X"00",X"00",X"00",X"00",X"D2",X"42",X"D2",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"D2",X"00", + X"FF",X"00",X"00",X"00",X"05",X"65",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"56",X"66",X"50", + X"00",X"00",X"FF",X"00",X"00",X"66",X"66",X"66",X"66",X"60",X"00",X"FF",X"00",X"06",X"EE",X"66", + X"76",X"6E",X"86",X"00",X"FF",X"00",X"6E",X"8E",X"7E",X"E7",X"7E",X"8E",X"60",X"FF",X"00",X"6E", + X"EE",X"CE",X"EE",X"7E",X"EE",X"60",X"FF",X"00",X"77",X"77",X"CC",X"CC",X"7C",X"77",X"60",X"FF", + X"00",X"76",X"7C",X"CB",X"54",X"CC",X"76",X"70",X"FF",X"0C",X"77",X"CC",X"C6",X"45",X"4C",X"C7", + X"7C",X"FF",X"0C",X"CC",X"CC",X"C6",X"45",X"4C",X"CC",X"CC",X"FF",X"0C",X"CC",X"CC",X"66",X"45", + X"4B",X"BC",X"CC",X"FF",X"0C",X"CC",X"CC",X"66",X"45",X"A4",X"BB",X"CC",X"FF",X"0C",X"CC",X"CC", + X"66",X"45",X"A4",X"BB",X"BB",X"FF",X"0B",X"BB",X"BC",X"66",X"45",X"A4",X"BB",X"B3",X"FF",X"03", + X"BB",X"C6",X"66",X"44",X"5A",X"43",X"32",X"FF",X"02",X"3B",X"66",X"66",X"44",X"5A",X"43",X"22", + X"FF",X"02",X"3C",X"66",X"66",X"45",X"55",X"34",X"21",X"FF",X"00",X"24",X"CC",X"66",X"44",X"55", + X"44",X"43",X"FF",X"00",X"14",X"44",X"C6",X"45",X"44",X"45",X"55",X"FF",X"00",X"26",X"55",X"4C", + X"44",X"44",X"56",X"66",X"FF",X"00",X"76",X"66",X"54",X"44",X"55",X"67",X"77",X"FF",X"04",X"EE", + X"75",X"64",X"45",X"56",X"77",X"EE",X"FF",X"42",X"EE",X"E7",X"65",X"55",X"67",X"EE",X"EE",X"FF", + X"24",X"1E",X"E7",X"76",X"56",X"7E",X"EE",X"1E",X"FF",X"32",X"5E",X"EE",X"76",X"57",X"EE",X"EE", + X"EE",X"FF",X"25",X"52",X"EE",X"75",X"57",X"42",X"42",X"42",X"FF",X"04",X"20",X"00",X"00",X"00", + X"D2",X"42",X"D2",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"D2",X"00",X"FF",X"00",X"00",X"00", + X"55",X"50",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"05",X"55",X"53",X"45",X"53",X"00",X"00", + X"FF",X"00",X"00",X"04",X"DD",X"52",X"58",X"82",X"00",X"00",X"FF",X"00",X"00",X"44",X"DD",X"D2", + X"88",X"82",X"20",X"00",X"FF",X"00",X"00",X"43",X"38",X"13",X"18",X"83",X"20",X"00",X"FF",X"00", + X"03",X"44",X"55",X"53",X"45",X"55",X"32",X"00",X"FF",X"00",X"35",X"54",X"32",X"25",X"52",X"23", + X"44",X"30",X"FF",X"03",X"65",X"56",X"EE",X"62",X"6E",X"E5",X"45",X"54",X"FF",X"06",X"76",X"EE", + X"11",X"E7",X"E1",X"1E",X"35",X"76",X"FF",X"05",X"6B",X"B7",X"31",X"77",X"71",X"37",X"CC",X"B5", + X"FF",X"04",X"BC",X"77",X"77",X"77",X"77",X"77",X"7C",X"CB",X"FF",X"0B",X"77",X"CE",X"EE",X"EE", + X"EE",X"EE",X"C7",X"76",X"FF",X"06",X"8E",X"6D",X"88",X"D8",X"88",X"D8",X"E6",X"8E",X"FF",X"06", + X"EE",X"61",X"11",X"22",X"21",X"11",X"D6",X"76",X"FF",X"0B",X"77",X"C8",X"D2",X"99",X"92",X"D8", + X"EC",X"BA",X"FF",X"00",X"BB",X"7E",X"E8",X"8D",X"88",X"EE",X"CB",X"A0",X"FF",X"00",X"2A",X"BB", + X"BE",X"EE",X"EE",X"CB",X"AA",X"20",X"FF",X"04",X"42",X"AA",X"BB",X"77",X"7B",X"BA",X"A2",X"30", + X"FF",X"02",X"22",X"22",X"AA",X"AA",X"AA",X"22",X"44",X"40",X"FF",X"00",X"46",X"65",X"55",X"43", + X"45",X"55",X"66",X"50",X"FF",X"00",X"22",X"26",X"66",X"55",X"56",X"67",X"76",X"60",X"FF",X"00", + X"0E",X"E7",X"76",X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00",X"01",X"EE",X"77",X"65",X"67",X"EE", + X"E1",X"E0",X"FF",X"00",X"0E",X"E7",X"76",X"55",X"54",X"24",X"24",X"20",X"FF",X"00",X"00",X"00", + X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D",X"20",X"00", + X"FF",X"00",X"00",X"00",X"55",X"50",X"55",X"50",X"00",X"00",X"FF",X"00",X"00",X"05",X"55",X"53", + X"45",X"53",X"00",X"00",X"FF",X"00",X"00",X"04",X"DD",X"52",X"5D",X"D2",X"00",X"00",X"FF",X"00", + X"00",X"44",X"DD",X"D2",X"DD",X"82",X"20",X"00",X"FF",X"00",X"00",X"43",X"38",X"13",X"18",X"83", + X"20",X"00",X"FF",X"00",X"03",X"44",X"55",X"53",X"45",X"55",X"32",X"00",X"FF",X"00",X"35",X"54", + X"32",X"25",X"52",X"23",X"44",X"30",X"FF",X"03",X"65",X"56",X"77",X"62",X"67",X"75",X"45",X"54", + X"FF",X"06",X"76",X"7E",X"11",X"E7",X"E1",X"17",X"35",X"76",X"FF",X"05",X"6B",X"B7",X"31",X"77", + X"71",X"37",X"BB",X"B5",X"FF",X"04",X"BC",X"77",X"77",X"77",X"77",X"77",X"77",X"CB",X"FF",X"0A", + X"C7",X"EE",X"77",X"77",X"77",X"7E",X"E7",X"7C",X"FF",X"0B",X"CE",X"88",X"75",X"D8",X"D5",X"78", + X"8E",X"7B",X"FF",X"0B",X"CE",X"8E",X"71",X"12",X"11",X"78",X"EE",X"7A",X"FF",X"0A",X"C7",X"EE", + X"71",X"29",X"21",X"7E",X"E7",X"CA",X"FF",X"00",X"BB",X"77",X"75",X"88",X"D5",X"77",X"CC",X"A0", + X"FF",X"00",X"2A",X"BB",X"B7",X"55",X"57",X"CB",X"AA",X"20",X"FF",X"05",X"76",X"AA",X"BB",X"77", + X"7B",X"BA",X"A2",X"30",X"FF",X"02",X"22",X"25",X"AA",X"AA",X"AA",X"22",X"44",X"40",X"FF",X"00", + X"76",X"65",X"55",X"43",X"45",X"55",X"66",X"50",X"FF",X"00",X"22",X"26",X"66",X"55",X"56",X"67", + X"76",X"60",X"FF",X"00",X"07",X"77",X"76",X"65",X"66",X"7E",X"EE",X"E0",X"FF",X"00",X"01",X"EE", + X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"0E",X"EE",X"76",X"55",X"54",X"24",X"24",X"20", + X"FF",X"00",X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00", + X"00",X"0D",X"20",X"00",X"FF",X"00",X"00",X"00",X"03",X"33",X"34",X"00",X"00",X"00",X"FF",X"00", + X"00",X"04",X"43",X"44",X"43",X"43",X"00",X"00",X"FF",X"00",X"00",X"45",X"55",X"34",X"36",X"54", + X"30",X"00",X"FF",X"00",X"00",X"45",X"DD",X"53",X"5D",X"84",X"30",X"00",X"FF",X"00",X"04",X"55", + X"DD",X"D3",X"D8",X"85",X"43",X"00",X"FF",X"00",X"04",X"57",X"58",X"13",X"18",X"57",X"74",X"00", + X"FF",X"00",X"44",X"47",X"55",X"53",X"55",X"67",X"44",X"30",X"FF",X"00",X"45",X"64",X"22",X"33", + X"32",X"24",X"44",X"30",X"FF",X"04",X"66",X"56",X"65",X"32",X"35",X"65",X"55",X"43",X"FF",X"04", + X"44",X"44",X"44",X"32",X"34",X"45",X"55",X"43",X"FF",X"03",X"4B",X"BB",X"EE",X"32",X"3E",X"E5", + X"55",X"33",X"FF",X"04",X"BC",X"CE",X"11",X"E2",X"E1",X"1E",X"AA",X"3A",X"FF",X"0B",X"C7",X"77", + X"A1",X"EB",X"E1",X"AE",X"BC",X"BA",X"FF",X"0B",X"7E",X"E7",X"77",X"77",X"77",X"77",X"EE",X"CB", + X"FF",X"03",X"E8",X"EE",X"E7",X"CC",X"77",X"7E",X"E8",X"EC",X"FF",X"0B",X"3E",X"8E",X"6C",X"77", + X"7C",X"7E",X"8E",X"EC",X"FF",X"00",X"3C",X"C6",X"57",X"E1",X"E7",X"C5",X"CC",X"C0",X"FF",X"04", + X"63",X"3C",X"CE",X"11",X"1E",X"CC",X"C3",X"30",X"FF",X"02",X"22",X"43",X"AC",X"E1",X"EC",X"33", + X"33",X"30",X"FF",X"00",X"44",X"65",X"55",X"43",X"43",X"33",X"33",X"30",X"FF",X"00",X"22",X"76", + X"66",X"55",X"56",X"67",X"76",X"60",X"FF",X"00",X"0E",X"E7",X"76",X"65",X"66",X"7E",X"EE",X"E0", + X"FF",X"00",X"01",X"EE",X"77",X"65",X"67",X"EE",X"E1",X"E0",X"FF",X"00",X"0E",X"E7",X"76",X"55", + X"54",X"24",X"24",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"0D",X"24",X"2D",X"20",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"0D",X"20",X"00",X"FF",X"00",X"00",X"00",X"35",X"32",X"34",X"30", + X"00",X"00",X"FF",X"00",X"00",X"03",X"55",X"53",X"44",X"43",X"00",X"00",X"FF",X"00",X"00",X"33", + X"44",X"33",X"34",X"43",X"30",X"00",X"FF",X"00",X"00",X"34",X"55",X"43",X"45",X"54",X"30",X"00", + X"FF",X"00",X"04",X"45",X"55",X"44",X"57",X"75",X"43",X"00",X"FF",X"00",X"03",X"56",X"66",X"52", + X"7E",X"77",X"43",X"00",X"FF",X"00",X"04",X"56",X"E7",X"63",X"55",X"46",X"44",X"00",X"FF",X"00", + X"34",X"66",X"DD",X"D4",X"58",X"86",X"54",X"30",X"FF",X"00",X"34",X"62",X"28",X"14",X"18",X"22", + X"74",X"40",X"FF",X"00",X"44",X"67",X"44",X"44",X"44",X"47",X"55",X"40",X"FF",X"00",X"46",X"66", + X"64",X"44",X"44",X"66",X"66",X"43",X"FF",X"00",X"36",X"63",X"33",X"23",X"23",X"33",X"66",X"43", + X"FF",X"00",X"44",X"44",X"44",X"32",X"34",X"46",X"66",X"44",X"FF",X"03",X"4A",X"AA",X"77",X"32", + X"37",X"7A",X"AA",X"AA",X"FF",X"04",X"BC",X"C7",X"E7",X"72",X"77",X"E7",X"BB",X"B3",X"FF",X"0B", + X"C7",X"77",X"11",X"7B",X"71",X"17",X"CC",X"B3",X"FF",X"0C",X"77",X"77",X"A2",X"77",X"72",X"A7", + X"77",X"77",X"FF",X"0C",X"77",X"77",X"E7",X"77",X"77",X"77",X"77",X"77",X"FF",X"0C",X"77",X"7E", + X"E7",X"CC",X"77",X"7E",X"77",X"77",X"FF",X"0B",X"C7",X"EE",X"EC",X"77",X"7C",X"CE",X"E7",X"70", + X"FF",X"00",X"43",X"CC",X"BE",X"EE",X"EE",X"CC",X"B3",X"30",X"FF",X"00",X"04",X"43",X"A1",X"EE", + X"E1",X"33",X"33",X"30",X"FF",X"00",X"0E",X"65",X"55",X"11",X"14",X"24",X"24",X"20",X"FF",X"00", + X"00",X"00",X"00",X"00",X"0D",X"26",X"2D",X"20",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"0D", + X"20",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"02",X"33",X"30",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"02",X"34",X"44",X"43",X"20",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"02",X"34",X"46",X"66",X"54",X"33",X"20",X"00",X"00",X"FF",X"00",X"00",X"00",X"23",X"46",X"66", + X"66",X"65",X"44",X"32",X"00",X"00",X"FF",X"00",X"00",X"02",X"34",X"66",X"88",X"76",X"55",X"55", + X"44",X"20",X"00",X"FF",X"00",X"00",X"23",X"45",X"68",X"87",X"65",X"55",X"55",X"54",X"42",X"00", + X"FF",X"00",X"00",X"24",X"55",X"77",X"76",X"55",X"55",X"55",X"55",X"43",X"00",X"FF",X"00",X"02", + X"34",X"56",X"66",X"55",X"55",X"55",X"54",X"44",X"43",X"20",X"FF",X"00",X"02",X"34",X"66",X"66", + X"55",X"55",X"54",X"44",X"44",X"44",X"30",X"FF",X"00",X"03",X"46",X"68",X"86",X"65",X"55",X"44", + X"44",X"44",X"44",X"30",X"FF",X"00",X"23",X"46",X"88",X"66",X"55",X"54",X"44",X"43",X"33",X"33", + X"32",X"FF",X"00",X"23",X"56",X"88",X"66",X"55",X"44",X"44",X"33",X"33",X"23",X"32",X"FF",X"00", + X"23",X"58",X"86",X"65",X"55",X"44",X"43",X"33",X"22",X"23",X"22",X"FF",X"00",X"23",X"58",X"87", + X"65",X"54",X"44",X"43",X"32",X"22",X"22",X"22",X"FF",X"00",X"23",X"58",X"87",X"65",X"54",X"44", + X"33",X"32",X"22",X"22",X"22",X"FF",X"00",X"23",X"58",X"87",X"65",X"54",X"44",X"33",X"32",X"22", + X"22",X"22",X"FF",X"00",X"23",X"56",X"87",X"65",X"54",X"44",X"33",X"32",X"22",X"24",X"22",X"FF", + X"00",X"03",X"55",X"87",X"65",X"54",X"44",X"43",X"33",X"22",X"24",X"20",X"FF",X"00",X"02",X"35", + X"67",X"66",X"55",X"44",X"43",X"33",X"32",X"42",X"20",X"FF",X"00",X"02",X"35",X"67",X"76",X"55", + X"44",X"44",X"43",X"33",X"43",X"10",X"FF",X"00",X"00",X"34",X"56",X"77",X"65",X"54",X"44",X"44", + X"44",X"32",X"00",X"FF",X"00",X"00",X"13",X"45",X"67",X"76",X"55",X"44",X"44",X"44",X"31",X"00", + X"FF",X"00",X"00",X"03",X"44",X"56",X"76",X"55",X"55",X"44",X"43",X"20",X"00",X"FF",X"00",X"00", + X"01",X"34",X"45",X"55",X"55",X"55",X"55",X"53",X"10",X"00",X"FF",X"00",X"00",X"00",X"13",X"44", + X"45",X"55",X"55",X"55",X"32",X"00",X"00",X"FF",X"00",X"00",X"00",X"01",X"33",X"44",X"44",X"44", + X"33",X"20",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"12",X"33",X"33",X"33",X"21",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"13",X"33",X"32",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"01",X"22",X"10",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"11",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"11", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"01",X"64",X"10",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"34",X"60", + X"00",X"00",X"54",X"30",X"00",X"00",X"00",X"FF",X"00",X"00",X"22",X"56",X"00",X"00",X"00",X"65", + X"44",X"32",X"00",X"00",X"FF",X"00",X"02",X"45",X"68",X"80",X"00",X"00",X"15",X"55",X"44",X"20", + X"00",X"FF",X"00",X"34",X"56",X"88",X"00",X"60",X"00",X"01",X"55",X"54",X"42",X"00",X"FF",X"02", + X"45",X"57",X"70",X"08",X"87",X"10",X"00",X"55",X"55",X"43",X"00",X"FF",X"03",X"45",X"66",X"00", + X"88",X"75",X"50",X"00",X"14",X"44",X"43",X"20",X"FF",X"23",X"46",X"66",X"01",X"07",X"55",X"50", + X"00",X"04",X"44",X"44",X"30",X"FF",X"34",X"06",X"80",X"06",X"65",X"51",X"00",X"00",X"01",X"44", + X"44",X"30",X"FF",X"34",X"68",X"06",X"66",X"65",X"11",X"00",X"00",X"00",X"13",X"03",X"32",X"FF", + X"30",X"00",X"66",X"88",X"61",X"10",X"50",X"00",X"00",X"01",X"20",X"32",X"FF",X"30",X"00",X"08", + X"86",X"65",X"55",X"00",X"00",X"00",X"00",X"10",X"22",X"FF",X"00",X"05",X"68",X"86",X"65",X"00", + X"04",X"00",X"00",X"00",X"01",X"22",X"FF",X"00",X"05",X"88",X"06",X"55",X"10",X"40",X"30",X"00", + X"00",X"00",X"12",X"FF",X"00",X"05",X"88",X"06",X"55",X"41",X"44",X"31",X"02",X"20",X"00",X"12", + X"FF",X"00",X"05",X"88",X"70",X"55",X"44",X"43",X"10",X"02",X"22",X"00",X"12",X"FF",X"00",X"00", + X"80",X"00",X"05",X"44",X"43",X"00",X"12",X"20",X"00",X"20",X"FF",X"00",X"00",X"68",X"06",X"00", + X"40",X"03",X"11",X"22",X"20",X"00",X"00",X"FF",X"00",X"00",X"08",X"06",X"00",X"00",X"04",X"33", + X"32",X"00",X"00",X"42",X"FF",X"00",X"00",X"06",X"70",X"65",X"54",X"44",X"33",X"30",X"00",X"00", + X"43",X"FF",X"20",X"00",X"00",X"70",X"06",X"64",X"44",X"44",X"00",X"00",X"04",X"32",X"FF",X"21", + X"60",X"00",X"67",X"06",X"65",X"00",X"00",X"00",X"00",X"44",X"31",X"FF",X"35",X"67",X"00",X"06", + X"00",X"05",X"11",X"10",X"00",X"04",X"43",X"20",X"FF",X"22",X"56",X"00",X"00",X"60",X"00",X"00", + X"00",X"00",X"00",X"53",X"10",X"FF",X"12",X"40",X"67",X"00",X"55",X"50",X"05",X"50",X"05",X"55", + X"32",X"00",X"FF",X"03",X"44",X"56",X"00",X"04",X"50",X"00",X"00",X"44",X"33",X"20",X"00",X"FF", + X"01",X"34",X"45",X"05",X"50",X"00",X"00",X"03",X"33",X"21",X"00",X"00",X"FF",X"00",X"13",X"44", + X"40",X"50",X"00",X"00",X"00",X"32",X"00",X"00",X"00",X"FF",X"00",X"01",X"33",X"40",X"00",X"00", + X"00",X"22",X"10",X"00",X"00",X"00",X"FF",X"00",X"00",X"12",X"33",X"00",X"00",X"00",X"01",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"13",X"30",X"90",X"00",X"01",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"01",X"20",X"09",X"00",X"00",X"10",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"09",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"90",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"90",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"09",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"08",X"AA",X"AA",X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"FF",X"00", + X"0A",X"AA",X"AA",X"AA",X"AA",X"AA",X"AA",X"AA",X"AA",X"00",X"FF",X"00",X"AA",X"A4",X"44",X"44", + X"44",X"44",X"44",X"4A",X"AA",X"A0",X"FF",X"0A",X"AE",X"43",X"33",X"32",X"22",X"22",X"22",X"23", + X"6A",X"A8",X"FF",X"0A",X"A4",X"33",X"22",X"11",X"11",X"11",X"11",X"12",X"36",X"AA",X"FF",X"8A", + X"94",X"32",X"22",X"22",X"22",X"22",X"22",X"11",X"26",X"AA",X"FF",X"AA",X"54",X"32",X"22",X"22", + X"22",X"22",X"22",X"22",X"26",X"AA",X"FF",X"AA",X"54",X"32",X"22",X"34",X"44",X"44",X"44",X"44", + X"6A",X"A8",X"FF",X"AA",X"54",X"32",X"22",X"45",X"55",X"55",X"55",X"54",X"AA",X"A0",X"FF",X"AA", + X"54",X"32",X"22",X"6A",X"AA",X"AA",X"AA",X"AA",X"AA",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00", + X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA", + X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00", + X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"AA",X"AA",X"80",X"00",X"00",X"00",X"FF",X"AA", + X"54",X"32",X"12",X"66",X"AA",X"AA",X"AA",X"A0",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"34", + X"44",X"44",X"6A",X"AA",X"00",X"00",X"FF",X"AA",X"54",X"32",X"21",X"22",X"22",X"22",X"36",X"AA", + X"80",X"00",X"FF",X"AA",X"54",X"32",X"22",X"11",X"11",X"11",X"13",X"6A",X"A0",X"00",X"FF",X"AA", + X"54",X"32",X"22",X"22",X"22",X"22",X"12",X"6A",X"A0",X"00",X"FF",X"AA",X"54",X"32",X"22",X"22", + X"22",X"22",X"22",X"6A",X"A0",X"00",X"FF",X"AA",X"54",X"32",X"22",X"23",X"33",X"33",X"46",X"AA", + X"80",X"00",X"FF",X"AA",X"54",X"32",X"22",X"35",X"55",X"55",X"4A",X"AA",X"00",X"00",X"FF",X"AA", + X"54",X"32",X"12",X"44",X"AA",X"AA",X"AA",X"A0",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"AA",X"AA",X"80",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00", + X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA", + X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00", + X"00",X"00",X"FF",X"AA",X"94",X"31",X"22",X"6A",X"A0",X"00",X"00",X"00",X"00",X"00",X"FF",X"8A", + X"E5",X"43",X"34",X"AA",X"80",X"00",X"00",X"00",X"00",X"00",X"FF",X"0A",X"AA",X"55",X"5A",X"AA", + X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"8A",X"AA",X"AA",X"80",X"00",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"08",X"AA",X"A8",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"08",X"AA", + X"AA",X"AA",X"A8",X"00",X"00",X"00",X"00",X"00",X"FF",X"0A",X"AE",X"44",X"44",X"AA",X"00",X"00", + X"00",X"00",X"00",X"FF",X"8A",X"94",X"32",X"23",X"6A",X"80",X"00",X"00",X"00",X"00",X"FF",X"AA", + X"54",X"21",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"31",X"12",X"6A",X"A0", + X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF", + X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00", + X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12", + X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00", + X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32", + X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00", + X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54", + X"32",X"12",X"6A",X"A0",X"00",X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A8",X"00", + X"00",X"00",X"00",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"AA",X"AA",X"A8",X"00",X"00",X"FF",X"AA", + X"54",X"32",X"21",X"26",X"AA",X"AA",X"AA",X"A0",X"00",X"FF",X"AA",X"54",X"32",X"21",X"22",X"64", + X"44",X"6A",X"AA",X"00",X"FF",X"AA",X"54",X"32",X"22",X"11",X"12",X"22",X"26",X"AA",X"80",X"FF", + X"AA",X"54",X"33",X"22",X"22",X"21",X"11",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"33",X"32",X"22", + X"22",X"22",X"21",X"6A",X"A0",X"FF",X"AA",X"E5",X"33",X"33",X"33",X"33",X"32",X"21",X"6A",X"A0", + X"FF",X"8A",X"A9",X"54",X"44",X"44",X"44",X"33",X"16",X"AA",X"80",X"FF",X"0A",X"AA",X"E5",X"55", + X"55",X"55",X"46",X"6A",X"AA",X"00",X"FF",X"08",X"AA",X"AA",X"AA",X"AA",X"AA",X"AA",X"AA",X"A0", + X"00",X"FF",X"00",X"08",X"AA",X"AA",X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"FF",X"00",X"08",X"AA", + X"A8",X"00",X"00",X"FF",X"08",X"AA",X"AA",X"AA",X"A8",X"00",X"FF",X"0A",X"A9",X"E4",X"46",X"AA", + X"00",X"FF",X"8A",X"5E",X"32",X"23",X"6A",X"80",X"FF",X"AA",X"54",X"31",X"12",X"6A",X"A0",X"FF", + X"AA",X"54",X"31",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54", + X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12", + X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0", + X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA", + X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32", + X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"12",X"6A", + X"A0",X"FF",X"AA",X"54",X"32",X"22",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"22",X"6A",X"A0",X"FF", + X"AA",X"54",X"32",X"22",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"22",X"6A",X"A0",X"FF",X"AA",X"54", + X"32",X"22",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"22",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"22", + X"6A",X"A0",X"FF",X"8A",X"A5",X"43",X"34",X"AA",X"80",X"FF",X"0A",X"AA",X"55",X"44",X"AA",X"00", + X"FF",X"08",X"AA",X"AA",X"AA",X"A8",X"00",X"FF",X"00",X"08",X"33",X"38",X"00",X"00",X"FF",X"00", + X"00",X"00",X"08",X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"0A",X"AA", + X"AA",X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"00",X"FF",X"00",X"00",X"AA",X"A6",X"44",X"44",X"44", + X"4A",X"AA",X"A0",X"00",X"00",X"FF",X"00",X"0A",X"AE",X"59",X"93",X"33",X"33",X"66",X"6A",X"A8", + X"00",X"00",X"FF",X"00",X"AA",X"E5",X"43",X"33",X"22",X"11",X"12",X"26",X"AA",X"00",X"00",X"FF", + X"00",X"AA",X"54",X"33",X"22",X"22",X"22",X"21",X"22",X"6A",X"A0",X"00",X"FF",X"0A",X"AE",X"54", + X"32",X"22",X"22",X"22",X"22",X"12",X"26",X"A8",X"00",X"FF",X"0A",X"A5",X"43",X"32",X"22",X"44", + X"44",X"32",X"21",X"26",X"AA",X"00",X"FF",X"8A",X"85",X"43",X"22",X"24",X"AA",X"A5",X"43",X"21", + X"22",X"6A",X"A0",X"FF",X"8A",X"95",X"33",X"22",X"4A",X"AA",X"AA",X"54",X"32",X"12",X"6A",X"A0", + X"FF",X"AA",X"54",X"32",X"22",X"6A",X"80",X"8A",X"59",X"44",X"44",X"6A",X"A0",X"FF",X"AA",X"54", + X"32",X"23",X"AA",X"00",X"0A",X"A5",X"55",X"55",X"AA",X"80",X"FF",X"A9",X"54",X"32",X"26",X"AA", + X"00",X"08",X"AA",X"AA",X"AA",X"A8",X"00",X"FF",X"A5",X"54",X"22",X"26",X"A8",X"00",X"00",X"8A", + X"AA",X"A8",X"00",X"00",X"FF",X"A5",X"54",X"22",X"26",X"A8",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"FF",X"A5",X"54",X"22",X"26",X"A8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"A5", + X"54",X"22",X"26",X"A8",X"00",X"00",X"0A",X"AA",X"AA",X"00",X"00",X"FF",X"A9",X"54",X"32",X"26", + X"AA",X"00",X"00",X"AA",X"AA",X"AA",X"A8",X"00",X"FF",X"AA",X"54",X"32",X"26",X"AA",X"00",X"0A", + X"A9",X"44",X"44",X"AA",X"80",X"FF",X"AA",X"54",X"32",X"24",X"AA",X"80",X"8A",X"54",X"33",X"33", + X"4A",X"A0",X"FF",X"8A",X"95",X"42",X"22",X"AA",X"AA",X"AA",X"54",X"32",X"12",X"6A",X"A0",X"FF", + X"8A",X"85",X"43",X"22",X"4A",X"AA",X"A5",X"43",X"21",X"22",X"6A",X"80",X"FF",X"0A",X"A5",X"43", + X"22",X"23",X"44",X"43",X"32",X"21",X"26",X"AA",X"00",X"FF",X"0A",X"AE",X"54",X"32",X"22",X"23", + X"32",X"22",X"12",X"6A",X"A8",X"00",X"FF",X"00",X"AA",X"54",X"33",X"22",X"22",X"22",X"22",X"23", + X"6A",X"A0",X"00",X"FF",X"00",X"AA",X"E5",X"44",X"33",X"22",X"22",X"22",X"36",X"AA",X"00",X"00", + X"FF",X"00",X"0A",X"AE",X"55",X"44",X"44",X"44",X"36",X"6A",X"A8",X"00",X"00",X"FF",X"00",X"00", + X"AA",X"AE",X"55",X"55",X"5A",X"6A",X"AA",X"A0",X"00",X"00",X"FF",X"00",X"00",X"08",X"AA",X"AA", + X"AA",X"AA",X"AA",X"A8",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"08",X"AA",X"AA",X"AA",X"A8", + X"00",X"00",X"00",X"00",X"FF",X"00",X"08",X"AA",X"80",X"00",X"00",X"00",X"08",X"AA",X"AA",X"00", + X"FF",X"08",X"AA",X"AA",X"AA",X"80",X"00",X"00",X"AA",X"AA",X"AA",X"A0",X"FF",X"0A",X"A5",X"44", + X"9A",X"A0",X"00",X"0A",X"A5",X"44",X"AA",X"A0",X"FF",X"AA",X"59",X"31",X"3A",X"A8",X"00",X"AA", + X"54",X"33",X"66",X"AA",X"FF",X"AA",X"54",X"32",X"16",X"AA",X"0A",X"A5",X"43",X"31",X"26",X"AA", + X"FF",X"AA",X"54",X"32",X"16",X"AA",X"AA",X"54",X"32",X"21",X"26",X"A8",X"FF",X"AA",X"54",X"32", + X"16",X"AA",X"A5",X"43",X"22",X"21",X"6A",X"A0",X"FF",X"AA",X"54",X"32",X"16",X"AA",X"54",X"32", + X"22",X"12",X"6A",X"80",X"FF",X"AA",X"54",X"32",X"16",X"A5",X"43",X"22",X"21",X"26",X"AA",X"00", + X"FF",X"AA",X"54",X"32",X"16",X"54",X"32",X"22",X"12",X"6A",X"A0",X"00",X"FF",X"AA",X"54",X"32", + X"13",X"43",X"22",X"21",X"26",X"AA",X"00",X"00",X"FF",X"AA",X"54",X"32",X"22",X"32",X"22",X"22", + X"6A",X"A0",X"00",X"00",X"FF",X"AA",X"54",X"32",X"22",X"22",X"22",X"26",X"6A",X"00",X"00",X"00", + X"FF",X"AA",X"54",X"32",X"22",X"22",X"22",X"22",X"6A",X"80",X"00",X"00",X"FF",X"AA",X"54",X"32", + X"22",X"22",X"22",X"22",X"6A",X"A0",X"00",X"00",X"FF",X"AA",X"54",X"32",X"22",X"22",X"22",X"22", + X"26",X"A0",X"00",X"00",X"FF",X"AA",X"54",X"32",X"22",X"26",X"42",X"21",X"26",X"A8",X"00",X"00", + X"FF",X"AA",X"54",X"32",X"22",X"65",X"54",X"21",X"26",X"AA",X"00",X"00",X"FF",X"AA",X"54",X"32", + X"26",X"AA",X"54",X"22",X"12",X"6A",X"00",X"00",X"FF",X"AA",X"54",X"32",X"26",X"AA",X"A5",X"42", + X"12",X"6A",X"80",X"00",X"FF",X"AA",X"54",X"32",X"16",X"AA",X"A5",X"42",X"21",X"6A",X"A0",X"00", + X"FF",X"AA",X"54",X"32",X"16",X"AA",X"AA",X"52",X"21",X"26",X"A0",X"00",X"FF",X"AA",X"54",X"32", + X"16",X"AA",X"8A",X"54",X"21",X"26",X"AA",X"00",X"FF",X"AA",X"54",X"32",X"16",X"AA",X"0A",X"A5", + X"22",X"16",X"AA",X"80",X"FF",X"AA",X"54",X"32",X"16",X"AA",X"0A",X"A5",X"42",X"12",X"6A",X"A0", + X"FF",X"AA",X"59",X"31",X"26",X"AA",X"08",X"A5",X"42",X"22",X"6A",X"A0",X"FF",X"8A",X"E5",X"42", + X"46",X"A8",X"00",X"AA",X"54",X"23",X"9A",X"80",X"FF",X"0A",X"AE",X"55",X"9A",X"A0",X"00",X"AA", + X"E5",X"55",X"AA",X"00",X"FF",X"08",X"AA",X"AA",X"AA",X"80",X"00",X"0A",X"AA",X"AA",X"A8",X"00", + X"FF",X"00",X"08",X"AA",X"80",X"00",X"00",X"00",X"8A",X"AA",X"80",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"8A",X"AA",X"80",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"0A",X"AA",X"AA",X"AA",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"AA",X"A5", + X"44",X"AA",X"A0",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"AA",X"59",X"33",X"6A",X"A0", + X"FF",X"00",X"00",X"8A",X"AA",X"80",X"00",X"08",X"A5",X"43",X"12",X"36",X"A8",X"FF",X"00",X"0A", + X"AA",X"AA",X"AA",X"00",X"0A",X"A5",X"42",X"11",X"36",X"AA",X"FF",X"00",X"AA",X"A5",X"44",X"AA", + X"A0",X"0A",X"A5",X"42",X"21",X"36",X"AA",X"FF",X"00",X"AA",X"54",X"33",X"4A",X"A0",X"0A",X"A5", + X"42",X"21",X"36",X"AA",X"FF",X"0A",X"A5",X"43",X"21",X"36",X"A8",X"0A",X"A5",X"42",X"21",X"36", + X"AA",X"FF",X"0A",X"A5",X"43",X"11",X"36",X"AA",X"0A",X"A5",X"42",X"21",X"36",X"AA",X"FF",X"0A", + X"A5",X"43",X"11",X"36",X"AA",X"0A",X"A5",X"42",X"21",X"36",X"AA",X"FF",X"0A",X"A5",X"43",X"21", + X"36",X"AA",X"0A",X"A5",X"42",X"21",X"36",X"AA",X"FF",X"0A",X"A5",X"43",X"21",X"36",X"AA",X"0A", + X"A5",X"42",X"21",X"36",X"AA",X"FF",X"0A",X"A5",X"43",X"22",X"23",X"6A",X"AA",X"A5",X"42",X"22", + X"36",X"AA",X"FF",X"00",X"A5",X"43",X"22",X"23",X"6A",X"AA",X"A5",X"32",X"22",X"36",X"AA",X"FF", + X"00",X"AA",X"54",X"32",X"22",X"36",X"AA",X"A5",X"32",X"22",X"36",X"AA",X"FF",X"00",X"AA",X"54", + X"32",X"22",X"23",X"6A",X"A5",X"32",X"22",X"36",X"AA",X"FF",X"00",X"0A",X"A5",X"43",X"22",X"22", + X"36",X"95",X"32",X"22",X"36",X"AA",X"FF",X"00",X"0A",X"A5",X"43",X"22",X"22",X"23",X"33",X"22", + X"22",X"36",X"AA",X"FF",X"00",X"00",X"AA",X"54",X"32",X"22",X"22",X"22",X"22",X"22",X"36",X"AA", + X"FF",X"00",X"00",X"AA",X"54",X"43",X"32",X"22",X"22",X"22",X"22",X"E6",X"A8",X"FF",X"00",X"00", + X"0A",X"A5",X"54",X"44",X"32",X"22",X"22",X"23",X"6A",X"A0",X"FF",X"00",X"00",X"00",X"AA",X"A5", + X"59",X"43",X"22",X"22",X"23",X"6A",X"A0",X"FF",X"00",X"00",X"00",X"0A",X"AA",X"A5",X"54",X"32", + X"22",X"23",X"6A",X"80",X"FF",X"00",X"00",X"00",X"00",X"08",X"AA",X"54",X"32",X"22",X"23",X"6A", + X"00",X"FF",X"00",X"00",X"00",X"00",X"8E",X"AA",X"54",X"32",X"22",X"36",X"AA",X"00",X"FF",X"00", + X"00",X"AA",X"AA",X"AA",X"A5",X"43",X"22",X"12",X"36",X"A0",X"00",X"FF",X"00",X"AA",X"AA",X"44", + X"95",X"54",X"32",X"21",X"13",X"6A",X"A0",X"00",X"FF",X"0A",X"A4",X"44",X"44",X"44",X"43",X"22", + X"11",X"23",X"6A",X"00",X"00",X"FF",X"AA",X"93",X"33",X"33",X"33",X"32",X"21",X"11",X"36",X"AA", + X"00",X"00",X"FF",X"A5",X"32",X"22",X"22",X"22",X"22",X"11",X"14",X"6A",X"A0",X"00",X"00",X"FF", + X"A5",X"32",X"22",X"22",X"22",X"22",X"22",X"46",X"AA",X"80",X"00",X"00",X"FF",X"AA",X"54",X"44", + X"44",X"44",X"44",X"44",X"6A",X"A8",X"00",X"00",X"00",X"FF",X"0A",X"A5",X"55",X"55",X"55",X"9E", + X"66",X"A8",X"00",X"00",X"00",X"00",X"FF",X"0A",X"AA",X"AA",X"AA",X"AA",X"AA",X"A8",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"0A",X"AA",X"AA",X"AA",X"80",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"AA",X"A0",X"00", + X"FF",X"00",X"00",X"00",X"0A",X"A3",X"AA",X"00",X"FF",X"00",X"00",X"00",X"AA",X"EE",X"3A",X"A0", + X"FF",X"00",X"00",X"00",X"A3",X"A9",X"A5",X"A0",X"FF",X"00",X"00",X"00",X"A3",X"99",X"33",X"A0", + X"FF",X"00",X"00",X"44",X"AA",X"3E",X"3A",X"A0",X"FF",X"00",X"00",X"9E",X"4A",X"A4",X"AA",X"A0", + X"FF",X"00",X"00",X"35",X"DD",X"65",X"5D",X"A0",X"FF",X"0C",X"00",X"33",X"35",X"9E",X"45",X"50", + X"FF",X"00",X"0B",X"00",X"01",X"19",X"EB",X"55",X"FF",X"01",X"00",X"94",X"41",X"1B",X"3E",X"45", + X"FF",X"00",X"1C",X"33",X"44",X"BB",X"33",X"5C",X"FF",X"0B",X"12",X"B2",X"DD",X"DD",X"77",X"DD", + X"FF",X"0D",X"77",X"88",X"89",X"88",X"77",X"8A",X"FF",X"0D",X"77",X"88",X"89",X"88",X"77",X"8A", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"AA",X"A0",X"00", + X"FF",X"00",X"00",X"00",X"0A",X"A3",X"AA",X"00",X"FF",X"00",X"00",X"00",X"AA",X"EE",X"3A",X"A0", + X"FF",X"00",X"00",X"00",X"A3",X"A9",X"A5",X"A0",X"FF",X"00",X"00",X"00",X"A3",X"99",X"33",X"A0", + X"FF",X"00",X"04",X"40",X"AA",X"3E",X"3A",X"A0",X"FF",X"00",X"09",X"EE",X"AA",X"A4",X"AA",X"A0", + X"FF",X"00",X"04",X"30",X"DD",X"65",X"5D",X"A0",X"FF",X"00",X"00",X"33",X"35",X"9E",X"45",X"50", + X"FF",X"00",X"0B",X"00",X"01",X"19",X"EB",X"55",X"FF",X"00",X"00",X"94",X"41",X"1B",X"3E",X"45", + X"FF",X"00",X"2E",X"33",X"44",X"BB",X"33",X"5C",X"FF",X"0B",X"19",X"11",X"DD",X"DD",X"28",X"DD", + X"FF",X"0C",X"77",X"81",X"89",X"88",X"77",X"8A",X"FF",X"0D",X"77",X"88",X"89",X"88",X"77",X"8A", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"33",X"33",X"30",X"00",X"00", + X"FF",X"00",X"03",X"66",X"36",X"63",X"00",X"00",X"FF",X"00",X"36",X"61",X"31",X"66",X"30",X"00", + X"FF",X"00",X"36",X"61",X"31",X"66",X"30",X"00",X"FF",X"00",X"36",X"67",X"77",X"66",X"90",X"00", + X"FF",X"00",X"33",X"77",X"77",X"73",X"99",X"00",X"FF",X"00",X"93",X"35",X"55",X"33",X"99",X"00", + X"FF",X"00",X"93",X"A6",X"66",X"A3",X"99",X"00",X"FF",X"00",X"9A",X"66",X"66",X"6A",X"99",X"00", + X"FF",X"00",X"9A",X"66",X"66",X"66",X"99",X"90",X"FF",X"00",X"92",X"2D",X"66",X"6D",X"22",X"00", + X"FF",X"09",X"92",X"22",X"DD",X"D2",X"22",X"09",X"FF",X"00",X"00",X"22",X"22",X"22",X"99",X"99", + X"FF",X"00",X"00",X"02",X"22",X"20",X"09",X"90",X"FF",X"00",X"00",X"00",X"09",X"00",X"09",X"00", + X"FF",X"00",X"00",X"99",X"99",X"90",X"00",X"00",X"FF",X"00",X"00",X"33",X"33",X"30",X"00",X"00", + X"FF",X"00",X"03",X"66",X"36",X"63",X"00",X"00",X"FF",X"00",X"36",X"66",X"36",X"66",X"30",X"00", + X"FF",X"00",X"36",X"61",X"31",X"66",X"30",X"00",X"FF",X"00",X"36",X"67",X"77",X"66",X"90",X"00", + X"FF",X"00",X"33",X"77",X"77",X"73",X"99",X"00",X"FF",X"00",X"93",X"35",X"55",X"33",X"99",X"00", + X"FF",X"00",X"99",X"A6",X"66",X"A9",X"99",X"00",X"FF",X"00",X"99",X"66",X"66",X"69",X"99",X"00", + X"FF",X"00",X"99",X"96",X"66",X"69",X"99",X"00",X"FF",X"00",X"09",X"96",X"66",X"99",X"20",X"00", + X"FF",X"00",X"02",X"2A",X"DD",X"C2",X"20",X"00",X"FF",X"00",X"00",X"22",X"22",X"24",X"90",X"09", + X"FF",X"00",X"00",X"02",X"22",X"20",X"99",X"94",X"FF",X"00",X"00",X"00",X"94",X"00",X"99",X"00", + X"FF",X"00",X"00",X"09",X"99",X"00",X"00",X"00",X"FF",X"00",X"00",X"99",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"03",X"33",X"33",X"00",X"00",X"FF",X"00",X"00",X"36",X"63",X"66",X"30",X"00", + X"FF",X"00",X"03",X"66",X"63",X"66",X"63",X"00",X"FF",X"00",X"03",X"66",X"13",X"16",X"63",X"00", + X"FF",X"00",X"03",X"66",X"77",X"76",X"63",X"00",X"FF",X"00",X"43",X"37",X"77",X"77",X"39",X"40", + X"FF",X"00",X"89",X"33",X"55",X"53",X"39",X"40",X"FF",X"00",X"99",X"9A",X"66",X"6A",X"99",X"40", + X"FF",X"00",X"99",X"99",X"66",X"69",X"99",X"40",X"FF",X"00",X"09",X"99",X"96",X"99",X"99",X"00", + X"FF",X"00",X"02",X"99",X"99",X"99",X"93",X"00",X"FF",X"00",X"02",X"AD",X"DD",X"DC",X"33",X"00", + X"FF",X"00",X"00",X"22",X"CC",X"C2",X"20",X"00",X"FF",X"00",X"00",X"02",X"22",X"22",X"90",X"00", + X"FF",X"00",X"89",X"99",X"90",X"00",X"90",X"00",X"FF",X"00",X"00",X"00",X"00",X"09",X"99",X"90", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"03",X"33",X"33",X"00",X"00",X"FF",X"00",X"00",X"36",X"63",X"66",X"30",X"00", + X"FF",X"00",X"03",X"66",X"13",X"16",X"63",X"00",X"FF",X"00",X"03",X"66",X"13",X"16",X"63",X"00", + X"FF",X"00",X"03",X"66",X"77",X"76",X"63",X"00",X"FF",X"00",X"03",X"37",X"77",X"77",X"39",X"40", + X"FF",X"00",X"09",X"33",X"55",X"53",X"39",X"40",X"FF",X"00",X"89",X"9A",X"66",X"6A",X"99",X"40", + X"FF",X"00",X"89",X"96",X"66",X"66",X"99",X"40",X"FF",X"00",X"09",X"96",X"66",X"66",X"99",X"00", + X"FF",X"00",X"08",X"9D",X"66",X"6D",X"99",X"00",X"FF",X"00",X"00",X"8A",X"D6",X"DC",X"42",X"00", + X"FF",X"00",X"00",X"42",X"AA",X"A3",X"20",X"00",X"FF",X"00",X"99",X"99",X"22",X"22",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"89",X"00",X"00",X"FF",X"00",X"00",X"00",X"08",X"99",X"99",X"90", + X"FF",X"00",X"00",X"30",X"00",X"00",X"FF",X"00",X"06",X"56",X"00",X"00",X"FF",X"85",X"A5",X"85", + X"30",X"00",X"FF",X"65",X"32",X"21",X"23",X"80",X"FF",X"08",X"3A",X"A2",X"AA",X"38",X"FF",X"03", + X"8A",X"A8",X"AA",X"83",X"FF",X"08",X"8A",X"D8",X"DA",X"88",X"FF",X"0D",X"8A",X"D8",X"DA",X"8D", + X"FF",X"07",X"78",X"44",X"48",X"77",X"FF",X"07",X"E4",X"4D",X"44",X"7E",X"FF",X"00",X"83",X"44", + X"43",X"80",X"FF",X"00",X"00",X"03",X"00",X"00",X"FF",X"08",X"23",X"24",X"23",X"28",X"FF",X"00", + X"82",X"9A",X"92",X"80",X"FF",X"00",X"01",X"AA",X"A1",X"00",X"FF",X"00",X"02",X"4A",X"12",X"40", + X"FF",X"00",X"00",X"22",X"24",X"40",X"FF",X"00",X"00",X"40",X"00",X"40",X"FF",X"00",X"04",X"44", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"68",X"00",X"00",X"FF",X"00", + X"02",X"56",X"00",X"00",X"FF",X"85",X"A5",X"85",X"30",X"00",X"FF",X"65",X"32",X"11",X"23",X"80", + X"FF",X"08",X"32",X"22",X"22",X"38",X"FF",X"03",X"8A",X"A8",X"AA",X"83",X"FF",X"08",X"8A",X"A8", + X"AA",X"88",X"FF",X"03",X"8A",X"D8",X"DA",X"83",X"FF",X"07",X"78",X"44",X"48",X"77",X"FF",X"07", + X"E4",X"34",X"34",X"7E",X"FF",X"00",X"02",X"2C",X"33",X"00",X"FF",X"00",X"01",X"39",X"23",X"00", + X"FF",X"00",X"03",X"8A",X"82",X"00",X"FF",X"00",X"08",X"8A",X"88",X"00",X"FF",X"00",X"03",X"3A", + X"32",X"00",X"FF",X"00",X"00",X"28",X"30",X"00",X"FF",X"00",X"00",X"40",X"40",X"00",X"FF",X"00", + X"04",X"44",X"44",X"00",X"FF",X"00",X"00",X"10",X"10",X"00",X"00",X"00",X"FF",X"00",X"00",X"10", + X"10",X"00",X"00",X"00",X"FF",X"00",X"02",X"32",X"10",X"00",X"00",X"00",X"FF",X"00",X"00",X"19", + X"10",X"00",X"00",X"00",X"FF",X"00",X"01",X"11",X"11",X"00",X"00",X"00",X"FF",X"00",X"01",X"51", + X"51",X"00",X"00",X"00",X"FF",X"00",X"91",X"11",X"11",X"90",X"00",X"00",X"FF",X"00",X"09",X"13", + X"19",X"00",X"00",X"90",X"FF",X"00",X"00",X"08",X"00",X"00",X"00",X"90",X"FF",X"00",X"00",X"11", + X"10",X"00",X"00",X"90",X"FF",X"00",X"01",X"33",X"D1",X"00",X"00",X"90",X"FF",X"01",X"10",X"3D", + X"11",X"00",X"00",X"90",X"FF",X"00",X"03",X"8D",X"D3",X"00",X"77",X"77",X"FF",X"00",X"D8",X"DD", + X"8D",X"D0",X"AA",X"CC",X"FF",X"00",X"00",X"10",X"90",X"00",X"66",X"CC",X"FF",X"0B",X"BB",X"1B", + X"99",X"BB",X"66",X"CC",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"10", + X"10",X"00",X"00",X"00",X"FF",X"00",X"00",X"10",X"10",X"00",X"00",X"00",X"FF",X"00",X"02",X"32", + X"10",X"00",X"00",X"00",X"FF",X"00",X"01",X"11",X"11",X"00",X"00",X"00",X"FF",X"00",X"01",X"11", + X"11",X"00",X"00",X"00",X"FF",X"00",X"91",X"51",X"51",X"90",X"00",X"00",X"FF",X"00",X"09",X"13", + X"19",X"00",X"00",X"10",X"FF",X"00",X"00",X"08",X"00",X"00",X"00",X"90",X"FF",X"00",X"00",X"11", + X"10",X"00",X"00",X"90",X"FF",X"00",X"01",X"D3",X"31",X"10",X"00",X"90",X"FF",X"00",X"01",X"1D", + X"D0",X"00",X"00",X"90",X"FF",X"00",X"03",X"D8",X"D8",X"D0",X"77",X"77",X"FF",X"00",X"0D",X"8D", + X"8D",X"00",X"AA",X"CC",X"FF",X"00",X"00",X"90",X"10",X"00",X"66",X"CC",X"FF",X"0B",X"B1",X"1B", + X"1B",X"BB",X"66",X"CC",X"FF",X"00",X"00",X"02",X"12",X"20",X"00",X"00",X"FF",X"00",X"02",X"29", + X"99",X"22",X"00",X"00",X"FF",X"00",X"00",X"61",X"11",X"12",X"00",X"00",X"FF",X"00",X"00",X"37", + X"11",X"91",X"20",X"00",X"FF",X"00",X"03",X"44",X"42",X"19",X"22",X"20",X"FF",X"00",X"00",X"D1", + X"52",X"22",X"22",X"20",X"FF",X"00",X"00",X"45",X"56",X"22",X"22",X"00",X"FF",X"00",X"03",X"99", + X"44",X"45",X"50",X"00",X"FF",X"00",X"44",X"44",X"43",X"55",X"40",X"00",X"FF",X"09",X"46",X"53", + X"35",X"45",X"54",X"CC",X"FF",X"0C",X"34",X"54",X"35",X"4C",X"64",X"4C",X"FF",X"0C",X"C3",X"95", + X"35",X"46",X"64",X"CC",X"FF",X"0C",X"CC",X"95",X"45",X"66",X"4C",X"CC",X"FF",X"0B",X"BB",X"E5", + X"55",X"6B",X"BB",X"BB",X"FF",X"0B",X"BE",X"88",X"88",X"88",X"BB",X"BB",X"FF",X"0A",X"AA",X"E8", + X"88",X"8E",X"AA",X"AA",X"FF",X"0A",X"AA",X"44",X"58",X"44",X"AA",X"AA",X"FF",X"01",X"11",X"44", + X"56",X"54",X"61",X"11",X"FF",X"00",X"00",X"02",X"12",X"20",X"00",X"00",X"FF",X"00",X"02",X"21", + X"19",X"22",X"00",X"00",X"FF",X"00",X"00",X"51",X"19",X"92",X"20",X"00",X"FF",X"00",X"00",X"36", + X"11",X"91",X"22",X"00",X"FF",X"00",X"03",X"44",X"22",X"99",X"22",X"20",X"FF",X"00",X"00",X"D1", + X"52",X"22",X"22",X"00",X"FF",X"00",X"00",X"45",X"56",X"22",X"20",X"00",X"FF",X"00",X"00",X"33", + X"44",X"45",X"30",X"00",X"FF",X"00",X"04",X"44",X"43",X"55",X"43",X"00",X"FF",X"00",X"44",X"33", + X"35",X"45",X"53",X"9C",X"FF",X"0C",X"55",X"B6",X"35",X"46",X"54",X"3C",X"FF",X"0C",X"C4",X"96", + X"35",X"45",X"53",X"CC",X"FF",X"0C",X"CC",X"45",X"45",X"56",X"4C",X"CC",X"FF",X"0B",X"BB",X"E5", + X"55",X"56",X"BB",X"BB",X"FF",X"0B",X"BB",X"B8",X"88",X"88",X"8B",X"BB",X"FF",X"0A",X"AA",X"A8", + X"88",X"88",X"5A",X"AA",X"FF",X"0A",X"AA",X"A5",X"54",X"84",X"4A",X"AA",X"FF",X"01",X"11",X"14", + X"56",X"54",X"41",X"11",X"FF",X"22",X"22",X"22",X"00",X"FF",X"27",X"77",X"77",X"00",X"FF",X"00", + X"55",X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"FF",X"00",X"55", + X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"FF",X"00",X"02",X"00", + X"00",X"FF",X"00",X"27",X"20",X"00",X"FF",X"02",X"77",X"00",X"00",X"FF",X"27",X"75",X"50",X"00", + X"FF",X"07",X"00",X"55",X"00",X"FF",X"00",X"00",X"05",X"50",X"FF",X"00",X"00",X"00",X"55",X"FF", + X"00",X"00",X"00",X"05",X"FF",X"00",X"00",X"00",X"00",X"FF",X"22",X"00",X"00",X"00",X"FF",X"27", + X"00",X"00",X"00",X"FF",X"27",X"55",X"55",X"55",X"FF",X"27",X"55",X"55",X"55",X"FF",X"27",X"00", + X"00",X"00",X"FF",X"27",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"B1",X"B0", + X"00",X"FF",X"00",X"BB",X"B0",X"00",X"FF",X"00",X"0A",X"00",X"00",X"FF",X"0A",X"0A",X"0A",X"00", + X"FF",X"00",X"AA",X"A0",X"00",X"FF",X"02",X"22",X"22",X"00",X"FF",X"00",X"22",X"20",X"00",X"FF", + X"00",X"22",X"20",X"00",X"FF",X"00",X"0B",X"00",X"00",X"FF",X"00",X"1B",X"00",X"00",X"FF",X"0B", + X"BA",X"0A",X"00",X"FF",X"00",X"00",X"AA",X"20",X"FF",X"00",X"0A",X"A2",X"22",X"FF",X"00",X"00", + X"22",X"22",X"FF",X"00",X"00",X"02",X"20",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"FF",X"00",X"0A",X"02",X"00",X"FF",X"BB",X"00",X"A2",X"22",X"FF",X"1B",X"AA",X"A2",X"22", + X"FF",X"BB",X"00",X"A2",X"22",X"FF",X"00",X"0A",X"02",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"FF",X"08",X"CC",X"EE",X"00",X"00",X"FF",X"08",X"CD",X"EE",X"88",X"00", + X"FF",X"08",X"CD",X"EE",X"0C",X"00",X"FF",X"08",X"CD",X"EE",X"0C",X"00",X"FF",X"08",X"CD",X"EE", + X"0C",X"00",X"FF",X"08",X"CD",X"EE",X"C0",X"00",X"FF",X"08",X"CD",X"EE",X"00",X"00",X"FF",X"08", + X"CD",X"EE",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"08",X"CC",X"C0",X"00",X"FF",X"00",X"CC",X"80",X"0C",X"00",X"FF",X"0C",X"ED",X"C8", + X"00",X"E0",X"FF",X"CE",X"EE",X"DD",X"80",X"E0",X"FF",X"0E",X"EE",X"ED",X"C8",X"00",X"FF",X"00", + X"EE",X"ED",X"DC",X"80",X"FF",X"00",X"0E",X"EE",X"ED",X"00",X"FF",X"00",X"00",X"EE",X"E0",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"08",X"88",X"80",X"00",X"00",X"FF",X"0E",X"00",X"0C", + X"00",X"00",X"FF",X"CC",X"CC",X"CC",X"C0",X"00",X"FF",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"EE", + X"EE",X"EE",X"E0",X"00",X"FF",X"EE",X"EE",X"EE",X"E0",X"00",X"FF",X"EE",X"EE",X"EE",X"E0",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"0C",X"C0", + X"00",X"00",X"FF",X"00",X"08",X"80",X"00",X"00",X"FF",X"02",X"CC",X"D0",X"00",X"00",X"FF",X"0C", + X"0C",X"D0",X"00",X"00",X"FF",X"0C",X"0C",X"D0",X"00",X"00",X"FF",X"02",X"CC",X"D0",X"00",X"00", + X"FF",X"00",X"0C",X"D0",X"00",X"00",X"FF",X"00",X"C1",X"C0",X"00",X"00",X"FF",X"0C",X"C2",X"CC", + X"00",X"00",X"FF",X"CC",X"00",X"00",X"00",X"00",X"FF",X"D8",X"00",X"00",X"00",X"00",X"FF",X"0D", + X"C0",X"00",X"00",X"00",X"FF",X"0C",X"DC",X"00",X"00",X"00",X"FF",X"02",X"0D",X"C0",X"00",X"00", + X"FF",X"00",X"CC",X"DC",X"CC",X"00",X"FF",X"00",X"00",X"C1",X"C0",X"00",X"FF",X"00",X"00",X"CC", + X"00",X"00",X"FF",X"00",X"00",X"C0",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"C0",X"FF",X"00",X"00",X"00",X"0C",X"C0",X"FF",X"C8",X"CC",X"CC",X"C1",X"C0", + X"FF",X"C8",X"DD",X"DD",X"DC",X"C0",X"FF",X"00",X"C0",X"0C",X"00",X"C0",X"FF",X"00",X"2C",X"C2", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"CC",X"C1",X"00",X"00",X"FF",X"0C",X"DD",X"DD",X"20",X"00", + X"FF",X"CC",X"C0",X"0C",X"CC",X"00",X"FF",X"00",X"0C",X"C0",X"00",X"00",X"FF",X"00",X"C1",X"1C", + X"00",X"00",X"FF",X"0C",X"13",X"31",X"C0",X"00",X"FF",X"C2",X"C1",X"1C",X"CC",X"00",X"FF",X"DD", + X"DD",X"DD",X"DD",X"00",X"FF",X"00",X"01",X"2C",X"C0",X"00",X"FF",X"00",X"CD",X"CC",X"00",X"00", + X"FF",X"0C",X"D0",X"C0",X"00",X"00",X"FF",X"CD",X"0C",X"CC",X"CC",X"00",X"FF",X"CC",X"CC",X"31", + X"CC",X"D0",X"FF",X"CC",X"0C",X"31",X"CD",X"00",X"FF",X"C0",X"0C",X"CC",X"D0",X"00",X"FF",X"00", + X"0C",X"2D",X"00",X"00",X"FF",X"00",X"00",X"D0",X"00",X"00",X"FF",X"00",X"C0",X"00",X"CD",X"00", + X"FF",X"02",X"C0",X"0C",X"CD",X"00",X"FF",X"1D",X"C0",X"C1",X"CD",X"00",X"FF",X"CD",X"0C",X"13", + X"1D",X"00",X"FF",X"CD",X"0C",X"13",X"1D",X"00",X"FF",X"CD",X"C0",X"C1",X"CD",X"00",X"FF",X"0C", + X"C0",X"0C",X"2D",X"00",X"FF",X"00",X"C0",X"00",X"CD",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"10",X"FF",X"22",X"CC",X"22",X"01",X"FF",X"11", + X"11",X"11",X"01",X"FF",X"01",X"11",X"10",X"10",X"FF",X"00",X"77",X"00",X"00",X"FF",X"11",X"11", + X"11",X"10",X"FF",X"00",X"00",X"11",X"00",X"FF",X"00",X"00",X"20",X"10",X"FF",X"00",X"0C",X"10", + X"10",X"FF",X"00",X"C1",X"11",X"00",X"FF",X"02",X"11",X"10",X"01",X"FF",X"21",X"11",X"10",X"10", + X"FF",X"01",X"11",X"71",X"00",X"FF",X"00",X"00",X"10",X"00",X"FF",X"00",X"01",X"00",X"00",X"FF", + X"00",X"10",X"00",X"00",X"FF",X"11",X"10",X"00",X"00",X"FF",X"10",X"01",X"01",X"00",X"FF",X"02", + X"10",X"01",X"00",X"FF",X"02",X"11",X"01",X"00",X"FF",X"0C",X"11",X"71",X"00",X"FF",X"0C",X"11", + X"71",X"00",X"FF",X"02",X"11",X"01",X"00",X"FF",X"02",X"10",X"01",X"00",X"FF",X"00",X"00",X"00", + X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"09",X"00",X"09",X"00",X"00",X"FF",X"98",X"00",X"08", + X"90",X"00",X"FF",X"09",X"85",X"89",X"00",X"00",X"FF",X"00",X"0C",X"00",X"00",X"00",X"FF",X"00", + X"85",X"80",X"00",X"00",X"FF",X"08",X"55",X"58",X"00",X"00",X"FF",X"95",X"00",X"05",X"90",X"00", + X"FF",X"95",X"00",X"05",X"90",X"00",X"FF",X"08",X"00",X"08",X"00",X"00",X"FF",X"00",X"99",X"80", + X"00",X"00",X"FF",X"00",X"08",X"90",X"00",X"00",X"FF",X"90",X"00",X"90",X"00",X"00",X"FF",X"98", + X"0C",X"88",X"89",X"00",X"FF",X"89",X"98",X"05",X"55",X"90",X"FF",X"00",X"08",X"50",X"05",X"80", + X"FF",X"00",X"08",X"50",X"00",X"80",X"FF",X"00",X"09",X"55",X"00",X"00",X"FF",X"00",X"00",X"98", + X"80",X"00",X"FF",X"09",X"00",X"00",X"99",X"00",X"FF",X"98",X"90",X"08",X"55",X"80",X"FF",X"00", + X"80",X"85",X"00",X"00",X"FF",X"00",X"5C",X"50",X"00",X"00",X"FF",X"00",X"80",X"85",X"00",X"00", + X"FF",X"98",X"90",X"08",X"55",X"80",X"FF",X"09",X"00",X"00",X"99",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"09",X"00",X"00",X"FF",X"08",X"89", + X"98",X"80",X"FF",X"81",X"38",X"88",X"88",X"FF",X"82",X"88",X"88",X"88",X"FF",X"88",X"88",X"88", + X"88",X"FF",X"08",X"88",X"88",X"80",X"FF",X"08",X"88",X"8A",X"80",X"FF",X"00",X"8A",X"AA",X"00", + X"FF",X"00",X"88",X"80",X"00",X"FF",X"08",X"88",X"88",X"80",X"FF",X"08",X"88",X"88",X"AA",X"FF", + X"09",X"88",X"88",X"8A",X"FF",X"99",X"88",X"88",X"8A",X"FF",X"08",X"38",X"88",X"88",X"FF",X"08", + X"12",X"88",X"80",X"FF",X"00",X"88",X"80",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"90",X"08", + X"88",X"00",X"FF",X"09",X"98",X"88",X"80",X"FF",X"83",X"88",X"88",X"80",X"FF",X"81",X"38",X"88", + X"88",X"FF",X"88",X"88",X"88",X"AA",X"FF",X"08",X"88",X"8A",X"AA",X"FF",X"00",X"08",X"AA",X"00", + X"FF",X"00",X"00",X"10",X"00",X"00",X"FF",X"00",X"01",X"11",X"00",X"00",X"FF",X"10",X"08",X"88", + X"0E",X"E0",X"FF",X"01",X"01",X"11",X"E0",X"E0",X"FF",X"01",X"01",X"11",X"00",X"E0",X"FF",X"01", + X"11",X"11",X"E0",X"E0",X"FF",X"00",X"01",X"11",X"0E",X"00",X"FF",X"00",X"01",X"11",X"00",X"00", + X"FF",X"00",X"00",X"0E",X"E0",X"00",X"FF",X"01",X"11",X"0E",X"0E",X"00",X"FF",X"01",X"18",X"1E", + X"0E",X"00",X"FF",X"01",X"81",X"11",X"0E",X"00",X"FF",X"00",X"11",X"11",X"10",X"00",X"FF",X"10", + X"01",X"11",X"11",X"00",X"FF",X"01",X"11",X"11",X"10",X"00",X"FF",X"00",X"10",X"01",X"00",X"00", + X"FF",X"00",X"EE",X"EE",X"00",X"00",X"FF",X"00",X"E0",X"00",X"E0",X"00",X"FF",X"00",X"0E",X"0E", + X"00",X"00",X"FF",X"01",X"81",X"11",X"11",X"00",X"FF",X"11",X"81",X"11",X"11",X"00",X"FF",X"01", + X"81",X"11",X"11",X"00",X"FF",X"00",X"00",X"01",X"00",X"00",X"FF",X"00",X"01",X"11",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"0B",X"00",X"00",X"00",X"FF",X"00",X"05",X"00", + X"00",X"00",X"FF",X"00",X"05",X"00",X"00",X"00",X"FF",X"00",X"55",X"50",X"00",X"00",X"FF",X"00", + X"11",X"50",X"00",X"00",X"FF",X"00",X"11",X"50",X"00",X"00",X"FF",X"00",X"11",X"50",X"00",X"00", + X"FF",X"00",X"55",X"50",X"00",X"00",X"FF",X"00",X"55",X"50",X"00",X"00",X"FF",X"B0",X"00",X"00", + X"00",X"00",X"FF",X"05",X"00",X"00",X"00",X"00",X"FF",X"00",X"55",X"00",X"00",X"00",X"FF",X"00", + X"55",X"50",X"00",X"00",X"FF",X"00",X"51",X"55",X"00",X"00",X"FF",X"00",X"01",X"15",X"50",X"00", + X"FF",X"00",X"00",X"15",X"50",X"00",X"FF",X"00",X"00",X"05",X"50",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"05",X"55",X"55",X"50", + X"FF",X"B5",X"55",X"11",X"15",X"50",X"FF",X"00",X"05",X"11",X"15",X"50",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"09",X"90",X"90",X"00",X"FF",X"00", + X"99",X"99",X"00",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"99",X"99", + X"99",X"90",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"EE",X"E9",X"EE",X"E0",X"FF",X"00",X"90",X"E0", + X"00",X"FF",X"90",X"9E",X"EE",X"00",X"FF",X"99",X"9E",X"E9",X"E0",X"FF",X"0E",X"E9",X"9E",X"EE", + X"FF",X"EE",X"E9",X"9E",X"E0",X"FF",X"0E",X"9E",X"E9",X"00",X"FF",X"00",X"EE",X"E0",X"00",X"FF", + X"00",X"0E",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00",X"EE",X"9E",X"E0",X"FF",X"09", + X"EE",X"9E",X"E0",X"FF",X"99",X"EE",X"9E",X"E0",X"FF",X"09",X"99",X"99",X"90",X"FF",X"99",X"EE", + X"9E",X"E0",X"FF",X"90",X"EE",X"9E",X"E0",X"FF",X"00",X"EE",X"9E",X"E0",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"11",X"00",X"00",X"FF",X"00",X"99",X"99",X"99",X"00",X"FF",X"18",X"88",X"88",X"88",X"81", + X"FF",X"19",X"99",X"99",X"99",X"11",X"FF",X"09",X"99",X"99",X"99",X"90",X"FF",X"09",X"99",X"99", + X"99",X"90",X"FF",X"00",X"99",X"99",X"99",X"00",X"FF",X"00",X"00",X"98",X"10",X"00",X"FF",X"00", + X"19",X"81",X"10",X"00",X"FF",X"01",X"98",X"99",X"90",X"00",X"FF",X"09",X"89",X"99",X"90",X"00", + X"FF",X"98",X"99",X"99",X"90",X"00",X"FF",X"89",X"99",X"99",X"00",X"00",X"FF",X"19",X"99",X"90", + X"00",X"00",X"FF",X"00",X"99",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"11",X"00",X"00",X"00",X"FF",X"00",X"81",X"99",X"00",X"00", + X"FF",X"09",X"89",X"99",X"90",X"00",X"FF",X"09",X"89",X"99",X"90",X"00",X"FF",X"19",X"89",X"99", + X"90",X"00",X"FF",X"19",X"89",X"99",X"90",X"00",X"FF",X"09",X"89",X"99",X"90",X"00",X"FF",X"09", + X"89",X"99",X"90",X"00",X"FF",X"00",X"89",X"99",X"00",X"00",X"FF",X"00",X"11",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"EE",X"EE",X"EE",X"01",X"10",X"FF",X"AA",X"AA",X"AA",X"10",X"01",X"FF",X"AA", + X"AA",X"AA",X"00",X"01",X"FF",X"AA",X"AA",X"AA",X"00",X"01",X"FF",X"AA",X"AA",X"AA",X"11",X"10", + X"FF",X"AA",X"AA",X"AA",X"00",X"00",X"FF",X"AA",X"AA",X"AA",X"00",X"00",X"FF",X"00",X"00",X"00", + X"01",X"10",X"FF",X"00",X"00",X"E0",X"10",X"01",X"FF",X"00",X"0E",X"AA",X"10",X"01",X"FF",X"00", + X"EA",X"AA",X"A0",X"10",X"FF",X"0E",X"AA",X"AA",X"AA",X"10",X"FF",X"EA",X"AA",X"AA",X"AA",X"A0", + X"FF",X"0A",X"AA",X"AA",X"AA",X"00",X"FF",X"00",X"AA",X"AA",X"A0",X"00",X"FF",X"00",X"0A",X"AA", + X"00",X"00",X"FF",X"00",X"00",X"A0",X"00",X"00",X"FF",X"00",X"11",X"10",X"00",X"00",X"FF",X"01", + X"00",X"01",X"00",X"00",X"FF",X"01",X"00",X"01",X"00",X"00",X"FF",X"00",X"10",X"01",X"00",X"00", + X"FF",X"0E",X"AA",X"AA",X"AA",X"00",X"FF",X"0E",X"AA",X"AA",X"AA",X"00",X"FF",X"0E",X"AA",X"AA", + X"AA",X"00",X"FF",X"0E",X"AA",X"AA",X"AA",X"00",X"FF",X"0E",X"AA",X"AA",X"AA",X"00",X"FF",X"0E", + X"AA",X"AA",X"AA",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"08",X"00",X"00", + X"00",X"00",X"FF",X"00",X"08",X"00",X"00",X"00",X"00",X"FF",X"00",X"88",X"80",X"00",X"00",X"00", + X"FF",X"08",X"88",X"88",X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EB",X"00",X"00",X"00",X"FF",X"0E", + X"EE",X"EB",X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EB",X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EB", + X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EB",X"00",X"00",X"00",X"FF",X"0E",X"EE",X"EB",X"00",X"00", + X"00",X"FF",X"0C",X"BB",X"BC",X"00",X"00",X"00",X"FF",X"80",X"00",X"00",X"00",X"00",X"00",X"FF", + X"08",X"88",X"80",X"00",X"00",X"00",X"FF",X"08",X"8E",X"EB",X"00",X"00",X"00",X"FF",X"08",X"EE", + X"EB",X"B0",X"00",X"00",X"FF",X"08",X"EE",X"EE",X"BB",X"00",X"00",X"FF",X"00",X"EE",X"EE",X"EB", + X"C0",X"00",X"FF",X"00",X"0E",X"EE",X"EB",X"00",X"00",X"FF",X"00",X"00",X"EE",X"B0",X"00",X"00", + X"FF",X"00",X"00",X"0C",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00", + X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"00",X"FF",X"00",X"00",X"8B",X"BB",X"BB",X"BC",X"FF",X"00",X"08",X"8E",X"EE",X"EE", + X"EB",X"FF",X"08",X"88",X"8E",X"EE",X"EE",X"EB",X"FF",X"00",X"08",X"8E",X"EE",X"EE",X"EB",X"FF", + X"00",X"00",X"8E",X"EE",X"EE",X"EC",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00", + X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"10",X"00",X"00",X"FF",X"00", + X"0D",X"DD",X"00",X"10",X"FF",X"BB",X"BB",X"BB",X"B1",X"01",X"FF",X"0B",X"BB",X"BB",X"B0",X"01", + X"FF",X"00",X"BB",X"BB",X"B1",X"11",X"FF",X"00",X"BB",X"BB",X"B0",X"00",X"FF",X"00",X"00",X"00", + X"10",X"00",X"FF",X"00",X"00",X"01",X"01",X"00",X"FF",X"00",X"00",X"B1",X"01",X"00",X"FF",X"00", + X"1D",X"BB",X"01",X"00",X"FF",X"00",X"DB",X"BB",X"B0",X"00",X"FF",X"00",X"BB",X"BB",X"BB",X"00", + X"FF",X"0B",X"BB",X"BB",X"B0",X"00",X"FF",X"BB",X"BB",X"BB",X"00",X"00",X"FF",X"00",X"00",X"B0", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"11",X"10",X"00",X"00",X"FF",X"01", + X"00",X"10",X"00",X"00",X"FF",X"00",X"10",X"10",X"00",X"00",X"FF",X"00",X"BB",X"BB",X"00",X"00", + X"FF",X"0D",X"BB",X"BB",X"00",X"00",X"FF",X"1D",X"BB",X"BB",X"00",X"00",X"FF",X"0D",X"BB",X"BB", + X"00",X"00",X"FF",X"00",X"BB",X"BB",X"00",X"00",X"FF",X"00",X"BB",X"00",X"00",X"00",X"FF",X"00", + X"B0",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00", + X"FF",X"08",X"CC",X"EE",X"00",X"00",X"FF",X"08",X"CD",X"EE",X"88",X"00",X"FF",X"08",X"CD",X"EE", + X"0C",X"00",X"FF",X"08",X"CD",X"EE",X"0C",X"00",X"FF",X"08",X"CD",X"EE",X"0C",X"00",X"FF",X"08", + X"CD",X"EE",X"C0",X"00",X"FF",X"08",X"CD",X"EE",X"00",X"00",X"FF",X"08",X"CD",X"EE",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"08",X"CC", + X"C0",X"00",X"FF",X"00",X"CC",X"80",X"0C",X"00",X"FF",X"0C",X"ED",X"C8",X"00",X"E0",X"FF",X"CE", + X"EE",X"DD",X"80",X"E0",X"FF",X"0E",X"EE",X"ED",X"C8",X"00",X"FF",X"00",X"EE",X"ED",X"DC",X"80", + X"FF",X"00",X"0E",X"EE",X"ED",X"00",X"FF",X"00",X"00",X"EE",X"E0",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"08",X"88",X"80",X"00",X"00",X"FF",X"0E",X"00",X"0C",X"00",X"00",X"FF",X"CC", + X"CC",X"CC",X"C0",X"00",X"FF",X"DD",X"DD",X"DD",X"D0",X"00",X"FF",X"EE",X"EE",X"EE",X"E0",X"00", + X"FF",X"EE",X"EE",X"EE",X"E0",X"00",X"FF",X"EE",X"EE",X"EE",X"E0",X"00",X"FF",X"00",X"00",X"00", + X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11",X"11", + X"11",X"11",X"11",X"11",X"11",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22",X"22", + X"22",X"22",X"22",X"22",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33",X"33", + X"33",X"33",X"33",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44",X"44", + X"44",X"44",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55",X"55", + X"55",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66",X"66", + X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"77",X"FF"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/tile1.vhd b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/tile1.vhd new file mode 100644 index 00000000..922da80e --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/rom/tile1.vhd @@ -0,0 +1,534 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tile1 is +port ( + clk : in std_logic; + addr : in std_logic_vector(12 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of tile1 is + type rom is array(0 to 8191) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"10",X"38",X"10",X"7C",X"FE",X"00",X"00",X"02",X"04",X"7C",X"38",X"10",X"00",X"00",X"00", + X"00",X"10",X"10",X"10",X"10",X"38",X"10",X"10",X"00",X"18",X"1C",X"12",X"12",X"70",X"70",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38",X"7C",X"D6",X"FE",X"BA",X"44",X"38",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"80",X"C0",X"E0",X"E0",X"E7",X"E7",X"E7",X"FF",X"00",X"00",X"80",X"80",X"E7",X"E7",X"E7", + X"FF",X"01",X"03",X"87",X"87",X"E7",X"E7",X"E7",X"FF",X"00",X"00",X"80",X"80",X"FF",X"FF",X"FF", + X"BF",X"A7",X"A7",X"A7",X"A7",X"A7",X"A7",X"A7",X"FF",X"A7",X"A6",X"A1",X"A1",X"BF",X"BF",X"FF", + X"BF",X"27",X"3E",X"C1",X"C1",X"FF",X"FF",X"FF",X"BF",X"E7",X"67",X"87",X"87",X"FF",X"FF",X"FF", + X"81",X"C3",X"A7",X"A7",X"A7",X"A7",X"A7",X"A7",X"BF",X"A7",X"A7",X"A7",X"A7",X"A7",X"BF",X"FF", + X"FF",X"C0",X"C0",X"C0",X"C0",X"FF",X"FF",X"FF",X"FF",X"01",X"03",X"83",X"83",X"FF",X"FF",X"FF", + X"BF",X"A6",X"A4",X"A2",X"A2",X"A7",X"A7",X"A7",X"BF",X"E7",X"27",X"87",X"87",X"E7",X"A7",X"A7", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"F1",X"E1",X"E1",X"C1",X"C1",X"C1",X"C1",X"C1",X"FD",X"FD",X"C1",X"C1",X"C1", + X"C1",X"C1",X"C1",X"C1",X"C1",X"C1",X"FF",X"FF",X"BF",X"EF",X"FB",X"9D",X"8D",X"8E",X"86",X"86", + X"86",X"86",X"86",X"BE",X"BE",X"86",X"86",X"86",X"86",X"86",X"86",X"86",X"86",X"86",X"FE",X"FE", + X"FF",X"F0",X"E6",X"E8",X"D0",X"D0",X"A0",X"A0",X"A0",X"A0",X"A0",X"A0",X"A0",X"A0",X"A0",X"A0", + X"A0",X"A0",X"A0",X"A0",X"A0",X"BE",X"80",X"FF",X"FF",X"0F",X"67",X"17",X"0B",X"0B",X"05",X"05", + X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"05",X"7D",X"01",X"FF", + X"EB",X"FE",X"5F",X"F9",X"B1",X"71",X"F1",X"A1",X"C1",X"C1",X"C1",X"C2",X"C6",X"C4",X"C2",X"C1", + X"C1",X"C1",X"C1",X"C1",X"C1",X"C1",X"FF",X"FE",X"B4",X"DB",X"F6",X"3F",X"18",X"1F",X"1E",X"0A", + X"06",X"06",X"06",X"86",X"C6",X"46",X"86",X"06",X"06",X"06",X"06",X"06",X"06",X"06",X"FE",X"F9", + X"FF",X"F0",X"E0",X"E0",X"E0",X"C0",X"C0",X"C0",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"C0",X"C0",X"E0",X"E0",X"E0",X"F0",X"FF",X"F7",X"37",X"2B",X"2B",X"25",X"25",X"22",X"22", + X"21",X"21",X"31",X"31",X"31",X"21",X"21",X"21",X"22",X"22",X"25",X"25",X"2B",X"2B",X"37",X"E7", + X"FF",X"FF",X"80",X"80",X"80",X"80",X"80",X"80",X"83",X"84",X"84",X"84",X"80",X"84",X"83",X"80", + X"80",X"80",X"80",X"80",X"80",X"80",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"20",X"20",X"20",X"20",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FE",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"74",X"44",X"64",X"44",X"47",X"10",X"00",X"00",X"4D",X"55",X"51",X"55",X"4D",X"A4", + X"00",X"00",X"54",X"94",X"9C",X"C8",X"48",X"62",X"FF",X"80",X"80",X"80",X"80",X"80",X"80",X"82", + X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FE",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"18",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"1A",X"18",X"00",X"82",X"03",X"02",X"1A",X"42",X"5A",X"58",X"58",X"40",X"93",X"12",X"12",X"18", + X"FF",X"7E",X"7E",X"00",X"00",X"00",X"00",X"00",X"7E",X"7E",X"00",X"00",X"00",X"00",X"7E",X"00", + X"7E",X"7E",X"7E",X"40",X"56",X"34",X"56",X"7E",X"FF",X"01",X"FD",X"00",X"00",X"04",X"08",X"10", + X"01",X"01",X"10",X"98",X"10",X"00",X"01",X"E4",X"05",X"05",X"05",X"04",X"09",X"91",X"11",X"01", + X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"00", + X"FF",X"FF",X"FF",X"C0",X"57",X"35",X"57",X"FF",X"FF",X"80",X"BF",X"20",X"00",X"00",X"18",X"27", + X"A0",X"80",X"00",X"20",X"30",X"28",X"A7",X"20",X"A0",X"84",X"80",X"80",X"30",X"2C",X"20",X"80", + X"FF",X"07",X"F7",X"00",X"00",X"10",X"20",X"44",X"07",X"07",X"46",X"66",X"46",X"06",X"07",X"96", + X"17",X"17",X"17",X"14",X"23",X"45",X"47",X"07",X"FF",X"E0",X"EF",X"08",X"00",X"00",X"06",X"09", + X"E8",X"E0",X"00",X"08",X"0C",X"0A",X"E9",X"28",X"E8",X"E1",X"E0",X"80",X"4C",X"2B",X"48",X"E0", + X"FF",X"1F",X"DF",X"00",X"00",X"40",X"90",X"1C",X"1F",X"17",X"16",X"9E",X"16",X"16",X"17",X"5E", + X"5F",X"5F",X"5F",X"5C",X"93",X"05",X"17",X"1F",X"FF",X"F8",X"FB",X"02",X"00",X"00",X"01",X"0A", + X"FA",X"F8",X"18",X"1A",X"1B",X"1A",X"FA",X"3A",X"FA",X"F8",X"F8",X"98",X"43",X"32",X"4A",X"F8", + X"FF",X"7F",X"7F",X"00",X"00",X"40",X"70",X"7C",X"5F",X"57",X"56",X"7E",X"56",X"56",X"57",X"7E", + X"7F",X"7F",X"7F",X"7C",X"73",X"45",X"17",X"1F",X"FF",X"FE",X"FE",X"00",X"00",X"02",X"06",X"0E", + X"FE",X"FA",X"1A",X"1E",X"1A",X"1A",X"FA",X"3E",X"FE",X"FE",X"FE",X"9E",X"46",X"30",X"48",X"F8", + X"3F",X"40",X"5F",X"40",X"5F",X"50",X"50",X"50",X"50",X"50",X"50",X"5F",X"40",X"50",X"70",X"00", + X"FC",X"02",X"FA",X"00",X"F8",X"08",X"08",X"08",X"08",X"08",X"08",X"F8",X"00",X"0A",X"02",X"00", + X"3F",X"40",X"5F",X"40",X"5F",X"50",X"50",X"5C",X"5E",X"5E",X"5F",X"5F",X"40",X"50",X"70",X"00", + X"3F",X"40",X"5F",X"40",X"5F",X"50",X"57",X"5F",X"5D",X"5F",X"5F",X"5F",X"40",X"50",X"70",X"00", + X"FC",X"02",X"FA",X"00",X"F8",X"08",X"08",X"C8",X"C8",X"E8",X"E8",X"F8",X"00",X"0A",X"02",X"00", + X"3F",X"40",X"5F",X"40",X"5F",X"50",X"53",X"57",X"55",X"57",X"5F",X"5F",X"40",X"50",X"70",X"00", + X"FC",X"02",X"FA",X"00",X"F8",X"08",X"C8",X"E8",X"68",X"E8",X"F8",X"F8",X"00",X"0A",X"02",X"00", + X"3F",X"40",X"5F",X"40",X"5F",X"50",X"53",X"57",X"5F",X"57",X"5F",X"5F",X"40",X"50",X"70",X"00", + X"FC",X"02",X"FA",X"00",X"F8",X"08",X"C8",X"E8",X"E8",X"E8",X"F8",X"F8",X"00",X"0A",X"02",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"10",X"38",X"10",X"7C",X"FE",X"00",X"00",X"02",X"04",X"7C",X"38",X"10",X"00",X"00",X"00", + X"00",X"10",X"10",X"10",X"10",X"38",X"10",X"10",X"00",X"18",X"1C",X"12",X"12",X"70",X"70",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38",X"7C",X"D6",X"FE",X"BA",X"44",X"38",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01", + X"81",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"81", + X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"01", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"76",X"39",X"19",X"06",X"0E",X"0D",X"0B",X"07", + X"76",X"B9",X"D9",X"E6",X"6E",X"9D",X"9B",X"67",X"00",X"80",X"C0",X"C0",X"60",X"80",X"90",X"60", + X"70",X"B0",X"D0",X"E0",X"60",X"90",X"90",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01", + X"07",X"1F",X"3F",X"03",X"F0",X"61",X"00",X"00",X"00",X"80",X"81",X"00",X"00",X"FF",X"FF",X"74", + X"00",X"70",X"F0",X"78",X"30",X"00",X"00",X"00",X"00",X"00",X"07",X"78",X"84",X"02",X"02",X"01", + X"50",X"88",X"00",X"00",X"20",X"24",X"58",X"80",X"03",X"01",X"01",X"01",X"03",X"01",X"01",X"00", + X"80",X"80",X"9C",X"BC",X"BC",X"3C",X"3C",X"3F",X"74",X"74",X"74",X"7C",X"7C",X"7C",X"FC",X"FC", + X"00",X"60",X"78",X"7E",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"80",X"87",X"3F",X"7F", + X"00",X"00",X"00",X"00",X"F0",X"F0",X"F0",X"F0",X"05",X"0D",X"1B",X"00",X"00",X"00",X"00",X"00", + X"B8",X"B8",X"70",X"01",X"00",X"00",X"00",X"00",X"00",X"06",X"38",X"C0",X"00",X"00",X"00",X"00", + X"3E",X"1E",X"0C",X"04",X"00",X"00",X"00",X"00",X"7F",X"3F",X"3F",X"1F",X"04",X"00",X"08",X"00", + X"F0",X"F0",X"C0",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"11",X"EE",X"EE",X"0E",X"EE",X"EE",X"E0",X"EE",X"11",X"EE",X"EE",X"0E",X"EE",X"CE",X"9F",X"2B", + X"11",X"EE",X"EE",X"0E",X"EE",X"EE",X"E0",X"EE",X"11",X"EE",X"EE",X"0E",X"EE",X"EE",X"E0",X"EE", + X"EE",X"0E",X"EE",X"EE",X"E0",X"EE",X"EE",X"EE",X"49",X"88",X"88",X"FF",X"FF",X"EE",X"EE",X"EE", + X"EE",X"8E",X"EE",X"EE",X"E0",X"EE",X"EE",X"EE",X"EE",X"0E",X"EE",X"EE",X"E0",X"EE",X"EE",X"EE", + X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1",X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1", + X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1",X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1", + X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1",X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1", + X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1",X"8F",X"88",X"88",X"E8",X"17",X"11",X"11",X"F1", + X"89",X"40",X"2F",X"1F",X"9F",X"3F",X"3F",X"BF",X"FD",X"7F",X"BF",X"FF",X"FF",X"FF",X"FD",X"F8", + X"89",X"46",X"A6",X"99",X"D1",X"E2",X"E4",X"D8",X"89",X"46",X"26",X"19",X"91",X"62",X"64",X"98", + X"BF",X"3F",X"3F",X"3F",X"BF",X"3F",X"3F",X"DF",X"F8",X"FD",X"FF",X"FF",X"FF",X"FF",X"FD",X"DD", + X"E9",X"E6",X"E6",X"F8",X"F0",X"E2",X"E4",X"F8",X"89",X"02",X"00",X"01",X"90",X"62",X"64",X"90", + X"9F",X"2F",X"2F",X"37",X"B8",X"3F",X"3F",X"BF",X"DF",X"DF",X"BD",X"7D",X"FE",X"FE",X"FE",X"FF", + X"C8",X"E6",X"F6",X"E9",X"F1",X"F2",X"F4",X"78",X"81",X"46",X"26",X"11",X"91",X"62",X"64",X"90", + X"BF",X"5F",X"1F",X"1F",X"8E",X"6F",X"6F",X"8F",X"FF",X"FF",X"FF",X"FF",X"0F",X"6F",X"6F",X"0F", + X"79",X"3A",X"3E",X"1D",X"9F",X"6F",X"67",X"9B",X"89",X"46",X"3E",X"1D",X"B9",X"FA",X"F4",X"C8", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"10",X"38",X"10",X"7C",X"FE",X"00",X"00",X"02",X"04",X"7C",X"38",X"10",X"00",X"00",X"00", + X"00",X"10",X"10",X"10",X"10",X"38",X"10",X"10",X"00",X"18",X"1C",X"12",X"12",X"70",X"70",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38",X"7C",X"D6",X"FE",X"BA",X"44",X"38",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"3F",X"3F",X"1F",X"1F",X"0F",X"0F",X"07", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"80",X"80",X"C0",X"C0",X"E0",X"E0",X"F0", + X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"0C",X"0C",X"0C",X"0C",X"0C",X"0C",X"0C",X"0C", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"73",X"AD",X"DE",X"AD",X"73",X"AD",X"DE",X"AD",X"9B",X"67",X"EE",X"5E",X"BE",X"76",X"E6",X"C6", + X"D9",X"E6",X"F7",X"FA",X"FD",X"EE",X"E7",X"E3",X"CE",X"B5",X"7B",X"B5",X"CE",X"B5",X"7B",X"B5", + X"73",X"AF",X"DF",X"BD",X"78",X"F1",X"E2",X"FF",X"8E",X"16",X"86",X"C6",X"E6",X"76",X"3E",X"FE", + X"F1",X"E8",X"E1",X"E3",X"E7",X"EE",X"FC",X"FF",X"CE",X"F5",X"FB",X"BD",X"1E",X"8F",X"47",X"FF", + X"FF",X"FF",X"FF",X"FF",X"DC",X"EB",X"F7",X"DB",X"FF",X"FF",X"FF",X"FF",X"EF",X"5D",X"BE",X"6D", + X"FF",X"FF",X"FF",X"FF",X"57",X"7F",X"AF",X"D7",X"FF",X"FF",X"FF",X"FF",X"AB",X"FA",X"D5",X"AE", + X"F7",X"8F",X"F7",X"DB",X"F7",X"EB",X"DC",X"FF",X"BC",X"C7",X"BE",X"6D",X"BE",X"5D",X"EF",X"FF", + X"BB",X"7C",X"BB",X"D7",X"AF",X"7F",X"57",X"FF",X"74",X"FB",X"75",X"AE",X"D5",X"FA",X"AB",X"FF", + X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40",X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40", + X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40",X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40", + X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40",X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40", + X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40",X"88",X"11",X"00",X"44",X"00",X"01",X"22",X"40", + X"88",X"11",X"00",X"44",X"00",X"FF",X"FF",X"FF",X"88",X"11",X"00",X"44",X"00",X"FF",X"FF",X"FF", + X"88",X"11",X"00",X"44",X"00",X"FF",X"FF",X"FF",X"88",X"11",X"00",X"44",X"00",X"FF",X"FF",X"FF", + X"E8",X"71",X"38",X"5C",X"3E",X"77",X"E3",X"C1",X"8F",X"17",X"0E",X"5C",X"38",X"79",X"FA",X"D8", + X"C8",X"F1",X"70",X"7C",X"3C",X"3F",X"37",X"73",X"8E",X"1D",X"38",X"7C",X"EE",X"C7",X"A3",X"41", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"10",X"38",X"10",X"7C",X"FE",X"00",X"00",X"02",X"04",X"7C",X"38",X"10",X"00",X"00",X"00", + X"00",X"10",X"10",X"10",X"10",X"38",X"10",X"10",X"00",X"18",X"1C",X"12",X"12",X"70",X"70",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38",X"7C",X"D6",X"FE",X"BA",X"44",X"38",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"16",X"0D",X"0E",X"07",X"07",X"02",X"03",X"01", + X"B7",X"7D",X"FE",X"E7",X"E7",X"FE",X"7D",X"B7",X"00",X"00",X"C0",X"C0",X"E0",X"E0",X"70",X"B0", + X"B0",X"70",X"F0",X"E0",X"E0",X"F0",X"70",X"B0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"05", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"D0",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"0C", + X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"04",X"00",X"00",X"02",X"07",X"01",X"02",X"00",X"80", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"06",X"07",X"07",X"03",X"01",X"38",X"34",X"1A", + X"30",X"F0",X"F0",X"E0",X"CC",X"9A",X"B6",X"FC",X"D7",X"3F",X"1F",X"0E",X"0E",X"05",X"E5",X"F7", + X"C2",X"80",X"00",X"00",X"E0",X"40",X"C0",X"00",X"00",X"00",X"20",X"90",X"F0",X"00",X"00",X"00", + X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"64",X"34",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"C0",X"C0",X"E0",X"FF",X"FF",X"01",X"FC",X"7E",X"01",X"3F",X"3F",X"FF",X"FE",X"00",X"7E",X"FF", + X"C0",X"FE",X"FE",X"FF",X"7F",X"00",X"7E",X"FF",X"01",X"01",X"03",X"FF",X"FF",X"80",X"3F",X"7E", + X"33",X"11",X"11",X"33",X"7E",X"FC",X"01",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"00",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"00",X"FF",X"CC",X"88",X"88",X"CC",X"7E",X"3F",X"80",X"FF", + X"55",X"AA",X"FF",X"FF",X"00",X"00",X"FF",X"7F",X"55",X"AA",X"FF",X"FF",X"00",X"00",X"FE",X"FF", + X"55",X"AA",X"FF",X"FF",X"00",X"00",X"7E",X"FF",X"55",X"AA",X"FF",X"FF",X"00",X"00",X"3F",X"7E", + X"33",X"11",X"11",X"33",X"7E",X"FC",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"00",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"00",X"FF",X"CC",X"88",X"88",X"CC",X"7E",X"3F",X"00",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"0C",X"30",X"40",X"80",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"40",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"02",X"02",X"04",X"04",X"04",X"05",X"07",X"07",X"02",X"00",X"00",X"40",X"E0",X"F0",X"F8",X"FC", + X"00",X"00",X"06",X"0F",X"0F",X"1F",X"1F",X"3F",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"C0", + X"07",X"07",X"07",X"07",X"07",X"04",X"04",X"04",X"FE",X"FF",X"FF",X"FF",X"FE",X"01",X"01",X"03", + X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0",X"C0", + X"04",X"04",X"04",X"04",X"04",X"04",X"00",X"00",X"03",X"07",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"EF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/sdram.sv b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/sdram.sv new file mode 100644 index 00000000..9f78c393 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/sdram.sv @@ -0,0 +1,355 @@ +// +// sdram.v +// +// sdram controller implementation for the MiST board +// https://github.com/mist-devel/mist-board +// +// Copyright (c) 2013 Till Harbaum +// Copyright (c) 2019 Gyorgy Szombathelyi +// +// This source file is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published +// by the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This source file is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// + +module sdram ( + + // interface to the MT48LC16M16 chip + inout reg [15:0] SDRAM_DQ, // 16 bit bidirectional data bus + output reg [12:0] SDRAM_A, // 13 bit multiplexed address bus + output reg SDRAM_DQML, // two byte masks + output reg SDRAM_DQMH, // two byte masks + output reg [1:0] SDRAM_BA, // two banks + output SDRAM_nCS, // a single chip select + output SDRAM_nWE, // write enable + output SDRAM_nRAS, // row address select + output SDRAM_nCAS, // columns address select + + // cpu/chipset interface + input init_n, // init signal after FPGA config to initialize RAM + input clk, // sdram clock + + input port1_req, + output reg port1_ack, + input port1_we, + input [23:1] port1_a, + input [1:0] port1_ds, + input [15:0] port1_d, + output reg [15:0] port1_q, + + input [16:1] cpu1_addr, + output reg [15:0] cpu1_q, + input [16:1] cpu2_addr, + output reg [15:0] cpu2_q, + input [16:1] cpu3_addr, + output reg [15:0] cpu3_q, + + input port2_req, + output reg port2_ack, + input port2_we, + input [23:1] port2_a, + input [1:0] port2_ds, + input [15:0] port2_d, + output reg [31:0] port2_q, + + input [16:2] sp_addr, + output reg [31:0] sp_q +); + +localparam RASCAS_DELAY = 3'd2; // tRCD=20ns -> 2 cycles@<100MHz +localparam BURST_LENGTH = 3'b001; // 000=1, 001=2, 010=4, 011=8 +localparam ACCESS_TYPE = 1'b0; // 0=sequential, 1=interleaved +localparam CAS_LATENCY = 3'd2; // 2/3 allowed +localparam OP_MODE = 2'b00; // only 00 (standard operation) allowed +localparam NO_WRITE_BURST = 1'b1; // 0= write burst enabled, 1=only single access write + +localparam MODE = { 3'b000, NO_WRITE_BURST, OP_MODE, CAS_LATENCY, ACCESS_TYPE, BURST_LENGTH}; + +// 64ms/8192 rows = 7.8us -> 842 cycles@108MHz +localparam RFRSH_CYCLES = 10'd842; + +// --------------------------------------------------------------------- +// ------------------------ cycle state machine ------------------------ +// --------------------------------------------------------------------- + +/* + SDRAM state machine for 2 bank interleaved access + 1 word burst, CL2 +cmd issued registered + 0 RAS0 cas1 - data0 read burst terminated + 1 ras0 + 2 data1 returned + 3 CAS0 data1 returned + 4 RAS1 cas0 + 5 ras1 + 6 CAS1 data0 returned +*/ + +localparam STATE_RAS0 = 3'd0; // first state in cycle +localparam STATE_RAS1 = 3'd4; // Second ACTIVE command after RAS0 + tRRD (15ns) +localparam STATE_CAS0 = STATE_RAS0 + RASCAS_DELAY + 1'd1; // CAS phase - 3 +localparam STATE_CAS1 = STATE_RAS1 + RASCAS_DELAY; // CAS phase - 6 +localparam STATE_READ0 = 3'd0;// STATE_CAS0 + CAS_LATENCY + 2'd2; // 7 +localparam STATE_READ1 = 3'd3; +localparam STATE_DS1b = 3'd0; +localparam STATE_READ1b = 3'd4; +localparam STATE_LAST = 3'd6; + +reg [2:0] t; + +always @(posedge clk) begin + t <= t + 1'd1; + if (t == STATE_LAST) t <= STATE_RAS0; +end + +// --------------------------------------------------------------------- +// --------------------------- startup/reset --------------------------- +// --------------------------------------------------------------------- + +// wait 1ms (32 8Mhz cycles) after FPGA config is done before going +// into normal operation. Initialize the ram in the last 16 reset cycles (cycles 15-0) +reg [4:0] reset; +reg init = 1'b1; +always @(posedge clk, negedge init_n) begin + if(!init_n) begin + reset <= 5'h1f; + init <= 1'b1; + end else begin + if((t == STATE_LAST) && (reset != 0)) reset <= reset - 5'd1; + init <= !(reset == 0); + end +end + +// --------------------------------------------------------------------- +// ------------------ generate ram control signals --------------------- +// --------------------------------------------------------------------- + +// all possible commands +localparam CMD_INHIBIT = 4'b1111; +localparam CMD_NOP = 4'b0111; +localparam CMD_ACTIVE = 4'b0011; +localparam CMD_READ = 4'b0101; +localparam CMD_WRITE = 4'b0100; +localparam CMD_BURST_TERMINATE = 4'b0110; +localparam CMD_PRECHARGE = 4'b0010; +localparam CMD_AUTO_REFRESH = 4'b0001; +localparam CMD_LOAD_MODE = 4'b0000; + +reg [3:0] sd_cmd; // current command sent to sd ram +reg [15:0] sd_din; +// drive control signals according to current command +assign SDRAM_nCS = sd_cmd[3]; +assign SDRAM_nRAS = sd_cmd[2]; +assign SDRAM_nCAS = sd_cmd[1]; +assign SDRAM_nWE = sd_cmd[0]; + +reg [24:1] addr_latch[3]; +reg [24:1] addr_latch_next[2]; +reg [16:1] addr_last[4]; +reg [16:2] addr_last2[2]; +reg [15:0] din_latch[2]; +reg [1:0] oe_latch; +reg [1:0] we_latch; +reg [1:0] ds[2]; + +reg port1_state; +reg port2_state; + +localparam PORT_NONE = 3'd0; +localparam PORT_CPU1 = 3'd1; +localparam PORT_CPU2 = 3'd2; +localparam PORT_CPU3 = 3'd3; +localparam PORT_SP = 3'd1; +localparam PORT_REQ = 3'd4; + +reg [2:0] next_port[2]; +reg [2:0] port[2]; + +reg refresh; +reg [10:0] refresh_cnt; +wire need_refresh = (refresh_cnt >= RFRSH_CYCLES); + +// PORT1: bank 0,1 +always @(*) begin + if (refresh) begin + next_port[0] = PORT_NONE; + addr_latch_next[0] = addr_latch[0]; + end else if (port1_req ^ port1_state) begin + next_port[0] = PORT_REQ; + addr_latch_next[0] = { 1'b0, port1_a }; + end else if (cpu1_addr != addr_last[PORT_CPU1]) begin + next_port[0] = PORT_CPU1; + addr_latch_next[0] = { 8'd0, cpu1_addr }; + end else if (cpu2_addr != addr_last[PORT_CPU2]) begin + next_port[0] = PORT_CPU2; + addr_latch_next[0] = { 8'd0, cpu2_addr }; + end else if (cpu3_addr != addr_last[PORT_CPU3]) begin + next_port[0] = PORT_CPU3; + addr_latch_next[0] = { 8'd0, cpu3_addr }; + end else begin + next_port[0] = PORT_NONE; + addr_latch_next[0] = addr_latch[0]; + end +end + +// PORT1: bank 2,3 +always @(*) begin + if (port2_req ^ port2_state) begin + next_port[1] = PORT_REQ; + addr_latch_next[1] = { 1'b1, port2_a }; + end else if (sp_addr != addr_last2[PORT_SP]) begin + next_port[1] = PORT_SP; + addr_latch_next[1] = { 1'b1, 7'd0, sp_addr, 1'b0 }; + end else begin + next_port[1] = PORT_NONE; + addr_latch_next[1] = addr_latch[1]; + end +end + +always @(posedge clk) begin + + // permanently latch ram data to reduce delays + sd_din <= SDRAM_DQ; + SDRAM_DQ <= 16'bZZZZZZZZZZZZZZZZ; + { SDRAM_DQMH, SDRAM_DQML } <= 2'b11; + sd_cmd <= CMD_NOP; // default: idle + refresh_cnt <= refresh_cnt + 1'd1; + + if(init) begin + // initialization takes place at the end of the reset phase + if(t == STATE_RAS0) begin + + if(reset == 15) begin + sd_cmd <= CMD_PRECHARGE; + SDRAM_A[10] <= 1'b1; // precharge all banks + end + + if(reset == 10 || reset == 8) begin + sd_cmd <= CMD_AUTO_REFRESH; + end + + if(reset == 2) begin + sd_cmd <= CMD_LOAD_MODE; + SDRAM_A <= MODE; + SDRAM_BA <= 2'b00; + end + end + end else begin + // RAS phase + // bank 0,1 + if(t == STATE_RAS0) begin + addr_latch[0] <= addr_latch_next[0]; + port[0] <= next_port[0]; + { oe_latch[0], we_latch[0] } <= 2'b00; + + if (next_port[0] != PORT_NONE) begin + sd_cmd <= CMD_ACTIVE; + SDRAM_A <= addr_latch_next[0][22:10]; + SDRAM_BA <= addr_latch_next[0][24:23]; + addr_last[next_port[0]] <= addr_latch_next[0][16:1]; + if (next_port[0] == PORT_REQ) begin + { oe_latch[0], we_latch[0] } <= { ~port1_we, port1_we }; + ds[0] <= port1_ds; + din_latch[0] <= port1_d; + port1_state <= port1_req; + end else begin + { oe_latch[0], we_latch[0] } <= 2'b10; + ds[0] <= 2'b11; + end + end + end + + // bank 2,3 + if(t == STATE_RAS1) begin + refresh <= 1'b0; + addr_latch[1] <= addr_latch_next[1]; + { oe_latch[1], we_latch[1] } <= 2'b00; + port[1] <= next_port[1]; + + if (next_port[1] != PORT_NONE) begin + sd_cmd <= CMD_ACTIVE; + SDRAM_A <= addr_latch_next[1][22:10]; + SDRAM_BA <= addr_latch_next[1][24:23]; + addr_last2[next_port[1]] <= addr_latch_next[1][16:2]; + if (next_port[1] == PORT_REQ) begin + { oe_latch[1], we_latch[1] } <= { ~port1_we, port1_we }; + ds[1] <= port2_ds; + din_latch[1] <= port2_d; + port2_state <= port2_req; + end else begin + { oe_latch[1], we_latch[1] } <= 2'b10; + ds[1] <= 2'b11; + end + end + + if (next_port[1] == PORT_NONE && need_refresh && !we_latch[0] && !oe_latch[0]) begin + refresh <= 1'b1; + refresh_cnt <= 0; + sd_cmd <= CMD_AUTO_REFRESH; + end + end + + // CAS phase + if(t == STATE_CAS0 && (we_latch[0] || oe_latch[0])) begin + sd_cmd <= we_latch[0]?CMD_WRITE:CMD_READ; + { SDRAM_DQMH, SDRAM_DQML } <= ~ds[0]; + if (we_latch[0]) begin + SDRAM_DQ <= din_latch[0]; + port1_ack <= port1_req; + end + SDRAM_A <= { 4'b0010, addr_latch[0][9:1] }; // auto precharge + SDRAM_BA <= addr_latch[0][24:23]; + end + + if(t == STATE_CAS1 && (we_latch[1] || oe_latch[1])) begin + sd_cmd <= we_latch[1]?CMD_WRITE:CMD_READ; + { SDRAM_DQMH, SDRAM_DQML } <= ~ds[1]; + if (we_latch[1]) begin + SDRAM_DQ <= din_latch[1]; + port2_ack <= port2_req; + end + SDRAM_A <= { 4'b0010, addr_latch[1][9:1] }; // auto precharge + SDRAM_BA <= addr_latch[1][24:23]; + end + + // Data returned + if(t == STATE_READ0 && oe_latch[0]) begin + case(port[0]) + PORT_REQ: begin port1_q <= sd_din; port1_ack <= port1_req; end + PORT_CPU1: begin cpu1_q <= sd_din; end + PORT_CPU2: begin cpu2_q <= sd_din; end + PORT_CPU3: begin cpu3_q <= sd_din; end + default: ; + endcase; + end + + if(t == STATE_READ1 && oe_latch[1]) begin + case(port[1]) + PORT_REQ: port2_q[15:0] <= sd_din; + PORT_SP : sp_q[15:0] <= sd_din; + default: ; + endcase; + end + + if(t == STATE_DS1b && oe_latch[1]) { SDRAM_DQMH, SDRAM_DQML } <= ~ds[1]; + + if(t == STATE_READ1b && oe_latch[1]) begin + case(port[1]) + PORT_REQ: begin port2_q[31:16] <= sd_din; port2_ack <= port2_req; end + PORT_SP : begin sp_q[31:16] <= sd_din; end + default: ; + endcase; + end + end +end + +endmodule diff --git a/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/z80ip.v b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/z80ip.v new file mode 100644 index 00000000..4cfb5265 --- /dev/null +++ b/Arcade_MiST/Sega System 1 Hardware/MiST-Arcade-Flicky/rtl/z80ip.v @@ -0,0 +1,59 @@ +// Copyright (c) 2017,19 MiSTer-X + +module Z80IP +( + input reset, + input clk, + output [15:0] adr, + input [7:0] data_in, + output [7:0] data_out, + output m1, + output mx, + output ix, + output rd, + output wr, + input intreq, + output intack, + input nmireq, + output nmiack +); + +wire i_mreq, i_iorq, i_rd, i_wr, i_rfsh, i_m1; + +T80s cpu +( + .CLK(~clk), + .RESET_n(~reset), + .INT_n(~intreq), + .NMI_n(~nmireq), + .MREQ_n(i_mreq), + .IORQ_n(i_iorq), + .RFSH_n(i_rfsh), + .RD_n(i_rd), + .WR_n(i_wr), + .A(adr), + .DI(data_in), + .DO(data_out), + .WAIT_n(1'b1), + .BUSRQ_n(1'b1), + .BUSAK_n(), + .HALT_n(), + .M1_n(i_m1) +); + +wire mreq = (~i_mreq) & (i_rfsh); +wire iorq = ~i_iorq; +wire rdr = ~i_rd; +wire wrr = ~i_wr; + +assign intack = (adr==16'h38) & mx & rdr; +assign nmiack = (adr==16'h66) & mx & rdr; + +assign m1 = ~i_m1; +assign mx = mreq; +assign ix = iorq; +assign rd = rdr; +assign wr = wrr; + +endmodule + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv index d4499adc..8435b3af 100644 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv @@ -56,14 +56,18 @@ wire rotate = status[2]; wire [1:0] scanlines = status[4:3]; wire blend = status[5]; wire joyswap = status[6]; -wire autoup = status[7];// Memory Protect for Lotto Fun -wire adv = status[8]; +wire autoup = status[7] | (core_mod != 7'h8);// Memory Protect for Lotto Fun +wire adv = status[8] ; reg [7:0] SW; reg [7:0] JA; reg [7:0] JB; +reg [7:0] AN0; +reg [7:0] AN1; +reg [7:0] AN2; +reg [7:0] AN3; reg [3:0] BTN; -reg blitter_sc2, sinistar; +reg blitter_sc2, sinistar, speedball; reg speech_en; wire [6:0] core_mod; @@ -87,8 +91,13 @@ always @(*) begin JA = 8'hFF; JB = 8'hFF; BTN = 4'hF; + AN0 = 8'hFF; + AN1 = 8'hFF; + AN2 = 8'hFF; + AN3 = 8'hFF; blitter_sc2 = 0; sinistar = 0; + speedball = 0; speech_en = 0; case (core_mod) @@ -150,9 +159,21 @@ always @(*) begin end 7'h8: // LOTTO FUN begin - BTN = { m_one_player, m_two_players, m_coin1 | m_coin2, reset }; - JA = ~{ 1'b0, 1'b0, m_fireB, m_fireA, m_right, m_left, m_down, m_up }; - JB = JA; + BTN = { m_one_player | m_fireA, 1'b0, m_coin1 | m_coin2, reset }; + JA = ~{ 4'b0000, m_right, m_left, m_down, m_up }; + JB = 8'b11111111;//IN1 + end + 7'h9: // Speed Ball + begin + speedball = 1; + BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset };//IN2 + JA = 8'b11111111;//IN0 + JB = 8'b11111111;//IN1 + //todo +// AN0 =; +// AN1 =; +// AN2 =; + // AN3 =; end default: ; endcase @@ -324,6 +345,7 @@ robotron_soc robotron_soc ( .blitter_sc2 ( blitter_sc2 ), .sinistar ( sinistar ), + .speedball ( speedball ), .BTN ( BTN ), .SIN_FIRE ( ~m_fireA & ~m_fire2A ), .SIN_BOMB ( ~m_fireB & ~m_fire2B ), diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_cpu/robotron_cpu.vhd b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_cpu/robotron_cpu.vhd index 92398aaa..9e0321db 100644 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_cpu/robotron_cpu.vhd +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_cpu/robotron_cpu.vhd @@ -39,7 +39,7 @@ entity robotron_cpu is clock : in std_logic; blitter_sc2 : in std_logic; sinistar : in std_logic; - + speedball : in std_logic; -- MC6809 signals A : in std_logic_vector(15 downto 0); Dout : in std_logic_vector(7 downto 0); @@ -123,7 +123,11 @@ entity robotron_cpu is JB : in std_logic_vector(7 downto 0); SIN_FIRE : in std_logic; SIN_BOMB : in std_logic; - + -- Analog Input + AN0 : in std_logic_vector(7 downto 0); + AN1 : in std_logic_vector(7 downto 0); + AN2 : in std_logic_vector(7 downto 0); + AN3 : in std_logic_vector(7 downto 0); -- To sound board HAND : in std_logic := '1'; PB : out std_logic_vector(5 downto 0) @@ -224,6 +228,7 @@ architecture Behavioral of robotron_cpu is signal hiram_access : boolean; -- Sinistar hiram signal color_table_access : boolean; signal widget_pia_access : boolean; + signal extra_pia_access : boolean; signal rom_pia_access : boolean; signal blt_register_access : boolean; signal video_counter_access : boolean; @@ -315,6 +320,35 @@ architecture Behavioral of robotron_cpu is signal widget_ic4_y : std_logic_vector(4 downto 1); ------------------------------------------------------------------- + +-- signal SLAM : std_logic := '1'; +-- signal R_COIN : std_logic := '1'; +-- signal C_COIN : std_logic := '1'; +-- signal L_COIN : std_logic := '1'; +-- signal H_S_RESET : std_logic := '1'; +-- signal ADVANCE : std_logic := '1'; +-- signal AUTO_UP : std_logic := '0'; + + signal extra_pia_rs : std_logic_vector(1 downto 0) := (others => '0'); + signal extra_pia_cs : std_logic := '0'; + signal extra_pia_write : std_logic := '0'; + signal extra_pia_data_in : std_logic_vector(7 downto 0); + signal extra_pia_data_out : std_logic_vector(7 downto 0); + signal extra_pia_ca2_out : std_logic; + signal extra_pia_ca2_dir : std_logic; + signal extra_pia_irq_a : std_logic; + signal extra_pia_pa_in : std_logic_vector(7 downto 0); + signal extra_pia_pa_out : std_logic_vector(7 downto 0); + signal extra_pia_pa_dir : std_logic_vector(7 downto 0); + + signal extra_pia_cb2_out : std_logic; + signal extra_pia_cb2_dir : std_logic; + signal extra_pia_irq_b : std_logic; + signal extra_pia_pb_in : std_logic_vector(7 downto 0); + signal extra_pia_pb_out : std_logic_vector(7 downto 0); + signal extra_pia_pb_dir : std_logic_vector(7 downto 0); + + ------------------------------------------------------------------- signal blt_rs : std_logic_vector(2 downto 0) := (others => '0'); signal blt_reg_cs : std_logic := '0'; @@ -431,6 +465,9 @@ begin -- Widget PIA: read/write: C8X4 - C8X7 widget_pia_access <= std_match(address, "11001000----01--"); + -- Speedball PIA: read/write: C8X8 - C8XB + extra_pia_access <= std_match(address, "11001000----1---"); + -- ROM PIA: read/write: C8XC - C8XF rom_pia_access <= std_match(address, "11001000----11--"); @@ -502,6 +539,9 @@ begin widget_pia_cs <= '0'; widget_pia_write <= '0'; + + extra_pia_cs <= '0'; + extra_pia_write <= '0'; if clock_12_phase( 0) = '1' then memory_address <= "00" & video_prom_address & @@ -676,6 +716,15 @@ begin widget_pia_write <= to_std_logic(write); widget_pia_cs <= '1'; end if; + + if speedball = '1' then + if extra_pia_access then + extra_pia_rs <= address(1 downto 0); + extra_pia_data_in <= mpu_data_in; + extra_pia_write <= to_std_logic(write); + extra_pia_cs <= '1'; + end if; + end if; if control_access and write then blt_win_en <= mpu_data_in(2) and sinistar; @@ -699,6 +748,10 @@ begin if widget_pia_access then mpu_data_out <= widget_pia_data_out; end if; + + if extra_pia_access then + mpu_data_out <= extra_pia_data_out; + end if; if rom_pia_access then mpu_data_out <= rom_pia_data_out; @@ -720,6 +773,7 @@ begin to_std_logic(rom_access) & to_std_logic(rom_pia_access) & to_std_logic(widget_pia_access) & +-- to_std_logic(extra_pia_access) & to_std_logic(blt_register_access); led_bcd_in <= debug_blt_source_address; @@ -773,7 +827,7 @@ begin ); ------------------------------------------------------------------- - +--IN2 rom_pia_pa_in <= not HAND & not SLAM & not C_COIN & @@ -833,28 +887,30 @@ begin widget_ic4_b <= not (FIRE_RIGHT_1 & FIRE_LEFT_1 & FIRE_DOWN_1 & FIRE_UP_1); widget_ic4_y <= widget_ic4_b when widget_pia_input_select = '1' else widget_ic4_a; - - widget_pia_pa_in <= widget_ic4_y(2) & - widget_ic4_y(1) & + --IN0 + widget_pia_pa_in <= widget_ic4_y(2) &--fire down + widget_ic4_y(1) &--fire up not PLAYER_2_START & not PLAYER_1_START & - widget_ic3_y(4) & - widget_ic3_y(3) & - widget_ic3_y(2) & - widget_ic3_y(1) when sinistar = '0' else - widget_ic4_y(4) & - widget_ic4_y(3) & - widget_ic4_y(2) & - widget_ic4_y(1) & - widget_ic3_y(4) & - widget_ic3_y(3) & - widget_ic3_y(2) & - widget_ic3_y(1); + widget_ic3_y(4) &--right + widget_ic3_y(3) &--left + widget_ic3_y(2) &--down + widget_ic3_y(1) when sinistar = '0' else--up + + widget_ic4_y(4) &--fire right + widget_ic4_y(3) &--fire left + widget_ic4_y(2) &--fire down + widget_ic4_y(1) &--fire up + widget_ic3_y(4) &--right + widget_ic3_y(3) &--left + widget_ic3_y(2) &--down + widget_ic3_y(1);--up +--IN1 widget_pia_pb_in <= not board_interface_w1 & "00000" & - widget_ic4_y(4) & - widget_ic4_y(3) when sinistar = '0' else - not board_interface_w1 & + widget_ic4_y(4) &--fire right + widget_ic4_y(3) when sinistar = '0' else --fire left + not board_interface_w1 & "0" & not PLAYER_2_START & not PLAYER_1_START & @@ -894,6 +950,79 @@ begin ); ------------------------------------------------------------------- + +-- PORT_START("IN3") +-- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1) +-- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) +-- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) +-- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) +-- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) +-- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) +-- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) +-- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + + +--IN3 + extra_pia_pa_in <= '0' & --unknown + FIRE_UP_2 & --fire 2 + '0' & --unknown + FIRE_UP_1 & --fire 1 + MOVE_DOWN_2 &--down2 + MOVE_UP_2 &--up2 + MOVE_DOWN_1 &--down1 + MOVE_UP_1;--up1 + +-- PORT_START("IN4") +-- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) +-- PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) +-- PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) +-- PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) +-- PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) +-- PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) +-- PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 ) +-- PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_START2 ) + + +--IN4 + extra_pia_pb_in <= not PLAYER_2_START & + not PLAYER_1_START & + "00" & + MOVE_RIGHT_2 & + MOVE_LEFT_2 & + MOVE_RIGHT_1 & + MOVE_LEFT_1; + + extra_pia: work.pia6821 + port map( + rst => reset, + clk => clock, + addr => address(1 downto 0), + cs => extra_pia_cs, + rw => not extra_pia_write, + + data_in => mpu_data_in, + data_out => extra_pia_data_out, + + ca1 => '0', + ca2_i => '0', + ca2_o => extra_pia_ca2_out, + ca2_oe => extra_pia_ca2_dir, + irqa => extra_pia_irq_a, + pa_i => extra_pia_pa_in, + pa_o => extra_pia_pa_out, + pa_oe => extra_pia_pa_dir, + + cb1 => '0', + cb2_i => '1', + cb2_o => extra_pia_cb2_out, + cb2_oe => extra_pia_cb2_dir, + irqb => extra_pia_irq_b, + pb_i => extra_pia_pb_in, + pb_o => extra_pia_pb_out, + pb_oe => extra_pia_pb_dir + ); + + ------------------------------------------------------------------- E <= clock_e; Q <= clock_q; diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_soc.vhd b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_soc.vhd index 8a868ad6..7fc9bb71 100644 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_soc.vhd +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/robotron_soc.vhd @@ -58,7 +58,7 @@ port ( blitter_sc2 : in std_logic; sinistar : in std_logic; - + speedball : in std_logic; -- Switches SW : in std_logic_vector(7 downto 0); @@ -81,7 +81,10 @@ port ( -- 12-pin connectors JA : in std_logic_vector(7 downto 0); JB : in std_logic_vector(7 downto 0); - + AN0 : in std_logic_vector(7 downto 0); + AN1 : in std_logic_vector(7 downto 0); + AN2 : in std_logic_vector(7 downto 0); + AN3 : in std_logic_vector(7 downto 0); dl_clock : in std_logic; dl_addr : in std_logic_vector(16 downto 0); dl_data : in std_logic_vector(7 downto 0); @@ -166,7 +169,7 @@ port map ( clock => clock, blitter_sc2 => blitter_sc2, sinistar => sinistar, - + speedball => speedball, A => cpu_a, Dout => cpu_dout, Din => cpu_din, @@ -231,7 +234,11 @@ port map ( -- 12-pin connectors JA => JA, JB => JB, - + -- Analog Input + AN0 => AN0, + AN1 => AN1, + AN2 => AN2, + AN3 => AN3, -- Sound board PB => select_sound, HAND => hand diff --git a/common/Sound/opl3/NextZ80ALU.v b/common/Sound/opl3/NextZ80ALU.v new file mode 100644 index 00000000..58c5b6a5 --- /dev/null +++ b/common/Sound/opl3/NextZ80ALU.v @@ -0,0 +1,372 @@ +////////////////////////////////////////////////////////////////////////////////// +// +// This file is part of the NextZ80 project +// http://www.opencores.org/cores/nextz80/ +// +// Filename: NextZ80ALU.v +// Description: Implementation of Z80 compatible CPU - ALU +// Version 1.0 +// Creation date: 28Jan2011 - 18Mar2011 +// +// Author: Nicolae Dumitrache +// e-mail: ndumitrache@opencores.org +// +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2011 Nicolae Dumitrache +// +// This source file may be used and distributed without +// restriction provided that this copyright statement is not +// removed from the file and that any derivative work contains +// the original copyright notice and the associated disclaimer. +// +// This source file 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 source is distributed in the hope that 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 source; if not, download it +// from http://www.opencores.org/lgpl.shtml +// +/////////////////////////////////////////////////////////////////////////////////// + +//FLAGS: S Z X1 N X2 PV N C +// OP[4:0] +// 00000 - ADD D0,D1 +// 00001 - ADC D0,D1 +// 00010 - SUB D0,D1 +// 00011 - SBC D0,D1 +// 00100 - AND D0,D1 +// 00101 - XOR D0,D1 +// 00110 - OR D0,D1 +// 00111 - CP D0,D1 +// 01000 - INC D0 +// 01001 - CPL D0 +// 01010 - DEC D0 +// 01011 - RRD +// 01100 - RLD +// 01101 - DAA +// 01110 - INC16 +// 01111 - DEC16 +// 10000 - ADD16LO +// 10001 - ADD16HI +// 10010 - +// 10011 - +// 10100 - CCF, pass D0 +// 10101 - SCF, pass D0 +// 10110 - +// 10111 - +// 11000 - RLCA D0 +// 11001 - RRCA D0 +// 11010 - RLA D0 +// 11011 - RRA D0 +// 11100 - {ROT, BIT, SET, RES} D0,EXOP +// RLC D0 C <-- D0 <-- D0[7] +// RRC D0 D0[0] --> D0 --> C +// RL D0 C <-- D0 <-- C +// RR D0 C --> D0 --> C +// SLA D0 C <-- D0 <-- 0 +// SRA D0 D0[7] --> D0 --> C +// SLL D0 C <-- D0 <-- 1 +// SRL D0 0 --> D0 --> C +// 11101 - IN, pass D1 +// 11110 - FLAGS <- D0 +// 11111 - NEG D1 +/////////////////////////////////////////////////////////////////////////////////// +`timescale 1ns / 1ps + +module ALU8( + input [7:0] D0, + input [7:0] D1, + input [7:0] FIN, + output reg[7:0] FOUT, + output reg [15:0] ALU8DOUT, + input [4:0] OP, + input [5:0] EXOP, // EXOP[5:4] = 2'b11 for CPI/D/R + input LDIFLAGS, // zero HF and NF on inc/dec16 + input DSTHI // destination lo + ); + + wire [7:0] daaadjust; + wire cdaa, hdaa; + daa daa_adjust(.flags(FIN), .val(D0), .adjust(daaadjust), .cdaa(cdaa), .hdaa(hdaa)); + + wire parity = ~^ALU8DOUT[15:8]; + wire zero = ALU8DOUT[15:8] == 0; + reg csin, cin; + wire [7:0]d0mux = OP[4:1] == 4'b1111 ? 8'd0 : D0; + reg [7:0]_d1mux; + wire [7:0]d1mux = OP[1] ? ~_d1mux : _d1mux; + wire [8:0]sum; + wire hf; + assign {hf, sum[3:0]} = d0mux[3:0] + d1mux[3:0] + cin; + assign sum[8:4] = d0mux[7:4] + d1mux[7:4] + hf; + wire overflow = (d0mux[7] & d1mux[7] & !sum[7]) | (!d0mux[7] & !d1mux[7] & sum[7]); + reg [7:0]dbit; + + always @* begin + ALU8DOUT = 16'hxxxx; + FOUT = 8'hxx; + case({OP[4:2]}) + 0,1,4,7: _d1mux = D1; + 2: _d1mux = 1; + 3: _d1mux = daaadjust; // DAA + 6,5: _d1mux = 8'hxx; + endcase + case({OP[2:0], FIN[0]}) + 0,1,2,7,8,9,10,11,12,13: cin = 0; + 3,4,5,6,14,15: cin = 1; + endcase + case(EXOP[3:0]) + 0: dbit = 8'b11111110; + 1: dbit = 8'b11111101; + 2: dbit = 8'b11111011; + 3: dbit = 8'b11110111; + 4: dbit = 8'b11101111; + 5: dbit = 8'b11011111; + 6: dbit = 8'b10111111; + 7: dbit = 8'b01111111; + 8: dbit = 8'b00000001; + 9: dbit = 8'b00000010; + 10: dbit = 8'b00000100; + 11: dbit = 8'b00001000; + 12: dbit = 8'b00010000; + 13: dbit = 8'b00100000; + 14: dbit = 8'b01000000; + 15: dbit = 8'b10000000; + endcase + case(OP[3] ? EXOP[2:0] : OP[2:0]) + 0,5: csin = D0[7]; + 1: csin = D0[0]; + 2,3: csin = FIN[0]; + 4,7: csin = 0; + 6: csin = 1; + endcase + case(OP[4:0]) + 0,1,2,3,8,10: begin // ADD, ADC, SUB, SBC, INC, DEC + ALU8DOUT[15:8] = sum[7:0]; + ALU8DOUT[7:0] = sum[7:0]; + FOUT[0] = OP[3] ? FIN[0] : (sum[8] ^ OP[1]); // inc/dec + FOUT[1] = OP[1]; + FOUT[2] = overflow; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = hf ^ OP[1]; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero & (FIN[6] | ~EXOP[5] | ~DSTHI | OP[3]); //(EXOP[5] & DSTHI) ? (zero & FIN[6]) : zero; // adc16/sbc16 + FOUT[7] = ALU8DOUT[15]; + end + 16,17: begin // ADD16LO, ADD16HI + ALU8DOUT[15:8] = sum[7:0]; + ALU8DOUT[7:0] = sum[7:0]; + FOUT[0] = sum[8]; + FOUT[1] = OP[1]; + FOUT[2] = FIN[2]; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = hf ^ OP[1]; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = FIN[6]; + FOUT[7] = FIN[7]; + end + 7: begin // CP + ALU8DOUT[15:8] = sum[7:0]; + FOUT[0] = EXOP[5] ? FIN[0] : !sum[8]; // CPI/D/R + FOUT[1] = OP[1]; + FOUT[2] = overflow; + FOUT[3] = D1[3]; + FOUT[4] = !hf; + FOUT[5] = D1[5]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 31: begin // NEG + ALU8DOUT[15:8] = sum[7:0]; + FOUT[0] = !sum[8]; + FOUT[1] = OP[1]; + FOUT[2] = overflow; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = !hf; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 4: begin // AND + ALU8DOUT[15:8] = D0 & D1; + FOUT[0] = 0; + FOUT[1] = 0; + FOUT[2] = parity; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = 1; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 5,6: begin //XOR, OR + ALU8DOUT[15:8] = OP[0] ? (D0 ^ D1) : (D0 | D1); + FOUT[0] = 0; + FOUT[1] = 0; + FOUT[2] = parity; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = 0; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 9: begin // CPL + ALU8DOUT[15:8] = ~D0; + FOUT[0] = FIN[0]; + FOUT[1] = 1; + FOUT[2] = FIN[2]; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = 1; + FOUT[5] = ALU8DOUT[13]; + FOUT[7:6] = FIN[7:6]; + end + 11,12: begin // RLD, RRD + if(OP[0]) ALU8DOUT = {D0[7:4], D1[3:0], D0[3:0], D1[7:4]}; + else ALU8DOUT = {D0[7:4], D1[7:0], D0[3:0]}; + FOUT[0] = FIN[0]; + FOUT[1] = 0; + FOUT[2] = parity; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = 0; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 13: begin // DAA + ALU8DOUT[15:8] = sum[7:0]; + FOUT[0] = cdaa; + FOUT[1] = FIN[1]; + FOUT[2] = parity; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = hdaa; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 14,15: begin // inc/dec 16 + ALU8DOUT = {D0, D1} + (OP[0] ? 16'hffff : 16'h0001); + FOUT[0] = FIN[0]; + FOUT[1] = LDIFLAGS ? 1'b0 : FIN[1]; + FOUT[2] = ALU8DOUT != 0; + FOUT[3] = FIN[3]; + FOUT[4] = LDIFLAGS ? 1'b0 : FIN[4]; + FOUT[5] = FIN[5]; + FOUT[6] = FIN[6]; + FOUT[7] = FIN[7]; + end + 20,21: begin // CCF, SCF + ALU8DOUT[15:8] = D0; + FOUT[0] = OP[0] ? 1'b1 : !FIN[0]; + FOUT[1] = 1'b0; + FOUT[2] = FIN[2]; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = OP[0] ? 1'b0 : FIN[0]; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = FIN[6]; + FOUT[7] = FIN[7]; + end + 24,25,26,27, 28: begin // ROT, BIT, RES, SET + case({OP[2], EXOP[4:3]}) + 0,1,2,3,4: // rot - shift + if(OP[2] ? EXOP[0] : OP[0]){ALU8DOUT[15:8], FOUT[0]} = {csin, D0}; // right + else {FOUT[0], ALU8DOUT[15:8]} = {D0, csin}; // left + 5,6: begin // BIT, RES + FOUT[0] = FIN[0]; + ALU8DOUT[15:8] = D0 & dbit; + end + 7: begin // SET + FOUT[0] = FIN[0]; + ALU8DOUT[15:8] = D0 | dbit; + end + endcase + ALU8DOUT[7:0] = ALU8DOUT[15:8]; + FOUT[1] = 0; + FOUT[2] = OP[2] ? (EXOP[3] ? zero : parity) : FIN[2]; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = OP[2] & EXOP[3]; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = OP[2] ? zero : FIN[6]; + FOUT[7] = OP[2] ? ALU8DOUT[15] : FIN[7]; + end + 29: begin // IN, pass D1 + ALU8DOUT = {D1, D1}; + FOUT[0] = FIN[0]; + FOUT[1] = 0; + FOUT[2] = parity; + FOUT[3] = ALU8DOUT[11]; + FOUT[4] = 0; + FOUT[5] = ALU8DOUT[13]; + FOUT[6] = zero; + FOUT[7] = ALU8DOUT[15]; + end + 30: FOUT = D0; // FLAGS <- D0 + default:; + endcase + end +endmodule + +module daa ( + input [7:0]flags, + input [7:0]val, + output wire [7:0]adjust, + output reg cdaa, + output reg hdaa + ); + + wire h08 = val[7:4] < 9; + wire h09 = val[7:4] < 10; + wire l05 = val[3:0] < 6; + wire l09 = val[3:0] < 10; + reg [1:0]aa; + assign adjust = ({1'b0, aa[1], aa[1], 2'b0, aa[0], aa[0], 1'b0} ^ {8{flags[1]}}) + flags[1]; + + always @* begin + case({flags[0], h08, h09, flags[4], l09}) + 5'b00101, 5'b01101: aa = 0; + 5'b00111, 5'b01111, 5'b01000, 5'b01010, 5'b01100, 5'b01110: aa = 1; + 5'b00001, 5'b01001, 5'b10001, 5'b10101, 5'b11001, 5'b11101: aa = 2; + default: aa = 3; + endcase + case({flags[0], h08, h09, l09}) + 4'b0011, 4'b0111, 4'b0100, 4'b0110: cdaa = 0; + default: cdaa = 1; + endcase + case({flags[1], flags[4], l05, l09}) + 4'b0000, 4'b0010, 4'b0100, 4'b0110, 4'b1110, 4'b1111: hdaa = 1; + default: hdaa = 0; + endcase + end +endmodule + + +module ALU16( + input [15:0] D0, + input [7:0] D1, + output wire[15:0] DOUT, + input [2:0]OP // 0-NOP, 1-INC, 2-INC2, 3-ADD, 4-NOP, 5-DEC, 6-DEC2 + ); + + reg [15:0] mux; + always @* + case(OP) + 0: mux = 0; // post inc + 1: mux = 1; // post inc + 2: mux = 2; // post inc + 3: mux = {D1[7], D1[7], D1[7], D1[7], D1[7], D1[7], D1[7], D1[7], D1[7:0]}; // post inc + 4: mux = 0; // no post inc + 5: mux = 16'hffff; // no post inc + 6: mux = 16'hfffe; // no post inc + default: mux = 16'hxxxx; + endcase + + assign DOUT = D0 + mux; +endmodule diff --git a/common/Sound/opl3/NextZ80CPU.v b/common/Sound/opl3/NextZ80CPU.v new file mode 100644 index 00000000..8150c52c --- /dev/null +++ b/common/Sound/opl3/NextZ80CPU.v @@ -0,0 +1,1501 @@ +////////////////////////////////////////////////////////////////////////////////// +// +// This file is part of the NextZ80 project +// http://www.opencores.org/cores/nextz80/ +// +// Filename: NextZ80CPU.v +// Description: Implementation of Z80 compatible CPU +// Version 1.0 +// Creation date: 28Jan2011 - 18Mar2011 +// +// Author: Nicolae Dumitrache +// e-mail: ndumitrache@opencores.org +// +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2011 Nicolae Dumitrache +// +// This source file may be used and distributed without +// restriction provided that this copyright statement is not +// removed from the file and that any derivative work contains +// the original copyright notice and the associated disclaimer. +// +// This source file 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 source is distributed in the hope that 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 source; if not, download it +// from http://www.opencores.org/lgpl.shtml +// +/////////////////////////////////////////////////////////////////////////////////// +// +// Comments: +// This project was developed and tested on a XILINX Spartan3AN board. +// +// NextZ80 processor features: +// All documented/undocumented intstructions are implemented +// All documented/undocumented flags are implemented +// All (doc/undoc)flags are changed accordingly by all (doc/undoc)instructions. +// The block instructions (LDx, CPx, INx, OUTx) have only the documented effects on flags. +// The Bit n,(IX/IY+d) and BIT n,(HL) undocumented flags XF and YF are implemented like the BIT n,r and not actually like on the real Z80 CPU. +// All interrupt modes implemented: NMI, IM0, IM1, IM2 +// R register available +// Fast conditional jump/call/ret takes only 1 T state if not executed +// Fast block instructions: LDxR - 3 T states/byte, INxR/OTxR - 2 T states/byte, CPxR - 4 T states / byte +// Each CPU machine cycle takes (mainly) one clock T state. This makes this processor over 4 times faster than a Z80 at the same +// clock frequency (some instructions are up to 10 times faster). +// Works at ~40MHZ on Spartan XC3S700AN speed grade -4) +// Small size ( ~12% ~700 slices - on Spartan XC3S700AN ) +// Tested with ZEXDOC (fully compliant). +// Tested with ZEXALL (all OK except CPx(R), LDx(R), BIT n, (IX/IY+d), BIT n, (HL) - fail because of the un-documented XF and YF flags). +// +/////////////////////////////////////////////////////////////////////////////////// + +// altera message_off 10270 10027 + +`timescale 1ns / 1ps + +module NextZ80 +( + input wire[7:0] DI, + output wire[7:0] DO, + output wire[15:0] ADDR, + output reg WR, + output reg MREQ, + output reg IORQ, + output reg HALT, + output reg M1, + input wire CLK, + input wire RESET, + input wire INT, + input wire NMI, + input wire WAIT +); + +// connections and registers + reg [9:0] CPUStatus = 0; // 0=AF-AF', 1=HL-HL', 2=DE-HL, 3=DE'-HL', 4=HL-X, 5=IX-IY, 6=IFF1,7=IFF2, 9:8=IMODE + wire [7:0] ALU8FLAGS; + wire [7:0] FLAGS; + wire [7:0] ALU80; + wire [7:0] ALU81; + wire [15:0]ALU160; + wire [7:0] ALU161; + wire [15:0]ALU8OUT; + + reg [9:0] FETCH = 0; + reg [2:0] STAGE = 0; + wire [5:0] opd; + wire [2:0] op16; + wire op0mem = FETCH[2:0] == 6; + wire op1mem = FETCH[5:3] == 6; + reg [1:0]fetch98; + +// stage status + reg [1:0]DO_SEL; // ALU80 - th - flags - ALU8OUT[7:0] + reg ALU160_SEL; // regs - pc + reg DINW_SEL; // ALU8OUT - DI + reg [5:0]WE; // 5 = flags, 4 = PC, 3 = SP, 2 = tmpHI, 1 = hi, 0 = lo + reg [4:0] ALU8OP; + reg [2:0] ALU16OP; + reg next_stage; + reg [3:0]REG_WSEL; + reg [3:0]REG_RSEL; + reg [11:0]status; // 0=AF-AF', 1=HL-HL', 2=DE-HL, 3=DE'-HL', 4=HL-X, 5=IX-IY, 7:6=IFFVAL, 9:8=imode, 10=setIMODE, 11=set IFFVAL +// FETCH[5:3]: 000 NZ, 001 Z, 010 NC, 011 C, 100 PO, 101 PE, 110 P, 111 M + wire [7:0]FlagMux = {FLAGS[7], !FLAGS[7], FLAGS[2], !FLAGS[2], FLAGS[0], !FLAGS[0], FLAGS[6], !FLAGS[6]}; + reg tzf; + reg FNMI = 0, SNMI = 0; + reg SRESET = 0; + reg SINT = 0; + wire [2:0]intop = FETCH[1] ? 3'd4 : (FETCH[0] ? 3'd5 : 3'd6); + reg xmask; + + Z80Reg CPU_REGS ( + .rstatus(CPUStatus[7:0]), + .M1(M1), + .WE(WE), + .CLK(CLK), + .ALU8OUT(ALU8OUT), + .DI(DI), + .DO(DO), + .ADDR(ADDR), + .CONST(FETCH[7] ? {2'b00, FETCH[5:3], 3'b000} : 8'h66), // RST/NMI address + .ALU80(ALU80), + .ALU81(ALU81), + .ALU160(ALU160), + .ALU161(ALU161), + .ALU8FLAGS(ALU8FLAGS), + .FLAGS(FLAGS), + .DO_SEL(DO_SEL), + .ALU160_sel(ALU160_SEL), + .REG_WSEL(REG_WSEL), + .REG_RSEL(REG_RSEL), + .DINW_SEL(DINW_SEL), + .XMASK(xmask), + .ALU16OP(ALU16OP), // used for post increment for ADDR, SP mux re-direct + .WAIT(WAIT) + ); + + ALU8 CPU_ALU8 ( + .D0(ALU80), + .D1(ALU81), + .FIN(FLAGS), + .FOUT(ALU8FLAGS), + .ALU8DOUT(ALU8OUT), + .OP(ALU8OP), + .EXOP(FETCH[8:3]), + .LDIFLAGS(REG_WSEL[2]), // inc16 HL + .DSTHI(!REG_WSEL[0]) + ); + + ALU16 CPU_ALU16 ( + .D0(ALU160), + .D1(ALU161), + .DOUT(ADDR), + .OP(ALU16OP) + ); + + always @(posedge CLK) + if(!WAIT) begin + SRESET <= RESET; + SNMI <= NMI; + SINT <= INT; + if(!SNMI) FNMI <= 0; + if(SRESET) FETCH <= 10'b1110000000; + else + if(FETCH[9:6] == 4'b1110) {FETCH[9:7]} <= 3'b000; // exit RESET state + else begin + if(M1) + case({MREQ, CPUStatus[9:8]}) + 3'b000, 3'b001, 3'b100, 3'b101, 3'b110, 3'b111: FETCH <= {fetch98, DI}; + 3'b010: FETCH <= {fetch98, 8'hff}; // IM1 - RST38 + 3'b011: ; // IM2 - get addrLO + endcase + if(~|{next_stage, fetch98[1:0], status[4]}) // INT or NMI sample + if(SNMI & !FNMI) begin // NMI posedge + {FETCH[9:6], FETCH[1:0]} <= {4'b1101, HALT, M1}; + FNMI <= 1; // NMI acknowledged + end else if(SINT & CPUStatus[6] & !status[11]) {FETCH[9:6], FETCH[1:0]} <= {4'b1100, HALT, M1}; // INT request + end + if(next_stage) STAGE <= STAGE + 3'b001; + else STAGE <= 0; + if(status[4]) CPUStatus[5:4] <= status[5:4]; + else if(~|{next_stage, fetch98[1]} | fetch98[0]) CPUStatus[4] <= 1'b0; // clear X + CPUStatus[3:0] <= CPUStatus[3:0] ^ status[3:0]; + if(status[11]) CPUStatus[7:6] <= status[7:6]; // IFF2:1 + if(status[10]) CPUStatus[9:8] <= status[9:8]; // IMM + tzf <= ALU8FLAGS[6]; + end + + assign opd[0] = FETCH[0] ^ &FETCH[2:1]; + assign opd[2:1] = FETCH[2:1]; + assign opd[3] = FETCH[3] ^ &FETCH[5:4]; + assign opd[5:4] = FETCH[5:4]; + assign op16[2:0] = &FETCH[5:4] ? 3'b101 : {1'b0, FETCH[5:4]}; + + always @* begin + DO_SEL = 2'bxx; // ALU80 - th - flags - ALU8OUT[7:0] + ALU160_SEL = 1'bx; // regs - pc + DINW_SEL = 1'bx; // ALU8OUT - DI + WE = 6'bxxxxxx; // 5 = flags, 4 = PC, 3 = SP, 2 = tmpHI, 1 = hi, 0 = lo + ALU8OP = 5'bxxxxx; + ALU16OP = 3'b000; // NOP, post inc + next_stage = 0; + REG_WSEL = 4'bxxxx; + REG_RSEL = 4'bx0xx; // prevents default 4'b0100 which leads to incorrect P flag value in some cases (like RLA) + M1 = 1; + MREQ = 1; + WR = 0; + + HALT = 0; + IORQ = 0; + status = 12'b00xxxxx00000; + fetch98 = 2'b00; + + case({FETCH[7:6], op1mem, op0mem}) + 4'b0000, 4'b0001, 4'b0010, 4'b0011, 4'b0100, 4'b1000, 4'b1100: xmask = 1; + default: xmask = 0; + endcase + + case(FETCH[9:6]) +//------------------------------------------- block 00 ---------------------------------------------------- + 4'b0000: + case(FETCH[3:0]) +// ----------------------- NOP, EX AF, AF', DJNZ, JR, JR c -------------------- + 4'b0000, 4'b1000: + case(FETCH[5:4]) + 2'b00: begin // NOP, EX AF, AF' + DO_SEL = 2'bxx; + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[0] = FETCH[3]; + end + 2'b01: + if(!STAGE[0]) begin // DJNZ, JR - stage1 + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + if(!FETCH[3]) begin + ALU8OP = 5'b01010; // DEC, for tzf only + REG_WSEL = 4'b0000; // B + end + next_stage = 1; + M1 = 0; + end else if(FETCH[3]) begin // JR - stage2 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = 3; // ADD + end else begin // DJNZ - stage2 + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b010x10; // PC, hi + ALU8OP = 5'b01010; // DEC + ALU16OP = tzf ? 3'd0 : 3'd3; // NOP/ADD + REG_WSEL = 4'b0000; // B + end + 2'b10, 2'b11: // JR cc, stage1, stage2 + case({STAGE[0], FlagMux[{1'b0, FETCH[4:3]}]}) + 2'b00, 2'b11: begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = STAGE[0] ? 3'd3 : 3'd1; // ADD/ INC, post inc + end + 2'b01: begin + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + endcase + endcase +// ----------------------- LD rr,nn -------------------- + 4'b0001: // LD rr,nn, stage1 + case({STAGE[1:0], op16[2]}) + 3'b00_0, 3'b00_1, 3'b01_0, 3'b01_1: begin // LD rr,nn, stage1,2 + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, lo/HI + next_stage = 1; + REG_WSEL = {op16, 1'bx}; + M1 = 0; + end + 3'b10_0, 3'b11_1: begin // BC, DE, HL, stage3, SP stage4 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + 3'b10_1: begin // SP stage3 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 4; // NOP + next_stage = 1; + REG_RSEL = 4'b101x; // tmpSP + M1 = 0; + MREQ = 0; + end + endcase +// ----------------------- LD (BC) A - LD (DE) A - LD (nn) HL, LD (nn),A -------------------- +// ----------------------- LD A (BC) - LD A (DE) - LD HL (nn), LD A (nn) -------------------- + 4'b0010, 4'b1010: + case(STAGE[2:0]) + 3'b000: + if(FETCH[5] == 0) begin // LD (BC) A, LD (DE) A - stage1 + if(FETCH[3]) DINW_SEL = 1; // DI + else DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = {4'b000x, FETCH[3], 1'bx}; // hi + next_stage = 1; + REG_WSEL = FETCH[3] ? 4'b011x : 4'b0110; // A + REG_RSEL = {op16, 1'bx}; + M1 = 0; + WR = !FETCH[3]; + end else begin // LD (nn) A - LD (nn) HL - stage 1 + ALU160_SEL = 1; // PC + DINW_SEL = 1; // DI + WE = 6'b010xx1; // PC, lo + next_stage = 1; + REG_WSEL = 4'b111x; + M1 = 0; + end + 3'b001: + if(FETCH[5] == 0) begin // LD (BC), A, LD (DE), A - stage2 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end else begin // LD (nn),A - LH (nn),HL - stage 2 + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = 6'b010x10; // PC, hi + next_stage = 1; + REG_WSEL = 4'b111x; + M1 = 0; + end + 3'b010: begin + ALU160_SEL = 1'b0; // regs + REG_RSEL = 4'b111x; + M1 = 0; + WR = !FETCH[3]; + next_stage = 1; + if(FETCH[3]) begin // LD A (nn) - LD HL (nn) - stage 3 + DINW_SEL = 1; // DI + WE = {4'b000x, FETCH[4] ? 1'b1 : 1'bx, FETCH[4] ? 1'bx : 1'b1}; // lo/hi + REG_WSEL = FETCH[4] ? 4'b011x : 4'b010x; // A or L + end else begin // LD (nn),A - LD (nn),HL - stage 3 + DO_SEL = 2'b00; // ALU80 + WE = 6'b000x00; // nothing + REG_WSEL = FETCH[4] ? 4'b0110 : 4'b0101; // A or L + end + end + 3'b011: + if(FETCH[4]) begin // LD (nn),A - stage 4 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end else begin + REG_RSEL = 4'b111x; + M1 = 0; + WR = !FETCH[3]; + ALU160_SEL = 1'b0; // regs + ALU16OP = 1; // INC + next_stage = 1; + if(FETCH[3]) begin // LD HL (nn) - stage 4 + DINW_SEL = 1; // DI + WE = 6'b000x10; // hi + REG_WSEL = 4'b010x; // H + end else begin // LD (nn),HL - stage 4 + DO_SEL = 2'b00; // ALU80 + WE = 6'b000x00; // nothing + REG_WSEL = 4'b0100; // H + end + end + 3'b100: begin // LD (nn),HL - stage 5 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase +// ----------------------- inc/dec rr -------------------- + 4'b0011, 4'b1011: + if(!STAGE[0]) + if(op16[2]) begin // SP - stage1 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = {FETCH[3], 1'b0, FETCH[3]}; // post inc, dec + next_stage = 1; + REG_RSEL = 4'b101x; // sp + M1 = 0; + MREQ = 0; + end else begin // BC, DE, HL - stage 1 + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b010x11; // PC, hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC16 / DEC16 + REG_WSEL = {op16, 1'b0}; // hi + REG_RSEL = {op16, 1'b1}; // lo + end + else begin // SP, stage2 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end +// ----------------------- inc/dec 8 -------------------- + 4'b0100, 4'b0101, 4'b1100, 4'b1101: + if(!op1mem) begin //regs + DINW_SEL = 0; // ALU8OUT + ALU160_SEL = 1; // pc + WE = opd[3] ? 6'b110x01 : 6'b110x10; // flags, PC, hi/lo + ALU8OP = {3'b010, FETCH[0], 1'b0}; // inc / dec + REG_WSEL = {1'b0, opd[5:3]}; + end else case({STAGE[1:0], CPUStatus[4]}) + 3'b00_0, 3'b01_1: begin // (HL) - stage1, (X) - stage2 + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = 6'b000001; // lo + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 3'b00_1: begin // (X) - stage1 + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + 3'b01_0, 3'b10_1: begin // (HL) stage2, (X) - stage3 + DO_SEL = 2'b11; // ALU80OUT + ALU160_SEL = 0; // regs + WE = 6'b100x0x; // flags + ALU8OP = {3'b010, FETCH[0], 1'b0}; // inc / dec + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; + next_stage = 1; + REG_WSEL = 4'b0111; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + WR = 1; + end + 3'b10_0, 3'b11_1: begin // (HL) - stage3, (X) - stage 4 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase +// ----------------------- ld r/(HL-X), n -------------------- + 4'b0110, 4'b1110: + case({STAGE[1:0], CPUStatus[4], op1mem}) + 4'b00_0_0, 4'b00_0_1, 4'b00_1_0, 4'b01_1_1: begin // r, (HL) - stage1, (X) - stage2 (read n) + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = opd[3] ? 6'b010001 : 6'b010010; // PC, hi/lo + next_stage = 1; + REG_WSEL = {1'b0, opd[5:4], 1'bx}; + M1 = 0; + end + 4'b01_0_0, 4'b01_1_0, 4'b10_0_1, 4'b11_1_1: begin // r - stage2, (HL) - stage3, (X) - stage4 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + 4'b01_0_1, 4'b10_1_1: begin // (HL) - stage2, (X) - stage3 + DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b000x0x; // nothing + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; + next_stage = 1; + REG_WSEL = 4'b0111; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + WR = 1; + end + 4'b00_1_1: begin // (X) - stage1 + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + endcase +// ----------------------- rlca, rrca, rla, rra, daa, cpl, scf, ccf -------------------- + 4'b0111, 4'b1111: + case(FETCH[5:3]) + 3'b000, 3'b001, 3'b010, 3'b011, 3'b100, 3'b101: begin // rlca, rrca, rla, rra, daa, cpl + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b110x1x; // flags, PC, hi + ALU8OP = FETCH[5] ? {2'b01, !FETCH[3], 2'b01} : {3'b110, FETCH[4:3]}; + REG_WSEL = 4'b0110; // A + end + 3'b110, 3'b111: begin // scf, ccf + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b110x0x; // flags, PC + ALU8OP = {4'b1010, !FETCH[3]}; + end + endcase +// ----------------------- add 16 -------------------- + 4'b1001: + if(!STAGE[0]) begin + DINW_SEL = 0; // ALU8OUT + WE = 6'b100x01; // flags, lo + ALU8OP = 5'b10000; // ADD16LO + next_stage = 1; + REG_WSEL = 4'b0101; // L + REG_RSEL = {op16, 1'b1}; + M1 = 0; + MREQ = 0; + end else begin + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b110x10; // flags, PC, hi + ALU8OP = 5'b10001; // ADD16HI + REG_WSEL = 4'b0100; // H + REG_RSEL = {op16, 1'b0}; + end + endcase + +// ---------------------------------------------- block 01 LD8 --------------------------------------------------- + 4'b0001: + case({STAGE[1:0], CPUStatus[4], op1mem, op0mem}) + 5'b00_0_00, 5'b00_1_00, // LD r, r 1st stage + 5'b01_0_01, // LD r, (HL) 2nd stage + 5'b10_1_01: // LD r, (X) 3rd stage + begin + ALU160_SEL = 1; // PC + DINW_SEL = 0; // ALU8 + WE = opd[3] ? 6'b010x01 : 6'b010x10; // PC and LO or HI + ALU8OP = 29; // PASS D1 + REG_WSEL = {1'b0, opd[5:4], 1'bx}; + REG_RSEL = {1'b0, opd[2:0]}; + end + 5'b00_0_01, // LD r, (HL) 1st stage + 5'b01_1_01: // LD r, (X) 2nd stage + begin + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = 6'b000x01; // LO + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; // ADD - NOP + next_stage = 1; + REG_WSEL = 4'b011x; // A - tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 5'b00_1_01, // LD r, (X) 1st stage + 5'b00_1_10: // LD (X), r 1st stage + begin + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + 5'b00_0_10, // LD (HL), r 1st stage + 5'b01_1_10: // LD (X), r 2nd stage + begin + DO_SEL = 0; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b000x00; // no write + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; // ADD - NOP + next_stage = 1; + REG_WSEL = {1'b0, opd[2:0]}; + REG_RSEL = 4'b010x; // HL + M1 = 0; + WR = 1; + end + 5'b01_0_10, // LD (HL), r 2nd stage + 5'b10_1_10: // LD (X), r 3rd stage + begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + 5'b00_0_11, 5'b00_1_11: begin // HALT + WE = 6'b000x00; // no write + M1 = 0; + MREQ = 0; + HALT = 1; + end + endcase +// ---------------------------------------------- block 10 arith8 --------------------------------------------------- + 4'b0010: + case({STAGE[1:0], CPUStatus[4], op0mem}) + 4'b00_0_0, 4'b00_1_0, // OP r,r 1st stage + 4'b01_0_1, // OP r, (HL) 2nd stage + 4'b10_1_1: // OP r, (X) 3rd stage + begin + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = {4'b110x, ~&FETCH[5:3], 1'bx}; // flags, PC, hi + ALU8OP = {2'b00, FETCH[5:3]}; + REG_WSEL = 4'b0110; // A + REG_RSEL = {1'b0, opd[2:0]}; + end + 4'b00_0_1, // OP r, (HL) 1st stage + 4'b01_1_1: // OP r, (X) 2nd stage + begin + ALU160_SEL = 0; // HL + DINW_SEL = 1; // DI + WE = 6'b000x01; // lo + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; // ADD - NOP + next_stage = 1; + REG_WSEL = 4'b011x; // A-tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 4'b00_1_1: // OP r, (X) 1st stage + begin + ALU160_SEL = 1; // pc + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + endcase +//------------------------------------------- block 11 ---------------------------------------------------- + 4'b0011: + case(FETCH[3:0]) +// ----------------------- RET cc -------------------- + 4'b0000, 4'b1000: + case(STAGE[1:0]) + 2'b00, 2'b01: // stage1, stage2 + if(FlagMux[FETCH[5:3]]) begin // POP addr + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b001x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // SP, lo/hi + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + REG_RSEL = 4'b101x; // SP + M1 = 0; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + 2'b10: begin // stage3 + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp16 + end + endcase +// ----------------------- POP -------------------- + 4'b0001: + case(STAGE[1:0]) + 2'b00, 2'b01: begin + if(op16[2]) begin // AF + WE = STAGE[0] ? 6'b101x1x : 6'b001xx1; // flags, SP, lo/hi + REG_WSEL = {3'b011, STAGE[0] ? 1'b1 : 1'bx}; + if(STAGE[0]) ALU8OP = 30; // FLAGS <- D0 + end else begin // r16 + WE = STAGE[0] ? 6'b001x10 : 6'b001xx1; // SP, lo/hi + REG_WSEL = {1'b0, FETCH[5:4], 1'bx}; + end + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + next_stage = 1; + REG_RSEL = 4'b101x; // SP + M1 = 0; + end + 2'b10: begin // stage3 + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase +// ----------------------- JP cc -------------------- + 4'b0010, 4'b1010: + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage1,2 + if(FlagMux[FETCH[5:3]]) begin + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, hi/lo + next_stage = 1; + REG_WSEL = 4'b111x; // tmp7 + M1 = 0; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = 2; // add2 + end + end + 2'b10: begin // stage3 + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp7 + end + endcase +// ----------------------- JP, OUT (n) A, EX (SP) HL, DI -------------------- + 4'b0011: + case(FETCH[5:4]) + 2'b00: // JP + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage1,2 - read addr + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, hi/lo + next_stage = 1; + REG_WSEL = 4'b111x; // tmp7 + M1 = 0; + end + 2'b10: begin // stage3 + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp7 + end + endcase + 2'b01: // OUT (n), a - stage1 - read n + case(STAGE[1:0]) + 2'b00: begin + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = 6'b010x01; // PC, lo + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + M1 = 0; + end + 2'b01: begin // stage2 - OUT + DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b000x00; // nothing + next_stage = 1; + REG_WSEL = 4'b0110; // A + REG_RSEL = 4'b011x; // A-tmpLO + M1 = 0; + MREQ = 0; + WR = 1; + IORQ = 1; + end + 2'b10: begin // stage3 - fetch + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase + 2'b10: // EX (SP), HL + case(STAGE[2:0]) + 3'b000, 3'b001: begin // stage1,2 - pop tmp16 + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b001x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // SP, lo/hi + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + REG_RSEL = 4'b101x; // SP + M1 = 0; + end + 3'b010, 3'b011: begin // stage3,4 - push hl + DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // dec + next_stage = 1; + REG_WSEL = {3'b010, STAGE[0]};// H/L + REG_RSEL = 4'b101x; // SP + M1 = 0; + WR = 1; + end + 3'b100, 3'b101: begin // stage5,6 + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = {1'b0, STAGE[0], 2'b0x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, lo/hi + ALU8OP = 29; // pass D1 + next_stage = !STAGE[0]; + REG_WSEL = 4'b010x; // HL + REG_RSEL = {3'b111, !STAGE[0]}; // tmp16 + M1 = STAGE[0]; + MREQ = STAGE[0]; + end + endcase + 2'b11: begin // DI + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[11] = 1'b1; // set IFF flags + status[7:6] = 2'b00; + end + endcase +// ----------------------- CALL cc -------------------- + 4'b0100, 4'b1100: + case(STAGE[2:0]) + 3'b000, 3'b001: // stage 1,2 - load addr + if(FlagMux[FETCH[5:3]]) begin + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, hi/lo + next_stage = 1; + REG_WSEL = 4'b111x; // tmp7 + M1 = 0; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = 2; // add2 + end + 3'b010, 3'b011: begin // stage 3,4 - push pc + DO_SEL = {1'b0, STAGE[0]}; // pc hi/lo + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // DEC + next_stage = 1; + REG_WSEL = 4'b1xxx; // pc + REG_RSEL = 4'b101x; // sp + M1 = 0; + WR = 1; + end + 3'b100: begin // stage5 + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp7 + end + endcase +// ----------------------- PUSH -------------------- + 4'b0101: + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage1,2 + DO_SEL = {STAGE[0] & op16[2], 1'b0}; // FLAGS/ALU80 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // dec + next_stage = 1; + REG_WSEL = {1'b0, FETCH[5:4], STAGE[0]}; + REG_RSEL = 4'b101x; // SP + M1 = 0; + WR = 1; + end + 2'b10: begin //stage3 + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase +// ----------------------- op A, n -------------------- + 4'b0110, 4'b1110: + if(!STAGE[0]) begin // stage1, read n + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = 6'b010x01; // PC, lo + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + M1 = 0; + end else begin // stage 2 + DINW_SEL = 0; // ALU8OUT[7:0] + ALU160_SEL = 1; // pc + WE = {4'b110x, ~&FETCH[5:3], 1'bx}; // flags, PC, hi + ALU8OP = {2'b00, FETCH[5:3]}; + REG_WSEL = 4'b0110; // A + REG_RSEL = 4'b0111; // tmpLO + end +// ----------------------- RST -------------------- + 4'b0111, 4'b1111: + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage 1,2 - push pc + DO_SEL = {1'b0, STAGE[0]}; // pc hi/lo + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // DEC + next_stage = 1; + REG_WSEL = 4'b1xxx; // pc + REG_RSEL = 4'b101x; // sp + M1 = 0; + WR = 1; + end + 2'b10: begin // stage3 + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b110x; // const + end + endcase +// ----------------------- RET, EXX, JP (HL), LD SP HL -------------------- + 4'b1001: + case(FETCH[5:4]) + 2'b00: // RET + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage1, stage2 - pop addr + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b001x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // SP, lo/hi + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + REG_RSEL = 4'b101x; // SP + M1 = 0; + end + 2'b10: begin // stage3 - jump + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp16 + end + endcase + 2'b01: begin // EXX + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[1] = 1; + end + 2'b10: begin // JP (HL) + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b010x; // HL + end + 2'b11: begin // LD SP,HL + if(!STAGE[0]) begin // stage1 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 4; // NOP, no post inc + next_stage = 1; + REG_RSEL = 4'b010x; // HL + M1 = 0; + MREQ = 0; + end else begin // stage2 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + end + endcase +// ----------------------- CB, IN A (n), EX DE HL, EI -------------------- + 4'b1011: + case(FETCH[5:4]) + 2'b00: // CB prefix + case({STAGE[0], CPUStatus[4]}) + 2'b00, 2'b11: begin + ALU160_SEL = 1; // PC + WE = 6'b010000; // PC + fetch98 = 2'b10; + end + 2'b01: begin + ALU160_SEL = 1; // PC + WE = 6'b010100; // PC, tmpHI + next_stage = 1; + M1 = 0; + end + endcase + 2'b01: // IN A, (n) + case(STAGE[1:0]) + 2'b00: begin //stage1 - read n + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = 6'b010x01; // PC, lo + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + M1 = 0; + end + 2'b01: begin // stage2 - IN + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = 6'b000x1x; // hi + next_stage = 1; + REG_WSEL = 4'b011x; // A + REG_RSEL = 4'b011x; // A - tmpLO + M1 = 0; + MREQ = 0; + IORQ = 1; + end + 2'b10: begin // stage3 - fetch + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase + 2'b10: begin // EX DE, HL + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + if(CPUStatus[1]) status[3] = 1; + else status[2] = 1; + end + 2'b11: begin // EI + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[11] = 1'b1; + status[7:6] = 2'b11; + end + endcase +// ----------------------- CALL , IX, ED, IY -------------------- + 4'b1101: + case(FETCH[5:4]) + 2'b00: // CALL + case(STAGE[2:0]) + 3'b000, 3'b001: begin // stage 1,2 - load addr + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, hi/lo + next_stage = 1; + REG_WSEL = 4'b111x; // tmp7 + M1 = 0; + end + 3'b010, 3'b011: begin // stage 3,4 - push pc + DO_SEL = {1'b0, STAGE[0]}; // pc hi/lo + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // DEC + next_stage = 1; + REG_WSEL = 4'b1xxx; // pc + REG_RSEL = 4'b101x; // sp + M1 = 0; + WR = 1; + end + 3'b100: begin // stage5 - jump + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp7 + end + endcase + 2'b01: begin // DD - IX + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[5:4] = 2'b01; + end + 2'b10: begin // ED prefix + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + fetch98 = 2'b01; + end + 2'b11: begin // FD - IY + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[5:4] = 2'b11; + end + endcase + endcase + +// ------------------------------------------- ED + opcode ---------------------------------------------------- + 4'b0100, 4'b0111: begin // ED + 2'b00, ED + 2'b11 = NOP + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + 4'b0101: + case(FETCH[2:0]) +// ----------------------- in r (C) -------------------- + 3'b000: + if(!STAGE[0]) begin + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b000x, !opd[3], opd[3]} ; // hi/lo + next_stage = 1; + REG_WSEL = {1'b0, opd[5:4], 1'bx}; + REG_RSEL = 4'b000x; // BC + M1 = 0; + MREQ = 0; + IORQ = 1; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b110x00; // flags, PC + ALU8OP = 29; // IN + REG_RSEL = {1'b0, opd[5:3]}; // reg + end +// ----------------------- out (C) r -------------------- + 3'b001: + if(!STAGE[0]) begin + DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b000x00; // nothing + next_stage = 1; + REG_WSEL = &opd[5:3] ? 4'b110x : {1'b0, opd[5:3]}; // zero/reg + REG_RSEL = 4'b000x; // BC + M1 = 0; + MREQ = 0; + WR = 1; + IORQ = 1; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end +// ----------------------- SBC16, ADC16 -------------------- + 3'b010: + if(!STAGE[0]) begin // stage1 + DINW_SEL = 0; // ALU8OUT + WE = 6'b100x01; // flags, lo + ALU8OP = {3'b000, !FETCH[3], 1'b1}; // SBC/ADC + next_stage = 1; + REG_WSEL = 4'b0101; // L + REG_RSEL = {op16, 1'b1}; + M1 = 0; + MREQ = 0; + end else begin + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b110x10; // flags, PC, hi + ALU8OP = {3'b000, !FETCH[3], 1'b1}; + REG_WSEL = 4'b0100; // H + REG_RSEL = {op16, 1'b0}; + end +// ----------------------- LD (nn) r16, ld r16 (nn) -------------------- + 3'b011: + case(STAGE[2:1]) + 2'b00: begin // stage 1,2 - read address + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = {4'b010x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // PC, hi/lo + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + M1 = 0; + end + 2'b01: begin + ALU160_SEL = 0; // regs + next_stage = 1; + ALU16OP = {2'b00, STAGE[0]}; + REG_RSEL = 4'b111x; // tmp16 + REG_WSEL = {op16, !STAGE[0]}; + M1 = 0; + if(FETCH[3]) begin // LD rr, (nn) - stage3,4 + DINW_SEL = 1; // DI + WE = {4'b000x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // lo + end else begin // LD (nn), rr - stage3,4 + DO_SEL = op16[2] ? {1'b1, !STAGE[0]} : 2'b00; // ALU80/sp + WE = 6'b000x00; // nothing + WR = 1; + end + end + 2'b10: // stage5 + if(FETCH[3] & op16[2] & !STAGE[0]) begin // LD sp, (nn) - stage5 + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 4; // NOP + next_stage = 1; + REG_RSEL = 4'b101x; // tmp SP + M1 = 0; + MREQ = 0; + end else begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase +// ----------------------- NEG -------------------- + 3'b100: begin + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + WE = 6'b110x10; // flags, PC, hi + ALU8OP = 5'b11111; // NEG + REG_WSEL = 4'b011x; // A + REG_RSEL = 4'b0110; // A + end +// ----------------------- RETN, RETI -------------------- + 3'b101: + case(STAGE[1:0]) + 2'b00, 2'b01: begin // stage1, stage2 - pop addr + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b001x, STAGE[0] ? 1'b1 : 1'bx, !STAGE[0]}; // SP, lo/hi + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + REG_RSEL = 4'b101x; // SP + M1 = 0; + end + 2'b10: begin // stage3 - jump + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp16 + status[11] = 1'b1; + status[7:6] = {CPUStatus[7], CPUStatus[7]}; + end + endcase +// ----------------------- IM -------------------- + 3'b110: begin + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + status[10:8] = {1'b1, FETCH[4:3]}; + end +// ----------------------- LD I A, LD R A, LD A I, LD A R, RRD, RLD -------------------- + 3'b111: + case(FETCH[5:4]) + 2'b00: begin // LD I/R A + ALU160_SEL = 1; // pc + DINW_SEL = 1'b0; // ALU8OUT + WE = {4'b010x, !FETCH[3], FETCH[3]}; // PC, hi/lo + ALU8OP = 29; // pass D1 + REG_WSEL = 4'b1001; // IR, write r + REG_RSEL = 4'b0110; // A + end + 2'b01: begin // LD A I/R + ALU160_SEL = 1; // pc + DINW_SEL = 1'b0; // ALU8OUT + WE = 6'b110x1x; // flags, PC, hi + ALU8OP = 29; // PASS D1 + REG_WSEL = 4'b011x; // A + REG_RSEL = {3'b100, FETCH[3]};// I/R + end + 2'b10: // RRD, RLD + case(STAGE[1:0]) + 2'b00:begin // stage1, read data + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = 6'b000x01; // lo + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 2'b01: begin // stage2, shift data + DINW_SEL = 0; // ALU8OUT + WE = 6'b100x11; // flags, hi, lo + ALU8OP = FETCH[3] ? 5'b01100 : 5'b01011; // RRD/RLD + next_stage = 1; + REG_WSEL = 4'b0110; // A + REG_RSEL = 4'b0111; // tmpLO + M1 = 0; + MREQ = 0; + end + 2'b10: begin // stage3 - write + DO_SEL = 2'b00; // ALU80 + ALU160_SEL = 0; // regs + WE = 6'b000x0x; // nothing + next_stage = 1; + REG_WSEL = 4'b0111; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + WR = 1; + end + 2'b11: begin + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase + 2'b11: begin // NOP + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase + endcase +// ----------------------- block instructions -------------------- + 4'b0110: + if({FETCH[5], FETCH[2]} == 4'b10) + case(FETCH[1:0]) + 2'b00: // LDI, LDD, LDIR, LDDR + case(STAGE[1:0]) + 2'b00: begin // stage1, read data, inc/dec HL + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b100111; // flags, tmpHI, hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC/DEC16 + next_stage = 1; + REG_WSEL = 4'b0100; // H + REG_RSEL = 4'b0101; // L + M1 = 0; + end + 2'b01: begin // stage2, dec BC + DINW_SEL = 0; // ALU8OUT + WE = 6'b100011; // flags, hi, lo (affects PF only) + ALU8OP = 5'b01111; // DEC + next_stage = 1; + REG_WSEL = 4'b0000; // B + REG_RSEL = 4'b0001; // C + M1 = 0; + MREQ = 0; + end + 2'b10: begin // stage2, write data, inc/dec DE + DO_SEL = 2'b01; // th + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b000x11; // hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC / DEC + next_stage = FETCH[4] ? !FLAGS[2] : 1'b1; + REG_WSEL = 4'b0010; // D + REG_RSEL = 4'b0011; // E + M1 = 0; + WR = 1; + end + 2'b11: begin + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end + endcase + 2'b01: // CPI, CPD, CPIR, CPDR + case(STAGE[1:0]) + 2'b00: begin // stage1, load data + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = 6'b000x01; // lo + next_stage = 1; + REG_WSEL = 4'b011x; // tmpLO + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 2'b01: begin // stage2, CP + WE = 6'b100x0x; // flags + ALU8OP = 7; // CP + next_stage = 1; + REG_WSEL = 4'b0110; // A + REG_RSEL = 4'b0111; // tmpLO + M1 = 0; + MREQ = 0; + end + 2'b10: begin // stage3, dec BC + DINW_SEL = 0; // ALU8OUT + WE = 6'b100x11; // flags, hi, lo + ALU8OP = 5'b01111; // DEC16 + next_stage = 1; + REG_WSEL = 4'b0000; // B + REG_RSEL = 4'b0001; // C + M1 = 0; + MREQ = 0; + end + 2'b11: begin // stage4, inc/dec HL + ALU160_SEL = 1; // pc + DINW_SEL = 0; // ALU8OUT + M1 = FETCH[4] ? (!FLAGS[2] || FLAGS[6]) : 1'b1; + WE = {1'b0, M1, 4'b0x11}; // PC, hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC / DEC + REG_WSEL = 4'b0100; // H + REG_RSEL = 4'b0101; // L + MREQ = M1; + end + endcase + 2'b10: // INI, IND, INIR, INDR + case(STAGE[1:0]) + 2'b00: begin // stage1, in data, dec B + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b100110; // flags, tmpHI, hi + ALU8OP = 10; // DEC + next_stage = 1; + REG_WSEL = 4'b0000; // B + REG_RSEL = 4'b000x; // BC + M1 = 0; + MREQ = 0; + IORQ = 1; + end + 2'b01: begin // stage2, write data, inc/dec HL + DO_SEL = 2'b01; // th + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b000x11; // hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC / DEC + next_stage = FETCH[4] ? FLAGS[6] : 1'b1; + REG_WSEL = 4'b0100; // H + REG_RSEL = 4'b0101; // L + M1 = 0; + WR = 1; + end + 2'b10: begin // stage3 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase + 2'b11: // OUTI/OUTD/OTIR/OTDR + case(STAGE[1:0]) + 2'b00: begin // stage1, load data, inc/dec HL + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b000111; // tmpHI, hi, lo + ALU8OP = {4'b0111, FETCH[3]}; // INC / DEC + next_stage = 1; + REG_WSEL = 4'b0100; // H + REG_RSEL = 4'b0101; // L + M1 = 0; + end + 2'b01: begin // stage2, out data, dec B + DO_SEL = 2'b01; // th + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'b100x10; // flags, hi + ALU8OP = 10; // DEC + next_stage = FETCH[4] ? (ALU80 == 8'b00000001) : 1'b1; + REG_WSEL = 4'b0000; // B + REG_RSEL = 4'b000x; // BC + M1 = 0; + MREQ = 0; + IORQ = 1; + WR = 1; + end + 2'b10: begin // stage3 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase + endcase + else begin // NOP + ALU160_SEL = 1; // PC + WE = 6'b010x00; // PC + end +//------------------------------------------- CB + opcode ---------------------------------------------------- + 4'b1000, 4'b1001, 4'b1010, 4'b1011: // CB class (rot/shift, bit/res/set) + case({STAGE[1:0], CPUStatus[4], op0mem}) + 4'b00_0_0: begin // execute reg-reg + DINW_SEL = 0; // ALU8OUT + ALU160_SEL = 1; // pc + WE = {!FETCH[7], 3'b10x, FETCH[7:6] == 2'b01 ? 2'b00 : {!opd[0], opd[0]}}; // flags, hi/lo + ALU8OP = 28; // BIT + REG_WSEL = {1'b0, opd[2:0]}; + end + 4'b00_0_1, 4'b00_1_0, 4'b00_1_1: begin // stage1, (HL-X) - read data + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = opd[0] ? 6'b000001 : 6'b000010; // lo/hi + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; // ADD - NOP + next_stage = 1; + REG_WSEL = FETCH[7:6] == 2'b01 ? 4'b111x : {1'b0, opd[2:0]}; // dest, tmp16 for BIT + REG_RSEL = 4'b010x; // HL + M1 = 0; + end + 4'b01_0_1, 4'b01_1_0, 4'b01_1_1: // stage2 (HL-X) - execute, write + case(FETCH[7:6]) + 2'b00, 2'b10, 2'b11: begin // exec + write + DINW_SEL = 0; // ALU8OUT + DO_SEL = 2'b11; // ALU8OUT[7:0] + ALU160_SEL = 0; // regs + WE = {!FETCH[7], 3'b00x, !opd[0], opd[0]}; // flags, hi/lo + ALU8OP = 28; + ALU16OP = CPUStatus[4] ? 3'd3 : 3'd0; + next_stage = 1; + REG_WSEL = {1'b0, opd[2:0]}; + REG_RSEL = 4'b010x; // HL + M1 = 0; + WR = 1; + end + 2'b01: begin // BIT, no write + ALU160_SEL = 1; // pc + WE = 6'b110xxx; // flags, PC + ALU8OP = 28; // BIT + REG_WSEL = {3'b111, opd[0]}; // tmp + end + endcase + 4'b10_0_1, 4'b10_1_0, 4'b10_1_1: begin // (HL-X) - load next op + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + end + endcase +//------------------------------------------- // RST, NMI, INT ---------------------------------------------------- + 4'b1110: begin // RESET: IR <- 0, IM <- 0, IFF1,IFF2 <- 0, pC <- 0 + ALU160_SEL = 0; // regs + DINW_SEL = 0; // ALU8OUT + WE = 6'bx1xx11; // PC, hi, lo + ALU8OP = 29; // pass D1 + ALU16OP = 4; // NOP + REG_WSEL = 4'b1001; // IR, write r + REG_RSEL = 4'b110x; // const + M1 = 0; + MREQ = 0; + status[11:6] = 6'b110000; // IM0, DI + end + 4'b1101: // NMI + case(STAGE[1:0]) + 2'b00: begin + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = intop; // DEC/DEC2 (if block instruction interrupted) + next_stage = 1; + M1 = 0; + MREQ = 0; + end + 2'b01, 2'b10: begin + DO_SEL = {1'b0, !STAGE[0]}; // pc hi/lo + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // DEC + next_stage = 1; + REG_WSEL = 4'b1xxx; // pc + REG_RSEL = 4'b101x; // sp + M1 = 0; + WR = 1; + status[11] = 1'b1; + status[7:6] = {CPUStatus[7], 1'b0}; // reset IFF1 + end + 2'b11: begin + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b110x; // const + end + endcase + 4'b1100: // INT + case(CPUStatus[9:8]) + 2'b00, 2'b01, 2'b10: begin // IM0, IM1 + ALU160_SEL = 1; // pc + WE = 6'b010x00; // PC + ALU16OP = intop; // DEC/DEC2 (if block instruction interrupted) + MREQ = 0; + IORQ = 1; + status[11] = 1'b1; + status[7:6] = 2'b0; // reset IFF1, IFF2 + end + 2'b11: // IM2 + case(STAGE[2:0]) + 3'b000: begin + ALU160_SEL = 1; // pc + DINW_SEL = 1; // DI + WE = 6'b010x01; // PC, lo + ALU16OP = intop; // DEC/DEC2 (if block instruction interrupted) + next_stage = 1; + REG_WSEL = 4'b1000; // Itmp, no write r + MREQ = 0; + IORQ = 1; + status[11] = 1'b1; + status[7:6] = 2'b0; // reset IFF1, IFF2 + end + 3'b001, 3'b010: begin // push pc + DO_SEL = {1'b0, !STAGE[0]}; // pc hi/lo + ALU160_SEL = 0; // regs + WE = 6'b001x00; // SP + ALU16OP = 5; // DEC + next_stage = 1; + REG_WSEL = 4'b1xxx; // pc + REG_RSEL = 4'b101x; // sp + M1 = 0; + WR = 1; + end + 3'b011, 3'b100: begin // read address + ALU160_SEL = 0; // regs + DINW_SEL = 1; // DI + WE = {4'b0x0x, STAGE[0] ? 1'bx : 1'b1, STAGE[0]}; // hi/lo + ALU16OP = {2'b00, !STAGE[0]};// NOP/INC + next_stage = 1; + REG_WSEL = 4'b111x; // tmp16 + REG_RSEL = 4'b1000; // I-Itmp + M1 = 0; + end + 3'b101: begin // jump + ALU160_SEL = 0; // regs + WE = 6'b010x00; // PC + REG_RSEL = 4'b111x; // tmp16 + end + endcase + endcase + endcase + end + +endmodule diff --git a/common/Sound/opl3/NextZ80Reg.v b/common/Sound/opl3/NextZ80Reg.v new file mode 100644 index 00000000..424ae904 --- /dev/null +++ b/common/Sound/opl3/NextZ80Reg.v @@ -0,0 +1,202 @@ +////////////////////////////////////////////////////////////////////////////////// +// +// This file is part of the NextZ80 project +// http://www.opencores.org/cores/nextz80/ +// +// Filename: NextZ80Regs.v +// Description: Implementation of Z80 compatible CPU - registers +// Version 1.0 +// Creation date: 28Jan2011 - 18Mar2011 +// +// Author: Nicolae Dumitrache +// e-mail: ndumitrache@opencores.org +// +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2011 Nicolae Dumitrache +// +// This source file may be used and distributed without +// restriction provided that this copyright statement is not +// removed from the file and that any derivative work contains +// the original copyright notice and the associated disclaimer. +// +// This source file 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 source is distributed in the hope that 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 source; if not, download it +// from http://www.opencores.org/lgpl.shtml +// +/////////////////////////////////////////////////////////////////////////////////// + +// altera message_off 10027 + +`timescale 1ns / 1ps + +module Z80Reg( + input wire [7:0]rstatus, // 0=af-af', 1=exx, 2=hl-de, 3=hl'-de',4=hl-ixy, 5=ix-iy, 6=IFF1, 7=IFF2 + input wire M1, + input wire [5:0]WE, // 5 = flags, 4 = PC, 3 = SP, 2 = tmpHI, 1 = hi, 0 = lo + input wire CLK, + input wire [15:0]ALU8OUT, // CPU data out bus (output of alu8) + input wire [7:0]DI, // CPU data in bus + output reg [7:0]DO, // CPU data out bus + input wire [15:0]ADDR, // CPU addr bus + input wire [7:0]CONST, + output reg [7:0]ALU80, + output reg [7:0]ALU81, + output reg [15:0]ALU160, + output wire[7:0]ALU161, + input wire [7:0]ALU8FLAGS, + output wire [7:0]FLAGS, + + input wire [1:0]DO_SEL, // select DO betwen ALU8OUT lo and th register + input wire ALU160_sel, // 0=REG_RSEL, 1=PC + input wire [3:0]REG_WSEL, // rdow: [3:1] 0=BC, 1=DE, 2=HL, 3=A-TL, 4=I-x ----- [0] = 0HI,1LO + input wire [3:0]REG_RSEL, // mux_rdor: [3:1] 0=BC, 1=DE, 2=HL, 3=A-TL, 4=I-R, 5=SP, 7=tmpSP ----- [0] = 0HI, 1LO + input wire DINW_SEL, // select RAM write data between (0)ALU8OUT, and 1(DI) + input wire XMASK, // 0 if REG_WSEL should not use IX, IY, even if rstatus[4] == 1 + input wire [2:0]ALU16OP, // ALU16OP + input wire WAIT // wait + ); + +// latch registers + reg [15:0]pc=0; // program counter + reg [15:0]sp; // stack pointer + reg [7:0]r; // refresh + reg [15:0]flg = 0; + reg [7:0]th; // temp high + +// internal wires + wire [15:0]rdor; // R out from RAM + wire [15:0]rdow; // W out from RAM + wire [3:0]SELW; // RAM W port sel + wire [3:0]SELR; // RAM R port sel + reg [15:0]DIN; // RAM W in data + reg [15:0]mux_rdor; // (3)A reversed mixed with TL, (4)I mixed with R (5)SP + +//------------------------------------ RAM block registers ---------------------------------- +// 0:BC, 1:DE, 2:HL, 3:A-x, 4:I-x, 5:IX, 6:IY, 7:x-x, 8:BC', 9:DE', 10:HL', 11:A'-x, 12: tmpSP, 13:zero + RAM16X8D_regs regs_lo ( + .DPO(rdor[7:0]), // Read-only data output + .SPO(rdow[7:0]), // R/W data output + .A(SELW), // R/W address + .D(DIN[7:0]), // Write data input + .DPRA(SELR), // Read-only address + .WCLK(CLK), // Write clock input + .WE(WE[0] & !WAIT) // Write enable input + ); + + RAM16X8D_regs regs_hi ( + .DPO(rdor[15:8]), // Read-only data output + .SPO(rdow[15:8]), // R/W data output + .A(SELW), // R/W address + .D(DIN[15:8]), // Write data input + .DPRA(SELR), // Read-only address + .WCLK(CLK), // Write clock input + .WE(WE[1] & !WAIT) // Write enable input + ); + + wire [15:0]ADDR1 = ADDR + !ALU16OP[2]; // address post increment + wire [7:0]flgmux = {ALU8FLAGS[7:3], SELR[3:0] == 4'b0100 ? rstatus[7] : ALU8FLAGS[2], ALU8FLAGS[1:0]}; // LD A, I/R IFF2 flag on parity + always @(posedge CLK) + if(!WAIT) begin + if(WE[2]) th <= DI; + if(WE[3]) sp <= ADDR1; + if(WE[4]) pc <= ADDR1; + if({REG_WSEL, WE[0]} == 5'b10011) r <= ALU8OUT[7:0]; + else if(M1) r[6:0] <= r[6:0] + 1'd1; + if(WE[5]) + if(rstatus[0]) flg[15:8] <= flgmux; + else flg[7:0] <= flgmux; + end + + assign ALU161 = th; + assign FLAGS = rstatus[0] ? flg[15:8] : flg[7:0]; + + always @* begin + DIN = DINW_SEL ? {DI, DI} : ALU8OUT; + ALU80 = REG_WSEL[0] ? rdow[7:0] : rdow[15:8]; + ALU81 = REG_RSEL[0] ? mux_rdor[7:0] : mux_rdor[15:8]; + ALU160 = ALU160_sel ? pc : mux_rdor; + + case({REG_WSEL[3], DO_SEL}) + 0: DO = ALU80; + 1: DO = th; + 2: DO = FLAGS; + 3: DO = ALU8OUT[7:0]; + 4: DO = pc[15:8]; + 5: DO = pc[7:0]; + 6: DO = sp[15:8]; + 7: DO = sp[7:0]; + endcase + case({ALU16OP == 4, REG_RSEL[3:0]}) + 5'b01001, 5'b11001: mux_rdor = {rdor[15:8], r}; + 5'b01010, 5'b01011: mux_rdor = sp; + 5'b01100, 5'b01101, 5'b11100, 5'b11101: mux_rdor = {8'b0, CONST}; + default: mux_rdor = rdor; + endcase + end + + RegSelect WSelectW(.SEL(REG_WSEL[3:1]), .RAMSEL(SELW), .rstatus({rstatus[5], rstatus[4] & XMASK, rstatus[3:0]})); + RegSelect WSelectR(.SEL(REG_RSEL[3:1]), .RAMSEL(SELR), .rstatus(rstatus[5:0])); + +endmodule + + +module RegSelect( + input [2:0]SEL, + output reg [3:0]RAMSEL, + input [5:0]rstatus // 0=af-af', 1=exx, 2=hl-de, 3=hl'-de',4=hl-ixy, 5=ix-iy + ); + + always @* begin + RAMSEL = 4'bxxxx; + case(SEL) + 0: RAMSEL = {rstatus[1], 3'b000}; // BC + 1: //DE + if(rstatus[{1'b1, rstatus[1]}]) RAMSEL = {rstatus[1], 3'b010}; // HL + else RAMSEL = {rstatus[1], 3'b001}; // DE + 2: // HL + case({rstatus[5:4], rstatus[{1'b1, rstatus[1]}]}) + 0,4: RAMSEL = {rstatus[1], 3'b010}; // HL + 1,5: RAMSEL = {rstatus[1], 3'b001}; // DE + 2,3: RAMSEL = 4'b0101; // IX + 6,7: RAMSEL = 4'b0110; // IY + endcase + 3: RAMSEL = {rstatus[0], 3'b011}; // A-TL + 4: RAMSEL = 4; // I-R + 5: RAMSEL = 12; // tmp SP + 6: RAMSEL = 13; // zero + 7: RAMSEL = 7; // temp reg for BIT/SET/RES + endcase + end +endmodule + +module RAM16X8D_regs( + output [7:0]DPO, // Read-only data output + output [7:0]SPO, // R/W data output + input [3:0]A, // R/W address + input [7:0]D, // Write data input + input [3:0]DPRA, // Read-only address + input WCLK, // Write clock + input WE // Write enable + ); + + reg [7:0]data[15:0]; + assign DPO = data[DPRA]; + assign SPO = data[A]; + + always @(posedge WCLK) + if(WE) data[A] <= D; + +endmodule diff --git a/common/Sound/opl3/compressor.sv b/common/Sound/opl3/compressor.sv new file mode 100644 index 00000000..93d69f2b --- /dev/null +++ b/common/Sound/opl3/compressor.sv @@ -0,0 +1,297 @@ +//============================================================================ +// Audio compressor (signed samples) +// +// Copyright (C) 2018 Sorgelig +// +// This program is free software; you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 of the License, or (at your option) +// any later version. +// +// This program is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +// more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +//============================================================================ + +module compressor +( + input clk, + input ce, + input [11:0] in1, in2, + output [15:0] out1, out2 +); + +always @(posedge clk) if(ce) out1 <= {in1[11], in1[11] ? ~tbl[~in1[10:0]] : tbl[in1[10:0]]}; +always @(posedge clk) if(ce) out2 <= {in2[11], in2[11] ? ~tbl[~in2[10:0]] : tbl[in2[10:0]]}; + +wire [14:0] tbl[0:2047] = +'{ +/* + //sin(x) + 15'h0000, 15'h0019, 15'h0032, 15'h004B, 15'h0064, 15'h007D, 15'h0096, 15'h00B0, 15'h00C9, 15'h00E2, 15'h00FB, 15'h0114, 15'h012D, 15'h0146, 15'h0160, 15'h0179, + 15'h0192, 15'h01AB, 15'h01C4, 15'h01DD, 15'h01F6, 15'h0210, 15'h0229, 15'h0242, 15'h025B, 15'h0274, 15'h028D, 15'h02A6, 15'h02BF, 15'h02D9, 15'h02F2, 15'h030B, + 15'h0324, 15'h033D, 15'h0356, 15'h036F, 15'h0389, 15'h03A2, 15'h03BB, 15'h03D4, 15'h03ED, 15'h0406, 15'h041F, 15'h0439, 15'h0452, 15'h046B, 15'h0484, 15'h049D, + 15'h04B6, 15'h04CF, 15'h04E8, 15'h0502, 15'h051B, 15'h0534, 15'h054D, 15'h0566, 15'h057F, 15'h0598, 15'h05B1, 15'h05CB, 15'h05E4, 15'h05FD, 15'h0616, 15'h062F, + 15'h0648, 15'h0661, 15'h067A, 15'h0693, 15'h06AD, 15'h06C6, 15'h06DF, 15'h06F8, 15'h0711, 15'h072A, 15'h0743, 15'h075C, 15'h0775, 15'h078E, 15'h07A8, 15'h07C1, + 15'h07DA, 15'h07F3, 15'h080C, 15'h0825, 15'h083E, 15'h0857, 15'h0870, 15'h0889, 15'h08A3, 15'h08BC, 15'h08D5, 15'h08EE, 15'h0907, 15'h0920, 15'h0939, 15'h0952, + 15'h096B, 15'h0984, 15'h099D, 15'h09B6, 15'h09CF, 15'h09E9, 15'h0A02, 15'h0A1B, 15'h0A34, 15'h0A4D, 15'h0A66, 15'h0A7F, 15'h0A98, 15'h0AB1, 15'h0ACA, 15'h0AE3, + 15'h0AFC, 15'h0B15, 15'h0B2E, 15'h0B47, 15'h0B60, 15'h0B79, 15'h0B92, 15'h0BAC, 15'h0BC5, 15'h0BDE, 15'h0BF7, 15'h0C10, 15'h0C29, 15'h0C42, 15'h0C5B, 15'h0C74, + 15'h0C8D, 15'h0CA6, 15'h0CBF, 15'h0CD8, 15'h0CF1, 15'h0D0A, 15'h0D23, 15'h0D3C, 15'h0D55, 15'h0D6E, 15'h0D87, 15'h0DA0, 15'h0DB9, 15'h0DD2, 15'h0DEB, 15'h0E04, + 15'h0E1D, 15'h0E36, 15'h0E4F, 15'h0E68, 15'h0E81, 15'h0E9A, 15'h0EB3, 15'h0ECC, 15'h0EE5, 15'h0EFE, 15'h0F17, 15'h0F30, 15'h0F49, 15'h0F62, 15'h0F7B, 15'h0F94, + 15'h0FAC, 15'h0FC5, 15'h0FDE, 15'h0FF7, 15'h1010, 15'h1029, 15'h1042, 15'h105B, 15'h1074, 15'h108D, 15'h10A6, 15'h10BF, 15'h10D8, 15'h10F1, 15'h110A, 15'h1123, + 15'h113B, 15'h1154, 15'h116D, 15'h1186, 15'h119F, 15'h11B8, 15'h11D1, 15'h11EA, 15'h1203, 15'h121C, 15'h1234, 15'h124D, 15'h1266, 15'h127F, 15'h1298, 15'h12B1, + 15'h12CA, 15'h12E3, 15'h12FB, 15'h1314, 15'h132D, 15'h1346, 15'h135F, 15'h1378, 15'h1391, 15'h13A9, 15'h13C2, 15'h13DB, 15'h13F4, 15'h140D, 15'h1426, 15'h143E, + 15'h1457, 15'h1470, 15'h1489, 15'h14A2, 15'h14BB, 15'h14D3, 15'h14EC, 15'h1505, 15'h151E, 15'h1537, 15'h154F, 15'h1568, 15'h1581, 15'h159A, 15'h15B3, 15'h15CB, + 15'h15E4, 15'h15FD, 15'h1616, 15'h162E, 15'h1647, 15'h1660, 15'h1679, 15'h1691, 15'h16AA, 15'h16C3, 15'h16DC, 15'h16F4, 15'h170D, 15'h1726, 15'h173F, 15'h1757, + 15'h1770, 15'h1789, 15'h17A1, 15'h17BA, 15'h17D3, 15'h17EC, 15'h1804, 15'h181D, 15'h1836, 15'h184E, 15'h1867, 15'h1880, 15'h1898, 15'h18B1, 15'h18CA, 15'h18E2, + 15'h18FB, 15'h1914, 15'h192C, 15'h1945, 15'h195E, 15'h1976, 15'h198F, 15'h19A8, 15'h19C0, 15'h19D9, 15'h19F2, 15'h1A0A, 15'h1A23, 15'h1A3B, 15'h1A54, 15'h1A6D, + 15'h1A85, 15'h1A9E, 15'h1AB6, 15'h1ACF, 15'h1AE8, 15'h1B00, 15'h1B19, 15'h1B31, 15'h1B4A, 15'h1B62, 15'h1B7B, 15'h1B94, 15'h1BAC, 15'h1BC5, 15'h1BDD, 15'h1BF6, + 15'h1C0E, 15'h1C27, 15'h1C3F, 15'h1C58, 15'h1C70, 15'h1C89, 15'h1CA1, 15'h1CBA, 15'h1CD2, 15'h1CEB, 15'h1D03, 15'h1D1C, 15'h1D34, 15'h1D4D, 15'h1D65, 15'h1D7E, + 15'h1D96, 15'h1DAF, 15'h1DC7, 15'h1DE0, 15'h1DF8, 15'h1E10, 15'h1E29, 15'h1E41, 15'h1E5A, 15'h1E72, 15'h1E8B, 15'h1EA3, 15'h1EBB, 15'h1ED4, 15'h1EEC, 15'h1F05, + 15'h1F1D, 15'h1F35, 15'h1F4E, 15'h1F66, 15'h1F7F, 15'h1F97, 15'h1FAF, 15'h1FC8, 15'h1FE0, 15'h1FF8, 15'h2011, 15'h2029, 15'h2041, 15'h205A, 15'h2072, 15'h208A, + 15'h20A3, 15'h20BB, 15'h20D3, 15'h20EC, 15'h2104, 15'h211C, 15'h2134, 15'h214D, 15'h2165, 15'h217D, 15'h2196, 15'h21AE, 15'h21C6, 15'h21DE, 15'h21F7, 15'h220F, + 15'h2227, 15'h223F, 15'h2257, 15'h2270, 15'h2288, 15'h22A0, 15'h22B8, 15'h22D1, 15'h22E9, 15'h2301, 15'h2319, 15'h2331, 15'h2349, 15'h2362, 15'h237A, 15'h2392, + 15'h23AA, 15'h23C2, 15'h23DA, 15'h23F3, 15'h240B, 15'h2423, 15'h243B, 15'h2453, 15'h246B, 15'h2483, 15'h249B, 15'h24B3, 15'h24CB, 15'h24E4, 15'h24FC, 15'h2514, + 15'h252C, 15'h2544, 15'h255C, 15'h2574, 15'h258C, 15'h25A4, 15'h25BC, 15'h25D4, 15'h25EC, 15'h2604, 15'h261C, 15'h2634, 15'h264C, 15'h2664, 15'h267C, 15'h2694, + 15'h26AC, 15'h26C4, 15'h26DC, 15'h26F4, 15'h270C, 15'h2724, 15'h273C, 15'h2754, 15'h276C, 15'h2783, 15'h279B, 15'h27B3, 15'h27CB, 15'h27E3, 15'h27FB, 15'h2813, + 15'h282B, 15'h2843, 15'h285A, 15'h2872, 15'h288A, 15'h28A2, 15'h28BA, 15'h28D2, 15'h28EA, 15'h2901, 15'h2919, 15'h2931, 15'h2949, 15'h2961, 15'h2978, 15'h2990, + 15'h29A8, 15'h29C0, 15'h29D7, 15'h29EF, 15'h2A07, 15'h2A1F, 15'h2A36, 15'h2A4E, 15'h2A66, 15'h2A7E, 15'h2A95, 15'h2AAD, 15'h2AC5, 15'h2ADC, 15'h2AF4, 15'h2B0C, + 15'h2B24, 15'h2B3B, 15'h2B53, 15'h2B6B, 15'h2B82, 15'h2B9A, 15'h2BB1, 15'h2BC9, 15'h2BE1, 15'h2BF8, 15'h2C10, 15'h2C28, 15'h2C3F, 15'h2C57, 15'h2C6E, 15'h2C86, + 15'h2C9D, 15'h2CB5, 15'h2CCD, 15'h2CE4, 15'h2CFC, 15'h2D13, 15'h2D2B, 15'h2D42, 15'h2D5A, 15'h2D71, 15'h2D89, 15'h2DA0, 15'h2DB8, 15'h2DCF, 15'h2DE7, 15'h2DFE, + 15'h2E16, 15'h2E2D, 15'h2E45, 15'h2E5C, 15'h2E73, 15'h2E8B, 15'h2EA2, 15'h2EBA, 15'h2ED1, 15'h2EE9, 15'h2F00, 15'h2F17, 15'h2F2F, 15'h2F46, 15'h2F5D, 15'h2F75, + 15'h2F8C, 15'h2FA3, 15'h2FBB, 15'h2FD2, 15'h2FE9, 15'h3001, 15'h3018, 15'h302F, 15'h3047, 15'h305E, 15'h3075, 15'h308C, 15'h30A4, 15'h30BB, 15'h30D2, 15'h30E9, + 15'h3101, 15'h3118, 15'h312F, 15'h3146, 15'h315E, 15'h3175, 15'h318C, 15'h31A3, 15'h31BA, 15'h31D1, 15'h31E9, 15'h3200, 15'h3217, 15'h322E, 15'h3245, 15'h325C, + 15'h3273, 15'h328A, 15'h32A2, 15'h32B9, 15'h32D0, 15'h32E7, 15'h32FE, 15'h3315, 15'h332C, 15'h3343, 15'h335A, 15'h3371, 15'h3388, 15'h339F, 15'h33B6, 15'h33CD, + 15'h33E4, 15'h33FB, 15'h3412, 15'h3429, 15'h3440, 15'h3457, 15'h346E, 15'h3485, 15'h349C, 15'h34B3, 15'h34CA, 15'h34E1, 15'h34F7, 15'h350E, 15'h3525, 15'h353C, + 15'h3553, 15'h356A, 15'h3581, 15'h3597, 15'h35AE, 15'h35C5, 15'h35DC, 15'h35F3, 15'h360A, 15'h3620, 15'h3637, 15'h364E, 15'h3665, 15'h367B, 15'h3692, 15'h36A9, + 15'h36C0, 15'h36D6, 15'h36ED, 15'h3704, 15'h371A, 15'h3731, 15'h3748, 15'h375E, 15'h3775, 15'h378C, 15'h37A2, 15'h37B9, 15'h37D0, 15'h37E6, 15'h37FD, 15'h3814, + 15'h382A, 15'h3841, 15'h3857, 15'h386E, 15'h3884, 15'h389B, 15'h38B2, 15'h38C8, 15'h38DF, 15'h38F5, 15'h390C, 15'h3922, 15'h3939, 15'h394F, 15'h3966, 15'h397C, + 15'h3993, 15'h39A9, 15'h39BF, 15'h39D6, 15'h39EC, 15'h3A03, 15'h3A19, 15'h3A30, 15'h3A46, 15'h3A5C, 15'h3A73, 15'h3A89, 15'h3A9F, 15'h3AB6, 15'h3ACC, 15'h3AE2, + 15'h3AF9, 15'h3B0F, 15'h3B25, 15'h3B3C, 15'h3B52, 15'h3B68, 15'h3B7F, 15'h3B95, 15'h3BAB, 15'h3BC1, 15'h3BD7, 15'h3BEE, 15'h3C04, 15'h3C1A, 15'h3C30, 15'h3C47, + 15'h3C5D, 15'h3C73, 15'h3C89, 15'h3C9F, 15'h3CB5, 15'h3CCB, 15'h3CE2, 15'h3CF8, 15'h3D0E, 15'h3D24, 15'h3D3A, 15'h3D50, 15'h3D66, 15'h3D7C, 15'h3D92, 15'h3DA8, + 15'h3DBE, 15'h3DD4, 15'h3DEA, 15'h3E00, 15'h3E16, 15'h3E2C, 15'h3E42, 15'h3E58, 15'h3E6E, 15'h3E84, 15'h3E9A, 15'h3EB0, 15'h3EC6, 15'h3EDC, 15'h3EF2, 15'h3F08, + 15'h3F1D, 15'h3F33, 15'h3F49, 15'h3F5F, 15'h3F75, 15'h3F8B, 15'h3FA1, 15'h3FB6, 15'h3FCC, 15'h3FE2, 15'h3FF8, 15'h400E, 15'h4023, 15'h4039, 15'h404F, 15'h4065, + 15'h407A, 15'h4090, 15'h40A6, 15'h40BB, 15'h40D1, 15'h40E7, 15'h40FC, 15'h4112, 15'h4128, 15'h413D, 15'h4153, 15'h4169, 15'h417E, 15'h4194, 15'h41A9, 15'h41BF, + 15'h41D5, 15'h41EA, 15'h4200, 15'h4215, 15'h422B, 15'h4240, 15'h4256, 15'h426B, 15'h4281, 15'h4296, 15'h42AC, 15'h42C1, 15'h42D7, 15'h42EC, 15'h4301, 15'h4317, + 15'h432C, 15'h4342, 15'h4357, 15'h436C, 15'h4382, 15'h4397, 15'h43AC, 15'h43C2, 15'h43D7, 15'h43EC, 15'h4402, 15'h4417, 15'h442C, 15'h4442, 15'h4457, 15'h446C, + 15'h4481, 15'h4497, 15'h44AC, 15'h44C1, 15'h44D6, 15'h44EB, 15'h4501, 15'h4516, 15'h452B, 15'h4540, 15'h4555, 15'h456A, 15'h4580, 15'h4595, 15'h45AA, 15'h45BF, + 15'h45D4, 15'h45E9, 15'h45FE, 15'h4613, 15'h4628, 15'h463D, 15'h4652, 15'h4667, 15'h467C, 15'h4691, 15'h46A6, 15'h46BB, 15'h46D0, 15'h46E5, 15'h46FA, 15'h470F, + 15'h4724, 15'h4739, 15'h474D, 15'h4762, 15'h4777, 15'h478C, 15'h47A1, 15'h47B6, 15'h47CB, 15'h47DF, 15'h47F4, 15'h4809, 15'h481E, 15'h4833, 15'h4847, 15'h485C, + 15'h4871, 15'h4885, 15'h489A, 15'h48AF, 15'h48C4, 15'h48D8, 15'h48ED, 15'h4902, 15'h4916, 15'h492B, 15'h4940, 15'h4954, 15'h4969, 15'h497D, 15'h4992, 15'h49A6, + 15'h49BB, 15'h49D0, 15'h49E4, 15'h49F9, 15'h4A0D, 15'h4A22, 15'h4A36, 15'h4A4B, 15'h4A5F, 15'h4A74, 15'h4A88, 15'h4A9C, 15'h4AB1, 15'h4AC5, 15'h4ADA, 15'h4AEE, + 15'h4B02, 15'h4B17, 15'h4B2B, 15'h4B40, 15'h4B54, 15'h4B68, 15'h4B7C, 15'h4B91, 15'h4BA5, 15'h4BB9, 15'h4BCE, 15'h4BE2, 15'h4BF6, 15'h4C0A, 15'h4C1F, 15'h4C33, + 15'h4C47, 15'h4C5B, 15'h4C6F, 15'h4C84, 15'h4C98, 15'h4CAC, 15'h4CC0, 15'h4CD4, 15'h4CE8, 15'h4CFC, 15'h4D10, 15'h4D24, 15'h4D38, 15'h4D4C, 15'h4D61, 15'h4D75, + 15'h4D89, 15'h4D9D, 15'h4DB1, 15'h4DC5, 15'h4DD8, 15'h4DEC, 15'h4E00, 15'h4E14, 15'h4E28, 15'h4E3C, 15'h4E50, 15'h4E64, 15'h4E78, 15'h4E8C, 15'h4E9F, 15'h4EB3, + 15'h4EC7, 15'h4EDB, 15'h4EEF, 15'h4F03, 15'h4F16, 15'h4F2A, 15'h4F3E, 15'h4F52, 15'h4F65, 15'h4F79, 15'h4F8D, 15'h4FA0, 15'h4FB4, 15'h4FC8, 15'h4FDB, 15'h4FEF, + 15'h5003, 15'h5016, 15'h502A, 15'h503E, 15'h5051, 15'h5065, 15'h5078, 15'h508C, 15'h509F, 15'h50B3, 15'h50C6, 15'h50DA, 15'h50ED, 15'h5101, 15'h5114, 15'h5128, + 15'h513B, 15'h514F, 15'h5162, 15'h5175, 15'h5189, 15'h519C, 15'h51B0, 15'h51C3, 15'h51D6, 15'h51EA, 15'h51FD, 15'h5210, 15'h5223, 15'h5237, 15'h524A, 15'h525D, + 15'h5270, 15'h5284, 15'h5297, 15'h52AA, 15'h52BD, 15'h52D1, 15'h52E4, 15'h52F7, 15'h530A, 15'h531D, 15'h5330, 15'h5343, 15'h5356, 15'h5369, 15'h537D, 15'h5390, + 15'h53A3, 15'h53B6, 15'h53C9, 15'h53DC, 15'h53EF, 15'h5402, 15'h5415, 15'h5428, 15'h543B, 15'h544D, 15'h5460, 15'h5473, 15'h5486, 15'h5499, 15'h54AC, 15'h54BF, + 15'h54D2, 15'h54E4, 15'h54F7, 15'h550A, 15'h551D, 15'h5530, 15'h5542, 15'h5555, 15'h5568, 15'h557B, 15'h558D, 15'h55A0, 15'h55B3, 15'h55C5, 15'h55D8, 15'h55EB, + 15'h55FD, 15'h5610, 15'h5622, 15'h5635, 15'h5648, 15'h565A, 15'h566D, 15'h567F, 15'h5692, 15'h56A4, 15'h56B7, 15'h56C9, 15'h56DC, 15'h56EE, 15'h5701, 15'h5713, + 15'h5726, 15'h5738, 15'h574A, 15'h575D, 15'h576F, 15'h5781, 15'h5794, 15'h57A6, 15'h57B8, 15'h57CB, 15'h57DD, 15'h57EF, 15'h5802, 15'h5814, 15'h5826, 15'h5838, + 15'h584A, 15'h585D, 15'h586F, 15'h5881, 15'h5893, 15'h58A5, 15'h58B7, 15'h58CA, 15'h58DC, 15'h58EE, 15'h5900, 15'h5912, 15'h5924, 15'h5936, 15'h5948, 15'h595A, + 15'h596C, 15'h597E, 15'h5990, 15'h59A2, 15'h59B4, 15'h59C6, 15'h59D8, 15'h59EA, 15'h59FC, 15'h5A0D, 15'h5A1F, 15'h5A31, 15'h5A43, 15'h5A55, 15'h5A67, 15'h5A78, + 15'h5A8A, 15'h5A9C, 15'h5AAE, 15'h5ABF, 15'h5AD1, 15'h5AE3, 15'h5AF5, 15'h5B06, 15'h5B18, 15'h5B2A, 15'h5B3B, 15'h5B4D, 15'h5B5E, 15'h5B70, 15'h5B82, 15'h5B93, + 15'h5BA5, 15'h5BB6, 15'h5BC8, 15'h5BD9, 15'h5BEB, 15'h5BFC, 15'h5C0E, 15'h5C1F, 15'h5C31, 15'h5C42, 15'h5C54, 15'h5C65, 15'h5C76, 15'h5C88, 15'h5C99, 15'h5CAB, + 15'h5CBC, 15'h5CCD, 15'h5CDE, 15'h5CF0, 15'h5D01, 15'h5D12, 15'h5D24, 15'h5D35, 15'h5D46, 15'h5D57, 15'h5D68, 15'h5D7A, 15'h5D8B, 15'h5D9C, 15'h5DAD, 15'h5DBE, + 15'h5DCF, 15'h5DE0, 15'h5DF2, 15'h5E03, 15'h5E14, 15'h5E25, 15'h5E36, 15'h5E47, 15'h5E58, 15'h5E69, 15'h5E7A, 15'h5E8B, 15'h5E9C, 15'h5EAD, 15'h5EBD, 15'h5ECE, + 15'h5EDF, 15'h5EF0, 15'h5F01, 15'h5F12, 15'h5F23, 15'h5F33, 15'h5F44, 15'h5F55, 15'h5F66, 15'h5F77, 15'h5F87, 15'h5F98, 15'h5FA9, 15'h5FB9, 15'h5FCA, 15'h5FDB, + 15'h5FEB, 15'h5FFC, 15'h600D, 15'h601D, 15'h602E, 15'h603E, 15'h604F, 15'h6060, 15'h6070, 15'h6081, 15'h6091, 15'h60A2, 15'h60B2, 15'h60C3, 15'h60D3, 15'h60E4, + 15'h60F4, 15'h6104, 15'h6115, 15'h6125, 15'h6135, 15'h6146, 15'h6156, 15'h6166, 15'h6177, 15'h6187, 15'h6197, 15'h61A8, 15'h61B8, 15'h61C8, 15'h61D8, 15'h61E9, + 15'h61F9, 15'h6209, 15'h6219, 15'h6229, 15'h6239, 15'h6249, 15'h625A, 15'h626A, 15'h627A, 15'h628A, 15'h629A, 15'h62AA, 15'h62BA, 15'h62CA, 15'h62DA, 15'h62EA, + 15'h62FA, 15'h630A, 15'h631A, 15'h6329, 15'h6339, 15'h6349, 15'h6359, 15'h6369, 15'h6379, 15'h6389, 15'h6398, 15'h63A8, 15'h63B8, 15'h63C8, 15'h63D7, 15'h63E7, + 15'h63F7, 15'h6407, 15'h6416, 15'h6426, 15'h6436, 15'h6445, 15'h6455, 15'h6464, 15'h6474, 15'h6484, 15'h6493, 15'h64A3, 15'h64B2, 15'h64C2, 15'h64D1, 15'h64E1, + 15'h64F0, 15'h6500, 15'h650F, 15'h651F, 15'h652E, 15'h653D, 15'h654D, 15'h655C, 15'h656B, 15'h657B, 15'h658A, 15'h6599, 15'h65A9, 15'h65B8, 15'h65C7, 15'h65D6, + 15'h65E6, 15'h65F5, 15'h6604, 15'h6613, 15'h6622, 15'h6631, 15'h6641, 15'h6650, 15'h665F, 15'h666E, 15'h667D, 15'h668C, 15'h669B, 15'h66AA, 15'h66B9, 15'h66C8, + 15'h66D7, 15'h66E6, 15'h66F5, 15'h6704, 15'h6713, 15'h6722, 15'h6731, 15'h673F, 15'h674E, 15'h675D, 15'h676C, 15'h677B, 15'h678A, 15'h6798, 15'h67A7, 15'h67B6, + 15'h67C5, 15'h67D3, 15'h67E2, 15'h67F1, 15'h67FF, 15'h680E, 15'h681D, 15'h682B, 15'h683A, 15'h6848, 15'h6857, 15'h6866, 15'h6874, 15'h6883, 15'h6891, 15'h68A0, + 15'h68AE, 15'h68BD, 15'h68CB, 15'h68D9, 15'h68E8, 15'h68F6, 15'h6905, 15'h6913, 15'h6921, 15'h6930, 15'h693E, 15'h694C, 15'h695B, 15'h6969, 15'h6977, 15'h6985, + 15'h6994, 15'h69A2, 15'h69B0, 15'h69BE, 15'h69CC, 15'h69DA, 15'h69E9, 15'h69F7, 15'h6A05, 15'h6A13, 15'h6A21, 15'h6A2F, 15'h6A3D, 15'h6A4B, 15'h6A59, 15'h6A67, + 15'h6A75, 15'h6A83, 15'h6A91, 15'h6A9F, 15'h6AAD, 15'h6ABB, 15'h6AC8, 15'h6AD6, 15'h6AE4, 15'h6AF2, 15'h6B00, 15'h6B0E, 15'h6B1B, 15'h6B29, 15'h6B37, 15'h6B45, + 15'h6B52, 15'h6B60, 15'h6B6E, 15'h6B7B, 15'h6B89, 15'h6B97, 15'h6BA4, 15'h6BB2, 15'h6BBF, 15'h6BCD, 15'h6BDA, 15'h6BE8, 15'h6BF6, 15'h6C03, 15'h6C11, 15'h6C1E, + 15'h6C2B, 15'h6C39, 15'h6C46, 15'h6C54, 15'h6C61, 15'h6C6E, 15'h6C7C, 15'h6C89, 15'h6C96, 15'h6CA4, 15'h6CB1, 15'h6CBE, 15'h6CCC, 15'h6CD9, 15'h6CE6, 15'h6CF3, + 15'h6D00, 15'h6D0E, 15'h6D1B, 15'h6D28, 15'h6D35, 15'h6D42, 15'h6D4F, 15'h6D5C, 15'h6D69, 15'h6D76, 15'h6D83, 15'h6D90, 15'h6D9D, 15'h6DAA, 15'h6DB7, 15'h6DC4, + 15'h6DD1, 15'h6DDE, 15'h6DEB, 15'h6DF8, 15'h6E05, 15'h6E12, 15'h6E1E, 15'h6E2B, 15'h6E38, 15'h6E45, 15'h6E52, 15'h6E5E, 15'h6E6B, 15'h6E78, 15'h6E84, 15'h6E91, + 15'h6E9E, 15'h6EAA, 15'h6EB7, 15'h6EC4, 15'h6ED0, 15'h6EDD, 15'h6EE9, 15'h6EF6, 15'h6F02, 15'h6F0F, 15'h6F1B, 15'h6F28, 15'h6F34, 15'h6F41, 15'h6F4D, 15'h6F5A, + 15'h6F66, 15'h6F72, 15'h6F7F, 15'h6F8B, 15'h6F97, 15'h6FA4, 15'h6FB0, 15'h6FBC, 15'h6FC8, 15'h6FD5, 15'h6FE1, 15'h6FED, 15'h6FF9, 15'h7006, 15'h7012, 15'h701E, + 15'h702A, 15'h7036, 15'h7042, 15'h704E, 15'h705A, 15'h7066, 15'h7072, 15'h707E, 15'h708A, 15'h7096, 15'h70A2, 15'h70AE, 15'h70BA, 15'h70C6, 15'h70D2, 15'h70DE, + 15'h70EA, 15'h70F5, 15'h7101, 15'h710D, 15'h7119, 15'h7125, 15'h7130, 15'h713C, 15'h7148, 15'h7153, 15'h715F, 15'h716B, 15'h7176, 15'h7182, 15'h718E, 15'h7199, + 15'h71A5, 15'h71B0, 15'h71BC, 15'h71C7, 15'h71D3, 15'h71DE, 15'h71EA, 15'h71F5, 15'h7201, 15'h720C, 15'h7218, 15'h7223, 15'h722E, 15'h723A, 15'h7245, 15'h7250, + 15'h725C, 15'h7267, 15'h7272, 15'h727E, 15'h7289, 15'h7294, 15'h729F, 15'h72AA, 15'h72B6, 15'h72C1, 15'h72CC, 15'h72D7, 15'h72E2, 15'h72ED, 15'h72F8, 15'h7303, + 15'h730E, 15'h7319, 15'h7324, 15'h732F, 15'h733A, 15'h7345, 15'h7350, 15'h735B, 15'h7366, 15'h7371, 15'h737B, 15'h7386, 15'h7391, 15'h739C, 15'h73A7, 15'h73B1, + 15'h73BC, 15'h73C7, 15'h73D2, 15'h73DC, 15'h73E7, 15'h73F2, 15'h73FC, 15'h7407, 15'h7412, 15'h741C, 15'h7427, 15'h7431, 15'h743C, 15'h7446, 15'h7451, 15'h745B, + 15'h7466, 15'h7470, 15'h747B, 15'h7485, 15'h7490, 15'h749A, 15'h74A4, 15'h74AF, 15'h74B9, 15'h74C3, 15'h74CE, 15'h74D8, 15'h74E2, 15'h74EC, 15'h74F7, 15'h7501, + 15'h750B, 15'h7515, 15'h751F, 15'h7529, 15'h7533, 15'h753E, 15'h7548, 15'h7552, 15'h755C, 15'h7566, 15'h7570, 15'h757A, 15'h7584, 15'h758E, 15'h7598, 15'h75A2, + 15'h75AB, 15'h75B5, 15'h75BF, 15'h75C9, 15'h75D3, 15'h75DD, 15'h75E6, 15'h75F0, 15'h75FA, 15'h7604, 15'h760D, 15'h7617, 15'h7621, 15'h762B, 15'h7634, 15'h763E, + 15'h7647, 15'h7651, 15'h765B, 15'h7664, 15'h766E, 15'h7677, 15'h7681, 15'h768A, 15'h7694, 15'h769D, 15'h76A7, 15'h76B0, 15'h76B9, 15'h76C3, 15'h76CC, 15'h76D6, + 15'h76DF, 15'h76E8, 15'h76F2, 15'h76FB, 15'h7704, 15'h770D, 15'h7717, 15'h7720, 15'h7729, 15'h7732, 15'h773B, 15'h7744, 15'h774E, 15'h7757, 15'h7760, 15'h7769, + 15'h7772, 15'h777B, 15'h7784, 15'h778D, 15'h7796, 15'h779F, 15'h77A8, 15'h77B1, 15'h77BA, 15'h77C2, 15'h77CB, 15'h77D4, 15'h77DD, 15'h77E6, 15'h77EF, 15'h77F7, + 15'h7800, 15'h7809, 15'h7812, 15'h781A, 15'h7823, 15'h782C, 15'h7834, 15'h783D, 15'h7845, 15'h784E, 15'h7857, 15'h785F, 15'h7868, 15'h7870, 15'h7879, 15'h7881, + 15'h788A, 15'h7892, 15'h789B, 15'h78A3, 15'h78AB, 15'h78B4, 15'h78BC, 15'h78C4, 15'h78CD, 15'h78D5, 15'h78DD, 15'h78E6, 15'h78EE, 15'h78F6, 15'h78FE, 15'h7906, + 15'h790F, 15'h7917, 15'h791F, 15'h7927, 15'h792F, 15'h7937, 15'h793F, 15'h7947, 15'h794F, 15'h7957, 15'h795F, 15'h7967, 15'h796F, 15'h7977, 15'h797F, 15'h7987, + 15'h798F, 15'h7997, 15'h799F, 15'h79A7, 15'h79AE, 15'h79B6, 15'h79BE, 15'h79C6, 15'h79CD, 15'h79D5, 15'h79DD, 15'h79E4, 15'h79EC, 15'h79F4, 15'h79FB, 15'h7A03, + 15'h7A0B, 15'h7A12, 15'h7A1A, 15'h7A21, 15'h7A29, 15'h7A30, 15'h7A38, 15'h7A3F, 15'h7A47, 15'h7A4E, 15'h7A55, 15'h7A5D, 15'h7A64, 15'h7A6C, 15'h7A73, 15'h7A7A, + 15'h7A81, 15'h7A89, 15'h7A90, 15'h7A97, 15'h7A9E, 15'h7AA6, 15'h7AAD, 15'h7AB4, 15'h7ABB, 15'h7AC2, 15'h7AC9, 15'h7AD0, 15'h7AD8, 15'h7ADF, 15'h7AE6, 15'h7AED, + 15'h7AF4, 15'h7AFB, 15'h7B02, 15'h7B09, 15'h7B0F, 15'h7B16, 15'h7B1D, 15'h7B24, 15'h7B2B, 15'h7B32, 15'h7B39, 15'h7B3F, 15'h7B46, 15'h7B4D, 15'h7B54, 15'h7B5A, + 15'h7B61, 15'h7B68, 15'h7B6E, 15'h7B75, 15'h7B7C, 15'h7B82, 15'h7B89, 15'h7B8F, 15'h7B96, 15'h7B9D, 15'h7BA3, 15'h7BAA, 15'h7BB0, 15'h7BB7, 15'h7BBD, 15'h7BC3, + 15'h7BCA, 15'h7BD0, 15'h7BD7, 15'h7BDD, 15'h7BE3, 15'h7BE9, 15'h7BF0, 15'h7BF6, 15'h7BFC, 15'h7C03, 15'h7C09, 15'h7C0F, 15'h7C15, 15'h7C1B, 15'h7C21, 15'h7C28, + 15'h7C2E, 15'h7C34, 15'h7C3A, 15'h7C40, 15'h7C46, 15'h7C4C, 15'h7C52, 15'h7C58, 15'h7C5E, 15'h7C64, 15'h7C6A, 15'h7C70, 15'h7C75, 15'h7C7B, 15'h7C81, 15'h7C87, + 15'h7C8D, 15'h7C93, 15'h7C98, 15'h7C9E, 15'h7CA4, 15'h7CA9, 15'h7CAF, 15'h7CB5, 15'h7CBB, 15'h7CC0, 15'h7CC6, 15'h7CCB, 15'h7CD1, 15'h7CD6, 15'h7CDC, 15'h7CE2, + 15'h7CE7, 15'h7CED, 15'h7CF2, 15'h7CF7, 15'h7CFD, 15'h7D02, 15'h7D08, 15'h7D0D, 15'h7D12, 15'h7D18, 15'h7D1D, 15'h7D22, 15'h7D28, 15'h7D2D, 15'h7D32, 15'h7D37, + 15'h7D3D, 15'h7D42, 15'h7D47, 15'h7D4C, 15'h7D51, 15'h7D56, 15'h7D5B, 15'h7D60, 15'h7D65, 15'h7D6A, 15'h7D70, 15'h7D74, 15'h7D79, 15'h7D7E, 15'h7D83, 15'h7D88, + 15'h7D8D, 15'h7D92, 15'h7D97, 15'h7D9C, 15'h7DA1, 15'h7DA5, 15'h7DAA, 15'h7DAF, 15'h7DB4, 15'h7DB8, 15'h7DBD, 15'h7DC2, 15'h7DC6, 15'h7DCB, 15'h7DD0, 15'h7DD4, + 15'h7DD9, 15'h7DDE, 15'h7DE2, 15'h7DE7, 15'h7DEB, 15'h7DF0, 15'h7DF4, 15'h7DF9, 15'h7DFD, 15'h7E01, 15'h7E06, 15'h7E0A, 15'h7E0F, 15'h7E13, 15'h7E17, 15'h7E1C, + 15'h7E20, 15'h7E24, 15'h7E28, 15'h7E2D, 15'h7E31, 15'h7E35, 15'h7E39, 15'h7E3D, 15'h7E42, 15'h7E46, 15'h7E4A, 15'h7E4E, 15'h7E52, 15'h7E56, 15'h7E5A, 15'h7E5E, + 15'h7E62, 15'h7E66, 15'h7E6A, 15'h7E6E, 15'h7E72, 15'h7E76, 15'h7E7A, 15'h7E7D, 15'h7E81, 15'h7E85, 15'h7E89, 15'h7E8D, 15'h7E90, 15'h7E94, 15'h7E98, 15'h7E9C, + 15'h7E9F, 15'h7EA3, 15'h7EA6, 15'h7EAA, 15'h7EAE, 15'h7EB1, 15'h7EB5, 15'h7EB8, 15'h7EBC, 15'h7EBF, 15'h7EC3, 15'h7EC6, 15'h7ECA, 15'h7ECD, 15'h7ED1, 15'h7ED4, + 15'h7ED7, 15'h7EDB, 15'h7EDE, 15'h7EE2, 15'h7EE5, 15'h7EE8, 15'h7EEB, 15'h7EEF, 15'h7EF2, 15'h7EF5, 15'h7EF8, 15'h7EFB, 15'h7EFF, 15'h7F02, 15'h7F05, 15'h7F08, + 15'h7F0B, 15'h7F0E, 15'h7F11, 15'h7F14, 15'h7F17, 15'h7F1A, 15'h7F1D, 15'h7F20, 15'h7F23, 15'h7F26, 15'h7F29, 15'h7F2B, 15'h7F2E, 15'h7F31, 15'h7F34, 15'h7F37, + 15'h7F39, 15'h7F3C, 15'h7F3F, 15'h7F42, 15'h7F44, 15'h7F47, 15'h7F4A, 15'h7F4C, 15'h7F4F, 15'h7F51, 15'h7F54, 15'h7F57, 15'h7F59, 15'h7F5C, 15'h7F5E, 15'h7F61, + 15'h7F63, 15'h7F65, 15'h7F68, 15'h7F6A, 15'h7F6D, 15'h7F6F, 15'h7F71, 15'h7F74, 15'h7F76, 15'h7F78, 15'h7F7B, 15'h7F7D, 15'h7F7F, 15'h7F81, 15'h7F83, 15'h7F86, + 15'h7F88, 15'h7F8A, 15'h7F8C, 15'h7F8E, 15'h7F90, 15'h7F92, 15'h7F94, 15'h7F96, 15'h7F98, 15'h7F9A, 15'h7F9C, 15'h7F9E, 15'h7FA0, 15'h7FA2, 15'h7FA4, 15'h7FA6, + 15'h7FA7, 15'h7FA9, 15'h7FAB, 15'h7FAD, 15'h7FAF, 15'h7FB0, 15'h7FB2, 15'h7FB4, 15'h7FB6, 15'h7FB7, 15'h7FB9, 15'h7FBA, 15'h7FBC, 15'h7FBE, 15'h7FBF, 15'h7FC1, + 15'h7FC2, 15'h7FC4, 15'h7FC5, 15'h7FC7, 15'h7FC8, 15'h7FCA, 15'h7FCB, 15'h7FCD, 15'h7FCE, 15'h7FCF, 15'h7FD1, 15'h7FD2, 15'h7FD3, 15'h7FD4, 15'h7FD6, 15'h7FD7, + 15'h7FD8, 15'h7FD9, 15'h7FDB, 15'h7FDC, 15'h7FDD, 15'h7FDE, 15'h7FDF, 15'h7FE0, 15'h7FE1, 15'h7FE2, 15'h7FE3, 15'h7FE4, 15'h7FE5, 15'h7FE6, 15'h7FE7, 15'h7FE8, + 15'h7FE9, 15'h7FEA, 15'h7FEB, 15'h7FEC, 15'h7FED, 15'h7FED, 15'h7FEE, 15'h7FEF, 15'h7FF0, 15'h7FF1, 15'h7FF1, 15'h7FF2, 15'h7FF3, 15'h7FF3, 15'h7FF4, 15'h7FF5, + 15'h7FF5, 15'h7FF6, 15'h7FF6, 15'h7FF7, 15'h7FF7, 15'h7FF8, 15'h7FF8, 15'h7FF9, 15'h7FF9, 15'h7FFA, 15'h7FFA, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFC, 15'h7FFC, + 15'h7FFC, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFF +*/ + + // sin((pi/2)*sin(x)) + 15'h0000, 15'h0027, 15'h004E, 15'h0076, 15'h009D, 15'h00C5, 15'h00EC, 15'h0114, 15'h013B, 15'h0163, 15'h018A, 15'h01B2, 15'h01D9, 15'h0201, 15'h0228, 15'h0250, + 15'h0277, 15'h029F, 15'h02C6, 15'h02EE, 15'h0315, 15'h033D, 15'h0364, 15'h038C, 15'h03B3, 15'h03DB, 15'h0402, 15'h042A, 15'h0451, 15'h0479, 15'h04A0, 15'h04C7, + 15'h04EF, 15'h0516, 15'h053E, 15'h0565, 15'h058D, 15'h05B4, 15'h05DC, 15'h0603, 15'h062B, 15'h0652, 15'h0679, 15'h06A1, 15'h06C8, 15'h06F0, 15'h0717, 15'h073E, + 15'h0766, 15'h078D, 15'h07B5, 15'h07DC, 15'h0803, 15'h082B, 15'h0852, 15'h087A, 15'h08A1, 15'h08C8, 15'h08F0, 15'h0917, 15'h093E, 15'h0966, 15'h098D, 15'h09B4, + 15'h09DC, 15'h0A03, 15'h0A2A, 15'h0A52, 15'h0A79, 15'h0AA0, 15'h0AC8, 15'h0AEF, 15'h0B16, 15'h0B3E, 15'h0B65, 15'h0B8C, 15'h0BB3, 15'h0BDB, 15'h0C02, 15'h0C29, + 15'h0C50, 15'h0C78, 15'h0C9F, 15'h0CC6, 15'h0CED, 15'h0D14, 15'h0D3C, 15'h0D63, 15'h0D8A, 15'h0DB1, 15'h0DD8, 15'h0E00, 15'h0E27, 15'h0E4E, 15'h0E75, 15'h0E9C, + 15'h0EC3, 15'h0EEA, 15'h0F12, 15'h0F39, 15'h0F60, 15'h0F87, 15'h0FAE, 15'h0FD5, 15'h0FFC, 15'h1023, 15'h104A, 15'h1071, 15'h1098, 15'h10BF, 15'h10E6, 15'h110D, + 15'h1134, 15'h115B, 15'h1182, 15'h11A9, 15'h11D0, 15'h11F7, 15'h121E, 15'h1245, 15'h126C, 15'h1293, 15'h12BA, 15'h12E1, 15'h1308, 15'h132E, 15'h1355, 15'h137C, + 15'h13A3, 15'h13CA, 15'h13F1, 15'h1417, 15'h143E, 15'h1465, 15'h148C, 15'h14B3, 15'h14D9, 15'h1500, 15'h1527, 15'h154E, 15'h1574, 15'h159B, 15'h15C2, 15'h15E8, + 15'h160F, 15'h1636, 15'h165C, 15'h1683, 15'h16AA, 15'h16D0, 15'h16F7, 15'h171D, 15'h1744, 15'h176B, 15'h1791, 15'h17B8, 15'h17DE, 15'h1805, 15'h182B, 15'h1852, + 15'h1878, 15'h189F, 15'h18C5, 15'h18EC, 15'h1912, 15'h1938, 15'h195F, 15'h1985, 15'h19AC, 15'h19D2, 15'h19F8, 15'h1A1F, 15'h1A45, 15'h1A6B, 15'h1A92, 15'h1AB8, + 15'h1ADE, 15'h1B04, 15'h1B2B, 15'h1B51, 15'h1B77, 15'h1B9D, 15'h1BC4, 15'h1BEA, 15'h1C10, 15'h1C36, 15'h1C5C, 15'h1C82, 15'h1CA8, 15'h1CCE, 15'h1CF5, 15'h1D1B, + 15'h1D41, 15'h1D67, 15'h1D8D, 15'h1DB3, 15'h1DD9, 15'h1DFF, 15'h1E25, 15'h1E4B, 15'h1E70, 15'h1E96, 15'h1EBC, 15'h1EE2, 15'h1F08, 15'h1F2E, 15'h1F54, 15'h1F79, + 15'h1F9F, 15'h1FC5, 15'h1FEB, 15'h2011, 15'h2036, 15'h205C, 15'h2082, 15'h20A7, 15'h20CD, 15'h20F3, 15'h2118, 15'h213E, 15'h2163, 15'h2189, 15'h21AF, 15'h21D4, + 15'h21FA, 15'h221F, 15'h2245, 15'h226A, 15'h2290, 15'h22B5, 15'h22DA, 15'h2300, 15'h2325, 15'h234B, 15'h2370, 15'h2395, 15'h23BB, 15'h23E0, 15'h2405, 15'h242A, + 15'h2450, 15'h2475, 15'h249A, 15'h24BF, 15'h24E4, 15'h250A, 15'h252F, 15'h2554, 15'h2579, 15'h259E, 15'h25C3, 15'h25E8, 15'h260D, 15'h2632, 15'h2657, 15'h267C, + 15'h26A1, 15'h26C6, 15'h26EB, 15'h2710, 15'h2735, 15'h2759, 15'h277E, 15'h27A3, 15'h27C8, 15'h27ED, 15'h2811, 15'h2836, 15'h285B, 15'h287F, 15'h28A4, 15'h28C9, + 15'h28ED, 15'h2912, 15'h2937, 15'h295B, 15'h2980, 15'h29A4, 15'h29C9, 15'h29ED, 15'h2A12, 15'h2A36, 15'h2A5A, 15'h2A7F, 15'h2AA3, 15'h2AC8, 15'h2AEC, 15'h2B10, + 15'h2B34, 15'h2B59, 15'h2B7D, 15'h2BA1, 15'h2BC5, 15'h2BEA, 15'h2C0E, 15'h2C32, 15'h2C56, 15'h2C7A, 15'h2C9E, 15'h2CC2, 15'h2CE6, 15'h2D0A, 15'h2D2E, 15'h2D52, + 15'h2D76, 15'h2D9A, 15'h2DBE, 15'h2DE2, 15'h2E06, 15'h2E29, 15'h2E4D, 15'h2E71, 15'h2E95, 15'h2EB8, 15'h2EDC, 15'h2F00, 15'h2F23, 15'h2F47, 15'h2F6B, 15'h2F8E, + 15'h2FB2, 15'h2FD5, 15'h2FF9, 15'h301C, 15'h3040, 15'h3063, 15'h3087, 15'h30AA, 15'h30CE, 15'h30F1, 15'h3114, 15'h3138, 15'h315B, 15'h317E, 15'h31A1, 15'h31C4, + 15'h31E8, 15'h320B, 15'h322E, 15'h3251, 15'h3274, 15'h3297, 15'h32BA, 15'h32DD, 15'h3300, 15'h3323, 15'h3346, 15'h3369, 15'h338C, 15'h33AF, 15'h33D2, 15'h33F4, + 15'h3417, 15'h343A, 15'h345D, 15'h347F, 15'h34A2, 15'h34C5, 15'h34E7, 15'h350A, 15'h352D, 15'h354F, 15'h3572, 15'h3594, 15'h35B7, 15'h35D9, 15'h35FB, 15'h361E, + 15'h3640, 15'h3663, 15'h3685, 15'h36A7, 15'h36C9, 15'h36EC, 15'h370E, 15'h3730, 15'h3752, 15'h3774, 15'h3796, 15'h37B9, 15'h37DB, 15'h37FD, 15'h381F, 15'h3841, + 15'h3863, 15'h3884, 15'h38A6, 15'h38C8, 15'h38EA, 15'h390C, 15'h392E, 15'h394F, 15'h3971, 15'h3993, 15'h39B4, 15'h39D6, 15'h39F8, 15'h3A19, 15'h3A3B, 15'h3A5C, + 15'h3A7E, 15'h3A9F, 15'h3AC1, 15'h3AE2, 15'h3B04, 15'h3B25, 15'h3B46, 15'h3B68, 15'h3B89, 15'h3BAA, 15'h3BCB, 15'h3BED, 15'h3C0E, 15'h3C2F, 15'h3C50, 15'h3C71, + 15'h3C92, 15'h3CB3, 15'h3CD4, 15'h3CF5, 15'h3D16, 15'h3D37, 15'h3D58, 15'h3D79, 15'h3D99, 15'h3DBA, 15'h3DDB, 15'h3DFC, 15'h3E1C, 15'h3E3D, 15'h3E5E, 15'h3E7E, + 15'h3E9F, 15'h3EC0, 15'h3EE0, 15'h3F01, 15'h3F21, 15'h3F41, 15'h3F62, 15'h3F82, 15'h3FA3, 15'h3FC3, 15'h3FE3, 15'h4003, 15'h4024, 15'h4044, 15'h4064, 15'h4084, + 15'h40A4, 15'h40C4, 15'h40E4, 15'h4104, 15'h4124, 15'h4144, 15'h4164, 15'h4184, 15'h41A4, 15'h41C4, 15'h41E4, 15'h4204, 15'h4223, 15'h4243, 15'h4263, 15'h4282, + 15'h42A2, 15'h42C2, 15'h42E1, 15'h4301, 15'h4320, 15'h4340, 15'h435F, 15'h437E, 15'h439E, 15'h43BD, 15'h43DC, 15'h43FC, 15'h441B, 15'h443A, 15'h4459, 15'h4479, + 15'h4498, 15'h44B7, 15'h44D6, 15'h44F5, 15'h4514, 15'h4533, 15'h4552, 15'h4571, 15'h4590, 15'h45AE, 15'h45CD, 15'h45EC, 15'h460B, 15'h4629, 15'h4648, 15'h4667, + 15'h4685, 15'h46A4, 15'h46C3, 15'h46E1, 15'h4700, 15'h471E, 15'h473C, 15'h475B, 15'h4779, 15'h4797, 15'h47B6, 15'h47D4, 15'h47F2, 15'h4810, 15'h482F, 15'h484D, + 15'h486B, 15'h4889, 15'h48A7, 15'h48C5, 15'h48E3, 15'h4901, 15'h491F, 15'h493D, 15'h495B, 15'h4978, 15'h4996, 15'h49B4, 15'h49D2, 15'h49EF, 15'h4A0D, 15'h4A2A, + 15'h4A48, 15'h4A66, 15'h4A83, 15'h4AA1, 15'h4ABE, 15'h4ADB, 15'h4AF9, 15'h4B16, 15'h4B33, 15'h4B51, 15'h4B6E, 15'h4B8B, 15'h4BA8, 15'h4BC6, 15'h4BE3, 15'h4C00, + 15'h4C1D, 15'h4C3A, 15'h4C57, 15'h4C74, 15'h4C91, 15'h4CAD, 15'h4CCA, 15'h4CE7, 15'h4D04, 15'h4D21, 15'h4D3D, 15'h4D5A, 15'h4D77, 15'h4D93, 15'h4DB0, 15'h4DCC, + 15'h4DE9, 15'h4E05, 15'h4E22, 15'h4E3E, 15'h4E5B, 15'h4E77, 15'h4E93, 15'h4EAF, 15'h4ECC, 15'h4EE8, 15'h4F04, 15'h4F20, 15'h4F3C, 15'h4F58, 15'h4F74, 15'h4F90, + 15'h4FAC, 15'h4FC8, 15'h4FE4, 15'h5000, 15'h501C, 15'h5038, 15'h5053, 15'h506F, 15'h508B, 15'h50A6, 15'h50C2, 15'h50DE, 15'h50F9, 15'h5115, 15'h5130, 15'h514C, + 15'h5167, 15'h5182, 15'h519E, 15'h51B9, 15'h51D4, 15'h51EF, 15'h520B, 15'h5226, 15'h5241, 15'h525C, 15'h5277, 15'h5292, 15'h52AD, 15'h52C8, 15'h52E3, 15'h52FE, + 15'h5319, 15'h5334, 15'h534E, 15'h5369, 15'h5384, 15'h539E, 15'h53B9, 15'h53D4, 15'h53EE, 15'h5409, 15'h5423, 15'h543E, 15'h5458, 15'h5473, 15'h548D, 15'h54A7, + 15'h54C2, 15'h54DC, 15'h54F6, 15'h5510, 15'h552A, 15'h5544, 15'h555E, 15'h5579, 15'h5593, 15'h55AC, 15'h55C6, 15'h55E0, 15'h55FA, 15'h5614, 15'h562E, 15'h5648, + 15'h5661, 15'h567B, 15'h5695, 15'h56AE, 15'h56C8, 15'h56E1, 15'h56FB, 15'h5714, 15'h572E, 15'h5747, 15'h5760, 15'h577A, 15'h5793, 15'h57AC, 15'h57C6, 15'h57DF, + 15'h57F8, 15'h5811, 15'h582A, 15'h5843, 15'h585C, 15'h5875, 15'h588E, 15'h58A7, 15'h58C0, 15'h58D9, 15'h58F1, 15'h590A, 15'h5923, 15'h593C, 15'h5954, 15'h596D, + 15'h5985, 15'h599E, 15'h59B6, 15'h59CF, 15'h59E7, 15'h5A00, 15'h5A18, 15'h5A30, 15'h5A49, 15'h5A61, 15'h5A79, 15'h5A91, 15'h5AAA, 15'h5AC2, 15'h5ADA, 15'h5AF2, + 15'h5B0A, 15'h5B22, 15'h5B3A, 15'h5B52, 15'h5B69, 15'h5B81, 15'h5B99, 15'h5BB1, 15'h5BC8, 15'h5BE0, 15'h5BF8, 15'h5C0F, 15'h5C27, 15'h5C3E, 15'h5C56, 15'h5C6D, + 15'h5C85, 15'h5C9C, 15'h5CB4, 15'h5CCB, 15'h5CE2, 15'h5CF9, 15'h5D11, 15'h5D28, 15'h5D3F, 15'h5D56, 15'h5D6D, 15'h5D84, 15'h5D9B, 15'h5DB2, 15'h5DC9, 15'h5DE0, + 15'h5DF7, 15'h5E0E, 15'h5E24, 15'h5E3B, 15'h5E52, 15'h5E68, 15'h5E7F, 15'h5E96, 15'h5EAC, 15'h5EC3, 15'h5ED9, 15'h5EF0, 15'h5F06, 15'h5F1C, 15'h5F33, 15'h5F49, + 15'h5F5F, 15'h5F76, 15'h5F8C, 15'h5FA2, 15'h5FB8, 15'h5FCE, 15'h5FE4, 15'h5FFA, 15'h6010, 15'h6026, 15'h603C, 15'h6052, 15'h6068, 15'h607E, 15'h6093, 15'h60A9, + 15'h60BF, 15'h60D4, 15'h60EA, 15'h6100, 15'h6115, 15'h612B, 15'h6140, 15'h6156, 15'h616B, 15'h6180, 15'h6196, 15'h61AB, 15'h61C0, 15'h61D5, 15'h61EB, 15'h6200, + 15'h6215, 15'h622A, 15'h623F, 15'h6254, 15'h6269, 15'h627E, 15'h6293, 15'h62A8, 15'h62BC, 15'h62D1, 15'h62E6, 15'h62FB, 15'h630F, 15'h6324, 15'h6339, 15'h634D, + 15'h6362, 15'h6376, 15'h638B, 15'h639F, 15'h63B4, 15'h63C8, 15'h63DC, 15'h63F1, 15'h6405, 15'h6419, 15'h642D, 15'h6441, 15'h6455, 15'h646A, 15'h647E, 15'h6492, + 15'h64A6, 15'h64B9, 15'h64CD, 15'h64E1, 15'h64F5, 15'h6509, 15'h651D, 15'h6530, 15'h6544, 15'h6558, 15'h656B, 15'h657F, 15'h6592, 15'h65A6, 15'h65B9, 15'h65CD, + 15'h65E0, 15'h65F3, 15'h6607, 15'h661A, 15'h662D, 15'h6640, 15'h6654, 15'h6667, 15'h667A, 15'h668D, 15'h66A0, 15'h66B3, 15'h66C6, 15'h66D9, 15'h66EC, 15'h66FF, + 15'h6711, 15'h6724, 15'h6737, 15'h674A, 15'h675C, 15'h676F, 15'h6782, 15'h6794, 15'h67A7, 15'h67B9, 15'h67CC, 15'h67DE, 15'h67F1, 15'h6803, 15'h6815, 15'h6828, + 15'h683A, 15'h684C, 15'h685E, 15'h6870, 15'h6883, 15'h6895, 15'h68A7, 15'h68B9, 15'h68CB, 15'h68DD, 15'h68EE, 15'h6900, 15'h6912, 15'h6924, 15'h6936, 15'h6948, + 15'h6959, 15'h696B, 15'h697C, 15'h698E, 15'h69A0, 15'h69B1, 15'h69C3, 15'h69D4, 15'h69E6, 15'h69F7, 15'h6A08, 15'h6A1A, 15'h6A2B, 15'h6A3C, 15'h6A4D, 15'h6A5E, + 15'h6A70, 15'h6A81, 15'h6A92, 15'h6AA3, 15'h6AB4, 15'h6AC5, 15'h6AD6, 15'h6AE7, 15'h6AF7, 15'h6B08, 15'h6B19, 15'h6B2A, 15'h6B3B, 15'h6B4B, 15'h6B5C, 15'h6B6D, + 15'h6B7D, 15'h6B8E, 15'h6B9E, 15'h6BAF, 15'h6BBF, 15'h6BD0, 15'h6BE0, 15'h6BF0, 15'h6C01, 15'h6C11, 15'h6C21, 15'h6C31, 15'h6C42, 15'h6C52, 15'h6C62, 15'h6C72, + 15'h6C82, 15'h6C92, 15'h6CA2, 15'h6CB2, 15'h6CC2, 15'h6CD2, 15'h6CE1, 15'h6CF1, 15'h6D01, 15'h6D11, 15'h6D20, 15'h6D30, 15'h6D40, 15'h6D4F, 15'h6D5F, 15'h6D6E, + 15'h6D7E, 15'h6D8D, 15'h6D9D, 15'h6DAC, 15'h6DBC, 15'h6DCB, 15'h6DDA, 15'h6DEA, 15'h6DF9, 15'h6E08, 15'h6E17, 15'h6E26, 15'h6E35, 15'h6E44, 15'h6E53, 15'h6E62, + 15'h6E71, 15'h6E80, 15'h6E8F, 15'h6E9E, 15'h6EAD, 15'h6EBC, 15'h6ECB, 15'h6ED9, 15'h6EE8, 15'h6EF7, 15'h6F05, 15'h6F14, 15'h6F22, 15'h6F31, 15'h6F3F, 15'h6F4E, + 15'h6F5C, 15'h6F6B, 15'h6F79, 15'h6F88, 15'h6F96, 15'h6FA4, 15'h6FB2, 15'h6FC1, 15'h6FCF, 15'h6FDD, 15'h6FEB, 15'h6FF9, 15'h7007, 15'h7015, 15'h7023, 15'h7031, + 15'h703F, 15'h704D, 15'h705B, 15'h7069, 15'h7076, 15'h7084, 15'h7092, 15'h709F, 15'h70AD, 15'h70BB, 15'h70C8, 15'h70D6, 15'h70E3, 15'h70F1, 15'h70FE, 15'h710C, + 15'h7119, 15'h7127, 15'h7134, 15'h7141, 15'h714F, 15'h715C, 15'h7169, 15'h7176, 15'h7183, 15'h7190, 15'h719E, 15'h71AB, 15'h71B8, 15'h71C5, 15'h71D2, 15'h71DF, + 15'h71EB, 15'h71F8, 15'h7205, 15'h7212, 15'h721F, 15'h722B, 15'h7238, 15'h7245, 15'h7251, 15'h725E, 15'h726B, 15'h7277, 15'h7284, 15'h7290, 15'h729D, 15'h72A9, + 15'h72B6, 15'h72C2, 15'h72CE, 15'h72DB, 15'h72E7, 15'h72F3, 15'h72FF, 15'h730B, 15'h7318, 15'h7324, 15'h7330, 15'h733C, 15'h7348, 15'h7354, 15'h7360, 15'h736C, + 15'h7378, 15'h7384, 15'h7390, 15'h739B, 15'h73A7, 15'h73B3, 15'h73BF, 15'h73CA, 15'h73D6, 15'h73E2, 15'h73ED, 15'h73F9, 15'h7404, 15'h7410, 15'h741B, 15'h7427, + 15'h7432, 15'h743E, 15'h7449, 15'h7454, 15'h7460, 15'h746B, 15'h7476, 15'h7481, 15'h748D, 15'h7498, 15'h74A3, 15'h74AE, 15'h74B9, 15'h74C4, 15'h74CF, 15'h74DA, + 15'h74E5, 15'h74F0, 15'h74FB, 15'h7506, 15'h7511, 15'h751C, 15'h7526, 15'h7531, 15'h753C, 15'h7546, 15'h7551, 15'h755C, 15'h7566, 15'h7571, 15'h757C, 15'h7586, + 15'h7591, 15'h759B, 15'h75A5, 15'h75B0, 15'h75BA, 15'h75C5, 15'h75CF, 15'h75D9, 15'h75E3, 15'h75EE, 15'h75F8, 15'h7602, 15'h760C, 15'h7616, 15'h7621, 15'h762B, + 15'h7635, 15'h763F, 15'h7649, 15'h7653, 15'h765D, 15'h7666, 15'h7670, 15'h767A, 15'h7684, 15'h768E, 15'h7698, 15'h76A1, 15'h76AB, 15'h76B5, 15'h76BE, 15'h76C8, + 15'h76D2, 15'h76DB, 15'h76E5, 15'h76EE, 15'h76F8, 15'h7701, 15'h770B, 15'h7714, 15'h771D, 15'h7727, 15'h7730, 15'h7739, 15'h7743, 15'h774C, 15'h7755, 15'h775E, + 15'h7767, 15'h7771, 15'h777A, 15'h7783, 15'h778C, 15'h7795, 15'h779E, 15'h77A7, 15'h77B0, 15'h77B9, 15'h77C2, 15'h77CB, 15'h77D3, 15'h77DC, 15'h77E5, 15'h77EE, + 15'h77F7, 15'h77FF, 15'h7808, 15'h7811, 15'h7819, 15'h7822, 15'h782A, 15'h7833, 15'h783C, 15'h7844, 15'h784D, 15'h7855, 15'h785D, 15'h7866, 15'h786E, 15'h7877, + 15'h787F, 15'h7887, 15'h7890, 15'h7898, 15'h78A0, 15'h78A8, 15'h78B0, 15'h78B9, 15'h78C1, 15'h78C9, 15'h78D1, 15'h78D9, 15'h78E1, 15'h78E9, 15'h78F1, 15'h78F9, + 15'h7901, 15'h7909, 15'h7911, 15'h7918, 15'h7920, 15'h7928, 15'h7930, 15'h7938, 15'h793F, 15'h7947, 15'h794F, 15'h7956, 15'h795E, 15'h7966, 15'h796D, 15'h7975, + 15'h797C, 15'h7984, 15'h798B, 15'h7993, 15'h799A, 15'h79A2, 15'h79A9, 15'h79B0, 15'h79B8, 15'h79BF, 15'h79C6, 15'h79CE, 15'h79D5, 15'h79DC, 15'h79E3, 15'h79EA, + 15'h79F2, 15'h79F9, 15'h7A00, 15'h7A07, 15'h7A0E, 15'h7A15, 15'h7A1C, 15'h7A23, 15'h7A2A, 15'h7A31, 15'h7A38, 15'h7A3F, 15'h7A46, 15'h7A4D, 15'h7A53, 15'h7A5A, + 15'h7A61, 15'h7A68, 15'h7A6E, 15'h7A75, 15'h7A7C, 15'h7A83, 15'h7A89, 15'h7A90, 15'h7A96, 15'h7A9D, 15'h7AA4, 15'h7AAA, 15'h7AB1, 15'h7AB7, 15'h7ABE, 15'h7AC4, + 15'h7ACA, 15'h7AD1, 15'h7AD7, 15'h7ADE, 15'h7AE4, 15'h7AEA, 15'h7AF1, 15'h7AF7, 15'h7AFD, 15'h7B03, 15'h7B09, 15'h7B10, 15'h7B16, 15'h7B1C, 15'h7B22, 15'h7B28, + 15'h7B2E, 15'h7B34, 15'h7B3A, 15'h7B40, 15'h7B46, 15'h7B4C, 15'h7B52, 15'h7B58, 15'h7B5E, 15'h7B64, 15'h7B6A, 15'h7B70, 15'h7B76, 15'h7B7B, 15'h7B81, 15'h7B87, + 15'h7B8D, 15'h7B92, 15'h7B98, 15'h7B9E, 15'h7BA3, 15'h7BA9, 15'h7BAF, 15'h7BB4, 15'h7BBA, 15'h7BBF, 15'h7BC5, 15'h7BCA, 15'h7BD0, 15'h7BD5, 15'h7BDB, 15'h7BE0, + 15'h7BE6, 15'h7BEB, 15'h7BF0, 15'h7BF6, 15'h7BFB, 15'h7C00, 15'h7C06, 15'h7C0B, 15'h7C10, 15'h7C15, 15'h7C1B, 15'h7C20, 15'h7C25, 15'h7C2A, 15'h7C2F, 15'h7C34, + 15'h7C3A, 15'h7C3F, 15'h7C44, 15'h7C49, 15'h7C4E, 15'h7C53, 15'h7C58, 15'h7C5D, 15'h7C62, 15'h7C67, 15'h7C6B, 15'h7C70, 15'h7C75, 15'h7C7A, 15'h7C7F, 15'h7C84, + 15'h7C88, 15'h7C8D, 15'h7C92, 15'h7C97, 15'h7C9B, 15'h7CA0, 15'h7CA5, 15'h7CA9, 15'h7CAE, 15'h7CB3, 15'h7CB7, 15'h7CBC, 15'h7CC1, 15'h7CC5, 15'h7CCA, 15'h7CCE, + 15'h7CD3, 15'h7CD7, 15'h7CDC, 15'h7CE0, 15'h7CE4, 15'h7CE9, 15'h7CED, 15'h7CF2, 15'h7CF6, 15'h7CFA, 15'h7CFF, 15'h7D03, 15'h7D07, 15'h7D0B, 15'h7D10, 15'h7D14, + 15'h7D18, 15'h7D1C, 15'h7D21, 15'h7D25, 15'h7D29, 15'h7D2D, 15'h7D31, 15'h7D35, 15'h7D39, 15'h7D3D, 15'h7D41, 15'h7D45, 15'h7D49, 15'h7D4D, 15'h7D51, 15'h7D55, + 15'h7D59, 15'h7D5D, 15'h7D61, 15'h7D65, 15'h7D69, 15'h7D6D, 15'h7D71, 15'h7D74, 15'h7D78, 15'h7D7C, 15'h7D80, 15'h7D84, 15'h7D87, 15'h7D8B, 15'h7D8F, 15'h7D92, + 15'h7D96, 15'h7D9A, 15'h7D9D, 15'h7DA1, 15'h7DA5, 15'h7DA8, 15'h7DAC, 15'h7DAF, 15'h7DB3, 15'h7DB7, 15'h7DBA, 15'h7DBE, 15'h7DC1, 15'h7DC5, 15'h7DC8, 15'h7DCB, + 15'h7DCF, 15'h7DD2, 15'h7DD6, 15'h7DD9, 15'h7DDC, 15'h7DE0, 15'h7DE3, 15'h7DE6, 15'h7DEA, 15'h7DED, 15'h7DF0, 15'h7DF4, 15'h7DF7, 15'h7DFA, 15'h7DFD, 15'h7E00, + 15'h7E04, 15'h7E07, 15'h7E0A, 15'h7E0D, 15'h7E10, 15'h7E13, 15'h7E17, 15'h7E1A, 15'h7E1D, 15'h7E20, 15'h7E23, 15'h7E26, 15'h7E29, 15'h7E2C, 15'h7E2F, 15'h7E32, + 15'h7E35, 15'h7E38, 15'h7E3B, 15'h7E3E, 15'h7E40, 15'h7E43, 15'h7E46, 15'h7E49, 15'h7E4C, 15'h7E4F, 15'h7E52, 15'h7E54, 15'h7E57, 15'h7E5A, 15'h7E5D, 15'h7E60, + 15'h7E62, 15'h7E65, 15'h7E68, 15'h7E6A, 15'h7E6D, 15'h7E70, 15'h7E72, 15'h7E75, 15'h7E78, 15'h7E7A, 15'h7E7D, 15'h7E80, 15'h7E82, 15'h7E85, 15'h7E87, 15'h7E8A, + 15'h7E8C, 15'h7E8F, 15'h7E91, 15'h7E94, 15'h7E96, 15'h7E99, 15'h7E9B, 15'h7E9E, 15'h7EA0, 15'h7EA3, 15'h7EA5, 15'h7EA7, 15'h7EAA, 15'h7EAC, 15'h7EAF, 15'h7EB1, + 15'h7EB3, 15'h7EB6, 15'h7EB8, 15'h7EBA, 15'h7EBC, 15'h7EBF, 15'h7EC1, 15'h7EC3, 15'h7EC5, 15'h7EC8, 15'h7ECA, 15'h7ECC, 15'h7ECE, 15'h7ED1, 15'h7ED3, 15'h7ED5, + 15'h7ED7, 15'h7ED9, 15'h7EDB, 15'h7EDD, 15'h7EDF, 15'h7EE2, 15'h7EE4, 15'h7EE6, 15'h7EE8, 15'h7EEA, 15'h7EEC, 15'h7EEE, 15'h7EF0, 15'h7EF2, 15'h7EF4, 15'h7EF6, + 15'h7EF8, 15'h7EFA, 15'h7EFC, 15'h7EFE, 15'h7F00, 15'h7F02, 15'h7F03, 15'h7F05, 15'h7F07, 15'h7F09, 15'h7F0B, 15'h7F0D, 15'h7F0F, 15'h7F10, 15'h7F12, 15'h7F14, + 15'h7F16, 15'h7F18, 15'h7F19, 15'h7F1B, 15'h7F1D, 15'h7F1F, 15'h7F20, 15'h7F22, 15'h7F24, 15'h7F26, 15'h7F27, 15'h7F29, 15'h7F2B, 15'h7F2C, 15'h7F2E, 15'h7F30, + 15'h7F31, 15'h7F33, 15'h7F35, 15'h7F36, 15'h7F38, 15'h7F39, 15'h7F3B, 15'h7F3D, 15'h7F3E, 15'h7F40, 15'h7F41, 15'h7F43, 15'h7F44, 15'h7F46, 15'h7F47, 15'h7F49, + 15'h7F4A, 15'h7F4C, 15'h7F4D, 15'h7F4F, 15'h7F50, 15'h7F52, 15'h7F53, 15'h7F54, 15'h7F56, 15'h7F57, 15'h7F59, 15'h7F5A, 15'h7F5B, 15'h7F5D, 15'h7F5E, 15'h7F60, + 15'h7F61, 15'h7F62, 15'h7F64, 15'h7F65, 15'h7F66, 15'h7F68, 15'h7F69, 15'h7F6A, 15'h7F6B, 15'h7F6D, 15'h7F6E, 15'h7F6F, 15'h7F70, 15'h7F72, 15'h7F73, 15'h7F74, + 15'h7F75, 15'h7F77, 15'h7F78, 15'h7F79, 15'h7F7A, 15'h7F7B, 15'h7F7D, 15'h7F7E, 15'h7F7F, 15'h7F80, 15'h7F81, 15'h7F82, 15'h7F83, 15'h7F85, 15'h7F86, 15'h7F87, + 15'h7F88, 15'h7F89, 15'h7F8A, 15'h7F8B, 15'h7F8C, 15'h7F8D, 15'h7F8E, 15'h7F8F, 15'h7F90, 15'h7F91, 15'h7F92, 15'h7F93, 15'h7F94, 15'h7F95, 15'h7F96, 15'h7F97, + 15'h7F98, 15'h7F99, 15'h7F9A, 15'h7F9B, 15'h7F9C, 15'h7F9D, 15'h7F9E, 15'h7F9F, 15'h7FA0, 15'h7FA1, 15'h7FA2, 15'h7FA3, 15'h7FA4, 15'h7FA4, 15'h7FA5, 15'h7FA6, + 15'h7FA7, 15'h7FA8, 15'h7FA9, 15'h7FAA, 15'h7FAB, 15'h7FAB, 15'h7FAC, 15'h7FAD, 15'h7FAE, 15'h7FAF, 15'h7FAF, 15'h7FB0, 15'h7FB1, 15'h7FB2, 15'h7FB3, 15'h7FB3, + 15'h7FB4, 15'h7FB5, 15'h7FB6, 15'h7FB6, 15'h7FB7, 15'h7FB8, 15'h7FB9, 15'h7FB9, 15'h7FBA, 15'h7FBB, 15'h7FBC, 15'h7FBC, 15'h7FBD, 15'h7FBE, 15'h7FBE, 15'h7FBF, + 15'h7FC0, 15'h7FC0, 15'h7FC1, 15'h7FC2, 15'h7FC2, 15'h7FC3, 15'h7FC4, 15'h7FC4, 15'h7FC5, 15'h7FC6, 15'h7FC6, 15'h7FC7, 15'h7FC8, 15'h7FC8, 15'h7FC9, 15'h7FC9, + 15'h7FCA, 15'h7FCB, 15'h7FCB, 15'h7FCC, 15'h7FCC, 15'h7FCD, 15'h7FCD, 15'h7FCE, 15'h7FCF, 15'h7FCF, 15'h7FD0, 15'h7FD0, 15'h7FD1, 15'h7FD1, 15'h7FD2, 15'h7FD2, + 15'h7FD3, 15'h7FD3, 15'h7FD4, 15'h7FD4, 15'h7FD5, 15'h7FD5, 15'h7FD6, 15'h7FD6, 15'h7FD7, 15'h7FD7, 15'h7FD8, 15'h7FD8, 15'h7FD9, 15'h7FD9, 15'h7FDA, 15'h7FDA, + 15'h7FDB, 15'h7FDB, 15'h7FDB, 15'h7FDC, 15'h7FDC, 15'h7FDD, 15'h7FDD, 15'h7FDE, 15'h7FDE, 15'h7FDE, 15'h7FDF, 15'h7FDF, 15'h7FE0, 15'h7FE0, 15'h7FE0, 15'h7FE1, + 15'h7FE1, 15'h7FE2, 15'h7FE2, 15'h7FE2, 15'h7FE3, 15'h7FE3, 15'h7FE3, 15'h7FE4, 15'h7FE4, 15'h7FE5, 15'h7FE5, 15'h7FE5, 15'h7FE6, 15'h7FE6, 15'h7FE6, 15'h7FE7, + 15'h7FE7, 15'h7FE7, 15'h7FE8, 15'h7FE8, 15'h7FE8, 15'h7FE9, 15'h7FE9, 15'h7FE9, 15'h7FE9, 15'h7FEA, 15'h7FEA, 15'h7FEA, 15'h7FEB, 15'h7FEB, 15'h7FEB, 15'h7FEB, + 15'h7FEC, 15'h7FEC, 15'h7FEC, 15'h7FED, 15'h7FED, 15'h7FED, 15'h7FED, 15'h7FEE, 15'h7FEE, 15'h7FEE, 15'h7FEE, 15'h7FEF, 15'h7FEF, 15'h7FEF, 15'h7FEF, 15'h7FF0, + 15'h7FF0, 15'h7FF0, 15'h7FF0, 15'h7FF0, 15'h7FF1, 15'h7FF1, 15'h7FF1, 15'h7FF1, 15'h7FF2, 15'h7FF2, 15'h7FF2, 15'h7FF2, 15'h7FF2, 15'h7FF3, 15'h7FF3, 15'h7FF3, + 15'h7FF3, 15'h7FF3, 15'h7FF4, 15'h7FF4, 15'h7FF4, 15'h7FF4, 15'h7FF4, 15'h7FF4, 15'h7FF5, 15'h7FF5, 15'h7FF5, 15'h7FF5, 15'h7FF5, 15'h7FF5, 15'h7FF6, 15'h7FF6, + 15'h7FF6, 15'h7FF6, 15'h7FF6, 15'h7FF6, 15'h7FF6, 15'h7FF7, 15'h7FF7, 15'h7FF7, 15'h7FF7, 15'h7FF7, 15'h7FF7, 15'h7FF7, 15'h7FF8, 15'h7FF8, 15'h7FF8, 15'h7FF8, + 15'h7FF8, 15'h7FF8, 15'h7FF8, 15'h7FF8, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FF9, 15'h7FFA, 15'h7FFA, 15'h7FFA, + 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFA, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, + 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFB, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, + 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFC, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, + 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFD, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, + 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFE, 15'h7FFF +}; + +endmodule diff --git a/common/Sound/opl3/exp_tab.mem b/common/Sound/opl3/exp_tab.mem new file mode 100644 index 00000000..4a54c60d --- /dev/null +++ b/common/Sound/opl3/exp_tab.mem @@ -0,0 +1,6656 @@ +0FF4 +F00B +0FEA +F015 +0FDE +F021 +0FD4 +F02B +0FC8 +F037 +0FBE +F041 +0FB4 +F04B +0FA8 +F057 +0F9E +F061 +0F92 +F06D +0F88 +F077 +0F7E +F081 +0F72 +F08D +0F68 +F097 +0F5C +F0A3 +0F52 +F0AD +0F48 +F0B7 +0F3E +F0C1 +0F32 +F0CD +0F28 +F0D7 +0F1E +F0E1 +0F14 +F0EB +0F08 +F0F7 +0EFE +F101 +0EF4 +F10B +0EEA +F115 +0EE0 +F11F +0ED4 +F12B +0ECA +F135 +0EC0 +F13F +0EB6 +F149 +0EAC +F153 +0EA2 +F15D +0E98 +F167 +0E8E +F171 +0E84 +F17B +0E7A +F185 +0E70 +F18F +0E66 +F199 +0E5C +F1A3 +0E52 +F1AD +0E48 +F1B7 +0E3E +F1C1 +0E34 +F1CB +0E2A +F1D5 +0E20 +F1DF +0E16 +F1E9 +0E0C +F1F3 +0E04 +F1FB +0DFA +F205 +0DF0 +F20F +0DE6 +F219 +0DDC +F223 +0DD2 +F22D +0DCA +F235 +0DC0 +F23F +0DB6 +F249 +0DAC +F253 +0DA4 +F25B +0D9A +F265 +0D90 +F26F +0D88 +F277 +0D7E +F281 +0D74 +F28B +0D6A +F295 +0D62 +F29D +0D58 +F2A7 +0D50 +F2AF +0D46 +F2B9 +0D3C +F2C3 +0D34 +F2CB +0D2A +F2D5 +0D22 +F2DD +0D18 +F2E7 +0D10 +F2EF +0D06 +F2F9 +0CFE +F301 +0CF4 +F30B +0CEC +F313 +0CE2 +F31D +0CDA +F325 +0CD0 +F32F +0CC8 +F337 +0CBE +F341 +0CB6 +F349 +0CAE +F351 +0CA4 +F35B +0C9C +F363 +0C92 +F36D +0C8A +F375 +0C82 +F37D +0C78 +F387 +0C70 +F38F +0C68 +F397 +0C60 +F39F +0C56 +F3A9 +0C4E +F3B1 +0C46 +F3B9 +0C3C +F3C3 +0C34 +F3CB +0C2C +F3D3 +0C24 +F3DB +0C1C +F3E3 +0C12 +F3ED +0C0A +F3F5 +0C02 +F3FD +0BFA +F405 +0BF2 +F40D +0BEA +F415 +0BE0 +F41F +0BD8 +F427 +0BD0 +F42F +0BC8 +F437 +0BC0 +F43F +0BB8 +F447 +0BB0 +F44F +0BA8 +F457 +0BA0 +F45F +0B98 +F467 +0B90 +F46F +0B88 +F477 +0B80 +F47F +0B78 +F487 +0B70 +F48F +0B68 +F497 +0B60 +F49F +0B58 +F4A7 +0B50 +F4AF +0B48 +F4B7 +0B40 +F4BF +0B38 +F4C7 +0B32 +F4CD +0B2A +F4D5 +0B22 +F4DD +0B1A +F4E5 +0B12 +F4ED +0B0A +F4F5 +0B02 +F4FD +0AFC +F503 +0AF4 +F50B +0AEC +F513 +0AE4 +F51B +0ADE +F521 +0AD6 +F529 +0ACE +F531 +0AC6 +F539 +0AC0 +F53F +0AB8 +F547 +0AB0 +F54F +0AA8 +F557 +0AA2 +F55D +0A9A +F565 +0A92 +F56D +0A8C +F573 +0A84 +F57B +0A7C +F583 +0A76 +F589 +0A6E +F591 +0A68 +F597 +0A60 +F59F +0A58 +F5A7 +0A52 +F5AD +0A4A +F5B5 +0A44 +F5BB +0A3C +F5C3 +0A36 +F5C9 +0A2E +F5D1 +0A28 +F5D7 +0A20 +F5DF +0A18 +F5E7 +0A12 +F5ED +0A0C +F5F3 +0A04 +F5FB +09FE +F601 +09F6 +F609 +09F0 +F60F +09E8 +F617 +09E2 +F61D +09DA +F625 +09D4 +F62B +09CE +F631 +09C6 +F639 +09C0 +F63F +09B8 +F647 +09B2 +F64D +09AC +F653 +09A4 +F65B +099E +F661 +0998 +F667 +0990 +F66F +098A +F675 +0984 +F67B +097C +F683 +0976 +F689 +0970 +F68F +096A +F695 +0962 +F69D +095C +F6A3 +0956 +F6A9 +0950 +F6AF +0948 +F6B7 +0942 +F6BD +093C +F6C3 +0936 +F6C9 +0930 +F6CF +0928 +F6D7 +0922 +F6DD +091C +F6E3 +0916 +F6E9 +0910 +F6EF +090A +F6F5 +0904 +F6FB +08FC +F703 +08F6 +F709 +08F0 +F70F +08EA +F715 +08E4 +F71B +08DE +F721 +08D8 +F727 +08D2 +F72D +08CC +F733 +08C6 +F739 +08C0 +F73F +08BA +F745 +08B4 +F74B +08AE +F751 +08A8 +F757 +08A2 +F75D +089C +F763 +0896 +F769 +0890 +F76F +088A +F775 +0884 +F77B +087E +F781 +0878 +F787 +0872 +F78D +086C +F793 +0866 +F799 +0860 +F79F +085A +F7A5 +0854 +F7AB +0850 +F7AF +084A +F7B5 +0844 +F7BB +083E +F7C1 +0838 +F7C7 +0832 +F7CD +082C +F7D3 +0828 +F7D7 +0822 +F7DD +081C +F7E3 +0816 +F7E9 +0810 +F7EF +080C +F7F3 +0806 +F7F9 +0800 +F7FF +07FA +F805 +07F5 +F80A +07EF +F810 +07EA +F815 +07E4 +F81B +07DF +F820 +07DA +F825 +07D4 +F82B +07CF +F830 +07C9 +F836 +07C4 +F83B +07BF +F840 +07B9 +F846 +07B4 +F84B +07AE +F851 +07A9 +F856 +07A4 +F85B +079F +F860 +0799 +F866 +0794 +F86B +078F +F870 +078A +F875 +0784 +F87B +077F +F880 +077A +F885 +0775 +F88A +0770 +F88F +076A +F895 +0765 +F89A +0760 +F89F +075B +F8A4 +0756 +F8A9 +0751 +F8AE +074C +F8B3 +0747 +F8B8 +0742 +F8BD +073D +F8C2 +0738 +F8C7 +0733 +F8CC +072E +F8D1 +0729 +F8D6 +0724 +F8DB +071F +F8E0 +071A +F8E5 +0715 +F8EA +0710 +F8EF +070B +F8F4 +0706 +F8F9 +0702 +F8FD +06FD +F902 +06F8 +F907 +06F3 +F90C +06EE +F911 +06E9 +F916 +06E5 +F91A +06E0 +F91F +06DB +F924 +06D6 +F929 +06D2 +F92D +06CD +F932 +06C8 +F937 +06C4 +F93B +06BF +F940 +06BA +F945 +06B5 +F94A +06B1 +F94E +06AC +F953 +06A8 +F957 +06A3 +F95C +069E +F961 +069A +F965 +0695 +F96A +0691 +F96E +068C +F973 +0688 +F977 +0683 +F97C +067F +F980 +067A +F985 +0676 +F989 +0671 +F98E +066D +F992 +0668 +F997 +0664 +F99B +065F +F9A0 +065B +F9A4 +0657 +F9A8 +0652 +F9AD +064E +F9B1 +0649 +F9B6 +0645 +F9BA +0641 +F9BE +063C +F9C3 +0638 +F9C7 +0634 +F9CB +0630 +F9CF +062B +F9D4 +0627 +F9D8 +0623 +F9DC +061E +F9E1 +061A +F9E5 +0616 +F9E9 +0612 +F9ED +060E +F9F1 +0609 +F9F6 +0605 +F9FA +0601 +F9FE +05FD +FA02 +05F9 +FA06 +05F5 +FA0A +05F0 +FA0F +05EC +FA13 +05E8 +FA17 +05E4 +FA1B +05E0 +FA1F +05DC +FA23 +05D8 +FA27 +05D4 +FA2B +05D0 +FA2F +05CC +FA33 +05C8 +FA37 +05C4 +FA3B +05C0 +FA3F +05BC +FA43 +05B8 +FA47 +05B4 +FA4B +05B0 +FA4F +05AC +FA53 +05A8 +FA57 +05A4 +FA5B +05A0 +FA5F +059C +FA63 +0599 +FA66 +0595 +FA6A +0591 +FA6E +058D +FA72 +0589 +FA76 +0585 +FA7A +0581 +FA7E +057E +FA81 +057A +FA85 +0576 +FA89 +0572 +FA8D +056F +FA90 +056B +FA94 +0567 +FA98 +0563 +FA9C +0560 +FA9F +055C +FAA3 +0558 +FAA7 +0554 +FAAB +0551 +FAAE +054D +FAB2 +0549 +FAB6 +0546 +FAB9 +0542 +FABD +053E +FAC1 +053B +FAC4 +0537 +FAC8 +0534 +FACB +0530 +FACF +052C +FAD3 +0529 +FAD6 +0525 +FADA +0522 +FADD +051E +FAE1 +051B +FAE4 +0517 +FAE8 +0514 +FAEB +0510 +FAEF +050C +FAF3 +0509 +FAF6 +0506 +FAF9 +0502 +FAFD +04FF +FB00 +04FB +FB04 +04F8 +FB07 +04F4 +FB0B +04F1 +FB0E +04ED +FB12 +04EA +FB15 +04E7 +FB18 +04E3 +FB1C +04E0 +FB1F +04DC +FB23 +04D9 +FB26 +04D6 +FB29 +04D2 +FB2D +04CF +FB30 +04CC +FB33 +04C8 +FB37 +04C5 +FB3A +04C2 +FB3D +04BE +FB41 +04BB +FB44 +04B8 +FB47 +04B5 +FB4A +04B1 +FB4E +04AE +FB51 +04AB +FB54 +04A8 +FB57 +04A4 +FB5B +04A1 +FB5E +049E +FB61 +049B +FB64 +0498 +FB67 +0494 +FB6B +0491 +FB6E +048E +FB71 +048B +FB74 +0488 +FB77 +0485 +FB7A +0482 +FB7D +047E +FB81 +047B +FB84 +0478 +FB87 +0475 +FB8A +0472 +FB8D +046F +FB90 +046C +FB93 +0469 +FB96 +0466 +FB99 +0463 +FB9C +0460 +FB9F +045D +FBA2 +045A +FBA5 +0457 +FBA8 +0454 +FBAB +0451 +FBAE +044E +FBB1 +044B +FBB4 +0448 +FBB7 +0445 +FBBA +0442 +FBBD +043F +FBC0 +043C +FBC3 +0439 +FBC6 +0436 +FBC9 +0433 +FBCC +0430 +FBCF +042D +FBD2 +042A +FBD5 +0428 +FBD7 +0425 +FBDA +0422 +FBDD +041F +FBE0 +041C +FBE3 +0419 +FBE6 +0416 +FBE9 +0414 +FBEB +0411 +FBEE +040E +FBF1 +040B +FBF4 +0408 +FBF7 +0406 +FBF9 +0403 +FBFC +0400 +FBFF +03FD +FC02 +03FA +FC05 +03F7 +FC08 +03F5 +FC0A +03F2 +FC0D +03EF +FC10 +03ED +FC12 +03EA +FC15 +03E7 +FC18 +03E4 +FC1B +03E2 +FC1D +03DF +FC20 +03DC +FC23 +03DA +FC25 +03D7 +FC28 +03D4 +FC2B +03D2 +FC2D +03CF +FC30 +03CC +FC33 +03CA +FC35 +03C7 +FC38 +03C5 +FC3A +03C2 +FC3D +03BF +FC40 +03BD +FC42 +03BA +FC45 +03B8 +FC47 +03B5 +FC4A +03B2 +FC4D +03B0 +FC4F +03AD +FC52 +03AB +FC54 +03A8 +FC57 +03A6 +FC59 +03A3 +FC5C +03A1 +FC5E +039E +FC61 +039C +FC63 +0399 +FC66 +0397 +FC68 +0394 +FC6B +0392 +FC6D +038F +FC70 +038D +FC72 +038A +FC75 +0388 +FC77 +0385 +FC7A +0383 +FC7C +0381 +FC7E +037E +FC81 +037C +FC83 +0379 +FC86 +0377 +FC88 +0374 +FC8B +0372 +FC8D +0370 +FC8F +036D +FC92 +036B +FC94 +0369 +FC96 +0366 +FC99 +0364 +FC9B +0362 +FC9D +035F +FCA0 +035D +FCA2 +035A +FCA5 +0358 +FCA7 +0356 +FCA9 +0354 +FCAB +0351 +FCAE +034F +FCB0 +034D +FCB2 +034A +FCB5 +0348 +FCB7 +0346 +FCB9 +0344 +FCBB +0341 +FCBE +033F +FCC0 +033D +FCC2 +033B +FCC4 +0338 +FCC7 +0336 +FCC9 +0334 +FCCB +0332 +FCCD +032F +FCD0 +032D +FCD2 +032B +FCD4 +0329 +FCD6 +0327 +FCD8 +0324 +FCDB +0322 +FCDD +0320 +FCDF +031E +FCE1 +031C +FCE3 +031A +FCE5 +0318 +FCE7 +0315 +FCEA +0313 +FCEC +0311 +FCEE +030F +FCF0 +030D +FCF2 +030B +FCF4 +0309 +FCF6 +0307 +FCF8 +0304 +FCFB +0302 +FCFD +0300 +FCFF +02FE +FD01 +02FC +FD03 +02FA +FD05 +02F8 +FD07 +02F6 +FD09 +02F4 +FD0B +02F2 +FD0D +02F0 +FD0F +02EE +FD11 +02EC +FD13 +02EA +FD15 +02E8 +FD17 +02E6 +FD19 +02E4 +FD1B +02E2 +FD1D +02E0 +FD1F +02DE +FD21 +02DC +FD23 +02DA +FD25 +02D8 +FD27 +02D6 +FD29 +02D4 +FD2B +02D2 +FD2D +02D0 +FD2F +02CE +FD31 +02CC +FD33 +02CA +FD35 +02C8 +FD37 +02C6 +FD39 +02C4 +FD3B +02C2 +FD3D +02C0 +FD3F +02BF +FD40 +02BD +FD42 +02BB +FD44 +02B9 +FD46 +02B7 +FD48 +02B5 +FD4A +02B3 +FD4C +02B1 +FD4E +02B0 +FD4F +02AE +FD51 +02AC +FD53 +02AA +FD55 +02A8 +FD57 +02A6 +FD59 +02A4 +FD5B +02A3 +FD5C +02A1 +FD5E +029F +FD60 +029D +FD62 +029B +FD64 +029A +FD65 +0298 +FD67 +0296 +FD69 +0294 +FD6B +0292 +FD6D +0291 +FD6E +028F +FD70 +028D +FD72 +028B +FD74 +028A +FD75 +0288 +FD77 +0286 +FD79 +0284 +FD7B +0283 +FD7C +0281 +FD7E +027F +FD80 +027D +FD82 +027C +FD83 +027A +FD85 +0278 +FD87 +0276 +FD89 +0275 +FD8A +0273 +FD8C +0271 +FD8E +0270 +FD8F +026E +FD91 +026C +FD93 +026B +FD94 +0269 +FD96 +0267 +FD98 +0266 +FD99 +0264 +FD9B +0262 +FD9D +0261 +FD9E +025F +FDA0 +025D +FDA2 +025C +FDA3 +025A +FDA5 +0258 +FDA7 +0257 +FDA8 +0255 +FDAA +0254 +FDAB +0252 +FDAD +0250 +FDAF +024F +FDB0 +024D +FDB2 +024C +FDB3 +024A +FDB5 +0248 +FDB7 +0247 +FDB8 +0245 +FDBA +0244 +FDBB +0242 +FDBD +0241 +FDBE +023F +FDC0 +023D +FDC2 +023C +FDC3 +023A +FDC5 +0239 +FDC6 +0237 +FDC8 +0236 +FDC9 +0234 +FDCB +0233 +FDCC +0231 +FDCE +0230 +FDCF +022E +FDD1 +022D +FDD2 +022B +FDD4 +022A +FDD5 +0228 +FDD7 +0227 +FDD8 +0225 +FDDA +0224 +FDDB +0222 +FDDD +0221 +FDDE +021F +FDE0 +021E +FDE1 +021C +FDE3 +021B +FDE4 +0219 +FDE6 +0218 +FDE7 +0216 +FDE9 +0215 +FDEA +0214 +FDEB +0212 +FDED +0211 +FDEE +020F +FDF0 +020E +FDF1 +020C +FDF3 +020B +FDF4 +020A +FDF5 +0208 +FDF7 +0207 +FDF8 +0205 +FDFA +0204 +FDFB +0203 +FDFC +0201 +FDFE +0200 +FDFF +01FE +FE01 +01FD +FE02 +01FB +FE04 +01FA +FE05 +01F9 +FE06 +01F7 +FE08 +01F6 +FE09 +01F5 +FE0A +01F3 +FE0C +01F2 +FE0D +01F1 +FE0E +01EF +FE10 +01EE +FE11 +01ED +FE12 +01EB +FE14 +01EA +FE15 +01E9 +FE16 +01E7 +FE18 +01E6 +FE19 +01E5 +FE1A +01E3 +FE1C +01E2 +FE1D +01E1 +FE1E +01DF +FE20 +01DE +FE21 +01DD +FE22 +01DC +FE23 +01DA +FE25 +01D9 +FE26 +01D8 +FE27 +01D6 +FE29 +01D5 +FE2A +01D4 +FE2B +01D3 +FE2C +01D1 +FE2E +01D0 +FE2F +01CF +FE30 +01CE +FE31 +01CC +FE33 +01CB +FE34 +01CA +FE35 +01C9 +FE36 +01C7 +FE38 +01C6 +FE39 +01C5 +FE3A +01C4 +FE3B +01C2 +FE3D +01C1 +FE3E +01C0 +FE3F +01BF +FE40 +01BE +FE41 +01BC +FE43 +01BB +FE44 +01BA +FE45 +01B9 +FE46 +01B8 +FE47 +01B6 +FE49 +01B5 +FE4A +01B4 +FE4B +01B3 +FE4C +01B2 +FE4D +01B1 +FE4E +01AF +FE50 +01AE +FE51 +01AD +FE52 +01AC +FE53 +01AB +FE54 +01AA +FE55 +01A8 +FE57 +01A7 +FE58 +01A6 +FE59 +01A5 +FE5A +01A4 +FE5B +01A3 +FE5C +01A2 +FE5D +01A0 +FE5F +019F +FE60 +019E +FE61 +019D +FE62 +019C +FE63 +019B +FE64 +019A +FE65 +0199 +FE66 +0197 +FE68 +0196 +FE69 +0195 +FE6A +0194 +FE6B +0193 +FE6C +0192 +FE6D +0191 +FE6E +0190 +FE6F +018F +FE70 +018E +FE71 +018D +FE72 +018C +FE73 +018A +FE75 +0189 +FE76 +0188 +FE77 +0187 +FE78 +0186 +FE79 +0185 +FE7A +0184 +FE7B +0183 +FE7C +0182 +FE7D +0181 +FE7E +0180 +FE7F +017F +FE80 +017E +FE81 +017D +FE82 +017C +FE83 +017B +FE84 +017A +FE85 +0179 +FE86 +0178 +FE87 +0177 +FE88 +0176 +FE89 +0175 +FE8A +0174 +FE8B +0173 +FE8C +0172 +FE8D +0171 +FE8E +0170 +FE8F +016F +FE90 +016E +FE91 +016D +FE92 +016C +FE93 +016B +FE94 +016A +FE95 +0169 +FE96 +0168 +FE97 +0167 +FE98 +0166 +FE99 +0165 +FE9A +0164 +FE9B +0163 +FE9C +0162 +FE9D +0161 +FE9E +0160 +FE9F +015F +FEA0 +015E +FEA1 +015D +FEA2 +015C +FEA3 +015B +FEA4 +015A +FEA5 +0159 +FEA6 +0158 +FEA7 +0158 +FEA7 +0157 +FEA8 +0156 +FEA9 +0155 +FEAA +0154 +FEAB +0153 +FEAC +0152 +FEAD +0151 +FEAE +0150 +FEAF +014F +FEB0 +014E +FEB1 +014D +FEB2 +014D +FEB2 +014C +FEB3 +014B +FEB4 +014A +FEB5 +0149 +FEB6 +0148 +FEB7 +0147 +FEB8 +0146 +FEB9 +0145 +FEBA +0145 +FEBA +0144 +FEBB +0143 +FEBC +0142 +FEBD +0141 +FEBE +0140 +FEBF +013F +FEC0 +013E +FEC1 +013E +FEC1 +013D +FEC2 +013C +FEC3 +013B +FEC4 +013A +FEC5 +0139 +FEC6 +0138 +FEC7 +0138 +FEC7 +0137 +FEC8 +0136 +FEC9 +0135 +FECA +0134 +FECB +0133 +FECC +0133 +FECC +0132 +FECD +0131 +FECE +0130 +FECF +012F +FED0 +012E +FED1 +012E +FED1 +012D +FED2 +012C +FED3 +012B +FED4 +012A +FED5 +012A +FED5 +0129 +FED6 +0128 +FED7 +0127 +FED8 +0126 +FED9 +0126 +FED9 +0125 +FEDA +0124 +FEDB +0123 +FEDC +0122 +FEDD +0122 +FEDD +0121 +FEDE +0120 +FEDF +011F +FEE0 +011E +FEE1 +011E +FEE1 +011D +FEE2 +011C +FEE3 +011B +FEE4 +011B +FEE4 +011A +FEE5 +0119 +FEE6 +0118 +FEE7 +0118 +FEE7 +0117 +FEE8 +0116 +FEE9 +0115 +FEEA +0115 +FEEA +0114 +FEEB +0113 +FEEC +0112 +FEED +0112 +FEED +0111 +FEEE +0110 +FEEF +010F +FEF0 +010F +FEF0 +010E +FEF1 +010D +FEF2 +010C +FEF3 +010C +FEF3 +010B +FEF4 +010A +FEF5 +010A +FEF5 +0109 +FEF6 +0108 +FEF7 +0107 +FEF8 +0107 +FEF8 +0106 +FEF9 +0105 +FEFA +0105 +FEFA +0104 +FEFB +0103 +FEFC +0102 +FEFD +0102 +FEFD +0101 +FEFE +0100 +FEFF +0100 +FEFF +00FF +FF00 +00FE +FF01 +00FD +FF02 +00FD +FF02 +00FC +FF03 +00FB +FF04 +00FB +FF04 +00FA +FF05 +00F9 +FF06 +00F9 +FF06 +00F8 +FF07 +00F7 +FF08 +00F7 +FF08 +00F6 +FF09 +00F5 +FF0A +00F5 +FF0A +00F4 +FF0B +00F3 +FF0C +00F3 +FF0C +00F2 +FF0D +00F1 +FF0E +00F1 +FF0E +00F0 +FF0F +00EF +FF10 +00EF +FF10 +00EE +FF11 +00EE +FF11 +00ED +FF12 +00EC +FF13 +00EC +FF13 +00EB +FF14 +00EA +FF15 +00EA +FF15 +00E9 +FF16 +00E8 +FF17 +00E8 +FF17 +00E7 +FF18 +00E7 +FF18 +00E6 +FF19 +00E5 +FF1A +00E5 +FF1A +00E4 +FF1B +00E3 +FF1C +00E3 +FF1C +00E2 +FF1D +00E2 +FF1D +00E1 +FF1E +00E0 +FF1F +00E0 +FF1F +00DF +FF20 +00DF +FF20 +00DE +FF21 +00DD +FF22 +00DD +FF22 +00DC +FF23 +00DC +FF23 +00DB +FF24 +00DA +FF25 +00DA +FF25 +00D9 +FF26 +00D9 +FF26 +00D8 +FF27 +00D7 +FF28 +00D7 +FF28 +00D6 +FF29 +00D6 +FF29 +00D5 +FF2A +00D5 +FF2A +00D4 +FF2B +00D3 +FF2C +00D3 +FF2C +00D2 +FF2D +00D2 +FF2D +00D1 +FF2E +00D1 +FF2E +00D0 +FF2F +00CF +FF30 +00CF +FF30 +00CE +FF31 +00CE +FF31 +00CD +FF32 +00CD +FF32 +00CC +FF33 +00CB +FF34 +00CB +FF34 +00CA +FF35 +00CA +FF35 +00C9 +FF36 +00C9 +FF36 +00C8 +FF37 +00C8 +FF37 +00C7 +FF38 +00C7 +FF38 +00C6 +FF39 +00C6 +FF39 +00C5 +FF3A +00C4 +FF3B +00C4 +FF3B +00C3 +FF3C +00C3 +FF3C +00C2 +FF3D +00C2 +FF3D +00C1 +FF3E +00C1 +FF3E +00C0 +FF3F +00C0 +FF3F +00BF +FF40 +00BF +FF40 +00BE +FF41 +00BE +FF41 +00BD +FF42 +00BD +FF42 +00BC +FF43 +00BC +FF43 +00BB +FF44 +00BB +FF44 +00BA +FF45 +00BA +FF45 +00B9 +FF46 +00B9 +FF46 +00B8 +FF47 +00B8 +FF47 +00B7 +FF48 +00B7 +FF48 +00B6 +FF49 +00B6 +FF49 +00B5 +FF4A +00B5 +FF4A +00B4 +FF4B +00B4 +FF4B +00B3 +FF4C +00B3 +FF4C +00B2 +FF4D +00B2 +FF4D +00B1 +FF4E +00B1 +FF4E +00B0 +FF4F +00B0 +FF4F +00AF +FF50 +00AF +FF50 +00AE +FF51 +00AE +FF51 +00AD +FF52 +00AD +FF52 +00AC +FF53 +00AC +FF53 +00AC +FF53 +00AB +FF54 +00AB +FF54 +00AA +FF55 +00AA +FF55 +00A9 +FF56 +00A9 +FF56 +00A8 +FF57 +00A8 +FF57 +00A7 +FF58 +00A7 +FF58 +00A6 +FF59 +00A6 +FF59 +00A6 +FF59 +00A5 +FF5A +00A5 +FF5A +00A4 +FF5B +00A4 +FF5B +00A3 +FF5C +00A3 +FF5C +00A2 +FF5D +00A2 +FF5D +00A2 +FF5D +00A1 +FF5E +00A1 +FF5E +00A0 +FF5F +00A0 +FF5F +009F +FF60 +009F +FF60 +009F +FF60 +009E +FF61 +009E +FF61 +009D +FF62 +009D +FF62 +009C +FF63 +009C +FF63 +009C +FF63 +009B +FF64 +009B +FF64 +009A +FF65 +009A +FF65 +0099 +FF66 +0099 +FF66 +0099 +FF66 +0098 +FF67 +0098 +FF67 +0097 +FF68 +0097 +FF68 +0097 +FF68 +0096 +FF69 +0096 +FF69 +0095 +FF6A +0095 +FF6A +0095 +FF6A +0094 +FF6B +0094 +FF6B +0093 +FF6C +0093 +FF6C +0093 +FF6C +0092 +FF6D +0092 +FF6D +0091 +FF6E +0091 +FF6E +0091 +FF6E +0090 +FF6F +0090 +FF6F +008F +FF70 +008F +FF70 +008F +FF70 +008E +FF71 +008E +FF71 +008D +FF72 +008D +FF72 +008D +FF72 +008C +FF73 +008C +FF73 +008C +FF73 +008B +FF74 +008B +FF74 +008A +FF75 +008A +FF75 +008A +FF75 +0089 +FF76 +0089 +FF76 +0089 +FF76 +0088 +FF77 +0088 +FF77 +0087 +FF78 +0087 +FF78 +0087 +FF78 +0086 +FF79 +0086 +FF79 +0086 +FF79 +0085 +FF7A +0085 +FF7A +0085 +FF7A +0084 +FF7B +0084 +FF7B +0083 +FF7C +0083 +FF7C +0083 +FF7C +0082 +FF7D +0082 +FF7D +0082 +FF7D +0081 +FF7E +0081 +FF7E +0081 +FF7E +0080 +FF7F +0080 +FF7F +0080 +FF7F +007F +FF80 +007F +FF80 +007E +FF81 +007E +FF81 +007E +FF81 +007D +FF82 +007D +FF82 +007D +FF82 +007C +FF83 +007C +FF83 +007C +FF83 +007B +FF84 +007B +FF84 +007B +FF84 +007A +FF85 +007A +FF85 +007A +FF85 +0079 +FF86 +0079 +FF86 +0079 +FF86 +0078 +FF87 +0078 +FF87 +0078 +FF87 +0077 +FF88 +0077 +FF88 +0077 +FF88 +0077 +FF88 +0076 +FF89 +0076 +FF89 +0076 +FF89 +0075 +FF8A +0075 +FF8A +0075 +FF8A +0074 +FF8B +0074 +FF8B +0074 +FF8B +0073 +FF8C +0073 +FF8C +0073 +FF8C +0072 +FF8D +0072 +FF8D +0072 +FF8D +0071 +FF8E +0071 +FF8E +0071 +FF8E +0071 +FF8E +0070 +FF8F +0070 +FF8F +0070 +FF8F +006F +FF90 +006F +FF90 +006F +FF90 +006E +FF91 +006E +FF91 +006E +FF91 +006E +FF91 +006D +FF92 +006D +FF92 +006D +FF92 +006C +FF93 +006C +FF93 +006C +FF93 +006B +FF94 +006B +FF94 +006B +FF94 +006B +FF94 +006A +FF95 +006A +FF95 +006A +FF95 +0069 +FF96 +0069 +FF96 +0069 +FF96 +0069 +FF96 +0068 +FF97 +0068 +FF97 +0068 +FF97 +0067 +FF98 +0067 +FF98 +0067 +FF98 +0067 +FF98 +0066 +FF99 +0066 +FF99 +0066 +FF99 +0065 +FF9A +0065 +FF9A +0065 +FF9A +0065 +FF9A +0064 +FF9B +0064 +FF9B +0064 +FF9B +0064 +FF9B +0063 +FF9C +0063 +FF9C +0063 +FF9C +0063 +FF9C +0062 +FF9D +0062 +FF9D +0062 +FF9D +0061 +FF9E +0061 +FF9E +0061 +FF9E +0061 +FF9E +0060 +FF9F +0060 +FF9F +0060 +FF9F +0060 +FF9F +005F +FFA0 +005F +FFA0 +005F +FFA0 +005F +FFA0 +005E +FFA1 +005E +FFA1 +005E +FFA1 +005E +FFA1 +005D +FFA2 +005D +FFA2 +005D +FFA2 +005D +FFA2 +005C +FFA3 +005C +FFA3 +005C +FFA3 +005C +FFA3 +005B +FFA4 +005B +FFA4 +005B +FFA4 +005B +FFA4 +005A +FFA5 +005A +FFA5 +005A +FFA5 +005A +FFA5 +0059 +FFA6 +0059 +FFA6 +0059 +FFA6 +0059 +FFA6 +0058 +FFA7 +0058 +FFA7 +0058 +FFA7 +0058 +FFA7 +0057 +FFA8 +0057 +FFA8 +0057 +FFA8 +0057 +FFA8 +0056 +FFA9 +0056 +FFA9 +0056 +FFA9 +0056 +FFA9 +0056 +FFA9 +0055 +FFAA +0055 +FFAA +0055 +FFAA +0055 +FFAA +0054 +FFAB +0054 +FFAB +0054 +FFAB +0054 +FFAB +0053 +FFAC +0053 +FFAC +0053 +FFAC +0053 +FFAC +0053 +FFAC +0052 +FFAD +0052 +FFAD +0052 +FFAD +0052 +FFAD +0051 +FFAE +0051 +FFAE +0051 +FFAE +0051 +FFAE +0051 +FFAE +0050 +FFAF +0050 +FFAF +0050 +FFAF +0050 +FFAF +004F +FFB0 +004F +FFB0 +004F +FFB0 +004F +FFB0 +004F +FFB0 +004E +FFB1 +004E +FFB1 +004E +FFB1 +004E +FFB1 +004E +FFB1 +004D +FFB2 +004D +FFB2 +004D +FFB2 +004D +FFB2 +004C +FFB3 +004C +FFB3 +004C +FFB3 +004C +FFB3 +004C +FFB3 +004B +FFB4 +004B +FFB4 +004B +FFB4 +004B +FFB4 +004B +FFB4 +004A +FFB5 +004A +FFB5 +004A +FFB5 +004A +FFB5 +004A +FFB5 +0049 +FFB6 +0049 +FFB6 +0049 +FFB6 +0049 +FFB6 +0049 +FFB6 +0048 +FFB7 +0048 +FFB7 +0048 +FFB7 +0048 +FFB7 +0048 +FFB7 +0047 +FFB8 +0047 +FFB8 +0047 +FFB8 +0047 +FFB8 +0047 +FFB8 +0046 +FFB9 +0046 +FFB9 +0046 +FFB9 +0046 +FFB9 +0046 +FFB9 +0046 +FFB9 +0045 +FFBA +0045 +FFBA +0045 +FFBA +0045 +FFBA +0045 +FFBA +0044 +FFBB +0044 +FFBB +0044 +FFBB +0044 +FFBB +0044 +FFBB +0043 +FFBC +0043 +FFBC +0043 +FFBC +0043 +FFBC +0043 +FFBC +0043 +FFBC +0042 +FFBD +0042 +FFBD +0042 +FFBD +0042 +FFBD +0042 +FFBD +0041 +FFBE +0041 +FFBE +0041 +FFBE +0041 +FFBE +0041 +FFBE +0041 +FFBE +0040 +FFBF +0040 +FFBF +0040 +FFBF +0040 +FFBF +0040 +FFBF +0040 +FFBF +003F +FFC0 +003F +FFC0 +003F +FFC0 +003F +FFC0 +003F +FFC0 +003E +FFC1 +003E +FFC1 +003E +FFC1 +003E +FFC1 +003E +FFC1 +003E +FFC1 +003D +FFC2 +003D +FFC2 +003D +FFC2 +003D +FFC2 +003D +FFC2 +003D +FFC2 +003C +FFC3 +003C +FFC3 +003C +FFC3 +003C +FFC3 +003C +FFC3 +003C +FFC3 +003B +FFC4 +003B +FFC4 +003B +FFC4 +003B +FFC4 +003B +FFC4 +003B +FFC4 +003B +FFC4 +003A +FFC5 +003A +FFC5 +003A +FFC5 +003A +FFC5 +003A +FFC5 +003A +FFC5 +0039 +FFC6 +0039 +FFC6 +0039 +FFC6 +0039 +FFC6 +0039 +FFC6 +0039 +FFC6 +0038 +FFC7 +0038 +FFC7 +0038 +FFC7 +0038 +FFC7 +0038 +FFC7 +0038 +FFC7 +0038 +FFC7 +0037 +FFC8 +0037 +FFC8 +0037 +FFC8 +0037 +FFC8 +0037 +FFC8 +0037 +FFC8 +0037 +FFC8 +0036 +FFC9 +0036 +FFC9 +0036 +FFC9 +0036 +FFC9 +0036 +FFC9 +0036 +FFC9 +0035 +FFCA +0035 +FFCA +0035 +FFCA +0035 +FFCA +0035 +FFCA +0035 +FFCA +0035 +FFCA +0034 +FFCB +0034 +FFCB +0034 +FFCB +0034 +FFCB +0034 +FFCB +0034 +FFCB +0034 +FFCB +0033 +FFCC +0033 +FFCC +0033 +FFCC +0033 +FFCC +0033 +FFCC +0033 +FFCC +0033 +FFCC +0032 +FFCD +0032 +FFCD +0032 +FFCD +0032 +FFCD +0032 +FFCD +0032 +FFCD +0032 +FFCD +0032 +FFCD +0031 +FFCE +0031 +FFCE +0031 +FFCE +0031 +FFCE +0031 +FFCE +0031 +FFCE +0031 +FFCE +0030 +FFCF +0030 +FFCF +0030 +FFCF +0030 +FFCF +0030 +FFCF +0030 +FFCF +0030 +FFCF +0030 +FFCF +002F +FFD0 +002F +FFD0 +002F +FFD0 +002F +FFD0 +002F +FFD0 +002F +FFD0 +002F +FFD0 +002F +FFD0 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002E +FFD1 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002D +FFD2 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002C +FFD3 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002B +FFD4 +002A +FFD5 +002A +FFD5 +002A +FFD5 +002A +FFD5 +002A +FFD5 +002A +FFD5 +002A +FFD5 +002A +FFD5 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0029 +FFD6 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0028 +FFD7 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0027 +FFD8 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0026 +FFD9 +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0025 +FFDA +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0024 +FFDB +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0023 +FFDC +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0022 +FFDD +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0021 +FFDE +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +0020 +FFDF +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001F +FFE0 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001E +FFE1 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001D +FFE2 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001C +FFE3 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001B +FFE4 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +001A +FFE5 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0019 +FFE6 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0018 +FFE7 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0017 +FFE8 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0016 +FFE9 +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0015 +FFEA +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0014 +FFEB +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0013 +FFEC +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0012 +FFED +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0011 +FFEE +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +0010 +FFEF +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000F +FFF0 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000E +FFF1 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000D +FFF2 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000C +FFF3 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000B +FFF4 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +000A +FFF5 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0009 +FFF6 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0008 +FFF7 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0007 +FFF8 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0006 +FFF9 +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0005 +FFFA +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0004 +FFFB +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0003 +FFFC +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0002 +FFFD +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0001 +FFFE +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF +0000 +FFFF diff --git a/common/Sound/opl3/fw/OPL3.COM b/common/Sound/opl3/fw/OPL3.COM new file mode 100644 index 0000000000000000000000000000000000000000..38909fc4ab9e6be15ed924595027e914cc70e861 GIT binary patch literal 7891 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 q@_?1(Y|f0v%`#^Zm_^`wi@-> 8) + (Block << 2) + 32); +} + +/************************************************************************** +** Deactivates a voice on the FM card ** +*************************************************************************** +** Make sure to give the same values for Note and Block or this will ** +** sound very odd. ** +**************************************************************************/ +void NoteOff(uint8_t Voice, uint8_t Note, uint8_t Block) +{ + WriteFM(0xA0 + Voice, FNr[Note] & 0xFF); + WriteFM(0xB0 + Voice, (FNr[Note] >> 8) + (Block << 2)); +} + +/************************************************************************** +** Sets instrument settings for a voice on the FM card ** +**************************************************************************/ +const static unsigned char OpAdr[9] = { 0, 1, 2, 8, 9, 10, 16, 17, 18 }; //Addresses of the operators used to form voice data +void SetInstrument(uint8_t Voice, struct Instrument *Instr) +{ + uint8_t Value; + + //Set up voice modulator + Value = Instr->Modulator.Tremolo << 8 + | Instr->Modulator.Vibrato << 7 + | Instr->Modulator.EGType << 6 + | Instr->Modulator.KSR << 5 + | Instr->Modulator.Multi; + WriteFM(0x20 + OpAdr[Voice], Value); + + Value = Instr->Modulator.KSL << 7 + | Instr->Modulator.TotalLevel; + WriteFM(0x40 + OpAdr[Voice], Value); + + Value = Instr->Modulator.Attack << 4 + | Instr->Modulator.Decay; + WriteFM(0x60 + OpAdr[Voice], Value); + + Value = Instr->Modulator.Sustain << 4 + | Instr->Modulator.Release; + WriteFM(0x80 + OpAdr[Voice], Value); + + WriteFM(0xE0 + OpAdr[Voice], Instr->Modulator.WaveShape); + + Value = Instr->Feedback << 1 + | Instr->SynType; + WriteFM(0xC0 + OpAdr[Voice], Value); + + //Set up voice carrier + Value = Instr->Carrier.Tremolo << 8 + | Instr->Carrier.Vibrato << 7 + | Instr->Carrier.EGType << 6 + | Instr->Carrier.KSR << 5 + | Instr->Carrier.Multi; + WriteFM(0x23 + OpAdr[Voice], Value); + + Value = Instr->Carrier.KSL << 7 + | Instr->Carrier.TotalLevel; + WriteFM(0x43 + OpAdr[Voice], Value); + + Value = Instr->Carrier.Attack << 4 + | Instr->Carrier.Decay; + WriteFM(0x63 + OpAdr[Voice], Value); + + Value = Instr->Carrier.Sustain << 4 + | Instr->Carrier.Release; + WriteFM(0x83 + OpAdr[Voice], Value); + + WriteFM(0xE3 + OpAdr[Voice], Instr->Carrier.WaveShape); +} + +void test() +{ + // clrscr(); +again: + printf("Demonstration of programming a FM sound card [AdLib, SB and compatibles]\n"); + printf("--------------------------------------------------------------------------\n"); + + //Check to see if an FM sound card is present +/* if (FMInstalled()) { + printf("AdLib/SB or compatible FM sound card found.\n"); + } + else { + //If not, end the programme + printf("AdLib/SB or compatible FM sound card not found.\n"); + return; + } +*/ + //Set up voices 0 - 3 to a "harp" - note, only the values other than 0 are set + Harp.Modulator.Attack = 15; + Harp.Modulator.Decay = 5; + Harp.Modulator.Sustain = 8; + Harp.Modulator.Release = 5; + Harp.Modulator.Multi = 2; + Harp.Modulator.TotalLevel = 41; + + Harp.Carrier.Attack = 15; + Harp.Carrier.Decay = 2; + Harp.Carrier.Release = 3; + Harp.Carrier.Multi = 1; + Harp.Carrier.KSL = 2; + Harp.Carrier.TotalLevel = 3; + + SetInstrument(0, &Harp); + SetInstrument(1, &Harp); + SetInstrument(2, &Harp); + + //Play C chord using Harp + printf("Playing C chord.\n"); + + NoteOn(0, C, 4); + NoteOn(1, E, 4); + NoteOn(2, G, 4); + delay(1000); //Wait 1 second + NoteOff(0, C, 4); + NoteOff(1, E, 4); + NoteOff(2, G, 4); + //Wait a while + delay(500); + + //Set up voice 3 to a "piano" - this doesn't really sound like a piano, + //but that's what they call it! + Piano.Modulator.Attack = 15; + Piano.Modulator.Decay = 1; + Piano.Modulator.Sustain = 10; + Piano.Modulator.Release = 3; + Piano.Modulator.Multi = 1; + Piano.Modulator.KSL = 1; + Piano.Modulator.TotalLevel = 16; + + Piano.Carrier.Attack = 13; + Piano.Carrier.Decay = 2; + Piano.Carrier.Sustain = 8; + Piano.Carrier.Release = 4; + Piano.Carrier.Multi = 1; + Piano.Carrier.TotalLevel = 0; + Piano.Carrier.KSR = 1; + + Piano.Feedback = 3; + + SetInstrument(3, &Piano); + + //Play all notes in octave 4 for .1 seconds using piano [voice 3] + printf("Playing all notes in octave four.\n"); + CurBlock = 4; + for (CurNote = 0; CurNote < 12; CurNote++) { + NoteOn(3, CurNote, CurBlock); + delay(100); //Wait .1 seconds + NoteOff(3, CurNote, CurBlock); + } + + //Wait a while + delay(500); + //Set up voice 4 to a "flute" + Flute.Modulator.Attack = 6; + Flute.Modulator.Decay = 14; + Flute.Modulator.Sustain = 7; + Flute.Modulator.Release = 15; + Flute.Modulator.Vibrato = 1; + Flute.Modulator.Tremolo = 1; + Flute.Modulator.EGType = 1; + Flute.Modulator.KSL = 3; + Flute.Modulator.TotalLevel = 44; + + Flute.Carrier.Attack = 6; + Flute.Carrier.Decay = 5; + Flute.Carrier.Sustain = 13; + Flute.Carrier.Release = 10; + Flute.Carrier.Vibrato = 1; + Flute.Carrier.EGType = 1; + Flute.Carrier.Multi = 1; + Flute.Carrier.TotalLevel = 0; + + Flute.Feedback = 7; + Flute.SynType = 3; + + SetInstrument(4, &Flute); + + //Play short tune using Flute [voice 4] as primary, Harp [voice 0] as secondary voice + printf("Playing short tune.\n"); + + NoteOn(4, C, 5); NoteOn(0, C, 3); + delay(250); + NoteOff(4, C, 5); + NoteOn(4, E, 5); + delay(250); + NoteOff(4, E, 5); NoteOff(0, C, 3); + + NoteOn(4, C, 5); NoteOn(0, G, 3); + delay(250); + NoteOff(4, C, 5); + NoteOn(4, G, 4); + delay(250); + NoteOff(4, G, 4); NoteOff(0, G, 3); + + NoteOn(4, E, 4); NoteOn(0, C, 4); + delay(250); + NoteOff(4, E, 4); + NoteOn(4, G, 4); + delay(250); + NoteOff(4, G, 4); NoteOff(0, C, 4); + + NoteOn(4, E, 4); NoteOn(0, G, 3); + delay(250); + NoteOff(4, E, 4); + NoteOn(4, D, 4); + delay(250); + NoteOff(4, D, 4); NoteOff(0, G, 3); + + NoteOn(4, C, 4); NoteOn(0, C, 3); + delay(2000); + NoteOff(4, C, 4); NoteOff(0, C, 3); + goto again; +} diff --git a/common/Sound/opl3/fw/YMF262.C b/common/Sound/opl3/fw/YMF262.C new file mode 100644 index 00000000..e233d768 --- /dev/null +++ b/common/Sound/opl3/fw/YMF262.C @@ -0,0 +1,767 @@ +// license:GPL-2.0+ +// copyright-holders:Jarek Burczynski +/* +** +** File: ymf262.c - software implementation of YMF262 +** FM sound generator type OPL3 +** +** Copyright Jarek Burczynski +** +** Version 0.2 +** + +Revision History: + +03-03-2003: initial release + - thanks to Olivier Galibert and Chris Hardy for YMF262 and YAC512 chips + - thanks to Stiletto for the datasheets + + Features as listed in 4MF262A6 data sheet: + 1. Registers are compatible with YM3812 (OPL2) FM sound source. + 2. Up to six sounds can be used as four-operator melody sounds for variety. + 3. 18 simultaneous melody sounds, or 15 melody sounds with 5 rhythm sounds (with two operators). + 4. 6 four-operator melody sounds and 6 two-operator melody sounds, or 6 four-operator melody + sounds, 3 two-operator melody sounds and 5 rhythm sounds (with four operators). + 5. 8 selectable waveforms. + 6. 4-channel sound output. + 7. YMF262 compabile DAC (YAC512) is available. + 8. LFO for vibrato and tremolo effedts. + 9. 2 programable timers. + 10. Shorter register access time compared with YM3812. + 11. 5V single supply silicon gate CMOS process. + 12. 24 Pin SOP Package (YMF262-M), 48 Pin SQFP Package (YMF262-S). + + +differences between OPL2 and OPL3 not documented in Yamaha datahasheets: +- sinus table is a little different: the negative part is off by one... + +- in order to enable selection of four different waveforms on OPL2 + one must set bit 5 in register 0x01(test). + on OPL3 this bit is ignored and 4-waveform select works *always*. + (Don't confuse this with OPL3's 8-waveform select.) + +- Envelope Generator: all 15 x rates take zero time on OPL3 + (on OPL2 15 0 and 15 1 rates take some time while 15 2 and 15 3 rates + take zero time) + +- channel calculations: output of operator 1 is in perfect sync with + output of operator 2 on OPL3; on OPL and OPL2 output of operator 1 + is always delayed by one sample compared to output of operator 2 + + +differences between OPL2 and OPL3 shown in datasheets: +- YMF262 does not support CSM mode + + +*/ + +//#include "stdafx.h" +#include +#include +#include "ymf262.h" + +#define PITCH_COEF 1154 +//#define PITCH_COEF 1024 + +#define FREQ_SH 16 /* 16.16 fixed point (frequency calculations) */ +#define EG_SH 16 /* 16.16 fixed point (EG timing) */ +#define TIMER_SH 16 /* 16.16 fixed point (timers calculations) */ + +#define FREQ_MASK ((1<key ) + { + SLOT->Cnt = 0; /* restart Phase Generator */ + SLOT->state = EG_ATT; /* phase -> Attack */ + } + SLOT->key |= key_set; +} + +static void FM_KEYOFF(OPL3_SLOT *SLOT, uint8_t key_clr) +{ + if( SLOT->key ) + { + SLOT->key &= key_clr; + if( !SLOT->key ) + if (SLOT->state>EG_REL) SLOT->state = EG_REL; /* phase -> Release */ + } +} + +/* update phase increment counter of operator (also update the EG rates if necessary) */ +static void CALC_FCSLOT(OPL3_CH *CH, OPL3_SLOT *SLOT) +{ + uint8_t ksr; + + /* (frequency) phase increment counter */ + uint8_t shift = 7 - (CH->block_fnum >> 10); + SLOT->Incr = ((CH->block_fnum & 0x03ff) * (uint32_t)SLOT->mul << 2) >> shift; + ksr = CH->kcode >> SLOT->KSR; + + if( SLOT->ksr != ksr ) + { + SLOT->ksr = ksr; + ksr += SLOT->ar; + /* calculate envelope generator rates */ + if (ksr < 16+60) + { + SLOT->eg_sh_ar = eg_rate_shift [ksr]; + SLOT->eg_sel_ar = eg_rate_select[ksr]; + } + else + { + SLOT->eg_sh_ar = 0; + SLOT->eg_sel_ar = 13*RATE_STEPS; + } + ksr = SLOT->dr + SLOT->ksr; + SLOT->eg_sh_dr = eg_rate_shift [ksr]; + SLOT->eg_sel_dr = eg_rate_select[ksr]; + ksr = SLOT->rr + SLOT->ksr; + SLOT->eg_sh_rr = eg_rate_shift [ksr]; + SLOT->eg_sel_rr = eg_rate_select[ksr]; + } +} + +/* set multi,am,vib,EG-TYP,KSR,mul */ +static void set_mul(uint8_t slot, uint8_t v) +{ + OPL3_CH *CH = &chip.P_CH[slot >> 1]; + OPL3_SLOT *SLOT = (slot & 1) ? &CH->SLOT1 : &CH->SLOT0; + + SLOT->mul = PITCH_COEF*mul_tab[v & 0x0f]; + SLOT->KSR = (v & 0x10) ? 0 : 2; + SLOT->eg_type = !!(v & 0x20); + SLOT->vib = !!(v & 0x40); + SLOT->AMmask_TLL = ((uint16_t)(v & 0x80) << 8) + (SLOT->AMmask_TLL & 0x7fff); + + if (chip.OPL3_mode) + { + int8_t chan_no = slot >> 1; + + switch(chan_no) + { + case 0: case 1: case 2: + case 9: case 10: case 11: + if (CH->extended) CALC_FCSLOT(CH,SLOT); /* normal */ + else CALC_FCSLOT(CH,SLOT); /* normal */ + break; + case 3: case 4: case 5: + case 12: case 13: case 14: + if ((CH-3)->extended) CALC_FCSLOT(CH-3,SLOT); /* update this SLOT using frequency data for 1st channel of a pair */ + else CALC_FCSLOT(CH,SLOT); /* normal */ + break; + default: + CALC_FCSLOT(CH,SLOT); /* normal */ + break; + } + } + else CALC_FCSLOT(CH,SLOT); /* in OPL2 mode */ +} + +/* set ksl & tl */ +static void set_ksl_tl(uint8_t slot, uint8_t v) +{ + OPL3_CH *CH = &chip.P_CH[slot >> 1]; + OPL3_SLOT *SLOT = (slot & 1) ? &CH->SLOT1 : &CH->SLOT0; + + SLOT->ksl = ksl_shift[v >> 6]; + SLOT->TL = (v & 0x3f) << (ENV_BITS-1-7); /* 7 bits TL (bit 6 = always 0) */ + SLOT->AMmask_TLL = SLOT->TL + (CH->ksl_base >> SLOT->ksl) + (SLOT->AMmask_TLL & 0x8000); + + if (chip.OPL3_mode) + { + uint8_t chan_no = slot >> 2; + + switch(chan_no) + { + case 3: case 4: case 5: + case 12: case 13: case 14: + if ((CH-3)->extended) SLOT->AMmask_TLL = SLOT->TL + ((CH-3)->ksl_base>>SLOT->ksl) + (SLOT->AMmask_TLL & 0x8000); /* update this SLOT using frequency data for 1st channel of a pair */ + break; + } + } +} + +/* set attack rate & decay rate */ +static void set_ar_dr(uint8_t slot, uint8_t v) +{ + OPL3_CH *CH = &chip.P_CH[slot >> 1]; + OPL3_SLOT *SLOT = (slot & 1) ? &CH->SLOT1 : &CH->SLOT0; + uint8_t ksr; + SLOT->ar = (v & 0xf0) ? 16 + ((v & 0xf0) >> 2) : 0; + + ksr = SLOT->ar + SLOT->ksr; + if (ksr < 16+60) /* verified on real YMF262 - all 15 x rates take "zero" time */ + { + SLOT->eg_sh_ar = eg_rate_shift [ksr]; + SLOT->eg_sel_ar = eg_rate_select[ksr]; + } + else + { + SLOT->eg_sh_ar = 0; + SLOT->eg_sel_ar = 13*RATE_STEPS; + } + + SLOT->dr = (v&0x0f) ? 16 + ((v&0x0f)<<2) : 0; + ksr = SLOT->dr + SLOT->ksr; + SLOT->eg_sh_dr = eg_rate_shift [ksr]; + SLOT->eg_sel_dr = eg_rate_select[ksr]; +} + +/* set sustain level & release rate */ +static void set_sl_rr(uint8_t slot, uint8_t v) +{ + OPL3_CH *CH = &chip.P_CH[slot >> 1]; + OPL3_SLOT *SLOT = (slot & 1) ? &CH->SLOT1 : &CH->SLOT0; + uint8_t ksr = SLOT->ksr; + SLOT->sl = (uint16_t)sl_tab[ v>>4 ] << 1; + SLOT->rr = (v&0x0f) ? 16 + ((v&0x0f)<<2) : 0; + ksr += SLOT->rr; + SLOT->eg_sh_rr = eg_rate_shift [ksr]; + SLOT->eg_sel_rr = eg_rate_select[ksr]; +} + +void fn_a0(uint16_t r, uint8_t v, uint8_t ch_offset) +{ + OPL3_CH *CH; + uint16_t block_fnum; + + if (r == 0xbd) /* am depth, vibrato depth, r,bd,sd,tom,tc,hh */ + { + if (ch_offset != 0) return; /* 0xbd register is present in set #1 only */ + + chip.lfo_am_depth = !!(v & 0x80); + chip.lfo_pm_depth_range = (v & 0x40) ? 8 : 0; + chip.rhythm = !!(v & 0x20); + + if (chip.rhythm) + { + /* BD key on/off */ + if (v & 0x10) + { + FM_KEYON(&chip.P_CH[6].SLOT0, 2); + FM_KEYON(&chip.P_CH[6].SLOT1, 2); + } + else + { + FM_KEYOFF(&chip.P_CH[6].SLOT0, ~2); + FM_KEYOFF(&chip.P_CH[6].SLOT1, ~2); + } + /* HH key on/off */ + if (v & 0x01) FM_KEYON(&chip.P_CH[7].SLOT0, 2); + else FM_KEYOFF(&chip.P_CH[7].SLOT0, ~2); + /* SD key on/off */ + if (v & 0x08) FM_KEYON(&chip.P_CH[7].SLOT1, 2); + else FM_KEYOFF(&chip.P_CH[7].SLOT1, ~2); + /* TOM key on/off */ + if (v & 0x04) FM_KEYON(&chip.P_CH[8].SLOT0, 2); + else FM_KEYOFF(&chip.P_CH[8].SLOT0, ~2); + /* TOP-CY key on/off */ + if (v & 0x02) FM_KEYON(&chip.P_CH[8].SLOT1, 2); + else FM_KEYOFF(&chip.P_CH[8].SLOT1, ~2); + } + else + { + /* BD key off */ + FM_KEYOFF(&chip.P_CH[6].SLOT0, ~2); + FM_KEYOFF(&chip.P_CH[6].SLOT1, ~2); + /* HH key off */ + FM_KEYOFF(&chip.P_CH[7].SLOT0, ~2); + /* SD key off */ + FM_KEYOFF(&chip.P_CH[7].SLOT1, ~2); + /* TOM key off */ + FM_KEYOFF(&chip.P_CH[8].SLOT0, ~2); + /* TOP-CY off */ + FM_KEYOFF(&chip.P_CH[8].SLOT1, ~2); + } + return; + } + + /* keyon,block,fnum */ + if ((r & 0x0f) > 8) return; + CH = &chip.P_CH[(r & 0x0f) + ch_offset]; + + if (!(r & 0x10)) block_fnum = (CH->block_fnum & 0x1f00) | v; /* a0-a8 */ + else + { /* b0-b8 */ + block_fnum = ((v & 0x1f) << 8) | (CH->block_fnum & 0xff); + + if (chip.OPL3_mode) + { + uint8_t chan_no = (r & 0x0f) + ch_offset; + switch (chan_no) + { + case 0: case 1: case 2: + case 9: case 10: case 11: + if (CH->extended) + { + if (v & 0x20) + { + FM_KEYON(&CH->SLOT0, 1); + FM_KEYON(&CH->SLOT1, 1); + FM_KEYON(&(CH + 3)->SLOT0, 1); + FM_KEYON(&(CH + 3)->SLOT1, 1); + } + else + { + FM_KEYOFF(&CH->SLOT0, ~1); + FM_KEYOFF(&CH->SLOT1, ~1); + FM_KEYOFF(&(CH + 3)->SLOT0, ~1); + FM_KEYOFF(&(CH + 3)->SLOT1, ~1); + } + } + else + { + if (v & 0x20) + { + FM_KEYON(&CH->SLOT0, 1); + FM_KEYON(&CH->SLOT1, 1); + } + else + { + FM_KEYOFF(&CH->SLOT0, ~1); + FM_KEYOFF(&CH->SLOT1, ~1); + } + } + break; + + case 3: case 4: case 5: + case 12: case 13: case 14: + if ((CH - 3)->extended) + { + //if this is 2nd channel forming up 4-op channel just do nothing + } + else + { + if (v & 0x20) + { + FM_KEYON(&CH->SLOT0, 1); + FM_KEYON(&CH->SLOT1, 1); + } + else + { + FM_KEYOFF(&CH->SLOT0, ~1); + FM_KEYOFF(&CH->SLOT1, ~1); + } + } + break; + + default: + if (v & 0x20) + { + FM_KEYON(&CH->SLOT0, 1); + FM_KEYON(&CH->SLOT1, 1); + } + else + { + FM_KEYOFF(&CH->SLOT0, ~1); + FM_KEYOFF(&CH->SLOT1, ~1); + } + break; + } + } + else + { + if (v & 0x20) + { + FM_KEYON(&CH->SLOT0, 1); + FM_KEYON(&CH->SLOT1, 1); + } + else + { + FM_KEYOFF(&CH->SLOT0, ~1); + FM_KEYOFF(&CH->SLOT1, ~1); + } + } + } + /* update */ + if (CH->block_fnum != block_fnum) + { + CH->block_fnum = block_fnum; + CH->ksl_base = ksl_tab[block_fnum >> 6]; + + /* BLK 2,1,0 bits -> bits 3,2,1 of kcode */ + CH->kcode = (CH->block_fnum & 0x1c00) >> 9; + + /* the info below is actually opposite to what is stated in the Manuals (verifed on real YMF262) */ + /* if notesel == 0 -> lsb of kcode is bit 10 (MSB) of fnum */ + /* if notesel == 1 -> lsb of kcode is bit 9 (MSB-1) of fnum */ + if (chip.nts & 0x40) CH->kcode |= (CH->block_fnum >> 8) & 1; /* notesel == 1 */ + else CH->kcode |= (CH->block_fnum >> 9) & 1; /* notesel == 0 */ + + if (chip.OPL3_mode) + { + uint8_t chan_no = (r & 0x0f) + ch_offset; + switch (chan_no) + { + case 0: case 1: case 2: + case 9: case 10: case 11: + if (CH->extended) + { + /* refresh Total Level in FOUR SLOTs of this channel and channel+3 using data from THIS channel */ + (CH + 3)->SLOT0.AMmask_TLL = (CH + 3)->SLOT0.TL + (CH->ksl_base >> (CH + 3)->SLOT0.ksl) + ((CH + 3)->SLOT0.AMmask_TLL & 0x8000); + (CH + 3)->SLOT1.AMmask_TLL = (CH + 3)->SLOT1.TL + (CH->ksl_base >> (CH + 3)->SLOT1.ksl) + ((CH + 3)->SLOT1.AMmask_TLL & 0x8000); + + /* refresh frequency counter in FOUR SLOTs of this channel and channel+3 using data from THIS channel */ + CALC_FCSLOT(CH, &(CH + 3)->SLOT0); + CALC_FCSLOT(CH, &(CH + 3)->SLOT1); + } + break; + + case 3: case 4: case 5: + case 12: case 13: case 14: + if ((CH - 3)->extended) return; //if this is 2nd channel forming up 4-op channel just do nothing + break; + } + } + /* in OPL2 mode */ + /* refresh Total Level in both SLOTs of this channel */ + CH->SLOT0.AMmask_TLL = CH->SLOT0.TL + (CH->ksl_base >> CH->SLOT0.ksl) + (CH->SLOT0.AMmask_TLL & 0x8000); + CH->SLOT1.AMmask_TLL = CH->SLOT1.TL + (CH->ksl_base >> CH->SLOT1.ksl) + (CH->SLOT1.AMmask_TLL & 0x8000); + + /* refresh frequency counter in both SLOTs of this channel */ + CALC_FCSLOT(CH, &CH->SLOT0); + CALC_FCSLOT(CH, &CH->SLOT1); + } +} + +uint16_t packptr16(void *ptr) +{ + uint16_t v; + uint16_t i = (uint8_t*)ptr - (uint8_t*)&chip; + uint8_t j; + for (j = 0; i >= 96; i -= 96, j++); + v = (uint16_t)j << 7; + j = i & 0xff; + if (j >= 48) j -= 48, v |= 64; + return v | j; +} + +/* write a value v to register r on OPL chip */ +static void OPL3WriteReg(uint16_t r, uint8_t v) +{ + OPL3_CH *CH; + uint8_t ch_offset = 0, base; + int8_t slot; + uint32_t mask; + + if(r & 0x100) + { + switch(r) + { + case 0x101: return; /* test register */ + + case 0x104: /* 6 channels enable */ + { + CH = &chip.P_CH[0]; /* channel 0 */ + CH->extended = v & 1; + CH++; /* channel 1 */ + CH->extended = (v>>=1) & 1; + CH++; /* channel 2 */ + CH->extended = (v>>=1) & 1; + CH = &chip.P_CH[9]; /* channel 9 */ + CH->extended = (v>>=1) & 1; + CH++; /* channel 10 */ + CH->extended = (v>>=1) & 1; + CH++; /* channel 11 */ + CH->extended = (v>>1) & 1; + } + return; + + case 0x105: /* OPL3 extensions enable register */ + chip.OPL3_mode = v & 0x01; /* OPL3 mode when bit0=1 otherwise it is OPL2 mode */ + return; + } + ch_offset = 9; /* register page #2 starts from channel 9 (counting from 0) */ + } + + r &= 0xff; /* adjust bus to 8 bits */ + + switch(r & 0xe0) + { + case 0x00: /* 00-1f:control */ + switch(r & 0x1f) + { + case 0x01: /* test register */ + break; + case 0x02: /* Timer 1 */ + break; + case 0x03: /* Timer 2 */ + break; + case 0x04: /* IRQ clear / mask and Timer enable */ + break; + case 0x08: /* x,NTS,x,x, x,x,x,x */ + chip.nts = v; + break; + } + break; + case 0x20: /* am ON, vib ON, ksr, eg_type, mul */ + slot = slot_array[r & 0x1f]; + if(slot < 0) return; + set_mul(slot + ch_offset*2, v); + break; + case 0x40: + slot = slot_array[r & 0x1f]; + if(slot < 0) return; + set_ksl_tl(slot + ch_offset*2, v); + break; + case 0x60: + slot = slot_array[r&0x1f]; + if(slot < 0) return; + set_ar_dr(slot + ch_offset*2, v); + break; + case 0x80: + slot = slot_array[r&0x1f]; + if(slot < 0) return; + set_sl_rr(slot + ch_offset*2, v); + break; + case 0xa0: + fn_a0(r, v, ch_offset); + break; + + case 0xc0: + /* CH.D, CH.C, CH.B, CH.A, FB(3bits), C */ + if( (r & 0xf) > 8) return; + CH = &chip.P_CH[(r & 0xf) + ch_offset]; + base = (r & 0xf) + ch_offset; + mask = 1l << base; + + if (chip.OPL3_mode) /* OPL3 mode */ + { + chip.panA = (chip.panA & ~mask) | ((uint32_t)((v & 0x10) >> 4) << base); + chip.panB = (chip.panB & ~mask) | ((uint32_t)((v & 0x20) >> 5) << base); +// chip.pan[ base ] = (v & 0x10) != 0; /* ch.A */ +// chip.pan[ base +1 ] = (v & 0x20) != 0; /* ch.B */ +// chip.pan[ base +2 ] = (v & 0x40) != 0; /* ch.C */ +// chip.pan[ base +3 ] = (v & 0x80) != 0; /* ch.D */ + } + else /* OPL2 mode - always enabled */ + { + chip.panA |= mask; + chip.panB |= mask; +// chip.pan[ base ] = 1; /* ch.A */ +// chip.pan[ base +1 ] = 1; /* ch.B */ +// chip.pan[ base +2 ] = 1; /* ch.C */ +// chip.pan[ base +3 ] = 1; /* ch.D */ + } + CH->SLOT0.FB = (v & 0xe) ? 9 - ((v & 0xe) >> 1) : 0; + CH->SLOT0.CON = v & 1; + + if( chip.OPL3_mode ) + { + uint8_t chan_no = (r & 0x0f) + ch_offset; + + switch(chan_no) + { + case 0: case 1: case 2: + case 9: case 10: case 11: + if (CH->extended) + { + uint8_t conn = (CH->SLOT0.CON << 1) | (CH+3)->SLOT0.CON; + switch(conn) + { + case 0: + /* 1 -> 2 -> 3 -> 4 - out */ + CH->SLOT0.connect = packptr16(&chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.phase_modulation2); + (CH+3)->SLOT0.connect = packptr16(&chip.phase_modulation); + (CH + 3)->SLOT1.connect = packptr16(&chip.P_CH[chan_no + 3].chanout);// chanout[chan_no + 3]; + break; + case 1: + /* 1 -> 2 -\ + 3 -> 4 -+- out */ + CH->SLOT0.connect = packptr16(&chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[chan_no].chanout); // chanout[chan_no]; + (CH+3)->SLOT0.connect = packptr16(&chip.phase_modulation); + (CH+3)->SLOT1.connect = packptr16(&chip.P_CH[chan_no + 3].chanout); + break; + case 2: + /* 1 -----------\ + 2 -> 3 -> 4 -+- out */ + CH->SLOT0.connect = packptr16(&chip.P_CH[chan_no].chanout); + CH->SLOT1.connect = packptr16(&chip.phase_modulation2); + (CH+3)->SLOT0.connect = packptr16(&chip.phase_modulation); + (CH+3)->SLOT1.connect = packptr16(&chip.P_CH[chan_no + 3].chanout); + break; + case 3: + /* 1 ------\ + 2 -> 3 -+- out + 4 ------/ */ + CH->SLOT0.connect = packptr16(&chip.P_CH[chan_no].chanout); + CH->SLOT1.connect = packptr16(&chip.phase_modulation2); + (CH+3)->SLOT0.connect = packptr16(&chip.P_CH[chan_no + 3].chanout); + (CH+3)->SLOT1.connect = packptr16(&chip.P_CH[chan_no + 3].chanout); + break; + } + } + else + { + /* 2 operators mode */ + CH->SLOT0.connect = packptr16(CH->SLOT0.CON ? &chip.P_CH[(r & 0xf) + ch_offset].chanout : &chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[(r & 0xf) + ch_offset].chanout); + } + break; + + case 3: case 4: case 5: + case 12: case 13: case 14: + if ((CH-3)->extended) + { + uint8_t conn = ((CH-3)->SLOT0.CON << 1) | CH->SLOT0.CON; + switch(conn) + { + case 0: + /* 1 -> 2 -> 3 -> 4 - out */ + (CH-3)->SLOT0.connect = packptr16(&chip.phase_modulation); + (CH-3)->SLOT1.connect = packptr16(&chip.phase_modulation2); + CH->SLOT0.connect = packptr16(&chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[ chan_no ].chanout); + break; + case 1: + /* 1 -> 2 -\ + 3 -> 4 -+- out */ + (CH-3)->SLOT0.connect = packptr16(&chip.phase_modulation); + (CH-3)->SLOT1.connect = packptr16(&chip.P_CH[ chan_no - 3 ].chanout); + CH->SLOT0.connect = packptr16(&chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[ chan_no ].chanout); + break; + case 2: + /* 1 -----------\ + 2 -> 3 -> 4 -+- out */ + (CH-3)->SLOT0.connect = packptr16(&chip.P_CH[ chan_no - 3 ].chanout); + (CH-3)->SLOT1.connect = packptr16(&chip.phase_modulation2); + CH->SLOT0.connect = packptr16(&chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[ chan_no ].chanout); + break; + case 3: + /* 1 ------\ + 2 -> 3 -+- out + 4 ------/ */ + (CH-3)->SLOT0.connect = packptr16(&chip.P_CH[ chan_no - 3 ].chanout); + (CH-3)->SLOT1.connect = packptr16(&chip.phase_modulation2); + CH->SLOT0.connect = packptr16(&chip.P_CH[ chan_no ].chanout); + CH->SLOT1.connect = packptr16(&chip.P_CH[ chan_no ].chanout); + break; + } + } + else + { + /* 2 operators mode */ + CH->SLOT0.connect = packptr16(CH->SLOT0.CON ? &chip.P_CH[(r & 0xf) + ch_offset].chanout : &chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[(r & 0xf)+ch_offset].chanout); + } + break; + + default: + /* 2 operators mode */ + CH->SLOT0.connect = packptr16(CH->SLOT0.CON ? &chip.P_CH[(r & 0xf) + ch_offset].chanout : &chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[(r & 0xf) + ch_offset].chanout); + break; + } + } + else + { + /* OPL2 mode - always 2 operators mode */ + CH->SLOT0.connect = packptr16(CH->SLOT0.CON ? &chip.P_CH[(r&0xf)+ch_offset].chanout : &chip.phase_modulation); + CH->SLOT1.connect = packptr16(&chip.P_CH[(r&0xf)+ch_offset].chanout); + } + break; + + case 0xe0: /* waveform select */ + slot = slot_array[r&0x1f]; + if(slot < 0) return; + + slot += ch_offset*2; + CH = &chip.P_CH[slot >> 1]; + + /* store 3-bit value written regardless of current OPL2 or OPL3 mode... (verified on real YMF262) */ + v &= 7; + if(slot & 1) CH->SLOT1.waveform_number = v; + else CH->SLOT0.waveform_number = v; + + /* ... but select only waveforms 0-3 in OPL2 mode */ + if( !chip.OPL3_mode ) v &= 3; /* we're in OPL2 mode */ + if(slot & 1) CH->SLOT1.wavetable = v; + else CH->SLOT0.wavetable = v; + break; + } +} + +void OPL3ResetChip() +{ + uint16_t c; + +// eg_cnt = 0; +// noise_rng = 1; /* noise shift register */ + memset(&chip, 0, sizeof(chip)); + for(c = 0xff ; c >= 0x20 ; c-- ) OPL3WriteReg(c, 0); + for(c = 0x1ff ; c >= 0x120 ; c-- ) OPL3WriteReg(c, 0); + + /* reset operator parameters */ + for( c = 0 ; c < 9*2 ; c++ ) + { + OPL3_CH *CH = &chip.P_CH[c]; + CH->SLOT0.state = EG_OFF; + CH->SLOT0.volume = MAX_ATT_INDEX; + CH->SLOT1.state = EG_OFF; + CH->SLOT1.volume = MAX_ATT_INDEX; + } + + c = (uint16_t)&chip; + outp(0, (uint8_t)c); + outp(1, (uint8_t)(c>>8)); +} + +/* YMF262 I/O interface */ +void OPL3Write(uint8_t a, uint8_t v) +{ + switch(a&3) + { + case 0: /* address port 0 (register set #1) */ + chip.address = v; + break; + + case 1: /* data port - ignore A1 */ + case 3: /* data port - ignore A1 */ +// if(chip->UpdateHandler) chip->UpdateHandler(chip->UpdateParam,0); + OPL3WriteReg(chip.address, v); + break; + + case 2: /* address port 1 (register set #2) */ + if( chip.OPL3_mode ) chip.address = v | 0x100; /* OPL3 mode */ + else + { + if( v==5 ) chip.address = v | 0x100; /* in OPL2 mode the only accessible in set #2 is register 0x05 */ + else chip.address = v; /* verified range: 0x01, 0x04, 0x20-0xef(set #2 becomes set #1 in opl2 mode) */ + } + break; + } +} + +#define READY 1 +#define QEMPTY 2 + +int main() +{ + uint8_t c; + OPL3ResetChip(); + + while(1) + { + c = inp(0); + if((c & 3) == READY) OPL3Write((c >> 2) & 3, inp(1)); + } +} diff --git a/common/Sound/opl3/fw/YMF262.H b/common/Sound/opl3/fw/YMF262.H new file mode 100644 index 00000000..ecb26865 --- /dev/null +++ b/common/Sound/opl3/fw/YMF262.H @@ -0,0 +1,122 @@ +// license:GPL-2.0+ +// copyright-holders:Jarek Burczynski + +#define OPL3_SAMPLE_BITS 16 + +#define TL_RES_LEN (256) /* 8 bits addressing (real chip) */ +#define TL_TAB_LEN (13*2*TL_RES_LEN) + +/* sinwave entries */ +#define SIN_BITS 10 +#define SIN_LEN (1<>KSR */ + uint8_t key; /* 29 - 0 = KEY OFF, >0 = KEY ON */ + uint16_t mul; /* 30 - multiple: mul_tab[ML] */ + uint16_t sl; /* 32 - sustain level: sl_tab[SL] */ + uint8_t vib; /* 34 - bool - LFO Phase Modulation enable flag (active high)*/ + uint8_t waveform_number; /* 35 */ + int16_t connect; /* 36 - slot output pointer */ + uint8_t eg_sh_ar; /* 38 - (attack state) */ + uint8_t eg_sel_ar; /* 39 - (attack state) */ + uint8_t eg_sh_dr; /* 40 - (decay state) */ + uint8_t eg_sel_dr; /* 41 - (decay state) */ + uint8_t eg_sh_rr; /* 42 - (release state) */ + uint8_t eg_sel_rr; /* 43 - (release state) */ +} OPL3_SLOT; + +typedef struct _OPL3_CH // 96 bytes +{ + OPL3_SLOT SLOT0; /* 0 */ + uint16_t block_fnum; /* 44 - block+fnum */ + int16_t chanout; /* 46 */ + /* + there are 12 2-operator channels which can be combined in pairs + to form six 4-operator channel, they are: + 0 and 3, + 1 and 4, + 2 and 5, + 9 and 12, + 10 and 13, + 11 and 14 + */ + OPL3_SLOT SLOT1; /* 48 */ + + uint8_t extended; /* SLOT1+44 - bool - set to 1 if this channel forms up a 4op channel with another channel(only used by first of pair of channels, ie 0,1,2 and 9,10,11) */ + uint8_t ksl_base; /* 45 - KeyScaleLevel Base step */ + uint8_t kcode; /* 46 - key code (for key scaling) */ + uint8_t pad; /* 47 */ +} OPL3_CH; + +/* OPL3 state */ +typedef struct _OPL3 +{ + OPL3_CH P_CH[18]; /* OPL3 chips have 18 channels */ + int16_t phase_modulation; /* 0 - phase modulation input (SLOT 2) */ + int16_t phase_modulation2; /* 2 - phase modulation input (SLOT 3 in 4 operator channels) */ + uint32_t panA; /* 4 - channels output masks */ + uint32_t panB; /* 8 - channels output masks */ + /* LFO */ + uint8_t lfo_am_depth; /* 12 - bool */ + uint8_t lfo_pm_depth_range;/* 13 */ + uint8_t OPL3_mode; /* 14 - bool - OPL3 extension enable flag */ + uint8_t rhythm; /* 15 - bool - Rhythm mode */ + uint16_t address; /* 16 - address register */ + uint8_t nts; /* 20 - NTS (note select) */ +} OPL3; + + +void OPL3ResetChip(); +void OPL3Write(uint8_t a, uint8_t v); + + diff --git a/common/Sound/opl3/fw/bin2mem.c b/common/Sound/opl3/fw/bin2mem.c new file mode 100644 index 00000000..dd79a433 --- /dev/null +++ b/common/Sound/opl3/fw/bin2mem.c @@ -0,0 +1,49 @@ +#include +#include + +int main() +{ + int c1,c2,d=1,i; + FILE *in = fopen("opl3.com", "rb"); + + for(i=0; i<4096; i++) + { + if(i<128) + { + switch(i) + { + case 0: printf("00C3\n"); break; + case 1: printf("0001\n"); break; + case 2: printf("C300\n"); break; + case 3: printf("00FF\n"); break; + case 127: printf("C900\n"); break; + default: printf("0000\n"); break; + } + } + else if(d) + { + c1 = fgetc(in); + if(c1 == -1) + { + d = 0; + c1 = 0; + c2 = 0; + } + else + { + c2 = fgetc(in); + if(c2 == -1) + { + d = 0; + c2 = 0; + } + } + printf("%02X%02X\n", c2&0xff, c1&0xff); + } + else + { + printf("0000\n"); + } + } + fclose(in); +} diff --git a/common/Sound/opl3/fw/bin2mem.exe b/common/Sound/opl3/fw/bin2mem.exe new file mode 100644 index 0000000000000000000000000000000000000000..99968e4614f36d2566e3a9fb950b903276e92fa2 GIT binary patch literal 14350 zcmeHO4|G)3nZJ{~zz72qHB(a!_2~whxPi^^#}Z9;Cx0e@CX$i_Xc5DZd6NuGX5!2n z0*EDHGS=7E!D*$|-P+b^JlpoPd+MHL0hQG$NeL*mDRML#>!Gb}Uv{ERttUohnf-nD zy_v*+J=@*Wvpp@3^SyiTcfb4nyWhR{yDvlIXX7lFF(v@gX~vGBq{qSEfB4ml?uFMr zzK|Wh?8ny~Gd2A9x|U9FNbC*h zI-YH;Y1=ZlOLn17Zs4}VW-@8^<6z~9mb%AAEY*w&XIeE|>cdzT|St-b>5%tKHB-ST4R76_RV{f*OA~ zo$TXsMZ&tJl2oF3$6ETMMM44G#d6~^sMzO$?;o(iR~io9M?FQRtybv z!I3>O29(hNMbihIrU6$2Sy(pq0^6I29C)VhMkQ5H zF>39<65UW)!(oty4gw6MErcnz7Yo2oW46-IMfuABR|5H?)LG z1Gj@QQRQR8Iu;=+?pO$Z-$Czi-UL*lP*5oVYwV{}ws=fl!urq3<&Z+2>T1By-I1gD5wn4CcOu1+*GgbHok$oLxvE3%6 zvRL~9s%qmQMfgY6@{P!#N!eFy28q&8ENGuY-_2X&;nS+~ixEvw!-s|iepo51NPzbG z0`ezKrj3G7$xrYCQ;1`5@?E}i>L?k%)R;?q0n9cMRaU9 zkBD+G#2QWimrjKS%_NU1+crME=J8*kQzJCv^nTJvd(!Clpg+!^ zR^?Y4nY_RdGX$Rl5&4{Q67d+FI!2@9(hS>cOa+82twrrJQJmsr3VDeG09;)Jjl`e7&Dq_fzW{wEC$PrPczp z6l(RL6(7HkoVc&Jn92K~LlI2VJm`R)Wk8pu!&j3zq%KOHvY;%XcIuOv0ju-@B^XeW z4(HDrzzIQCW<4^3qQrV6skC6_!ZT3gAgRGfDN9DFUtp7uz!#=I_$6({YB=~3qBbLG z4BhZJ&R<}P;U*jTC;u45EzZLe7RKjSZ7D7x86Xn5JXkf2sGUXkp7RBlwDuo>MEI5tDea$;L1(GH3o0T>P?|x*9@G&J(F~Pr$s{h>{fFjL1c_z`9~_d0 zl9*0J%Uh$y`qKB8t!6b>WmR8dEZI|26+>Z-d=s`+NLa<}6mEskTICC6_|z0k9z?v^$!Kn2aSCagL`F z6b7?;IEPoM=kv3$T*YUBjZRtncS0ZSGdK~)U8qsmyg%L|6P1Z=u=;0p#cKggfXz^* z^u?#Kk{my~y|@q{0!px&@`0;ESr9{=Hp`LJoS%)-zsOLfzQ1BJg#ltXz5zN=K3EBq zL(Pxfl79Rl2V&suyq>vgLF`yHggSKYj(jf2VMdX!Is{s{WYYIRk3h5}j#Ka?9TX+G zU`vT8KJ=s&k080Idl7R5snAw4wEku0!eve7}uMJ7i>E zqp`bBsf+rd8`3iiiE=t!I%m#3weTQ^XTaRNn_Lk@*PL#CGK|aLArUvSgkw=jv z8TqGuY8p4}rsrA@ zK14&N=UWd-;FTaW*?ADygl07Q&`_%;(0XE$P-$y_6^Nf8Vzt)H)6=VRz-G|W_bzb{ z-J)Kp-X*ACpbJCn^Ym64hpb0#HAmjgxAtF+!I8H`YyX41Vz%~gLWL4?nEp@=eCs>| zkxXl&G}6eGxio`)Du$qN4$*$5HVco@Miv<~#}1Gn^~?0mZJt&TX{|%rUErY)3qF^i zK(>!Xll!ksecQ-S2TeCGBJ|x4@HvaE+!Cw&camp^ z0aKukA@FFYArGsa z1#WS*S#`W8*1!G^&lPB5J8KZ@F|;#VBQM8(`M&(60I3weV_pmIdg4gm2@`ALj<-=A zH{|iikOf~>F#oiFtBWQ}F&Xcs<>Kg=Y)uz@owrja+^@pFgXr?>Ao}cEaL`cUmO=Yi zDn}WN)tc0TC=o`_h9^@eGxx^@-P?dVEzi;U59d*vT$4IP3TM_|S)v503_C~BgW_c> zs&4zW;|baN*2q8^shqjwIY)WGG|@&99#!vt*?tjskF;$y5XxZMR!ODvT-w&cD!C>MJo$(2 z7ZW9_Q;4++imlECo%6P}JJ@9cOJWN_jcglOjgA2yTB?)gkE|Ie1CCp%I42Wik>Y$a z`>g;(r)rRC+IpcSH)ka(SSSK<=KAmEJ!b8@$RDzEp7CE1F@U_Ztqf#pRgz?{qK%dA zWofxQGaqv~uYGz4-1R)B--2nzt|}-+NFmhy=4d+nLYALfC(XG3gXi%^`xK%kKQRQ6 zV734WmoiBgyi9(CBa1d+6AJCkJO(0VP_EHELpm$Ds*_GtUH1g3t}NnjY=-! z%?9MKS(XireLH!hl>h6H~md6!+C1%nV6JoVz=iMMqdjrObsLdJ!y&zmQ=hRT0(~qCFjU* zDDbr%5QGVTg_yr$um}B6k$q~5GRZ$L(f)|fh!f@+UFJrH%yhBR^>`Ae1oTM3OZo6T z>9LevJgfORI*EFaU&IWzf!_=>VTO~eb9$XyWIg)e9O42w@J^P#8E&@7d8Df$|L^rt zujzicca|SwEv7>2(RFjM6aU1XoT~YxD9^>JFNmZt14xTYDozE*?NgkW@;oniKA9C} z%(rgm^9UN)`5JF!J`nTxp7k+a&PDvdS^AIxeaK?ChCVU8*EJ{g&MQ<$@mnK5)UJh_ z46gQM>W$g!XOlfm_s^LbfDa1g%gC?zsMKco;YOX`IQN74XfK=>oswTNvP6=tHR~iN z`%Y3*c_TbO^*G{>{Bfc{y#+Z$c&=K5&&P66bZoz-?zKS1mOJ`}Ir(&(p&yX;v@V*j zp-(qe(Vxd+NOyy_zHzEYE<+HY zOd4g}C{GzBGvqyDv|lyK38S-Pj0C)}~rzCx$DWmnq-Wrx#UhXN=k1M7l-HVg1-yvm& zuHWd~P~WhAQz>id#7|nJP}nDn__>Q52#BFBm(Pb9|FMhIjZTP`++s=VZFQMZjI{)0 zmrwKsLLo8W5kuY%zt`i%uVmUKv81J8eRDHpH@Skc_amvA3@XM(9S-&uprG2pRswv0 zIG_>s^epYUaV7oeM)r0|qQ~X+g@e*f^H{ap4b4L0;%>3i6%zdc(c9(fkd}s|cG(;7 zGf~{=4a#Ac@6%x^xQ7pf4W2+yT-SF`4}a|b@MoeAT*M#xkWpOD*ke~G_{{pt5_0 z>g6zF^t;tZX5oCh@NpEl4|@ubl$8PM02=@vz&^m20p9`~0h|K71b7o5gb;UtzX!Ac ze1Ls`2LOiw#{naNR{-w-EV3@O2;~icn*jBIjet(TKEOSILx67pz5_T6I1U&BJPQ~F zoCo|T;0?e9fB-u!fR6z_K{f-H11bUafZG6@0owsS06l+Aww_~kl24MQT4cq@Pkqfs ze)wDFL{=MoKbpBs^+8E$@NN&ff_vDIX^kY;hJ!(*z(@+)k#VvgeGs?K%}&q4wsZz1 zmm5fyn}hKUu8{21(|#MZ8w2jJPg?8pyM0nMV@|>mb0ek2FB=KdEF*gkcdx^JrJCKv zF?(>2>1sh9Tpg1Keap52>8FUf6?T)RHNik0Rz1YB;zPq5y>2j;x+znJ1<-}bLbFejy4eAtMGAI#{VrL`IGQO!i!TK8HoAOai9H~E zBolT-FtUA&rOX}YLI%UtV(e3NrStg$erdN?W;dbLA<1-`as@j=>}IsR@SEh{g%hBy z&DS3A@8TG&PP9Xk+~(@;Zj<+P!&5tTOgIFM^;;Zcds&;Sz02+MgDuC7o=8yCb9 ztgT(IU2bag(Ek`!H@w>cYDEax|N+QT64{}Z}GyV`?tMjP5yFFk(_9w@)ukyRr<-@&>IXWH}~ pCJwmt{AGHeFz#SQfVKE`BKBUI=fBKZ{%ETfqHCGdsekEZ{|zEIg#7>j literal 0 HcmV?d00001 diff --git a/common/Sound/opl3/fw/clean.bat b/common/Sound/opl3/fw/clean.bat new file mode 100644 index 00000000..09038d23 --- /dev/null +++ b/common/Sound/opl3/fw/clean.bat @@ -0,0 +1,5 @@ +del /q *.as +del /q *.obj +del /q *.map +del /q *.sym +del /q *.bak diff --git a/common/Sound/opl3/opl3.qip b/common/Sound/opl3/opl3.qip new file mode 100644 index 00000000..662be50f --- /dev/null +++ b/common/Sound/opl3/opl3.qip @@ -0,0 +1,7 @@ +set_global_assignment -name SYSTEMVERILOG_FILE [file join $::quartus(qip_path) opl3.sv ] +set_global_assignment -name SYSTEMVERILOG_FILE [file join $::quartus(qip_path) opl3fm.sv ] +set_global_assignment -name SYSTEMVERILOG_FILE [file join $::quartus(qip_path) opl3seq.sv ] +set_global_assignment -name SYSTEMVERILOG_FILE [file join $::quartus(qip_path) compressor.sv] +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) NextZ80Reg.v ] +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) NextZ80CPU.v ] +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) NextZ80ALU.v ] diff --git a/common/Sound/opl3/opl3.sv b/common/Sound/opl3/opl3.sv new file mode 100644 index 00000000..7a380327 --- /dev/null +++ b/common/Sound/opl3/opl3.sv @@ -0,0 +1,186 @@ +/* + * Copyright (c) 2014, Aleksander Osman + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * 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. + */ + +module opl3 +#( + parameter OPLCLK = 64000000 // opl_clk in Hz +) +( + input clk, + input clk_opl, + input rst_n, + output reg irq_n, + + input [12:0] period_80us, // from clk + + input [1:0] addr, + output [7:0] dout, + input [7:0] din, + input we, + + output signed [15:0] sample_l, + output signed [15:0] sample_r +); + +//------------------------------------------------------------------------------ + +wire [7:0] io_readdata = { timer1_overflow | timer2_overflow, timer1_overflow, timer2_overflow, 5'd0 }; +assign dout = !addr ? io_readdata : 8'hFF; + +//------------------------------------------------------------------------------ + +reg old_write; +always @(posedge clk) old_write <= we; + +wire write = (~old_write & we); + +reg [8:0] index; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) index <= 0; + else if(~addr[0] && write) index <= {addr[1], din}; +end + +wire io_write = (addr[0] && write); +wire [7:0] io_writedata = din; + +//------------------------------------------------------------------------------ timer 1 + +reg [7:0] timer1_preset; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) timer1_preset <= 0; + else if(io_write && index == 2) timer1_preset <= io_writedata; +end + +reg timer1_mask; +reg timer1_active; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) {timer1_mask, timer1_active} <= 0; + else if(io_write && index == 4 && ~io_writedata[7]) {timer1_mask, timer1_active} <= {io_writedata[6], io_writedata[0]}; +end + +wire timer1_pulse; +timer timer1( clk, period_80us, timer1_preset, timer1_active, timer1_pulse ); + +reg timer1_overflow; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) timer1_overflow <= 0; + else begin + if(io_write && index == 4 && io_writedata[7]) timer1_overflow <= 0; + if(timer1_pulse) timer1_overflow <= 1; + end +end + + +//------------------------------------------------------------------------------ timer 2 + +reg [7:0] timer2_preset; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) timer2_preset <= 0; + else if(io_write && index == 3) timer2_preset <= io_writedata; +end + +reg timer2_mask; +reg timer2_active; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) {timer2_mask, timer2_active} <= 0; + else if(io_write && index == 4 && ~io_writedata[7]) {timer2_mask, timer2_active} <= {io_writedata[5], io_writedata[1]}; +end + +wire timer2_pulse; +timer timer2( clk, {period_80us, 2'b00}, timer2_preset, timer2_active, timer2_pulse ); + +reg timer2_overflow; +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) timer2_overflow <= 0; + else begin + if(io_write && index == 4 && io_writedata[7]) timer2_overflow <= 0; + if(timer2_pulse) timer2_overflow <= 1; + end +end + + +//------------------------------------------------------------------------------ IRQ + +always @(posedge clk or negedge rst_n) begin + if(rst_n == 0) irq_n <= 1; + else begin + if(io_write && index == 4 && io_writedata[7]) irq_n <= 1; + if(~timer1_mask && timer1_pulse) irq_n <= 0; + if(~timer2_mask && timer2_pulse) irq_n <= 0; + end +end + +opl3sw #(OPLCLK) opl3 +( + .reset(~rst_n), + + .cpu_clk(clk), + .addr(addr), + .din(din), + .wr(write), + + .clk(clk_opl), + .left(sample_l), + .right(sample_r) +); + +endmodule + +module timer +( + input clk, + input [14:0] resolution, + input [7:0] init, + input active, + output reg overflow_pulse +); + +always @(posedge clk) begin + reg [7:0] counter = 0; + reg [14:0] sub_counter = 0; + reg old_act; + + old_act <= active; + overflow_pulse <= 0; + + if(~old_act && active) begin + counter <= init; + sub_counter <= resolution; + end + else if(active) begin + sub_counter <= sub_counter - 1'd1; + if(!sub_counter) begin + sub_counter <= resolution; + counter <= counter + 1'd1; + if(&counter) begin + overflow_pulse <= 1; + counter <= init; + end + end + end +end + +endmodule diff --git a/common/Sound/opl3/opl3fm.sv b/common/Sound/opl3/opl3fm.sv new file mode 100644 index 00000000..193b349a --- /dev/null +++ b/common/Sound/opl3/opl3fm.sv @@ -0,0 +1,263 @@ +`timescale 1ns / 1ps +////////////////////////////////////////////////////////////////////////////////// +// +// This file is part of the Next186 Soc PC project +// http://opencores.org/project,next186 +// +// Filename: opl3seq.v +// Description: Part of the Next186 SoC PC project, OPL3 +// Version 1.0 +// Creation date: 13:55:57 02/27/2017 +// +// Author: Nicolae Dumitrache +// e-mail: ndumitrache@opencores.org +// +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2017 Nicolae Dumitrache +// +// This source file may be used and distributed without +// restriction provided that this copyright statement is not +// removed from the file and that any derivative work contains +// the original copyright notice and the associated disclaimer. +// +// This source file 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 source is distributed in the hope that 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 source; if not, download it +// from http://www.opencores.org/lgpl.shtml +// +/////////////////////////////////////////////////////////////////////////////////// +// Additional Comments: +// +// Port0 (R) = 4'b0000, Addr[1:0], qempty, ready +// Port1 (R) = Value[7:0], advance queue +// +/////////////////////////////////////////////////////////////////////////////////// + +// +// Improved reset stability and firmware portability by Sorgelig. +// + +module opl3sw #(parameter OPLCLK = 50000000) +( + input reset, + + // CPU interface + input cpu_clk, + input [1:0] addr, + input [7:0] din, + input wr, + + // OPL sequencer + input clk, // 50Mhz (min 45Mhz) + output [15:0] left, + output [15:0] right +); + +wire [7:0] ram_dout; +opl3_mem ram +( + .clk(clk), + .addr1(CPU_ADDR[12:0]), + .we1(CPU_MREQ & CPU_WR & CE), + .data_in1(CPU_DOUT), + .data_out1(ram_dout), + + .addr2(OPL3Struct_base+seq_addr), + .we2(seq_wr), + .data_in2(seq_wdata), + .data_out2(seq_rdata) +); + +wire [9:0] qdata; +wire qempty; + +// show ahead fifo +opl3_fifo in_queue +( + .aclr(reset), + + .wrclk(cpu_clk), + .data({addr, din}), + .wrreq(wr), + + .rdclk(clk), + .q(qdata), + .rdreq(CE && CPU_IORQ && !CPU_WR && CPU_ADDR[0]), + .rdempty(qempty) +); + + +reg stb44100; +always @(posedge clk) begin + integer cnt; + localparam RATE = (OPLCLK/44100)-1; + + cnt <= cnt+1; + if(cnt == RATE) cnt <= 0; + + stb44100 <= !cnt; +end + +wire seq_wr; +wire [11:0] seq_addr; +wire [15:0] seq_rdata; +wire [15:0] seq_wdata; +wire ready; + +reg [11:0] OPL3Struct_base = 0; +reg seq_reset_n = 0; + +always @(posedge clk) begin + if(reset) seq_reset_n <= 0; + + if(CPU_IORQ & CPU_WR & CE) begin + if(CPU_ADDR[0]) {seq_reset_n, OPL3Struct_base[11:7]} <= {1'b1, CPU_DOUT[4:0]}; + else OPL3Struct_base[6:0] <= CPU_DOUT[7:1]; + end +end + +opl3seq opl3seq +( + .clk(clk), + .reset(~seq_reset_n), + .rd(stb44100), + .A(A), + .B(B), + .ready(ready), + .ram_wr(seq_wr), + .ram_addr(seq_addr), + .ram_rdata(seq_rdata), + .ram_wdata(seq_wdata) +); + +wire [15:0] A,B; +compressor compressor +( + clk, + stb44100, + + A[15:4], B[15:4], + left, right +); + +wire [15:0] CPU_ADDR; +wire [7:0] CPU_DOUT; +wire CPU_WR; +wire CPU_MREQ; +wire CPU_IORQ; + +NextZ80 Z80 +( + .DI(~CPU_IORQ ? ram_dout : CPU_ADDR[0] ? qdata[7:0] : {4'b0000, qdata[9:8], qempty, ready}), + .DO(CPU_DOUT), + .ADDR(CPU_ADDR), + .WR(CPU_WR), + .MREQ(CPU_MREQ), + .IORQ(CPU_IORQ), + .HALT(), + .M1(), + .CLK(clk), + .RESET(reset), + .INT(0), + .NMI(0), + .WAIT(!CE) +); + +reg CE = 0; +always @(posedge clk) CE <= !CE; + +endmodule + +module opl3_mem +#( + parameter + DATA_WIDTH1 = 8, + ADDRESS_WIDTH1 = 13, + ADDRESS_WIDTH2 = 12, + INIT_FILE = "opl3prg.mem" +) +( + input clk, + input we1, + input [ADDRESS_WIDTH1-1:0] addr1, + input [DATA_WIDTH1-1:0] data_in1, + output reg [DATA_WIDTH1-1:0] data_out1, + + input we2, + input [ADDRESS_WIDTH2-1:0] addr2, + input [DATA_WIDTH2-1:0] data_in2, + output reg [DATA_WIDTH2-1:0] data_out2 +); + +localparam RATIO = 1 << (ADDRESS_WIDTH1 - ADDRESS_WIDTH2); +localparam DATA_WIDTH2 = DATA_WIDTH1 * RATIO; +localparam RAM_DEPTH = 1 << ADDRESS_WIDTH2; + +reg [RATIO-1:0] [DATA_WIDTH1-1:0] ram[0:RAM_DEPTH-1]; +initial $readmemh(INIT_FILE, ram); + +// Port A +always@(posedge clk) if(we1) ram[addr1 / RATIO][addr1 % RATIO] = data_in1; +always@(posedge clk) data_out1 <= ram[addr1 / RATIO][addr1 % RATIO]; + +// port B +always@(posedge clk) if(we2) ram[addr2] = data_in2; +always@(posedge clk) data_out2 <= ram[addr2]; + +endmodule + +module opl3_fifo +( + input aclr, + input [9:0] data, + input rdclk, + input rdreq, + input wrclk, + input wrreq, + output [9:0] q, + output rdempty +); + +dcfifo dcfifo_component ( + .aclr (aclr), + .data (data), + .rdclk (rdclk), + .rdreq (rdreq), + .wrclk (wrclk), + .wrreq (wrreq), + .q (q), + .rdempty (rdempty), + .eccstatus (), + .rdfull (), + .rdusedw (), + .wrempty (), + .wrfull (), + .wrusedw ()); +defparam + dcfifo_component.intended_device_family = "Cyclone V", + dcfifo_component.lpm_numwords = 1024, + dcfifo_component.lpm_showahead = "ON", + dcfifo_component.lpm_type = "dcfifo", + dcfifo_component.lpm_width = 10, + dcfifo_component.lpm_widthu = 10, + dcfifo_component.overflow_checking = "ON", + dcfifo_component.rdsync_delaypipe = 5, + dcfifo_component.read_aclr_synch = "ON", + dcfifo_component.underflow_checking = "ON", + dcfifo_component.use_eab = "ON", + dcfifo_component.write_aclr_synch = "ON", + dcfifo_component.wrsync_delaypipe = 5; + +endmodule diff --git a/common/Sound/opl3/opl3prg.mem b/common/Sound/opl3/opl3prg.mem new file mode 100644 index 00000000..adc0a298 --- /dev/null +++ b/common/Sound/opl3/opl3prg.mem @@ -0,0 +1,4096 @@ +00C3 +0001 +C300 +00FF +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +C900 +18B8 +B834 +0900 +F5BA +CD12 +B821 +4C01 +21CD +0000 +4300 +706F +7279 +6769 +7468 +2820 +2943 +3120 +3939 +2033 +4948 +542D +4345 +2048 +6F53 +7466 +6177 +6572 +2A00 +0006 +11F9 +150D +21B7 +1511 +52ED +444D +6B0B +1362 +0036 +B0ED +0021 +1119 +0000 +EDB7 +2852 +211A +1900 +0011 +B719 +52ED +0F28 +D321 +B71F +52ED +0728 +444D +0021 +ED19 +21B0 +0080 +234E +0006 +3609 +1100 +0081 +F401 +CD12 +11EC +2AE5 +150F +CDE5 +1134 +CDE5 +1252 +00C3 +DD00 +DDE5 +0021 +DD00 +3B39 +E5FD +71DD +D5FF +E1FD +7EFD +B71D +BEC2 +AF01 +77FD +FD04 +0577 +77FD +FD06 +0777 +36FD +0412 +7EFD +DD1D +FFB6 +77FD +FD1D +DDE1 +DDF9 +C9E1 +1D21 +1900 +B77E +21C8 +001D +7E19 +77A1 +1D21 +1900 +B77E +21C0 +0012 +7E19 +02FE +21D8 +0012 +3619 +C901 +E5DD +21DD +0000 +39DD +3BC5 +E5FD +73DD +DDFD +FE72 +FDC5 +06E1 +6B0A +1162 +002C +7E19 +6623 +CD6F +12E4 +3E4D +9107 +77DD +FDFF +1E5E +56FD +211F +0000 +D5E5 +6EDD +DDFD +FE66 +2C11 +1900 +234E +7946 +785F +03E6 +2157 +0000 +ADCD +0611 +CD02 +1241 +46DD +CDFF +1184 +73FD +FD08 +0972 +75FD +FD0A +0B74 +46FD +DD1A +FD6E +66DD +11FE +005E +6E19 +0504 +6FCA +CB02 +103D +4DFC +7EFD +B91C +F1CA +FD02 +1C71 +FD79 +0086 +FE4F +D24C +02A3 +2421 +7914 +6F85 +CE7C +6700 +FD6E +2675 +C421 +7913 +6F85 +CE7C +6700 +FD6E +2775 +ABC3 +FD02 +2636 +FD00 +2736 +FD68 +017E +86FD +4F1C +2421 +7914 +6F85 +CE7C +6700 +FD6E +2875 +C421 +7913 +6F85 +CE7C +6700 +FD6E +2975 +7EFD +FD02 +1C86 +214F +1424 +8579 +7C6F +00CE +6E67 +75FD +212A +13C4 +8579 +7C6F +00CE +6E67 +75FD +FD2B +DDE1 +DDF9 +C9E1 +E5DD +21DD +0000 +39DD +C5C5 +E5FD +71DD +DDFE +FF73 +6011 +DD00 +FF7E +3FCB +266F +CD00 +1298 +0011 +1919 +FDE5 +DDE1 +FFCB +C246 +03D2 +E5FD +DDE1 +FC75 +74DD +11FD +0482 +7EDD +E6FE +6F0F +0026 +8401 +0914 +266E +CD00 +1298 +DDE5 +FC6E +66DD +11FD +001E +EB19 +7DE1 +1312 +127C +4EDD +DDFC +FD46 +CBDD +66FE +003E +67C2 +3E03 +2102 +001A +7709 +CBDD +6EFE +013E +76C2 +3D03 +1321 +0900 +DD77 +FECB +3E76 +C201 +0385 +213D +0022 +7709 +7EDD +E6FE +6F80 +1E55 +2100 +0014 +7E09 +6623 +CB6F +19BC +21E5 +0014 +EB09 +7DE1 +1312 +127C +CE3A +B71F +DFCA +DD03 +FF7E +3FCB +6F47 +0026 +B7AF +DFDA +C203 +03C8 +0E3E +DABD +03DF +1129 +1494 +7E19 +6623 +E96F +3021 +FD00 +D1E5 +C319 +0329 +7EFD +DD5C +FC4E +46DD +FDFD +D1E5 +F2CD +FD01 +DDE1 +DDF9 +C9E1 +3C21 +FDFF +D1E5 +7E19 +DDB7 +FC4E +46DD +CAFD +03E5 +E021 +FDFE +D1E5 +EB19 +E8C3 +C303 +03DF +E5DD +21DD +0000 +39DD +C5C5 +FD3B +DDE5 +FF71 +73DD +11FE +0060 +7EDD +CBFE +6F3F +0026 +98CD +1112 +1900 +DD19 +FC75 +74DD +4DFD +DD44 +FECB +C246 +04D7 +FDE5 +DDE1 +FF4E +B021 +0613 +5906 +0504 +5BCA +CB04 +103B +7BFC +6F85 +CE7C +6700 +FD6E +1B75 +E679 +CB3F +CB27 +FD27 +1077 +165F +DD00 +FC6E +66DD +01FD +005D +6E09 +46FD +041B +CA05 +048A +3DCB +FC10 +0026 +7EFD +E615 +4780 +094C +FD19 +1475 +74FD +3A15 +1FCE +CAB7 +04D0 +7EDD +CBFE +CB3F +DD3F +FB77 +4EDD +DDFC +FD46 +03FE +DECA +FE04 +CA04 +04DE +05FE +DECA +FE04 +CA0C +04DE +0DFE +DECA +FE04 +CA0E +04DE +E1FD +F9DD +E1DD +21C9 +0030 +C309 +0446 +3C21 +09FF +B77E +D0CA +FD04 +105E +0016 +6EDD +DDFC +FD66 +3D01 +09FF +FD6E +1B46 +0504 +03CA +CB05 +103D +26FC +FD00 +157E +80E6 +4C47 +1909 +75FD +FD14 +1574 +D0C3 +DD04 +DDE5 +0021 +DD00 +C539 +FDC5 +DDE5 +FE71 +73DD +11FF +0060 +7EDD +CBFF +6F3F +0026 +98CD +1112 +1900 +DD19 +FC75 +74DD +DDFD +FFCB +C246 +0583 +FDE5 +DDE1 +FE4E +E679 +C2F0 +058A +0021 +FD00 +0075 +FD7D +1C86 +FE47 +D24C +059B +2421 +7814 +6F85 +CE7C +6700 +FD6E +2675 +C421 +7813 +6F85 +CE7C +6700 +FD6E +2775 +A3C3 +1105 +0030 +C319 +0548 +E679 +CBF0 +CB3F +6F3F +0026 +1011 +1900 +57C3 +FD05 +2636 +FD00 +2736 +7968 +0FE6 +D7C2 +2105 +0000 +75FD +7D01 +86FD +471C +2421 +7814 +6F85 +CE7C +6700 +FD6E +2875 +C421 +7813 +6F85 +CE7C +6700 +FD6E +2975 +E1FD +F9DD +E1DD +79C9 +0FE6 +266F +2900 +1129 +0010 +C319 +05AC +E5DD +21DD +0000 +39DD +C5C5 +E5FD +71DD +DDFE +FF73 +6011 +DD00 +FF7E +3FCB +266F +CD00 +1298 +0011 +1919 +75DD +DDFC +FD74 +CBDD +46FF +71C2 +E506 +E1FD +46FD +DD1C +FE4E +B421 +5913 +3BCB +3BCB +3BCB +3BCB +857B +7C6F +00CE +6E67 +0026 +FD29 +2075 +74FD +7921 +0FE6 +78C2 +2106 +0000 +75FD +7802 +86FD +4702 +2421 +7814 +6F85 +CE7C +6700 +FD6E +2A75 +C421 +7813 +6F85 +CE7C +6700 +FD6E +2B75 +E1FD +F9DD +E1DD +11C9 +0030 +C319 +0617 +E679 +6F0F +0026 +2929 +1011 +1900 +46C3 +DD06 +DDE5 +0021 +DD00 +C539 +3BC5 +E5FD +71DD +7BFF +BDEE +C2B2 +0788 +7EDD +B704 +49C2 +CB0A +3E79 +C201 +06AD +323D +1FCC +71CB +083E +B9C2 +3E06 +3200 +1FCD +69CB +013E +C4C2 +3D06 +CF32 +B71F +55CA +DD07 +FFCB +CA66 +06E5 +020E +4011 +CD1B +0195 +020E +7011 +CD1B +0195 +F5C3 +0E06 +11FD +1B40 +CECD +0E01 +11FD +1B70 +CECD +DD01 +FFCB +CA46 +0707 +020E +A011 +CD1B +0195 +0FC3 +0E07 +11FD +1BA0 +CECD +DD01 +FFCB +CA5E +0721 +020E +D011 +CD1B +0195 +29C3 +0E07 +11FD +1BD0 +CECD +DD01 +FFCB +CA56 +073B +020E +0011 +CD1C +0195 +43C3 +0E07 +11FD +1C00 +CECD +DD01 +FFCB +CA4E +077D +020E +3011 +CD1C +0195 +49C3 +0E0A +11FD +1B40 +CECD +0E01 +11FD +1B70 +CECD +0E01 +11FD +1BA0 +CECD +0E01 +11FD +1BD0 +CECD +0E01 +11FD +1C00 +CECD +0E01 +11FD +1C30 +CECD +C301 +0A49 +73DD +DDFB +FC72 +0901 +7B00 +0FE6 +266F +B700 +42ED +49D2 +110A +0060 +4EDD +0604 +DD00 +FB7E +0FE6 +606F +CD09 +1298 +0011 +1919 +FDE5 +DDE1 +FF4E +5EDD +DDFB +FC56 +63CB +D5C2 +FD07 +2D7E +1FE6 +7967 +77DD +DDFD +FE74 +A9C3 +7908 +1FE6 +6EFD +672C +75DD +DDFD +FE74 +CE3A +B71F +7FCA +7B08 +0FE6 +86DD +4704 +266F +AF00 +DAB7 +087F +01C2 +3E08 +BD0E +7FDA +2908 +B211 +1914 +237E +6F66 +FDE9 +5C7E +CAB7 +087F +69CB +49CA +0E08 +FD01 +D1E5 +95CD +0E01 +2101 +0030 +E5FD +19D1 +CDEB +0195 +010E +2021 +FD01 +D1E5 +EB19 +95CD +0E01 +2101 +0150 +E5FD +19D1 +CDEB +0195 +A9C3 +0E08 +FDFE +D1E5 +CECD +0E01 +21FE +0030 +E5FD +19D1 +CDEB +01CE +FE0E +2021 +FD01 +D1E5 +EB19 +CECD +0E01 +21FE +0150 +A1C3 +2108 +FF3C +E5FD +19D1 +B77E +A9C2 +CB08 +CA69 +0894 +010E +E5FD +CDD1 +0195 +010E +3021 +C300 +083E +FE0E +E5FD +CDD1 +01CE +FE0E +3021 +FD00 +D1E5 +EB19 +CECD +DD01 +FD4E +46DD +FDFE +2C6E +66FD +B72D +42ED +49CA +690A +FD60 +2C75 +74FD +062D +CD06 +12E4 +3011 +1913 +FD6E +5D75 +0906 +7EFD +E62D +671C +002E +E4CD +FD12 +5E75 +5EDD +DDFB +FC56 +D23A +CB1F +CA77 +08F4 +7EFD +C32D +0900 +0906 +6EFD +FD2C +2D66 +E4CD +7D12 +01E6 +FD4F +5E7E +FDB1 +5E77 +CE3A +B71F +DFCA +7B09 +0FE6 +86DD +4704 +266F +AF00 +DAB7 +09DF +29C2 +3E09 +BD0E +DFDA +2909 +D011 +C314 +0805 +7EFD +B75C +DFCA +2109 +0130 +E5FD +19D1 +165E +2100 +0134 +E5FD +09C1 +234E +E67E +6780 +E56A +3B21 +FD01 +C1E5 +4609 +4EFD +045D +CA05 +0964 +39CB +FC10 +79E1 +6F85 +CE7C +6700 +E519 +3421 +FD01 +D1E5 +EB19 +7DE1 +1312 +127C +6021 +FD01 +D1E5 +5E19 +0016 +6421 +FD01 +C1E5 +4E09 +7E23 +80E6 +6A67 +21E5 +016B +E5FD +09C1 +FD46 +5D4E +0504 +A9CA +CB09 +1039 +E1FC +8579 +7C6F +00CE +1967 +21E5 +0164 +E5FD +19D1 +E1EB +127D +7C13 +2112 +0120 +E5FD +19D1 +444D +E5FD +CDD1 +01F2 +5021 +FD01 +D1E5 +4D19 +FD44 +D1E5 +F2CD +FD01 +105E +0016 +7EFD +E615 +6780 +FD6A +1B46 +4EFD +045D +CA05 +09FA +39CB +FC10 +8579 +7C6F +00CE +1967 +75FD +FD14 +1574 +5EFD +1640 +FD00 +457E +80E6 +6A67 +46FD +FD4B +5D4E +0504 +23CA +CB0A +1039 +79FC +6F85 +CE7C +6700 +FD19 +4475 +74FD +FD45 +C1E5 +E5FD +CDD1 +01F2 +3021 +FD00 +D1E5 +4D19 +FD44 +D1E5 +F2CD +FD01 +DDE1 +DDF9 +E1E1 +E9F1 +3C21 +FDFF +D1E5 +7E19 +CAB7 +09DF +49C3 +FD0A +01E5 +1900 +626B +EDB7 +E542 +E1FD +000E +79C3 +110A +FFA0 +19FD +110C +0060 +E5FD +B7E1 +52ED +73D2 +060A +6907 +0026 +D7CD +EB12 +E5FD +4DE1 +FE79 +7930 +9FDA +D60A +4F30 +F3CB +B379 +626F +E1FD +DDC9 +DDE5 +0021 +DD00 +2139 +FFF5 +F939 +E5FD +FDD5 +06E1 +FD00 +E1E5 +44CB +DCCA +FD0A +E1E5 +FE7C +C201 +0ADA +FE7D +CA01 +0B6A +04FE +29CA +FE0B +CA05 +0B71 +0906 +70DD +DDFE +FC71 +E5FD +AFE1 +E567 +E1FD +75DD +DDFA +FB74 +E5FD +7DE1 +E0E6 +266F +AF00 +C2B7 +0B6A +B77D +83CA +FE0B +CA20 +0BAD +40FE +D4CA +FE0B +CA60 +0BFB +80FE +22CA +FE0C +CAA0 +0C49 +C0FE +5CCA +FE0C +CAE0 +0FC4 +6AC3 +FD0B +0021 +7919 +01E6 +77FD +115C +0060 +19FD +39CB +E679 +FD01 +5C77 +19FD +39CB +E679 +FD01 +5C77 +21FD +1C60 +39CB +E679 +FD01 +5C77 +19FD +39CB +E679 +FD01 +5C77 +19FD +CB79 +E63F +FD01 +5C77 +E1FD +F9DD +E1DD +79C9 +01E6 +CE32 +C31F +0B6A +7EDD +32FC +1FD2 +6AC3 +DD0B +FA7E +1FE6 +266F +AF00 +C2B7 +0B6A +FE7D +CA01 +0B6A +02FE +6ACA +FE0B +CA03 +0B6A +04FE +6ACA +FE0B +CA08 +0B7A +6AC3 +DD0B +FA7E +1FE6 +266F +1100 +1310 +4619 +70DD +78FD +FAB7 +0B6A +4EDD +DDFC +FE7E +27CB +86DD +5FFD +F8CD +C302 +0B6A +7EDD +E6FA +6F1F +0026 +1011 +1913 +DD46 +FD70 +B778 +6AFA +DD0B +FC4E +7EDD +CBFE +DD27 +FD86 +CD5F +0412 +6AC3 +DD0B +FA7E +1FE6 +266F +1100 +1310 +4619 +70DD +78FD +FAB7 +0B6A +4EDD +DDFC +FE7E +27CB +86DD +5FFD +17CD +C305 +0B6A +7EDD +E6FA +6F1F +0026 +1011 +1913 +DD46 +FD70 +B778 +6AFA +DD0B +FC4E +7EDD +CBFE +DD27 +FD86 +CD5F +05E6 +6AC3 +DD0B +FE6E +DDE5 +FC4E +5EDD +DDFA +FB56 +87CD +C306 +0B6A +0901 +DD00 +FA7E +0FE6 +266F +B700 +42ED +6AD2 +110B +0060 +4EDD +06FE +DD00 +FA7E +0FE6 +606F +CD09 +1298 +0011 +1919 +FDE5 +DDE1 +FA7E +0FE6 +86DD +DDFE +FF77 +1147 +0001 +0021 +CD00 +1241 +73DD +DDF6 +F772 +75DD +DDF8 +F974 +CE3A +B71F +44CA +DD0D +FF46 +7EDD +E6FC +CB10 +CB3F +CB3F +CB3F +5F3F +0021 +5400 +41CD +E512 +2AD5 +1FC6 +2AE5 +1FC4 +DDE5 +F65E +56DD +21F7 +FFFF +EDB7 +EB52 +FF3E +9EDD +6FF8 +FF3E +9EDD +67F9 +6FCD +CD11 +1198 +53ED +1FC4 +C622 +DD1F +FF46 +7EDD +E6FC +CB20 +CB3F +CB3F +CB3F +CB3F +5F3F +0021 +5400 +41CD +E512 +2AD5 +1FCA +2AE5 +1FC8 +DDE5 +F65E +56DD +21F7 +FFFF +EDB7 +EB52 +FF3E +9EDD +6FF8 +FF3E +9EDD +67F9 +6FCD +CD11 +1198 +53ED +1FC8 +CA22 +C31F +0D5C +F621 +CDFF +12C4 +C421 +CD1F +1166 +F621 +CDFF +12C4 +C821 +CD1F +1166 +4EDD +79FC +0EE6 +A0C2 +210D +0000 +75FD +7918 +01E6 +77FD +3A11 +1FCE +CAB7 +0F8C +7EDD +E6FA +DD0F +FE86 +DD4F +F571 +6F79 +0026 +B7AF +8CDA +C20F +0D96 +0E3E +DABD +0F8C +1129 +14EE +7E19 +6623 +E96F +E679 +CB0E +5F3F +0016 +0921 +B700 +52ED +68C3 +FD0D +5C7E +CAB7 +0F8C +3121 +FD01 +D1E5 +FD19 +117E +27CB +47B6 +CAB7 +0DDC +01FE +26CA +FE0E +CA02 +0E45 +03FE +58CA +C30E +0B6A +C011 +CD1F +0A61 +75FD +FD24 +2574 +C211 +CD1F +0A61 +75FD +FD54 +5574 +C011 +CD1F +0A61 +21EB +0144 +E5FD +09C1 +2373 +1172 +0060 +6EDD +26F5 +CD00 +1298 +4E11 +191A +CDEB +0A61 +21EB +0174 +E5FD +09C1 +2373 +C372 +0B6A +C011 +CD1F +0A61 +75FD +FD24 +2574 +6011 +DD00 +F56E +0026 +98CD +1112 +192E +EB19 +EBC3 +110D +0060 +6EDD +26F5 +CD00 +1298 +2E11 +1919 +C3EB +0DDF +6011 +DD00 +F56E +0026 +98CD +1112 +192E +EB19 +61CD +FD0A +2475 +74FD +1125 +1FC2 +61CD +FD0A +5475 +74FD +1155 +0060 +6EDD +26F5 +CD00 +1298 +4E11 +191A +C3EB +0DF7 +6011 +DD00 +FE4E +0006 +7EDD +E6FA +6F0F +0960 +98CD +1112 +192E +C319 +0F96 +3C21 +FDFF +D1E5 +7E19 +CAB7 +0F8C +F121 +FDFE +D1E5 +7E19 +27CB +B6FD +4711 +CAB7 +0EDA +01FE +13CA +FE0F +CA02 +0F37 +03FE +4ACA +C30F +0B6A +C011 +CD1F +0A61 +21EB +FF04 +E5FD +09C1 +2373 +1172 +1FC2 +61CD +EB0A +3421 +FDFF +C1E5 +7309 +7223 +C011 +CD1F +0A61 +75FD +FD24 +2574 +6011 +DD00 +F56E +0026 +B0C3 +110F +1FC0 +61CD +EB0A +0421 +FDFF +C1E5 +7309 +7223 +6011 +DD00 +F56E +0026 +98CD +1112 +180E +EB19 +EEC3 +110E +0060 +6EDD +26F5 +CD00 +1298 +0E11 +1918 +C3EB +0EDD +6011 +DD00 +F56E +0026 +98CD +1112 +180E +EB19 +61CD +EB0A +0421 +FDFF +C1E5 +7309 +7223 +C211 +CD1F +0A61 +21EB +FF34 +E5FD +09C1 +2373 +1172 +0060 +6EDD +26F5 +CD00 +1298 +2E11 +1919 +C3EB +0EFF +7EFD +B711 +90C2 +210E +1FC0 +CDEB +0A61 +75FD +FD24 +2574 +6011 +DD00 +FE4E +0006 +7EDD +E6FA +6F0F +0960 +98CD +1112 +192E +EB19 +61CD +FD0A +5475 +74FD +C355 +0B6A +7EDD +E6FA +6F1F +0026 +1011 +1913 +7846 +FAB7 +0B6A +4EDD +CBFE +7821 +4781 +70DD +11FD +0060 +CB78 +6F2F +9F17 +CD67 +1298 +0011 +1919 +FDE5 +DDE1 +FC7E +07E6 +DD4F +FD46 +40CB +09CA +FD10 +5371 +0CC3 +FD10 +2371 +CE3A +B71F +17C2 +7910 +03E6 +CB4F +CA40 +1022 +71FD +C349 +0B6A +71FD +C319 +0B6A +E5DD +21DD +0000 +39DD +FDC5 +11E5 +1900 +003E +D201 +1206 +626B +ED13 +FDB0 +FF21 +0E00 +FD00 +D1E5 +A5CD +FD0A +012B +0020 +E5FD +B7E1 +42ED +45D2 +FD10 +FF21 +0E01 +FD00 +D1E5 +A5CD +FD0A +012B +0120 +E5FD +B7E1 +42ED +5FD2 +FD10 +0021 +1100 +0060 +E5FD +CDE1 +1298 +0011 +1919 +75DD +DDFE +FF74 +444D +1221 +0900 +0036 +1621 +0900 +FF36 +3623 +2101 +0042 +3609 +2100 +0046 +3609 +23FF +0136 +23FD +1201 +FD00 +E1E5 +EDB7 +DA42 +1079 +017B +0000 +79ED +017A +0001 +79ED +E1FD +F9DD +E1DD +DDC9 +DDE5 +0021 +DD00 +3B39 +71DD +43FF +E678 +6F03 +0026 +B7AF +F9C2 +7D10 +CAB7 +10FE +01FE +09CA +FE11 +CA02 +1116 +03FE +09CA +DD11 +DDF9 +C9E1 +6EDD +26FF +2200 +1FD0 +F9C3 +DD10 +FF4E +5BED +1FD0 +A5CD +C30A +10F9 +4EDD +3AFF +1FCE +CAB7 +1128 +2669 +CB00 +C3C4 +1103 +FE79 +6905 +0026 +23CA +C311 +1103 +E5DD +21DD +0000 +39DD +CD3B +1028 +0001 +ED00 +6F78 +03E6 +01FE +40C2 +0111 +0001 +78ED +77DD +7DFF +3FCB +3FCB +03E6 +DD5F +FF4E +CDCD +C310 +1140 +72CD +CD12 +1198 +8CC3 +D912 +D9E1 +79C1 +5FA3 +A278 +C157 +A579 +786F +67A4 +E5D9 +C9D9 +B778 +FEC8 +3821 +0602 +CB20 +CB3C +CB1D +CB1A +101B +C9F6 +E1D9 +C1D9 +B379 +785F +57B2 +79C1 +6FB5 +B478 +D967 +D9E5 +EBC9 +D9E3 +C1D1 +C1D9 +21E5 +0000 +21D9 +0000 +4879 +D5CD +7911 +D5CD +D911 +D979 +D5CD +D911 +D978 +D5CD +E511 +D1D9 +06C9 +CB08 +303F +1905 +EDD9 +D95A +29EB +D9EB +EDEB +EB6A +10D9 +C9EC +EFC3 +E111 +3AD9 +0080 +ED3C +6F44 +FF26 +F939 +0001 +C500 +8021 +4E00 +0006 +4109 +2AEB +0006 +010E +362B +0400 +FE1A +2020 +1B18 +F810 +1518 +FE1A +1B20 +0B20 +0CE5 +FE1A +2020 +1B03 +F818 +2BAF +1077 +EDEB +0F43 +2115 +150C +21E5 +0000 +D939 +D9E5 +78C9 +C8B7 +21FE +0238 +2006 +29EB +EDEB +106A +C9F9 +E5DD +21DD +0000 +39DD +DDC5 +FE73 +72DD +CDFF +12B7 +5EDD +DDFE +FF56 +B8CD +DD12 +DDF9 +C9E1 +235E +2356 +234E +E346 +E3C5 +D9C1 +C1E1 +E3D1 +E3C5 +E3C1 +C5E5 +D9D5 +C9C5 +C1E3 +2B70 +2B71 +2B72 +C573 +C9E1 +4A7B +21EB +0000 +0806 +ABCD +EB12 +0118 +1029 +EBFD +CB79 +303F +1901 +29EB +C8EB +F510 +C9C9 +CDD5 +12C3 +22E1 +0080 +00C3 +C900 +DDD1 +C1E5 +2309 +2323 +2B46 +2B4E +46C5 +4E2B +EBC5 +78E9 +C8B7 +10FE +0238 +1006 +1029 +C9FD +B778 +FEC8 +3810 +0602 +CB10 +CB3C +101D +C9FA +4800 +2D49 +4554 +4843 +4320 +5A20 +3038 +2E20 +4F43 +204D +6966 +656C +0A0D +0024 +0200 +0104 +0503 +FFFF +0806 +070A +0B09 +FFFF +0E0C +0D10 +110F +FFFF +FFFF +FFFF +FFFF +FFFF +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0800 +100C +1814 +201C +0000 +0000 +0C00 +1C14 +2820 +302C +3834 +403C +0000 +1400 +2C20 +3C34 +4840 +504C +5854 +605C +0000 +3420 +4C40 +5C54 +6860 +706C +7874 +807C +2000 +5440 +6C60 +7C74 +8880 +908C +9894 +A09C +4000 +7460 +8C80 +9C94 +A8A0 +B0AC +B8B4 +C0BC +6000 +9480 +ACA0 +BCB4 +C8C0 +D0CC +D8D4 +E0DC +011F +0002 +0800 +1810 +2820 +3830 +4840 +5850 +6860 +F870 +7070 +7070 +7070 +7070 +7070 +7070 +7070 +7070 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +0800 +1810 +2820 +3830 +4840 +5850 +6060 +6060 +6060 +6060 +6060 +6060 +6060 +6060 +6060 +6060 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0C0C +0C0C +0B0B +0B0B +0A0A +0A0A +0909 +0909 +0808 +0808 +0707 +0707 +0606 +0606 +0505 +0505 +0404 +0404 +0303 +0303 +0202 +0202 +0101 +0101 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0201 +0604 +0A08 +0E0C +1210 +1414 +1818 +1E1E +03DC +03DC +03DC +03F2 +03F2 +03F2 +040F +040F +040F +03DC +03DC +03DC +03F2 +03F2 +03F2 +080B +080B +080B +0873 +0873 +0873 +087F +087F +087F +080B +080B +080B +0873 +0873 +0873 +0930 +0930 +0930 +0A52 +0A52 +0A52 +09DF +09DF +09DF +0930 +0930 +0930 +0A52 +0A52 +0A52 +0DB1 +0DB1 +0DB1 +0EAA +0EAA +0EAA +0F8C +0F8C +0F8C +0DB1 +0DB1 +0DB1 +0EAA +0EAA +0EAA +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +CDCC +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 diff --git a/common/Sound/opl3/opl3seq.sv b/common/Sound/opl3/opl3seq.sv new file mode 100644 index 00000000..92da27d9 --- /dev/null +++ b/common/Sound/opl3/opl3seq.sv @@ -0,0 +1,482 @@ +`timescale 1ns / 1ps +////////////////////////////////////////////////////////////////////////////////// +// +// This file is part of the Next186 Soc PC project +// http://opencores.org/project,next186 +// +// Filename: opl3seq.v +// Description: Part of the Next186 SoC PC project, OPL3 Sequencer +// Version 1.0 +// Creation date: 13:55:57 02/27/2017 +// +// Author: Nicolae Dumitrache +// e-mail: ndumitrache@opencores.org +// +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2017 Nicolae Dumitrache +// +// This source file may be used and distributed without +// restriction provided that this copyright statement is not +// removed from the file and that any derivative work contains +// the original copyright notice and the associated disclaimer. +// +// This source file 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 source is distributed in the hope that 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 source; if not, download it +// from http://www.opencores.org/lgpl.shtml +// +/////////////////////////////////////////////////////////////////////////////////// +// Additional Comments: +// +// It shares OPL3 structure (~1.7KB DP RAM) with the main processor. It drives 36 operators at 44100Hz, with at least 45Mhz clock +/////////////////////////////////////////////////////////////////////////////////// + +// altera message_off 10030 + + +`define LFO_AM_TAB_ELEMENTS 210 +`define phase_modulation_o 0 // CH18 +`define panA_o 6'd4 // CH18 +`define panB_o 6'd8 // CH18 +`define lfo_am_depth_o 12 // CH18 +`define block_fnum_o 44 // SLOT0 +`define chanout_o 6'd46 // SLOT0 + +`define Cnt_o 6'd4 +`define Incr_o 6'd8 +`define op1_out_o 6'd12 +`define state_o 18 +`define AMmask_o 20 +`define volume_o 22 +`define FB_o 24 +`define mul_o 30 +`define sl_o 32 +`define vib_o 34 +`define connect_o 36 +`define eg_sh_ar_o 38 +`define eg_sh_dr_o 40 +`define eg_sh_rr_o 42 + +module opl3seq +( + input clk, + input reset, + input rd, // clk synchronous pulse, read only while == 1 + output reg [15:0] A, + output reg [15:0] B, + output reg ready, + output reg ram_wr, + output [11:0] ram_addr, + input [15:0] ram_rdata, + output reg [15:0] ram_wdata +); + +reg [13:0]lfo_am_cnt = 0; +reg [4:0]r_lfo_am_cnt = 0; +wire [13:0]lfo_am_cnt1 = lfo_am_cnt + 1'b1; +reg [9:0]lfo_pm_cnt = 0; +reg [4:0]LFO_AM; // unsigned +reg [3:0]LFO_PM = 0; // unsigned + +reg [5:0]STATE = 0; +reg [5:0]nextSTATE; +reg [5:0]RET; +reg [5:0]ram_offset; // OPL3Struct_base + (CHindex*96 + OPindex*48 + offset) +reg [4:0]ram_CHindex; +reg [4:0]s_ram_CHindex; +wire s_ram_CHindex17 = s_ram_CHindex == 17; +wire s_ram_CHindex18 = s_ram_CHindex == 18; +wire [4:0]s_ram_CHindex1 = s_ram_CHindex + 1'b1; +reg ram_OPindex; +reg s_ram_OPindex; +reg [15:0]ram_rdata_lo; +reg [15:0]eg_cnt = 0; +// reg [22:0]noise_rng = 1; +reg [9:0]env; +reg [12:0]sinaddr; +reg [12:0]r_sinaddr; +wire [12:0]op_calc1; +wire signed [15:0]op_calc = {{3{op_calc1[12]}}, op_calc1}; +reg [15:0]tmp1; +wire [13:0]outshift1 = $signed(tmp1[13:0]) >>> ram_rdata[3:0]; +wire [9:0]outshift = |ram_rdata[3:0] ? outshift1[9:0] : 10'b0000000000; +reg [17:0]pan; +reg signed [18:0]rAcc; +wire [15:0]limAcc = rAcc > 32767 ? 16'h7fff : rAcc < -32768 ? 16'h8000 : rAcc[15:0]; // (~|rAcc[18:15] | &rAcc[18:15]) ? rAcc[15:0] : {rAcc[18], {15{!rAcc[18]}}}; +reg [11:0]phmask;// = (1'b1 << ram_rdata[3:0]) - 1'b1; +wire phtest = ~|(eg_cnt & phmask); +reg cond; +wire [15:0]eg_inc1 = eg_cnt >> ram_rdata[3:0]; +wire [6:0]eg_inc = ram_rdata[14:8] + eg_inc1[2:0]; +reg [2:0]r_eg_inc; +wire [9:0]volume_attack1 = $signed(~ram_rdata[9:0]) >>> (~r_eg_inc[1:0]); +wire [9:0]volume_attack = {1'b0, ram_rdata[8:0]} + (r_eg_inc[2] ? 10'h000 : volume_attack1); +reg [9:0]r_volume; +wire [2:0]exp_r_eg_inc = 3'b1 << r_eg_inc; +wire [9:0]volume_dsr = ram_rdata[8:0] + exp_r_eg_inc; // new volume for decay/sustain/release +reg signed [3:0]lfo_fn_table_index_offset; +reg [11:0]inc_hi; +reg [15:0]inc_lo; +reg carry = 1'b0; +reg cy; +reg [2:0]phase; +wire [25:0]mul1 = tmp1[9:0] * ram_rdata_lo; + +// tmp1 adder +reg [3:0]tmp1op; +reg [15:0]tmp1op1; +reg [15:0]tmp1op2; + +// .addrb(OPL3Struct_offset + {1'b1, ram_CHindex, ram_OPindex, ram_offset[5:1]}) +assign ram_addr = (ram_OPindex ? 12'd24 : 12'd0) + {ram_CHindex + {ram_CHindex, ram_offset[5]}, ram_offset[4:1]}; + +wire [4:0] lfo_am_table [`LFO_AM_TAB_ELEMENTS] = '{ + 0,0,0,0,0,0,0, 1,1,1,1, 2,2,2,2, 3,3,3,3, 4,4,4,4, 5,5,5,5, 6,6,6,6, 7,7,7,7, 8,8,8,8, 9,9,9,9, 10,10,10,10, 11,11,11,11, 12,12,12,12, 13,13,13,13, 14,14,14,14, + 15,15,15,15, 16,16,16,16, 17,17,17,17, 18,18,18,18, 19,19,19,19, 20,20,20,20, 21,21,21,21, 22,22,22,22, 23,23,23,23, 24,24,24,24, 25,25,25,25, 26,26,26, 25,25,25,25, + 24,24,24,24, 23,23,23,23, 22,22,22,22, 21,21,21,21, 20,20,20,20, 19,19,19,19, 18,18,18,18, 17,17,17,17, 16,16,16,16, 15,15,15,15, 14,14,14,14, 13,13,13,13, 12,12,12,12, + 11,11,11,11, 10,10,10,10, 9,9,9,9, 8,8,8,8, 7,7,7,7, 6,6,6,6, 5,5,5,5, 4,4,4,4, 3,3,3,3, 2,2,2,2, 1,1,1,1 +}; + +wire signed [3:0]lfo_pm_table[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, 1, 0, 0, 0,-1, 0, 0, 0, 1, 0, 0, 0,-1, 0, 0, 0, 2, 1, 0,-1,-2,-1, 0, 1, 1, 0, 0, 0,-1, 0, 0, 0, 3, 1, 0,-1,-3,-1, 0, 1, + 2, 1, 0,-1,-2,-1, 0, 1, 4, 2, 0,-2,-4,-2, 0, 2, 2, 1, 0,-1,-2,-1, 0, 1, 5, 2, 0,-2,-5,-2, 0, 2, 3, 1, 0,-1,-3,-1, 0, 1, 6, 3, 0,-3,-6,-3, 0, 3, 3, 1, 0,-1,-3,-1, 0, 1, 7, 3, 0,-3,-7,-3, 0, 3 +}; + +wire [2:0]eg_inc_tab[120] = '{ + 4,0, 4,0, 4,0, 4,0, 4,0, 4,0, 0,0, 4,0, 4,0, 0,0, 4,0, 0,0, 4,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,1, 0,0, 0,2, 0,1, 0,1, 0,1, 0,1, + 0,1, 1,1, 0,1, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1, 1,2, 1,1, 1,2, 1,2, 1,2, 1,2, 1,2, 1,2, 2,2, 1,2, 2,2, 2,2, 2,2, 2,2, 2,2, 3,3, 3,3, 3,3, 3,3, 4,4, 4,4, 4,4, 4,4 +}; // log tablle, 4 = log(0) + + +sampler sampler_inst +( + .clk(clk), + .index(r_sinaddr), + .ampl(env[8:0]), + .sample(op_calc1) +); + +always @(posedge clk) begin + STATE <= nextSTATE; + s_ram_CHindex <= ram_CHindex; + s_ram_OPindex <= ram_OPindex; + r_sinaddr <= sinaddr; + r_lfo_am_cnt <= lfo_am_table[lfo_am_cnt[13:6]]; + ram_rdata_lo <= ram_rdata; + r_eg_inc <= eg_inc_tab[eg_inc]; + lfo_fn_table_index_offset <= lfo_pm_table[{ram_rdata[9:7], LFO_PM}]; //34 + {carry, tmp1} <= tmp1op1 + tmp1op2 + cy; + pan <= pan >> 1; + if(pan[0]) rAcc <= rAcc + {{3{ram_rdata[15]}}, ram_rdata}; + + if(reset) STATE <= 0; + else + case(STATE) + 0: begin + if(lfo_am_cnt1[13:6] == `LFO_AM_TAB_ELEMENTS) lfo_am_cnt <= 14'h0000; + else lfo_am_cnt <= lfo_am_cnt1; + {LFO_PM[2:0], lfo_pm_cnt} <= {LFO_PM[2:0], lfo_pm_cnt} + 1'b1; + eg_cnt <= eg_cnt + 1'b1; +// noise_rng <= {noise_rng[0], noise_rng[22:1]} ^ (noise_rng[0] ? 9'h181 : 9'h000); + end + 1: begin + LFO_AM <= r_lfo_am_cnt >> {!ram_rdata[0], 1'b0}; + LFO_PM[3] <= ram_rdata[11]; + RET <= 3; + end + 2: s_ram_CHindex <= s_ram_CHindex17 ? 5'd0 : s_ram_CHindex1; + 3: s_ram_CHindex <= s_ram_CHindex; + 7: RET <= 8; + 8: begin + s_ram_CHindex <= s_ram_CHindex; + RET <= 18; + end + 10: s_ram_OPindex <= 1'b1; + 13: env <= ram_rdata_lo[9:0] + ram_rdata[8:0] + (ram_rdata_lo[15] ? LFO_AM : 10'd0); // env = volume_calc(SLOT1); + 15: {s_ram_CHindex, s_ram_OPindex} <= {s_ram_CHindex, s_ram_OPindex}; + 17: {s_ram_CHindex, s_ram_OPindex} <= {s_ram_CHindex, s_ram_OPindex}; + 18: s_ram_CHindex <= s_ram_CHindex1; + 20: begin + pan <= {ram_rdata[1:0], ram_rdata_lo}; + s_ram_CHindex <= 1; + rAcc <= 0; + end + 21: s_ram_CHindex <= s_ram_CHindex18 ? s_ram_CHindex : s_ram_CHindex1; + 22: A <= limAcc; + 23: begin + pan <= {ram_rdata[1:0], ram_rdata_lo}; + s_ram_CHindex <= 1; + rAcc <= 0; + end + 24: s_ram_CHindex <= s_ram_CHindex18 ? 5'd0 : s_ram_CHindex1; + 25: B <= limAcc; + +// advance + 27: cond <= phtest; + 28: r_volume <= tmp1[2] ? volume_attack : volume_dsr; + 29: if(r_volume[9]) r_volume <= (tmp1[2:0] < 3) ? 10'd511 : 10'd0; + +// phase gen + 32: inc_lo <= ram_rdata; + 33: begin + inc_hi <= ram_rdata[11:0]; + s_ram_OPindex <= s_ram_OPindex; + end + 35: cond <= |lfo_fn_table_index_offset; + 36: if(cond && ram_rdata[0]) {inc_hi, inc_lo} <= {mul1, 2'b00} >> ~tmp1[12:10]; + 37,38: inc_lo <= {4'b0000, inc_hi}; + 39: begin + s_ram_OPindex <= !s_ram_OPindex; + if(s_ram_OPindex) s_ram_CHindex <= s_ram_CHindex1; + end + endcase +end + +always @(*) begin + ram_offset = 6'b000000; + ram_CHindex = s_ram_CHindex; + ram_OPindex = s_ram_OPindex; + ram_wdata = 16'h0000; + ram_wr = 1'b0; + nextSTATE = STATE + 1'b1; + sinaddr = r_sinaddr; + tmp1op = 4'b1111; // tmp1 <= tmp1, carry <= 0 + cy = 1'b0; + ready = 1'b0; + + case(STATE) + 0: begin + ram_offset = `lfo_am_depth_o; + ram_CHindex = 18; + ram_OPindex = 0; + end + 1: ram_CHindex = 0; + 2: begin + ram_offset = `chanout_o; + ram_wr = 1'b1; + nextSTATE = s_ram_CHindex17 ? 6'd3 : 6'd2; + end + +// chan_calc + 3: begin // chip.phase_modulation = 0; + ram_CHindex = 18; + ram_offset = `phase_modulation_o; + ram_wr = 1'b1; + end + 4: ram_offset = `op1_out_o; // op1_out[0] + 5: ram_offset = `op1_out_o+6'd2; // op1_out[1] + 6: begin + ram_offset = `FB_o; // read {FB, wavetable, x, x} + tmp1op = 4'b0000; // tmp1 <= ram_rdata + ram_rdata_lo; // out = SLOT1->op1_out[0] + SLOT1->op1_out[1]; + end + 7: begin // SLOT->op1_out[0] = SLOT->op1_out[1]; + ram_offset = `op1_out_o; + ram_wdata = ram_rdata_lo; + ram_wr = 1'b1; + sinaddr = {ram_rdata[10:8], outshift}; // wavetable, out>>FB + nextSTATE = 11; // call + end + + 8: begin + ram_CHindex = 18; + ram_offset = `phase_modulation_o; + end + 9: begin + ram_offset = `FB_o; // read {FB, wavetable, x, x} + ram_OPindex = 1; + end + 10: begin // SLOT->op1_out[1] = op_calc + ram_offset = `op1_out_o+6'd2; + ram_OPindex = 0; + ram_wdata = tmp1; + ram_wr = 1'b1; + sinaddr = {ram_rdata[10:8], ram_rdata_lo[9:0]}; // wavetable, phase_modulation + end + 11: ram_offset = `AMmask_o; // read {TLL, AMmask} + 12: ram_offset = `volume_o; // read volume[15:0] + 13: ram_offset = `Cnt_o+6'd2; + 14: begin + ram_offset = `connect_o; + sinaddr[9:0] = sinaddr[9:0] + ram_rdata[9:0]; + if(env >= 416) nextSTATE = RET; + end + 15: {ram_CHindex, ram_OPindex, ram_offset} = ram_rdata[11:0]; + 16: ram_offset = `connect_o; + 17: begin + {ram_CHindex, ram_OPindex, ram_offset} = ram_rdata[11:0]; + ram_wdata = ram_rdata_lo + op_calc;//tmp1; + ram_wr = 1'b1; + nextSTATE = RET; + tmp1op = 4'b1110; // tmp1 <= op_calc; + end + 18: begin + ram_offset = `panA_o; + ram_OPindex = 0; + ram_CHindex = 18; + nextSTATE = s_ram_CHindex17 ? 6'd19 : 6'd3; + end + + 19: ram_offset = `panA_o+6'd2; + 20: begin + ram_offset = `chanout_o; + ram_CHindex = 0; + end + 21: begin + ram_offset = s_ram_CHindex18 ? `panB_o : `chanout_o; + nextSTATE = s_ram_CHindex18 ? 6'd22 : 6'd21; + end + 22: ram_offset = `panB_o+6'd2; + 23: begin + ram_offset = `chanout_o; + ram_CHindex = 0; + end + 24: begin + ram_offset = `chanout_o; + nextSTATE = s_ram_CHindex18 ? 6'd25 : 6'd24; + end + +// envelope + 25: ram_offset = `state_o; + 26: begin + case(ram_rdata[2:0]) + 3'd1: ram_offset = `eg_sh_rr_o; // release phase + 3'd2: begin // sustain phase + ram_offset = `eg_sh_rr_o; + if(ram_rdata[8]) nextSTATE = 31; // if (!op->eg_type) + end + 3'd3: ram_offset = `eg_sh_dr_o; // decay phase + 3'd4: ram_offset = `eg_sh_ar_o; // attack phase + default: nextSTATE = 31; + endcase + tmp1op = 4'b1100; // tmp1 <= ram_rdata; // {eg_type, state} + end + + 27: ram_offset = `volume_o; + 28: ram_offset = `sl_o; + 29: begin + ram_offset = `state_o; + ram_wdata = tmp1; + case(tmp1[1:0]) + 2'b00: if(r_volume[9]) ram_wdata[2:0] = 3'd3; // attack + 2'b11: if(r_volume >= {1'b0, ram_rdata[8:0]}) ram_wdata[2:0] = 3'd2; // decay + 2'b10:; // sustain + 2'b01: if(r_volume[9]) ram_wdata[2:0] = 3'd0; // release + endcase + ram_wr = cond; + end + 30: begin + ram_offset = `volume_o; + ram_wdata[9:0] = r_volume; + ram_wr = cond; + end + +// phase gen + 31: ram_offset = `Incr_o; + 32: ram_offset = `Incr_o+6'd2; + + 33: begin + ram_offset = `block_fnum_o; + ram_OPindex = 0; + end + 34: ram_offset = `mul_o; + 35: begin + ram_offset = `vib_o; + tmp1op = 4'b0001; //tmp1 <= ram_rdata_lo + lfo_fn_table_index_offset; + end + 36: ram_offset = `Cnt_o; + 37: begin + ram_offset = `Cnt_o+6'd2; + tmp1op = 4'b0100; //{carry, tmp1} <= inc_lo + ram_rdata; + end + 38: begin + ram_offset = `Cnt_o; + ram_wdata = tmp1; + ram_wr = 1'b1; + tmp1op = 4'b0100; //{carry, tmp1} <= inc_lo + ram_rdata + carry; + cy = carry; + end + 39: begin + ram_offset = `Cnt_o+6'd2; + ram_wdata = tmp1; + ram_wr = 1'b1; + if(!(s_ram_CHindex17 && s_ram_OPindex)) nextSTATE = 6'd25; + end + + default: begin + ready = 1'b1; + nextSTATE = rd ? 6'd0 : 6'd40; + end + + endcase + + case(tmp1op[1:0]) + 2'b00: tmp1op1 = ram_rdata; + 2'b01: tmp1op1 = lfo_fn_table_index_offset; + 2'b10: tmp1op1 = op_calc; + 2'b11: tmp1op1 = tmp1; + endcase + + case(tmp1op[3:2]) + 2'b00: tmp1op2 = ram_rdata_lo; + 2'b01: tmp1op2 = inc_lo; + default: tmp1op2 = 16'h0000; + endcase + + case(ram_rdata[3:0]) // ((1 << ram_rdata[3:0]) - 1)[11:0] + 4'h0: phmask = 12'h000; + 4'h1: phmask = 12'h001; + 4'h2: phmask = 12'h003; + 4'h3: phmask = 12'h007; + 4'h4: phmask = 12'h00f; + 4'h5: phmask = 12'h01f; + 4'h6: phmask = 12'h03f; + 4'h7: phmask = 12'h07f; + 4'h8: phmask = 12'h0ff; + 4'h9: phmask = 12'h1ff; + 4'ha: phmask = 12'h3ff; + 4'hb: phmask = 12'h7ff; + default: phmask = 12'hfff; + endcase +end + +endmodule + +module sampler +( + input clk, + input [12:0] index, + input [8:0] ampl, + output [12:0] sample +); + +reg [15:0] sin_tab[8191:0]; +initial $readmemh("sin_tab_full.mem", sin_tab); + +reg [15:0] exp_tab[6655:0]; +initial $readmemh("exp_tab.mem", exp_tab); + +reg [15:0] logsin; +wire [13:0] ilog = logsin[13:0] + {ampl, 4'b0000}; +reg log_rng; +reg [15:0] isample; +assign sample = log_rng ? isample[12:0] : 13'd0; + +always @(posedge clk) begin + logsin <= sin_tab[index]; + log_rng <= ilog < 6656; + isample <= exp_tab[ilog[12:0]]; +end + +endmodule diff --git a/common/Sound/opl3/sin_tab_full.mem b/common/Sound/opl3/sin_tab_full.mem new file mode 100644 index 00000000..d588f082 --- /dev/null +++ b/common/Sound/opl3/sin_tab_full.mem @@ -0,0 +1,8192 @@ +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0004 +0004 +0004 +0004 +0006 +0006 +0006 +0008 +0008 +0008 +000A +000A +000A +000C +000C +000E +000E +000E +0010 +0010 +0012 +0012 +0014 +0014 +0016 +0018 +0018 +001A +001A +001C +001E +001E +0020 +0022 +0022 +0024 +0026 +0028 +0028 +002A +002C +002E +002E +0030 +0032 +0034 +0036 +0038 +003A +003C +003E +0040 +0042 +0044 +0046 +0048 +004A +004C +004E +0050 +0052 +0054 +0056 +005A +005C +005E +0060 +0062 +0066 +0068 +006A +006E +0070 +0072 +0076 +0078 +007C +007E +0080 +0084 +0086 +008A +008C +0090 +0094 +0096 +009A +009C +00A0 +00A4 +00A6 +00AA +00AE +00B2 +00B6 +00B8 +00BC +00C0 +00C4 +00C8 +00CC +00D0 +00D4 +00D8 +00DC +00E0 +00E4 +00E8 +00EC +00F0 +00F4 +00FA +00FE +0102 +0106 +010C +0110 +0114 +011A +011E +0124 +0128 +012E +0132 +0138 +013E +0142 +0148 +014E +0152 +0158 +015E +0164 +016A +0170 +0176 +017C +0182 +0188 +018E +0194 +019A +01A2 +01A8 +01AE +01B6 +01BC +01C4 +01CA +01D2 +01D8 +01E0 +01E8 +01F0 +01F6 +01FE +0206 +020E +0216 +021E +0228 +0230 +0238 +0242 +024A +0252 +025C +0266 +026E +0278 +0282 +028C +0296 +02A0 +02AA +02B6 +02C0 +02CC +02D6 +02E2 +02EE +02F8 +0304 +0310 +031E +032A +0336 +0344 +0352 +0360 +036E +037C +038A +039A +03A8 +03B8 +03C8 +03D8 +03EA +03FA +040C +041E +0430 +0444 +0458 +046C +0480 +0496 +04AC +04C2 +04DA +04F2 +050C +0526 +0540 +055E +057A +059A +05B8 +05DA +05FE +0622 +0648 +0672 +069C +06CA +06FC +0730 +076A +07A6 +07EA +0834 +0886 +08E2 +094C +09C8 +0A5C +0B16 +0C0E +0D86 +10B2 +10B3 +0D87 +0C0F +0B17 +0A5D +09C9 +094D +08E3 +0887 +0835 +07EB +07A7 +076B +0731 +06FD +06CD +069D +0673 +0649 +0623 +05FF +05DB +05B9 +059B +057B +055F +0541 +0527 +050D +04F3 +04DB +04C3 +04AD +0497 +0481 +046D +0459 +0445 +0431 +041F +040D +03FB +03EB +03D9 +03C9 +03B9 +03A9 +039B +038B +037D +036F +0361 +0353 +0345 +0337 +032B +031F +0311 +0305 +02F9 +02EF +02E3 +02D7 +02CD +02C1 +02B7 +02AB +02A1 +0297 +028D +0283 +0279 +026F +0267 +025D +0253 +024B +0243 +0239 +0231 +0229 +021F +0217 +020F +0207 +01FF +01F7 +01F1 +01E9 +01E1 +01D9 +01D3 +01CB +01C5 +01BD +01B7 +01AF +01A9 +01A3 +019B +0195 +018F +0189 +0183 +017D +0177 +0171 +016B +0165 +015F +0159 +0153 +014F +0149 +0143 +013F +0139 +0133 +012F +0129 +0125 +011F +011B +0115 +0111 +010D +0107 +0103 +00FF +00FB +00F5 +00F1 +00ED +00E9 +00E5 +00E1 +00DD +00D9 +00D5 +00D1 +00CD +00C9 +00C5 +00C1 +00BD +00B9 +00B7 +00B3 +00AF +00AB +00A7 +00A5 +00A1 +009D +009B +0097 +0095 +0091 +008D +008B +0087 +0085 +0081 +007F +007D +0079 +0077 +0073 +0071 +006F +006B +0069 +0067 +0063 +0061 +005F +005D +005B +0057 +0055 +0053 +0051 +004F +004D +004B +0049 +0047 +0045 +0043 +0041 +003F +003D +003B +0039 +0037 +0035 +0033 +0031 +002F +002F +002D +002B +0029 +0029 +0027 +0025 +0023 +0023 +0021 +001F +001F +001D +001B +001B +0019 +0019 +0017 +0015 +0015 +0013 +0013 +0011 +0011 +000F +000F +000F +000D +000D +000B +000B +000B +0009 +0009 +0009 +0007 +0007 +0007 +0005 +0005 +0005 +0005 +0003 +0003 +0003 +0003 +0003 +0003 +0003 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0003 +0003 +0003 +0003 +0003 +0003 +0003 +0005 +0005 +0005 +0005 +0007 +0007 +0007 +0009 +0009 +0009 +000B +000B +000B +000D +000D +000F +000F +000F +0011 +0011 +0013 +0013 +0015 +0015 +0017 +0019 +0019 +001B +001B +001D +001F +001F +0021 +0023 +0023 +0025 +0027 +0029 +0029 +002B +002D +002F +002F +0031 +0033 +0035 +0037 +0039 +003B +003D +003F +0041 +0043 +0045 +0047 +0049 +004B +004D +004F +0051 +0053 +0055 +0057 +005B +005D +005F +0061 +0063 +0067 +0069 +006B +006F +0071 +0073 +0077 +0079 +007D +007F +0081 +0085 +0087 +008B +008D +0091 +0095 +0097 +009B +009D +00A1 +00A5 +00A7 +00AB +00AF +00B3 +00B7 +00B9 +00BD +00C1 +00C5 +00C9 +00CD +00D1 +00D5 +00D9 +00DD +00E1 +00E5 +00E9 +00ED +00F1 +00F5 +00FB +00FF +0103 +0107 +010D +0111 +0115 +011B +011F +0125 +0129 +012F +0133 +0139 +013F +0143 +0149 +014F +0153 +0159 +015F +0165 +016B +0171 +0177 +017D +0183 +0189 +018F +0195 +019B +01A3 +01A9 +01AF +01B7 +01BD +01C5 +01CB +01D3 +01D9 +01E1 +01E9 +01F1 +01F7 +01FF +0207 +020F +0217 +021F +0229 +0231 +0239 +0243 +024B +0253 +025D +0267 +026F +0279 +0283 +028D +0297 +02A1 +02AB +02B7 +02C1 +02CD +02D7 +02E3 +02EF +02F9 +0305 +0311 +031F +032B +0337 +0345 +0353 +0361 +036F +037D +038B +039B +03A9 +03B9 +03C9 +03D9 +03EB +03FB +040D +041F +0431 +0445 +0459 +046D +0481 +0497 +04AD +04C3 +04DB +04F3 +050D +0527 +0541 +055F +057B +059B +05B9 +05DB +05FF +0623 +0649 +0673 +069D +06CB +06FD +0731 +076B +07A7 +07EB +0835 +0887 +08E3 +094D +09C9 +0A5D +0B17 +0C0F +0D87 +10B3 +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0004 +0004 +0004 +0004 +0006 +0006 +0006 +0008 +0008 +0008 +000A +000A +000A +000C +000C +000E +000E +000E +0010 +0010 +0012 +0012 +0014 +0014 +0016 +0018 +0018 +001A +001A +001C +001E +001E +0020 +0022 +0022 +0024 +0026 +0028 +0028 +002A +002C +002E +002E +0030 +0032 +0034 +0036 +0038 +003A +003C +003E +0040 +0042 +0044 +0046 +0048 +004A +004C +004E +0050 +0052 +0054 +0056 +005A +005C +005E +0060 +0062 +0066 +0068 +006A +006E +0070 +0072 +0076 +0078 +007C +007E +0080 +0084 +0086 +008A +008C +0090 +0094 +0096 +009A +009C +00A0 +00A4 +00A6 +00AA +00AE +00B2 +00B6 +00B8 +00BC +00C0 +00C4 +00C8 +00CC +00D0 +00D4 +00D8 +00DC +00E0 +00E4 +00E8 +00EC +00F0 +00F4 +00FA +00FE +0102 +0106 +010C +0110 +0114 +011A +011E +0124 +0128 +012E +0132 +0138 +013E +0142 +0148 +014E +0152 +0158 +015E +0164 +016A +0170 +0176 +017C +0182 +0188 +018E +0194 +019A +01A2 +01A8 +01AE +01B6 +01BC +01C4 +01CA +01D2 +01D8 +01E0 +01E8 +01F0 +01F6 +01FE +0206 +020E +0216 +021E +0228 +0230 +0238 +0242 +024A +0252 +025C +0266 +026E +0278 +0282 +028C +0296 +02A0 +02AA +02B6 +02C0 +02CC +02D6 +02E2 +02EE +02F8 +0304 +0310 +031E +032A +0336 +0344 +0352 +0360 +036E +037C +038A +039A +03A8 +03B8 +03C8 +03D8 +03EA +03FA +040C +041E +0430 +0444 +0458 +046C +0480 +0496 +04AC +04C2 +04DA +04F2 +050C +0526 +0540 +055E +057A +059A +05B8 +05DA +05FE +0622 +0648 +0672 +069C +06CA +06FC +0730 +076A +07A6 +07EA +0834 +0886 +08E2 +094C +09C8 +0A5C +0B16 +0C0E +0D86 +10B2 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0004 +0004 +0004 +0004 +0006 +0006 +0006 +0008 +0008 +0008 +000A +000A +000A +000C +000C +000E +000E +000E +0010 +0010 +0012 +0012 +0014 +0014 +0016 +0018 +0018 +001A +001A +001C +001E +001E +0020 +0022 +0022 +0024 +0026 +0028 +0028 +002A +002C +002E +002E +0030 +0032 +0034 +0036 +0038 +003A +003C +003E +0040 +0042 +0044 +0046 +0048 +004A +004C +004E +0050 +0052 +0054 +0056 +005A +005C +005E +0060 +0062 +0066 +0068 +006A +006E +0070 +0072 +0076 +0078 +007C +007E +0080 +0084 +0086 +008A +008C +0090 +0094 +0096 +009A +009C +00A0 +00A4 +00A6 +00AA +00AE +00B2 +00B6 +00B8 +00BC +00C0 +00C4 +00C8 +00CC +00D0 +00D4 +00D8 +00DC +00E0 +00E4 +00E8 +00EC +00F0 +00F4 +00FA +00FE +0102 +0106 +010C +0110 +0114 +011A +011E +0124 +0128 +012E +0132 +0138 +013E +0142 +0148 +014E +0152 +0158 +015E +0164 +016A +0170 +0176 +017C +0182 +0188 +018E +0194 +019A +01A2 +01A8 +01AE +01B6 +01BC +01C4 +01CA +01D2 +01D8 +01E0 +01E8 +01F0 +01F6 +01FE +0206 +020E +0216 +021E +0228 +0230 +0238 +0242 +024A +0252 +025C +0266 +026E +0278 +0282 +028C +0296 +02A0 +02AA +02B6 +02C0 +02CC +02D6 +02E2 +02EE +02F8 +0304 +0310 +031E +032A +0336 +0344 +0352 +0360 +036E +037C +038A +039A +03A8 +03B8 +03C8 +03D8 +03EA +03FA +040C +041E +0430 +0444 +0458 +046C +0480 +0496 +04AC +04C2 +04DA +04F2 +050C +0526 +0540 +055E +057A +059A +05B8 +05DA +05FE +0622 +0648 +0672 +069C +06CA +06FC +0730 +076A +07A6 +07EA +0834 +0886 +08E2 +094C +09C8 +0A5C +0B16 +0C0E +0D86 +10B2 +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0004 +0004 +0004 +0004 +0006 +0006 +0006 +0008 +0008 +0008 +000A +000A +000A +000C +000C +000E +000E +000E +0010 +0010 +0012 +0012 +0014 +0014 +0016 +0018 +0018 +001A +001A +001C +001E +001E +0020 +0022 +0022 +0024 +0026 +0028 +0028 +002A +002C +002E +002E +0030 +0032 +0034 +0036 +0038 +003A +003C +003E +0040 +0042 +0044 +0046 +0048 +004A +004C +004E +0050 +0052 +0054 +0056 +005A +005C +005E +0060 +0062 +0066 +0068 +006A +006E +0070 +0072 +0076 +0078 +007C +007E +0080 +0084 +0086 +008A +008C +0090 +0094 +0096 +009A +009C +00A0 +00A4 +00A6 +00AA +00AE +00B2 +00B6 +00B8 +00BC +00C0 +00C4 +00C8 +00CC +00D0 +00D4 +00D8 +00DC +00E0 +00E4 +00E8 +00EC +00F0 +00F4 +00FA +00FE +0102 +0106 +010C +0110 +0114 +011A +011E +0124 +0128 +012E +0132 +0138 +013E +0142 +0148 +014E +0152 +0158 +015E +0164 +016A +0170 +0176 +017C +0182 +0188 +018E +0194 +019A +01A2 +01A8 +01AE +01B6 +01BC +01C4 +01CA +01D2 +01D8 +01E0 +01E8 +01F0 +01F6 +01FE +0206 +020E +0216 +021E +0228 +0230 +0238 +0242 +024A +0252 +025C +0266 +026E +0278 +0282 +028C +0296 +02A0 +02AA +02B6 +02C0 +02CC +02D6 +02E2 +02EE +02F8 +0304 +0310 +031E +032A +0336 +0344 +0352 +0360 +036E +037C +038A +039A +03A8 +03B8 +03C8 +03D8 +03EA +03FA +040C +041E +0430 +0444 +0458 +046C +0480 +0496 +04AC +04C2 +04DA +04F2 +050C +0526 +0540 +055E +057A +059A +05B8 +05DA +05FE +0622 +0648 +0672 +069C +06CA +06FC +0730 +076A +07A6 +07EA +0834 +0886 +08E2 +094C +09C8 +0A5C +0B16 +0C0E +0D86 +10B2 +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +10B2 +0D86 +0C0E +0B16 +0A5C +09C8 +094C +08E2 +0886 +0834 +07EA +07A6 +076A +0730 +06FC +06CA +069C +0672 +0648 +0622 +05FE +05DA +05B8 +059A +057A +055E +0540 +0526 +050C +04F2 +04DA +04C2 +04AC +0496 +0480 +046C +0458 +0444 +0430 +041E +040C +03FA +03EA +03D8 +03C8 +03B8 +03A8 +039A +038A +037C +036E +0360 +0352 +0344 +0336 +032A +031E +0310 +0304 +02F8 +02EE +02E2 +02D6 +02CC +02C0 +02B6 +02AA +02A0 +0296 +028C +0282 +0278 +026E +0266 +025C +0252 +024A +0242 +0238 +0230 +0228 +021E +0216 +020E +0206 +01FE +01F6 +01F0 +01E8 +01E0 +01D8 +01D2 +01CA +01C4 +01BC +01B6 +01AE +01A8 +01A2 +019A +0194 +018E +0188 +0182 +017C +0176 +0170 +016A +0164 +015E +0158 +0152 +014E +0148 +0142 +013E +0138 +0132 +012E +0128 +0124 +011E +011A +0114 +0110 +010C +0106 +0102 +00FE +00FA +00F4 +00F0 +00EC +00E8 +00E4 +00E0 +00DC +00D8 +00D4 +00D0 +00CC +00C8 +00C4 +00C0 +00BC +00B8 +00B6 +00B2 +00AE +00AA +00A6 +00A4 +00A0 +009C +009A +0096 +0094 +0090 +008C +008A +0086 +0084 +0080 +007E +007C +0078 +0076 +0072 +0070 +006E +006A +0068 +0066 +0062 +0060 +005E +005C +005A +0056 +0054 +0052 +0050 +004E +004C +004A +0048 +0046 +0044 +0042 +0040 +003E +003C +003A +0038 +0036 +0034 +0032 +0030 +002E +002E +002C +002A +0028 +0028 +0026 +0024 +0022 +0022 +0020 +001E +001E +001C +001A +001A +0018 +0018 +0016 +0014 +0014 +0012 +0012 +0010 +0010 +000E +000E +000E +000C +000C +000A +000A +000A +0008 +0008 +0008 +0006 +0006 +0006 +0004 +0004 +0004 +0004 +0002 +0002 +0002 +0002 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +10B2 +0C0E +0A5C +094C +0886 +07EA +076A +06FC +069C +0648 +05FE +05B8 +057A +0540 +050C +04DA +04AC +0480 +0458 +0430 +040C +03EA +03C8 +03A8 +038A +036E +0352 +0336 +031E +0304 +02EE +02D6 +02C0 +02AA +0296 +0282 +026E +025C +024A +0238 +0228 +0216 +0206 +01F6 +01E8 +01D8 +01CA +01BC +01AE +01A2 +0194 +0188 +017C +0170 +0164 +0158 +014E +0142 +0138 +012E +0124 +011A +0110 +0106 +00FE +00F4 +00EC +00E4 +00DC +00D4 +00CC +00C4 +00BC +00B6 +00AE +00A6 +00A0 +009A +0094 +008C +0086 +0080 +007C +0076 +0070 +006A +0066 +0060 +005C +0056 +0052 +004E +004A +0046 +0042 +003E +003A +0036 +0032 +002E +002C +0028 +0026 +0022 +0020 +001E +001A +0018 +0016 +0014 +0012 +0010 +000E +000C +000A +000A +0008 +0006 +0006 +0004 +0004 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0004 +0004 +0006 +0008 +0008 +000A +000C +000E +000E +0010 +0012 +0014 +0018 +001A +001C +001E +0022 +0024 +0028 +002A +002E +0030 +0034 +0038 +003C +0040 +0044 +0048 +004C +0050 +0054 +005A +005E +0062 +0068 +006E +0072 +0078 +007E +0084 +008A +0090 +0096 +009C +00A4 +00AA +00B2 +00B8 +00C0 +00C8 +00D0 +00D8 +00E0 +00E8 +00F0 +00FA +0102 +010C +0114 +011E +0128 +0132 +013E +0148 +0152 +015E +016A +0176 +0182 +018E +019A +01A8 +01B6 +01C4 +01D2 +01E0 +01F0 +01FE +020E +021E +0230 +0242 +0252 +0266 +0278 +028C +02A0 +02B6 +02CC +02E2 +02F8 +0310 +032A +0344 +0360 +037C +039A +03B8 +03D8 +03FA +041E +0444 +046C +0496 +04C2 +04F2 +0526 +055E +059A +05DA +0622 +0672 +06CA +0730 +07A6 +0834 +08E2 +09C8 +0B16 +0D86 +10B3 +0C0F +0A5D +094D +0887 +07EB +076B +06FD +069D +0649 +05FF +05B9 +057B +0541 +050D +04DB +04AD +0481 +0459 +0431 +040D +03EB +03C9 +03A9 +038B +036F +0353 +0337 +031F +0305 +02EF +02D7 +02C1 +02AB +0297 +0283 +026F +025D +024B +0239 +0229 +0217 +0207 +01F7 +01E9 +01D9 +01CB +01BD +01AF +01A3 +0195 +0189 +017D +0171 +0165 +0159 +014F +0143 +0139 +012F +0125 +011B +0111 +0107 +00FF +00F5 +00ED +00E5 +00DD +00D5 +00CD +00C5 +00BD +00B7 +00AF +00A7 +00A1 +009B +0095 +008D +0087 +0081 +007D +0077 +0071 +006B +0067 +0061 +005D +0057 +0053 +004F +004B +0047 +0043 +003F +003B +0037 +0033 +002F +002D +0029 +0027 +0023 +0021 +001F +001B +0019 +0017 +0015 +0013 +0011 +000F +000D +000B +000B +0009 +0007 +0007 +0005 +0005 +0003 +0003 +0003 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0003 +0003 +0003 +0003 +0005 +0005 +0007 +0009 +0009 +000B +000D +000F +000F +0011 +0013 +0015 +0019 +001B +001D +001F +0023 +0025 +0029 +002B +002F +0031 +0035 +0039 +003D +0041 +0045 +0049 +004D +0051 +0055 +005B +005F +0063 +0069 +006F +0073 +0079 +007F +0085 +008B +0091 +0097 +009D +00A5 +00AB +00B3 +00B9 +00C1 +00C9 +00D1 +00D9 +00E1 +00E9 +00F1 +00FB +0103 +010D +0115 +011F +0129 +0133 +013F +0149 +0153 +015F +016B +0177 +0183 +018F +019B +01A9 +01B7 +01C5 +01D3 +01E1 +01F1 +01FF +020F +021F +0231 +0243 +0253 +0267 +0279 +028D +02A1 +02B7 +02CD +02E3 +02F9 +0311 +032B +0345 +0361 +037D +039B +03B9 +03D9 +03FB +041F +0445 +046D +0497 +04C3 +04F3 +0527 +055F +059B +05DB +0623 +0673 +06CB +0731 +07A7 +0835 +08E3 +09C9 +0B17 +0D87 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +10B2 +0C0E +0A5C +094C +0886 +07EA +076A +06FC +069C +0648 +05FE +05B8 +057A +0540 +050C +04DA +04AC +0480 +0458 +0430 +040C +03EA +03C8 +03A8 +038A +036E +0352 +0336 +031E +0304 +02EE +02D6 +02C0 +02AA +0296 +0282 +026E +025C +024A +0238 +0228 +0216 +0206 +01F6 +01E8 +01D8 +01CA +01BC +01AE +01A2 +0194 +0188 +017C +0170 +0164 +0158 +014E +0142 +0138 +012E +0124 +011A +0110 +0106 +00FE +00F4 +00EC +00E4 +00DC +00D4 +00CC +00C4 +00BC +00B6 +00AE +00A6 +00A0 +009A +0094 +008C +0086 +0080 +007C +0076 +0070 +006A +0066 +0060 +005C +0056 +0052 +004E +004A +0046 +0042 +003E +003A +0036 +0032 +002E +002C +0028 +0026 +0022 +0020 +001E +001A +0018 +0016 +0014 +0012 +0010 +000E +000C +000A +000A +0008 +0006 +0006 +0004 +0004 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0004 +0004 +0006 +0008 +0008 +000A +000C +000E +000E +0010 +0012 +0014 +0018 +001A +001C +001E +0022 +0024 +0028 +002A +002E +0030 +0034 +0038 +003C +0040 +0044 +0048 +004C +0050 +0054 +005A +005E +0062 +0068 +006E +0072 +0078 +007E +0084 +008A +0090 +0096 +009C +00A4 +00AA +00B2 +00B8 +00C0 +00C8 +00D0 +00D8 +00E0 +00E8 +00F0 +00FA +0102 +010C +0114 +011E +0128 +0132 +013E +0148 +0152 +015E +016A +0176 +0182 +018E +019A +01A8 +01B6 +01C4 +01D2 +01E0 +01F0 +01FE +020E +021E +0230 +0242 +0252 +0266 +0278 +028C +02A0 +02B6 +02CC +02E2 +02F8 +0310 +032A +0344 +0360 +037C +039A +03B8 +03D8 +03FA +041E +0444 +046C +0496 +04C2 +04F2 +0526 +055E +059A +05DA +0622 +0672 +06CA +0730 +07A6 +0834 +08E2 +09C8 +0B16 +0D86 +10B2 +0C0E +0A5C +094C +0886 +07EA +076A +06FC +069C +0648 +05FE +05B8 +057A +0540 +050C +04DA +04AC +0480 +0458 +0430 +040C +03EA +03C8 +03A8 +038A +036E +0352 +0336 +031E +0304 +02EE +02D6 +02C0 +02AA +0296 +0282 +026E +025C +024A +0238 +0228 +0216 +0206 +01F6 +01E8 +01D8 +01CA +01BC +01AE +01A2 +0194 +0188 +017C +0170 +0164 +0158 +014E +0142 +0138 +012E +0124 +011A +0110 +0106 +00FE +00F4 +00EC +00E4 +00DC +00D4 +00CC +00C4 +00BC +00B6 +00AE +00A6 +00A0 +009A +0094 +008C +0086 +0080 +007C +0076 +0070 +006A +0066 +0060 +005C +0056 +0052 +004E +004A +0046 +0042 +003E +003A +0036 +0032 +002E +002C +0028 +0026 +0022 +0020 +001E +001A +0018 +0016 +0014 +0012 +0010 +000E +000C +000A +000A +0008 +0006 +0006 +0004 +0004 +0002 +0002 +0002 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0002 +0002 +0002 +0002 +0004 +0004 +0006 +0008 +0008 +000A +000C +000E +000E +0010 +0012 +0014 +0018 +001A +001C +001E +0022 +0024 +0028 +002A +002E +0030 +0034 +0038 +003C +0040 +0044 +0048 +004C +0050 +0054 +005A +005E +0062 +0068 +006E +0072 +0078 +007E +0084 +008A +0090 +0096 +009C +00A4 +00AA +00B2 +00B8 +00C0 +00C8 +00D0 +00D8 +00E0 +00E8 +00F0 +00FA +0102 +010C +0114 +011E +0128 +0132 +013E +0148 +0152 +015E +016A +0176 +0182 +018E +019A +01A8 +01B6 +01C4 +01D2 +01E0 +01F0 +01FE +020E +021E +0230 +0242 +0252 +0266 +0278 +028C +02A0 +02B6 +02CC +02E2 +02F8 +0310 +032A +0344 +0360 +037C +039A +03B8 +03D8 +03FA +041E +0444 +046C +0496 +04C2 +04F2 +0526 +055E +059A +05DA +0622 +0672 +06CA +0730 +07A6 +0834 +08E2 +09C8 +0B16 +0D86 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0001 +0000 +0010 +0020 +0030 +0040 +0050 +0060 +0070 +0080 +0090 +00A0 +00B0 +00C0 +00D0 +00E0 +00F0 +0100 +0110 +0120 +0130 +0140 +0150 +0160 +0170 +0180 +0190 +01A0 +01B0 +01C0 +01D0 +01E0 +01F0 +0200 +0210 +0220 +0230 +0240 +0250 +0260 +0270 +0280 +0290 +02A0 +02B0 +02C0 +02D0 +02E0 +02F0 +0300 +0310 +0320 +0330 +0340 +0350 +0360 +0370 +0380 +0390 +03A0 +03B0 +03C0 +03D0 +03E0 +03F0 +0400 +0410 +0420 +0430 +0440 +0450 +0460 +0470 +0480 +0490 +04A0 +04B0 +04C0 +04D0 +04E0 +04F0 +0500 +0510 +0520 +0530 +0540 +0550 +0560 +0570 +0580 +0590 +05A0 +05B0 +05C0 +05D0 +05E0 +05F0 +0600 +0610 +0620 +0630 +0640 +0650 +0660 +0670 +0680 +0690 +06A0 +06B0 +06C0 +06D0 +06E0 +06F0 +0700 +0710 +0720 +0730 +0740 +0750 +0760 +0770 +0780 +0790 +07A0 +07B0 +07C0 +07D0 +07E0 +07F0 +0800 +0810 +0820 +0830 +0840 +0850 +0860 +0870 +0880 +0890 +08A0 +08B0 +08C0 +08D0 +08E0 +08F0 +0900 +0910 +0920 +0930 +0940 +0950 +0960 +0970 +0980 +0990 +09A0 +09B0 +09C0 +09D0 +09E0 +09F0 +0A00 +0A10 +0A20 +0A30 +0A40 +0A50 +0A60 +0A70 +0A80 +0A90 +0AA0 +0AB0 +0AC0 +0AD0 +0AE0 +0AF0 +0B00 +0B10 +0B20 +0B30 +0B40 +0B50 +0B60 +0B70 +0B80 +0B90 +0BA0 +0BB0 +0BC0 +0BD0 +0BE0 +0BF0 +0C00 +0C10 +0C20 +0C30 +0C40 +0C50 +0C60 +0C70 +0C80 +0C90 +0CA0 +0CB0 +0CC0 +0CD0 +0CE0 +0CF0 +0D00 +0D10 +0D20 +0D30 +0D40 +0D50 +0D60 +0D70 +0D80 +0D90 +0DA0 +0DB0 +0DC0 +0DD0 +0DE0 +0DF0 +0E00 +0E10 +0E20 +0E30 +0E40 +0E50 +0E60 +0E70 +0E80 +0E90 +0EA0 +0EB0 +0EC0 +0ED0 +0EE0 +0EF0 +0F00 +0F10 +0F20 +0F30 +0F40 +0F50 +0F60 +0F70 +0F80 +0F90 +0FA0 +0FB0 +0FC0 +0FD0 +0FE0 +0FF0 +1000 +1010 +1020 +1030 +1040 +1050 +1060 +1070 +1080 +1090 +10A0 +10B0 +10C0 +10D0 +10E0 +10F0 +1100 +1110 +1120 +1130 +1140 +1150 +1160 +1170 +1180 +1190 +11A0 +11B0 +11C0 +11D0 +11E0 +11F0 +1200 +1210 +1220 +1230 +1240 +1250 +1260 +1270 +1280 +1290 +12A0 +12B0 +12C0 +12D0 +12E0 +12F0 +1300 +1310 +1320 +1330 +1340 +1350 +1360 +1370 +1380 +1390 +13A0 +13B0 +13C0 +13D0 +13E0 +13F0 +1400 +1410 +1420 +1430 +1440 +1450 +1460 +1470 +1480 +1490 +14A0 +14B0 +14C0 +14D0 +14E0 +14F0 +1500 +1510 +1520 +1530 +1540 +1550 +1560 +1570 +1580 +1590 +15A0 +15B0 +15C0 +15D0 +15E0 +15F0 +1600 +1610 +1620 +1630 +1640 +1650 +1660 +1670 +1680 +1690 +16A0 +16B0 +16C0 +16D0 +16E0 +16F0 +1700 +1710 +1720 +1730 +1740 +1750 +1760 +1770 +1780 +1790 +17A0 +17B0 +17C0 +17D0 +17E0 +17F0 +1800 +1810 +1820 +1830 +1840 +1850 +1860 +1870 +1880 +1890 +18A0 +18B0 +18C0 +18D0 +18E0 +18F0 +1900 +1910 +1920 +1930 +1940 +1950 +1960 +1970 +1980 +1990 +19A0 +19B0 +19C0 +19D0 +19E0 +19F0 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +1A00 +19F1 +19E1 +19D1 +19C1 +19B1 +19A1 +1991 +1981 +1971 +1961 +1951 +1941 +1931 +1921 +1911 +1901 +18F1 +18E1 +18D1 +18C1 +18B1 +18A1 +1891 +1881 +1871 +1861 +1851 +1841 +1831 +1821 +1811 +1801 +17F1 +17E1 +17D1 +17C1 +17B1 +17A1 +1791 +1781 +1771 +1761 +1751 +1741 +1731 +1721 +1711 +1701 +16F1 +16E1 +16D1 +16C1 +16B1 +16A1 +1691 +1681 +1671 +1661 +1651 +1641 +1631 +1621 +1611 +1601 +15F1 +15E1 +15D1 +15C1 +15B1 +15A1 +1591 +1581 +1571 +1561 +1551 +1541 +1531 +1521 +1511 +1501 +14F1 +14E1 +14D1 +14C1 +14B1 +14A1 +1491 +1481 +1471 +1461 +1451 +1441 +1431 +1421 +1411 +1401 +13F1 +13E1 +13D1 +13C1 +13B1 +13A1 +1391 +1381 +1371 +1361 +1351 +1341 +1331 +1321 +1311 +1301 +12F1 +12E1 +12D1 +12C1 +12B1 +12A1 +1291 +1281 +1271 +1261 +1251 +1241 +1231 +1221 +1211 +1201 +11F1 +11E1 +11D1 +11C1 +11B1 +11A1 +1191 +1181 +1171 +1161 +1151 +1141 +1131 +1121 +1111 +1101 +10F1 +10E1 +10D1 +10C1 +10B1 +10A1 +1091 +1081 +1071 +1061 +1051 +1041 +1031 +1021 +1011 +1001 +0FF1 +0FE1 +0FD1 +0FC1 +0FB1 +0FA1 +0F91 +0F81 +0F71 +0F61 +0F51 +0F41 +0F31 +0F21 +0F11 +0F01 +0EF1 +0EE1 +0ED1 +0EC1 +0EB1 +0EA1 +0E91 +0E81 +0E71 +0E61 +0E51 +0E41 +0E31 +0E21 +0E11 +0E01 +0DF1 +0DE1 +0DD1 +0DC1 +0DB1 +0DA1 +0D91 +0D81 +0D71 +0D61 +0D51 +0D41 +0D31 +0D21 +0D11 +0D01 +0CF1 +0CE1 +0CD1 +0CC1 +0CB1 +0CA1 +0C91 +0C81 +0C71 +0C61 +0C51 +0C41 +0C31 +0C21 +0C11 +0C01 +0BF1 +0BE1 +0BD1 +0BC1 +0BB1 +0BA1 +0B91 +0B81 +0B71 +0B61 +0B51 +0B41 +0B31 +0B21 +0B11 +0B01 +0AF1 +0AE1 +0AD1 +0AC1 +0AB1 +0AA1 +0A91 +0A81 +0A71 +0A61 +0A51 +0A41 +0A31 +0A21 +0A11 +0A01 +09F1 +09E1 +09D1 +09C1 +09B1 +09A1 +0991 +0981 +0971 +0961 +0951 +0941 +0931 +0921 +0911 +0901 +08F1 +08E1 +08D1 +08C1 +08B1 +08A1 +0891 +0881 +0871 +0861 +0851 +0841 +0831 +0821 +0811 +0801 +07F1 +07E1 +07D1 +07C1 +07B1 +07A1 +0791 +0781 +0771 +0761 +0751 +0741 +0731 +0721 +0711 +0701 +06F1 +06E1 +06D1 +06C1 +06B1 +06A1 +0691 +0681 +0671 +0661 +0651 +0641 +0631 +0621 +0611 +0601 +05F1 +05E1 +05D1 +05C1 +05B1 +05A1 +0591 +0581 +0571 +0561 +0551 +0541 +0531 +0521 +0511 +0501 +04F1 +04E1 +04D1 +04C1 +04B1 +04A1 +0491 +0481 +0471 +0461 +0451 +0441 +0431 +0421 +0411 +0401 +03F1 +03E1 +03D1 +03C1 +03B1 +03A1 +0391 +0381 +0371 +0361 +0351 +0341 +0331 +0321 +0311 +0301 +02F1 +02E1 +02D1 +02C1 +02B1 +02A1 +0291 +0281 +0271 +0261 +0251 +0241 +0231 +0221 +0211 +0201 +01F1 +01E1 +01D1 +01C1 +01B1 +01A1 +0191 +0181 +0171 +0161 +0151 +0141 +0131 +0121 +0111 +0101 +00F1 +00E1 +00D1 +00C1 +00B1 +00A1 +0091 +0081 +0071 +0061 +0051 +0041 +0031 +0021 +0011 +0001 diff --git a/common/Sound/sn76489/pll_mist.qip b/common/Sound/sn76489/pll_mist.qip new file mode 100644 index 00000000..e69de29b diff --git a/common/Sound/sn76489/sn76489.qip b/common/Sound/sn76489/sn76489.qip new file mode 100644 index 00000000..e6903c6d --- /dev/null +++ b/common/Sound/sn76489/sn76489.qip @@ -0,0 +1,6 @@ +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_top.vhd] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_attenuator.vhd] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_clock_div.vhd] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_latch_ctrl.vhd] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_noise.vhd] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) sn76489_tone.vhd]