diff --git a/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qpf b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qpf new file mode 100644 index 00000000..da26573d --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qpf @@ -0,0 +1,6 @@ +DATE = "19:48:06 May 24, 2017" +QUARTUS_VERSION = "16.0.2" + +# Revisions + +PROJECT_REVISION = "CrazyBalloon" diff --git a/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qsf b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qsf new file mode 100644 index 00000000..b985cfc8 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.qsf @@ -0,0 +1,161 @@ +# -------------------------------------------------------------------------- # +# +# Copyright (C) 1991-2014 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.4 Build 182 03/12/2014 SJ Full Version +# Date created = 18:52:00 June 16, 2020 +# +# -------------------------------------------------------------------------- # +# +# Notes: +# +# 1) The default values for assignments are stored in the file: +# CrazyBalloon_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 ORIGINAL_QUARTUS_VERSION 16.0.2 +set_global_assignment -name LAST_QUARTUS_VERSION 13.1 +set_global_assignment -name PROJECT_CREATION_TIME_DATE "19:48:06 MAY 24,2017" +set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl" +set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files +set_global_assignment -name SYSTEMVERILOG_FILE rtl/CrazyBalloon_mist.sv +set_global_assignment -name VHDL_FILE rtl/CrazyBalloon.vhd +set_global_assignment -name VHDL_FILE rtl/CrazyBalloon_audio.vhd +set_global_assignment -name VHDL_FILE rtl/CrazyBalloon_video.vhd +set_global_assignment -name VHDL_FILE rtl/ne555v.vhd +set_global_assignment -name VHDL_FILE rtl/rom/prog.vhd +set_global_assignment -name VHDL_FILE rtl/rom/gfx1.vhd +set_global_assignment -name VHDL_FILE rtl/rom/gfx2.vhd +set_global_assignment -name VHDL_FILE rtl/rom/sfx3.vhd +set_global_assignment -name VHDL_FILE rtl/bram.vhd +set_global_assignment -name VERILOG_FILE rtl/pll.v +set_global_assignment -name QIP_FILE ../../common/CPU/T80/T80.qip +set_global_assignment -name QIP_FILE ../../common/mist/mist.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_90 -to SPI_SS4 +set_location_assignment PIN_13 -to CONF_DATA0 + +# Classic Timing Assignments +# ========================== +set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 +set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 +set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL ON +set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS ON + +# Analysis & Synthesis Assignments +# ================================ +set_global_assignment -name FAMILY "Cyclone III" +set_global_assignment -name TOP_LEVEL_ENTITY CrazyBalloon_mist +set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144 +set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 + +# Fitter Assignments +# ================== +set_global_assignment -name DEVICE EP3C25E144C8 +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 USE_CONFIGURATION_DEVICE OFF +set_global_assignment -name GENERATE_RBF_FILE ON + +# SignalTap II Assignments +# ======================== +set_global_assignment -name ENABLE_SIGNALTAP OFF +set_global_assignment -name USE_SIGNALTAP_FILE stp1.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(CrazyBalloon_mist) + + # 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(CrazyBalloon_mist) +# ----------------------------- +set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.sdc b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.sdc new file mode 100644 index 00000000..fc76f46c --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/CrazyBalloon.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 vid_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 $vid_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/Taito Crazy Balloon/README.txt b/Arcade_MiST/Taito Crazy Balloon/README.txt new file mode 100644 index 00000000..ca2fe3aa --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/README.txt @@ -0,0 +1,39 @@ +--------------------------------------------------------------------------------- +-- +-- Arcade version of Astrocade for MiSTer - Mike Coates +-- +-- V 1.0 15/06/2020 - Mike Coates +--------------------------------------------------------------------------------- +-- Support screen and controls rotation on HDMI output. +-- Only controls are rotated on VGA output. +-- +-- MAME/IPAC/JPAC Style Keyboard inputs: +-- 5 : Coin 1 +-- 1 : Start 1 Player +-- 2 : Start 2 Players +-- R,F,D,G : Player 2 Movements +-- +-- UP,DOWN,LEFT,RIGHT arrows : Movements +-- +-- Joystick support. +-- +--------------------------------------------------------------------------------- + + *** Attention *** + +ROMs are not included. In order to use this arcade, you need to provide the +correct ROMs. + +To simplify the process .mra files are provided in the releases folder, that +specifies the required ROMs with checksums. The ROMs .zip filename refers to the +corresponding file of the M.A.M.E. project. + +Please refer to https://github.com/MiSTer-devel/Main_MiSTer/wiki/Arcade-Roms for +information on how to setup and use the environment. + +Quickreference for folders and file placement: + +/_Arcade/.mra +/_Arcade/cores/.rbf +/_Arcade/mame/.zip +/_Arcade/hbmame/.zip diff --git a/Arcade_MiST/Taito Crazy Balloon/clean.bat b/Arcade_MiST/Taito Crazy Balloon/clean.bat new file mode 100644 index 00000000..5d639a0a --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/clean.bat @@ -0,0 +1,38 @@ +@echo off +del /s *.bak +del /s *.orig +del /s *.rej +del /s *~ +rmdir /s /q db +rmdir /s /q incremental_db +rmdir /s /q output_files +rmdir /s /q simulation +rmdir /s /q greybox_tmp +rmdir /s /q hc_output +rmdir /s /q .qsys_edit +rmdir /s /q hps_isw_handoff +rmdir /s /q sys\.qsys_edit +rmdir /s /q sys\vip +cd sys +for /d %%i in (*_sim) do rmdir /s /q "%%~nxi" +cd .. +for /d %%i in (*_sim) do rmdir /s /q "%%~nxi" +del /s build_id.v +del c5_pin_model_dump.txt +del PLLJ_PLLSPE_INFO.txt +del /s *.qws +del /s *.ppf +del /s *.ddb +del /s *.csv +del /s *.cmp +del /s *.sip +del /s *.spd +del /s *.bsf +del /s *.f +del /s *.sopcinfo +del /s *.xml +del /s new_rtl_netlist +del /s old_rtl_netlist +del /s PLLJ_PLLSPE_INFO.txt + +pause diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon.vhd new file mode 100644 index 00000000..6894ebde --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon.vhd @@ -0,0 +1,554 @@ +-- +-- A simulation of Crazy Balloon +-- +-- Mike Coates +-- +-- version 001 initial release +-- +library ieee; + use ieee.std_logic_1164.all; + use ieee.std_logic_unsigned.all; + use ieee.numeric_std.all; + +entity CRAZYBALLOON is +port +( + O_VIDEO_R : out std_logic_vector(1 downto 0); + O_VIDEO_G : out std_logic_vector(1 downto 0); + O_VIDEO_B : out std_logic_vector(1 downto 0); + O_HSYNC : out std_logic; + O_VSYNC : out std_logic; + O_HBLANK : out std_logic; + O_VBLANK : out std_logic; + I_H_OFFSET : in std_logic_vector(3 downto 0); + I_V_OFFSET : in std_logic_vector(3 downto 0); + -- + O_AUDIO : out std_logic_vector(15 downto 0); + -- + dipsw1 : in std_logic_vector(7 downto 0); + in0 : in std_logic_vector(7 downto 0); + in1 : in std_logic_vector(7 downto 0); + -- + dn_addr : in std_logic_vector(15 downto 0); + dn_data : in std_logic_vector(7 downto 0); + dn_wr : in std_logic; + dn_ld : in std_logic; + -- + RESET : in std_logic; + PIX_CLK : in std_logic; + CPU_CLK : in std_logic; + CLK : in std_logic +); +end; + +architecture RTL of CRAZYBALLOON is + -- timing + signal hcnt : std_logic_vector(8 downto 0) := "000000000"; + signal vcnt : std_logic_vector(8 downto 0) := "000000000"; + signal hsync : std_logic; + signal vsync : std_logic; + signal hblank : std_logic; + signal vblank : std_logic := '1'; + signal do_hsync : boolean; + signal set_vblank : boolean; + + signal hsync_start : std_logic_vector(8 downto 0); + signal hsync_end : std_logic_vector(8 downto 0); + signal vsync_start : std_logic_vector(8 downto 0); + signal vsync_end : std_logic_vector(8 downto 0); + + -- cpu + signal cpu_m1_l : std_logic; + signal cpu_mreq_l : std_logic; + signal cpu_iorq_l : std_logic; + signal cpu_rd_l : std_logic; + signal cpu_wr_l : std_logic; + signal cpu_rfsh_l : std_logic; + signal cpu_int_l : std_logic; + signal cpu_addr : std_logic_vector(15 downto 0); + signal cpu_data_out : std_logic_vector(7 downto 0); + signal cpu_data_in : std_logic_vector(7 downto 0) := "00000000"; + + -- Memory mapping + signal rom_rd : std_logic := '0'; + signal ram_rd : std_logic := '0'; + signal vid_rd : std_logic := '0'; + signal col_rd : std_logic := '0'; + + signal ram_wr : std_logic := '0'; + signal vid_wr : std_logic := '0'; + signal col_wr : std_logic := '0'; + + signal IO_rd : std_logic := '0'; + signal IO_wr : std_logic := '0'; + + signal rom_data : std_logic_vector(7 downto 0); + signal ram_data : std_logic_vector(7 downto 0); + signal vid_data : std_logic_vector(7 downto 0); + signal col_data : std_logic_vector(3 downto 0); + signal IO_Data : std_logic_vector(7 downto 0); + + signal IO_6 : std_logic := '0'; + signal IO_8 : std_logic := '0'; + signal IO_A : std_logic := '0'; + + signal Interrupt_EN : std_logic := '0'; + signal Global_Reset : std_logic; + + -- watchdog + signal watchdog_cnt : std_logic_vector(8 downto 0); + signal watchdog_clear : std_logic; + signal watchdog_reset_l : std_logic; + + -- Video + signal vid_addr : std_logic_vector(9 downto 0); + signal v_char_data : std_logic_vector(7 downto 0); + signal v_colour_data : std_logic_vector(3 downto 0); + signal Sprite_Collision : std_logic_vector(11 downto 0); + signal ClearCollision : std_logic := '0'; + signal Sprite_H : std_logic_vector(7 downto 0) := x"00"; + signal Sprite_V : std_logic_vector(7 downto 0) := x"00"; + signal Sprite_C : std_logic_vector(3 downto 0); + signal Sprite_I : std_logic_vector(3 downto 0); + signal Screen_Flip : std_logic := '0'; + + -- Sound + signal SFX : std_logic_vector(15 downto 0); + signal Tone : std_logic_vector(7 downto 0) := x"00"; + signal Music_EN : std_logic := '0'; + signal Sound_EN : std_logic := '0'; + signal Laugh_EN : std_logic := '0'; + signal Explode_EN : std_logic := '0'; + signal Breath_EN : std_logic := '0'; + signal Appear_EN : std_logic := '0'; + +begin + + O_HBLANK <= hblank; + O_VBLANK <= vblank; + + Global_Reset <= watchdog_reset_l and (not reset); + + -- + -- video timing + -- + + sync_stop : process(RESET,I_H_OFFSET,I_V_OFFSET) + begin + -- work out locations for sync pulses + hsync_start <= std_logic_vector(to_unsigned(208 + to_integer(signed(I_H_OFFSET)),9)); + hsync_end <= std_logic_vector(to_unsigned(222 + to_integer(signed(I_H_OFFSET)),9)); + vsync_start <= std_logic_vector(to_unsigned(260 + to_integer(signed(I_V_OFFSET)),9)); + vsync_end <= std_logic_vector(to_unsigned(263 + to_integer(signed(I_V_OFFSET)),9)); + end process; + + p_hvcnt : process + variable hcarry,vcarry : boolean; + begin + wait until rising_edge(CLK); + if (PIX_CLK = '1') then + hcarry := (hcnt = "111111111"); + if hcarry then + hcnt <= "011000000"; -- 0C0 + else + hcnt <= hcnt +"1"; + end if; + + vcarry := (vcnt = "111111111"); + if do_hsync then + if vcarry then + vcnt <= "011111000"; -- 0F8 + else + vcnt <= vcnt +"1"; + end if; + end if; + end if; + end process; + + p_sync_comb : process(hcnt, vcnt) + begin + do_hsync <= (hcnt = hsync_start); + set_vblank <= (vcnt = "111111111"); -- 1FF + end process; + + p_sync : process + begin + wait until rising_edge(CLK); + -- Timing hardware is coded differently to the real hw + -- Result is identical. + if (PIX_CLK = '1') then + if (hcnt = "011000001") then -- 0C1 + hblank <= '1'; + elsif (hcnt = "011111111") then -- 0FF + hblank <= '0'; + end if; + + if do_hsync then + hsync <= '1'; + elsif (hcnt = hsync_end) then + hsync <= '0'; + end if; + + if do_hsync then + if set_vblank then -- 1EF + vblank <= '1'; + elsif (vcnt = "100011111") then -- 11F + vblank <= '0'; + end if; + + if (vcnt = vsync_start) then + vsync <= '0'; + elsif (vcnt = vsync_end) then + vsync <= '1'; + end if; + end if; + end if; + end process; + + p_video_timing_reg : process + begin + wait until rising_edge(CLK); + -- match output delay in video module + if (PIX_CLK = '1') then + O_HSYNC <= hsync; + O_VSYNC <= vsync; + end if; + end process; + + p_cpu_int : process + begin + wait until rising_edge(CLK); + + if (Interrupt_EN = '0') then + cpu_int_l <= '1'; + else + if do_hsync and set_vblank then + cpu_int_l <= '0'; + end if; + end if; + + -- watchdog + if watchdog_clear='1' or reset='1' then + watchdog_cnt <= "000000000"; + elsif do_hsync and set_vblank then + watchdog_cnt <= watchdog_cnt + "1"; + end if; + + watchdog_reset_l <= '1'; + if (watchdog_cnt = "111111111") then + watchdog_reset_l <= '0'; + end if; + end process; + +-- +-- cpu +-- + cpu : entity work.T80as + port map ( + RESET_n => Global_Reset, + CLK_n => CPU_CLK, + WAIT_n => '1', + INT_n => cpu_int_l, + NMI_n => '1', + BUSRQ_n => '1', + MREQ_n => cpu_mreq_l, + RD_n => cpu_rd_l, + WR_n => cpu_wr_l, + RFSH_n => cpu_rfsh_l, + A => cpu_addr, + DI => cpu_data_in, + DO => cpu_data_out, + M1_n => cpu_m1_l, + IORQ_n => cpu_iorq_l, + HALT_n => open, + BUSAK_n => open, + DOE => open + ); + +-- +-- address decode +-- +-- rom 0000-3FFF +-- program ram 4000-43FF +-- video ram 4800-4Bff +-- colour ram 5000-53FF +-- IO 00- FF + +p_mem_decode : process(cpu_addr,cpu_iorq_l,cpu_rd_l,cpu_wr_l,cpu_mreq_l,cpu_m1_l,cpu_rfsh_l) +variable address : natural range 0 to 2**15 - 1; +begin + rom_rd <= '0'; + ram_rd <= '0'; + vid_rd <= '0'; + col_rd <= '0'; + io_rd <= '0'; + + ram_wr <= '0'; + vid_wr <= '0'; + col_wr <= '0'; + io_wr <= '0'; + + address := to_integer(unsigned(cpu_addr)); + + -- Ram/Rom read or write + if cpu_mreq_l='0' and cpu_rfsh_l = '1' then + if cpu_rd_l='0' then + case address is + when 16#0000# to 16#3FFF# => rom_rd <= '1'; + when 16#4000# to 16#43FF# => ram_rd <= '1'; + when 16#4800# to 16#4BFF# => vid_rd <= '1'; + when 16#5000# to 16#53FF# => col_rd <= '1'; + when others => null; + end case; + elsif cpu_wr_l='0' then + case address is + when 16#4000# to 16#43FF# => ram_wr <= '1'; + when 16#4800# to 16#4BFF# => vid_wr <= '1'; + when 16#5000# to 16#53FF# => col_wr <= '1'; + when others => null; + end case; + end if; + elsif cpu_iorq_l='0' then + if cpu_addr(7 downto 4)="0000" and cpu_m1_l='1' then + io_rd <= not cpu_rd_l; + io_wr <= not cpu_wr_l; + end if; + end if; + +end process; + + -- Mux back to CPU + p_cpu_src_data_mux : process(IO_Data,rom_data,ram_data,vid_data,col_data,io_rd,rom_rd,ram_rd,vid_rd,col_rd) + begin + if io_rd = '1' then + cpu_data_in <= IO_Data; + elsif rom_rd = '1' then + cpu_data_in <= rom_data; + elsif ram_rd = '1' then + cpu_data_in <= ram_data; + elsif vid_rd = '1' then + cpu_data_in <= vid_data; + elsif col_rd = '1' then + cpu_data_in <= "0000" & col_data; + else + cpu_data_in <= x"FF"; + end if; + end process; + + -- rom : 0000-3FFF +program_rom : entity work.prog + port map ( + clk => clk, + addr => cpu_addr(13 downto 0), + data => rom_data +); + + -- ram : 4000-43FF +program_ram : entity work.spram + generic map ( + addr_width => 10 + ) + port map ( + q => ram_data, + data => cpu_data_out, + address => cpu_addr(9 downto 0), + wren => ram_wr, + clock => clk +); + + + + -- character ram : 4800-4BFF + video_ram : entity work.dpram + generic map ( + addr_width => 10 + ) + port map ( + q_a => vid_data, + data_a => cpu_data_out, + address_a => cpu_addr(9 downto 0), + wren_a => vid_wr, + enable_a => vid_wr or vid_rd, + clock => clk, + + address_b => vid_addr(9 downto 0), + q_b => v_char_data + ); + + -- colour ram : 5000-53FF + colour_ram : entity work.dpram + generic map ( + addr_width => 10, + data_width => 4 + ) + port map ( + q_a => col_data, + data_a => cpu_data_out(3 downto 0), + address_a => cpu_addr(9 downto 0), + wren_a => col_wr, + enable_a => col_wr or col_rd, + clock => clk, + + address_b => vid_addr(9 downto 0), + q_b => v_colour_data + ); + +--- +--- IO +--- + +-- Register Write +IO_Write : Process (CPU_CLK) +begin + if rising_edge(CPU_CLK) then + watchdog_clear <= '0'; + -- Reset if collision position has been cleared + if ClearCollision='1' and Sprite_Collision=x"000" then + ClearCollision <= '0'; + end if; + + if Global_Reset='0' then + Interrupt_EN <= '0'; + Sound_EN <= '0'; + Music_EN <= '0'; + Explode_EN <= '0'; + Breath_EN <= '0'; + Appear_EN <= '0'; + Laugh_EN <= '0'; + IO_6 <= '0'; + Screen_Flip <= '0'; + IO_8 <= '0'; + IO_A <= '0'; + ClearCollision <= '1'; + Sprite_V <= x"FF"; + Sprite_H <= x"FF"; + end if; + + if io_wr='1' then + case cpu_addr(3 downto 0) is + when x"1" => + watchdog_clear <= '1'; + when x"2" => + Sprite_C <= not cpu_data_out(7 downto 4); + Sprite_I <= cpu_data_out(3 downto 0); + when x"3" => + Sprite_H <= not cpu_data_out; + when x"4" => + Sprite_V <= not cpu_data_out; + when x"5" => + Tone <= cpu_data_out; + when x"6" => + Interrupt_EN <= cpu_data_out(0); + Sound_EN <= cpu_data_out(1); + Music_EN <= cpu_data_out(2); + Explode_EN <= cpu_data_out(3); + Breath_EN <= cpu_data_out(4); + Appear_EN <= cpu_data_out(5); + Laugh_EN <= cpu_data_out(6); + IO_6 <= cpu_data_out(7); + if cpu_data_out(0)='1' then + ClearCollision <= '1'; + end if; + when x"8" => + Screen_Flip <= cpu_data_out(0); + IO_8 <= cpu_data_out(1); + when x"a" => + IO_A <= cpu_data_out(0); + when others => null; + end case; + end if; + end if; +end process; + +-- register read +IO_Read : Process (CPU_CLK) +begin + if rising_edge(CPU_CLK) then + if IO_rd = '1' then + case cpu_addr(1 downto 0) is + when "00" => + IO_Data <= dipsw1; + when "01" => + IO_Data <= in0; + when "10" => + case cpu_addr(3 downto 2) is + when "00" => IO_Data <= x"F" & Sprite_Collision(3 downto 0); + when "01" => IO_Data <= x"F" & Sprite_Collision(7 downto 4); + when "10" => IO_Data <= x"F" & Sprite_Collision(11 downto 8); + when "11" => if Sprite_Collision = x"000" then + IO_Data <= x"F7"; + else + IO_Data <= x"F8"; + end if; + when others => null; + end case; + when "11" => + if IO_8='1' then + IO_Data <= in1; + else + IO_Data <= "0000" & in1(3 downto 0); + end if; + when others => + IO_Data <= x"FF"; + end case; + end if; + end if; +end process; + +-- +-- video subsystem +-- +video : work.CRAZYBALLOON_VIDEO +port map ( + I_HCNT => hcnt, + I_VCNT => vcnt, + -- + I_FLIP => Screen_Flip, + I_CHAR => v_char_data, + I_COL => v_colour_data, + I_CLEAR => ClearCollision, + O_COLLIDE => Sprite_Collision, + O_VADDR => vid_addr, + -- + I_SPRITE_H => Sprite_H, + I_SPRITE_V => Sprite_V, + I_SPRITE_C => Sprite_C, + I_SPRITE_I => Sprite_I, + -- +-- dn_addr => dn_addr, +-- dn_data => dn_data, +-- dn_wr => dn_wr, +-- dn_ld => dn_ld, + -- + O_RED => O_VIDEO_R, + O_GREEN => O_VIDEO_G, + O_BLUE => O_VIDEO_B, + -- + PIX_CLK => PIX_CLK, + CLK => CLK +); + + +-- +-- audio subsystem +-- +audio : work.CRAZYBALLOON_AUDIO +port map ( + I_HCNT => hcnt(5), + -- + I_MUSIC_ON => Music_EN, + I_TONE => Tone, + I_LAUGH => Laugh_EN, + I_EXPLODE => Explode_EN, + I_BREATH => Breath_EN, + I_APPEAR => Appear_EN, + -- + I_RESET => Global_Reset, + -- + O_AUDIO => SFX, + CLK => clk +); + +O_AUDIO <= SFX when Sound_EN='1' else x"0000"; + +end RTL; diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_audio.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_audio.vhd new file mode 100644 index 00000000..6c37c01f --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_audio.vhd @@ -0,0 +1,282 @@ +-- +-- A simulation of Crazy Balloon +-- +-- Mike Coates +-- +-- version 001 initial release +-- +library ieee; + use ieee.std_logic_1164.all; + use ieee.std_logic_unsigned.all; + use ieee.numeric_std.all; + +entity CRAZYBALLOON_AUDIO is + port ( + I_HCNT : in std_logic; + -- + I_MUSIC_ON : in std_logic; + I_TONE : in std_logic_vector(7 downto 0); + I_LAUGH : in std_logic; + I_EXPLODE : in std_logic; + I_BREATH : in std_logic; + I_APPEAR : in std_logic; + -- + I_RESET : in std_logic; + -- + O_AUDIO : out std_logic_vector(15 downto 0); + CLK : in std_logic + ); +end; + +architecture RTL of CRAZYBALLOON_AUDIO is + + -- global + signal AUDIO_CLK : std_logic := '0'; + signal LAUGH_OUT : std_logic_vector(7 downto 0) := (others => '0'); + signal WAVE_CLK : std_logic := '0'; + -- Music -- + signal W_2CD_LDn : std_logic := '0'; + signal W_2CD_Q : std_logic_vector(7 downto 0) := (others => '0'); + signal W_4E_Q : std_logic_vector(2 downto 0) := (others => '0'); + signal W_SDAT1 : std_logic_vector(7 downto 0) := (others => '0'); + signal W_SDAT2 : std_logic_vector(7 downto 0) := (others => '0'); + signal MUSIC_OUT : std_logic_vector(7 downto 0) := (others => '0'); + -- Laugh + signal L_COUNT : natural range 150 to 810 := 150; + signal L_STOP : natural range 150 to 810 := 150; + signal W_4J_L_OUT : std_logic := '0'; + signal R_COUNT : natural range 0 to 480 := 0; + signal W_4J_R_OUT : std_logic := '0'; + -- SN74677 (Samples) +-- signal SAMPLE_OUT : std_logic_vector(15 downto 0) := (others => '0'); +-- signal SAMPLE_DATA : std_logic_vector(15 downto 0) := (others => '0'); + signal SAMPLE_OUT : std_logic_vector(7 downto 0) := (others => '0'); + signal SAMPLE_DATA : std_logic_vector(7 downto 0) := (others => '0'); +-- signal SAMPLE_ADDR : std_logic_vector(15 downto 0) := (others => '1'); + signal SAMPLE_ADDR : std_logic_vector(13 downto 0) := (others => '1'); + signal SAMPLE_END : std_logic_vector(13 downto 0) := (others => '0'); + signal SAMPLE_PLAY : std_logic := '0'; + +begin + -- + -- Generate work clock for audio (48Khz) + -- + AudioClock : work.NE555V + generic map( + freq_in => 9987000, + freq_out => 48000.0 + ) + port map( + reset => '1', + clk_in => CLK, + clk_out => AUDIO_CLK + ); + + -- + -- Output final wave at this speed + -- + WaveClock : work.NE555V + generic map( + freq_in => 9987000, + freq_out => 22050.0 + ) + port map( + reset => '1', + clk_in => CLK, + clk_out => WAVE_CLK + ); + + -- + -- Music circuit (74LS273, 2 x 74LS161 & 74LS93) + -- similar to one in galaxian, different divider chip + -- + + process (CLK) + begin + if rising_edge(CLK) then + if (W_2CD_Q = x"ff") then + W_2CD_LDn <= '0' ; + else + W_2CD_LDn <= '1' ; + end if; + end if; + end process; + + process (I_HCNT) + begin + if rising_edge(I_HCNT) then + if (W_2CD_LDn = '0') then + W_2CD_Q <= I_TONE; + else + W_2CD_Q <= W_2CD_Q + 1; + end if; + end if; + end process; + + process (W_2CD_LDn) + begin + if falling_edge(W_2CD_LDn) then + W_4E_Q <= W_4E_Q + 1; + end if; + end process; + + process (AUDIO_CLK) + begin + if rising_edge(AUDIO_CLK) then + if I_MUSIC_ON='1' then + MUSIC_OUT <= (W_SDAT1 + W_SDAT2); + else + MUSIC_OUT <= (others => '0'); + end if; + + if W_4E_Q(1)='1' then + W_SDAT1 <= x"2a"; + else + W_SDAT1 <= (others => '0'); + end if; + + if W_4E_Q(2)='1' then + W_SDAT2 <= x"69"; + else + W_SDAT2 <= (others => '0'); + end if; + + end if; + end process; + + -- + -- Laugh circuit ( 2 x NE555V, first feeds reverse clipped sawtooth to second to act as VCO from about 80Hz to 320hz) + -- + -- left feeds 6.8hz square wave to 10uF cap and uses 100k resistor to discharge, high retains charge, drops to 0v when low. (over .01 second) + -- we use counter to feed delay count to second NE555 to control frequency + -- + -- original freq is 6.8hz, we want the count to loop that many times a second, so 4488Hz instead (660 count x 6.8 times a second) + -- + + left4J : work.NE555V + generic map( + freq_out => 4488.0 + ) + port map( + reset => '1', + clk_in => AUDIO_CLK, + clk_out => W_4J_L_OUT + ); + + process (W_4J_L_OUT) + begin + if rising_edge(W_4J_L_OUT) then + if L_COUNT = 150 then + L_COUNT <= 810; + else + L_COUNT <= L_COUNT - 1; + end if; + end if; + end process; + + -- feed this second NE555 (change the count, change the frequency) + process (WAVE_CLK) + begin + if rising_edge(WAVE_CLK) then + if I_LAUGH='0' then -- I_LAUGH connected to reset + R_COUNT <= 0; + W_4J_R_OUT <= '0'; + elsif R_COUNT = L_STOP then + R_COUNT <= 0; + if L_COUNT > 480 then -- Update stop point for next pass + L_STOP <= 480; + else + L_STOP <= L_COUNT; + end if; + W_4J_R_OUT <= not W_4J_R_OUT; + else + R_COUNT <= R_COUNT + 1; + end if; + end if; + end process; + + process (WAVE_CLK) + begin + if rising_edge(WAVE_CLK) then + -- 4J right feeds to audio output + if W_4J_R_OUT='1' then + LAUGH_OUT <= x"99"; + else + LAUGH_OUT <= (others => '0'); + end if; + end if; + end process; + + -- SN74677 (done using samples from my cab) + + -- 1 - Appear.wav 1 22050 0000-32A6 + -- 2 - Breath.wav 1 22050 32A7-7340 + -- 3 - Explode.wav 1 22050 7341-893E + +-- SN74677_data : work.SAMPLE +-- port map( +-- clk => WAVE_CLK, +-- addr => SAMPLE_ADDR, +-- data => SAMPLE_DATA +-- ); + +SN74677_data : work.sfx3 +port map( + clk => WAVE_CLK, + addr => SAMPLE_ADDR, + data => SAMPLE_DATA +); + + -- Sample trigger and output + process (WAVE_CLK) + begin + if rising_edge(WAVE_CLK) then + if I_RESET='0' then + SAMPLE_PLAY <= '0'; + else + if SAMPLE_PLAY='0' then + -- select sample to play (order of priority, it sometimes overlaps them, but only one plays) +-- if I_BREATH='1' then +-- SAMPLE_PLAY <= '1'; +-- SAMPLE_ADDR <= x"32A7"; +-- SAMPLE_END <= x"7340"; +-- elsif I_APPEAR='1' then +-- SAMPLE_PLAY <= '1'; +-- SAMPLE_ADDR <= x"0000"; +-- SAMPLE_END <= x"32A6"; +-- elsif I_EXPLODE='1' then + if I_EXPLODE='1' then + SAMPLE_PLAY <= '1'; + SAMPLE_ADDR <= "00000000000000"; + SAMPLE_END <= "11001100000101"; +-- SAMPLE_ADDR <= x"7341"; +-- SAMPLE_END <= x"893E"; + end if; + SAMPLE_OUT <= (others => '0'); + else + SAMPLE_OUT <= SAMPLE_DATA; + + if SAMPLE_ADDR=SAMPLE_END then + SAMPLE_PLAY <= '0'; + else + SAMPLE_ADDR <= SAMPLE_ADDR + '1'; + end if; + end if; + end if; + end if; + end process; + + -- Audio Output - max 2 at once, so just add them together + process (WAVE_CLK,MUSIC_OUT,LAUGH_OUT,SAMPLE_OUT) + variable Music, Laugh, Sample : integer; + begin + if rising_edge(WAVE_CLK) then + Music := to_integer(unsigned(MUSIC_OUT & "0000000")); + Laugh := to_integer(unsigned(LAUGH_OUT & "0000000")); + Sample := to_integer(signed(SAMPLE_OUT & SAMPLE_OUT)); + + O_AUDIO <= std_logic_vector(to_signed(Music + Laugh + Sample,16)); + end if; + end process; + +end architecture RTL; diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_mist.sv b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_mist.sv new file mode 100644 index 00000000..4420ca5e --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_mist.sv @@ -0,0 +1,176 @@ +module CrazyBalloon_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 +); + +`include "rtl\build_id.v" + +localparam CONF_STR = { + "CBalloon;;", + "O2,Rotate Controls,On,Off;", + "O34,Scanlines,Off,25%,50%,75%;", + "O5,Blend,Off,On;", + "O6,Ram Test,On,Off;", + "OOR,CRT H adjust,0,+1,+2,+3,+4,+5,+6,+7,-8,-7,-6,-5,-4,-3,-2,-1;", + "OSV,CRT V adjust,0,+1,+2,+3,+4,+5,+6,+7,-8,-7,-6,-5,-4,-3,-2,-1;", + "T0,Reset;", + "V,v1.21.",`BUILD_DATE +}; + +// +// +// +// + +wire rotate = status[2]; +wire [1:0] scanlines = status[4:3]; +wire blend = status[5]; + +assign LED = 1; +assign AUDIO_R = AUDIO_L; + +wire clk_vid, clk_sys; +reg [1:0] clk_div = 2'd0; +wire cpu_clk = clk_div[1]; // 2.49675 Mhz +wire pix_clk = clk_div[0]; // 4.9935 Mhz +pll pll( + .inclk0(CLOCK_27), + .c0(clk_vid),// 39.948 Mhz + .c1(clk_sys)// 9.987 Mhz + ); + +// Divider for other clocks (7474 and 74161 on PCB) +always @(posedge clk_sys) begin + clk_div <= clk_div + 1; +end + +wire [31:0] status; +wire [1:0] buttons; +wire [1:0] switches; +wire [7:0] joystick_0; +wire [7:0] joystick_1; +wire scandoublerD; +wire ypbpr; +wire key_pressed; +wire [7:0] key_code; +wire key_strobe; +wire [15:0] audio; +wire hs, vs; +wire hb, vb; +wire blankn = ~(hb | vb); +wire [1:0] r, g, b; +wire [ 3:0] hoffset, voffset; +assign { voffset, hoffset } = status[31:24]; +wire [7:0] sw = {3'b111,1'b0,1'b0,1'b0,1'b1,status[6]}; + +CRAZYBALLOON CRAZYBALLOON( + .O_VIDEO_R(r), + .O_VIDEO_G(g), + .O_VIDEO_B(b), + .O_HSYNC(hs), + .O_VSYNC(vs), + .O_HBLANK(hb), + .O_VBLANK(vb), + .I_H_OFFSET(hoffset), + .I_V_OFFSET(voffset), + .O_AUDIO(audio), + .dipsw1(sw), + .in0({~m_right2,~m_left2,~m_down2,~m_up2,~m_right,~m_left,~m_down,~m_up}), + .in1({1'b0,m_coin1,~m_two_players,~m_one_player,1'b1,1'b1,1'b1,1'b1}), + .dn_addr(), + .dn_data(), + .dn_wr(), + .dn_ld(), + .RESET(status[0] | buttons[1]), + .PIX_CLK(pix_clk), + .CPU_CLK(cpu_clk), + .CLK(clk_sys) +); + +mist_video #(.COLOR_DEPTH(2), .SD_HCNT_WIDTH(10)) mist_video( + .clk_sys(clk_vid), + .SPI_SCK(SPI_SCK), + .SPI_SS3(SPI_SS3), + .SPI_DI(SPI_DI), + .R(blankn ? r : 0), + .G(blankn ? g : 0), + .B(blankn ? b : 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), + .rotate({1'b0,rotate}), + .blend(blend), + .scanlines(scanlines), + .scandoubler_disable(scandoublerD), + .ypbpr(ypbpr) + ); + +user_io #( + .STRLEN(($size(CONF_STR)>>3))) +user_io( + .clk_sys (clk_vid ), + .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 ), + .key_strobe (key_strobe ), + .key_pressed (key_pressed ), + .key_code (key_code ), + .joystick_0 (joystick_0 ), + .joystick_1 (joystick_1 ), + .status (status ) + ); + +dac #( + .C_bits(16)) +dac( + .clk_i(clk_vid), + .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_vid ), + .key_strobe ( key_strobe ), + .key_pressed ( key_pressed ), + .key_code ( key_code ), + .joystick_0 ( joystick_0 ), + .joystick_1 ( joystick_1 ), + .rotate ( rotate ), + .orientation ( 2'b10 ), + .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/Taito Crazy Balloon/rtl/CrazyBalloon_video.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_video.vhd new file mode 100644 index 00000000..ac6016fc --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/CrazyBalloon_video.vhd @@ -0,0 +1,222 @@ +-- +-- A simulation of Crazy Balloon +-- +-- Mike Coates +-- +-- version 001 initial release +-- +library ieee; + use ieee.std_logic_1164.all; + use ieee.std_logic_unsigned.all; + use ieee.numeric_std.all; + +entity CRAZYBALLOON_VIDEO is +port ( + I_HCNT : in std_logic_vector(8 downto 0); + I_VCNT : in std_logic_vector(8 downto 0); + I_CHAR : in std_logic_vector(7 downto 0); + I_COL : in std_logic_vector(3 downto 0); + I_CLEAR : in std_logic; + I_FLIP : in std_logic; + O_COLLIDE : out std_logic_vector(11 downto 0); + O_VADDR : out std_logic_vector(9 downto 0); + -- + I_SPRITE_H : in std_logic_vector(7 downto 0); + I_SPRITE_V : in std_logic_vector(7 downto 0); + I_SPRITE_C : in std_logic_vector(3 downto 0); + I_SPRITE_I : in std_logic_vector(3 downto 0); + -- +-- dn_addr : in std_logic_vector(15 downto 0); +-- dn_data : in std_logic_vector(7 downto 0); +-- dn_wr : in std_logic; +-- dn_ld : in std_logic; + -- + O_RED : out std_logic_vector(1 downto 0); + O_GREEN : out std_logic_vector(1 downto 0); + O_BLUE : out std_logic_vector(1 downto 0); + PIX_CLK : in std_logic; + CLK : in std_logic +); +end; + +architecture RTL of CRAZYBALLOON_VIDEO is + +signal char_cs : std_logic; +signal sprite_cs : std_logic; +signal char_pix : std_logic_vector(7 downto 0); +signal char_pix_n : std_logic_vector(7 downto 0); +signal char_pix_l : std_logic_vector(7 downto 0); +signal sprite_pix : std_logic_vector(7 downto 0); +signal char_addr : std_logic_vector(10 downto 0); +signal sprite_addr : std_logic_vector(10 downto 0); +signal char_ad : std_logic_vector(10 downto 0); +signal sprite_ad : std_logic_vector(10 downto 0); + +--signal load : std_logic; +signal charcolour : std_logic_vector(3 downto 0); +signal back_red : std_logic_vector(1 downto 0); +signal back_green : std_logic_vector(1 downto 0); +signal back_blue : std_logic_vector(1 downto 0); +signal sprite_red : std_logic_vector(1 downto 0); +signal sprite_green : std_logic_vector(1 downto 0); +signal sprite_blue : std_logic_vector(1 downto 0); +signal sprite_pixel : std_logic := '0'; + +begin + +char_rom : entity work.gfx1 +port map( + clk => clk, + addr => char_addr, + data => char_pix +); + +sprite_rom : entity work.gfx2 +port map( + clk => clk, + addr => sprite_addr, + data => sprite_pix +); + +vid_address : process +variable HADD, VADD : std_logic_vector(8 downto 0); +begin + wait until rising_edge(PIX_CLK); + + if ((I_HCNT(8)='1' and I_VCNT(8)='1' and I_HCNT(2 downto 0)="101") or (I_HCNT="011111101")) then + -- set address for character ram and colour ram + HADD := I_HCNT + 3; -- we want data for next character + + -- need to allow for screen flip! + if I_FLIP='0' then + O_VADDR <= I_VCNT(7 downto 3) & HADD(7 downto 3); -- character = ((v/8) * 32) + ((h+3)/8) (H = 0 to 31, V = 0,32,64 etc) + else + -- first 4 characters are blank, so when inverted, we still want first 4 to be blank, so move reference point! + VADD := I_VCNT - 32; + O_VADDR <= not (VADD(7 downto 3) & HADD(7 downto 3)); -- inverted draw from bottom up + end if; + end if; + + if ((I_HCNT(8)='1' and I_VCNT(8)='1' and I_HCNT(2 downto 0)="110") or (I_HCNT="011111110")) then + -- get character number and set address of character row in char-rom (based on character number and vertical line number of character 0-7) + if I_FLIP='0' then + char_addr <= I_CHAR(7 downto 0) & I_VCNT(2 downto 0); -- combine character * 8 + lower 3 bits of vertical to get char image data + else + char_addr <= I_CHAR(7 downto 0) & not(I_VCNT(2 downto 0)); -- combine character * 8 + inverted lower 3 bits of vertical + end if; + end if; + + if ((I_HCNT(8)='1' and I_VCNT(8)='1' and I_HCNT(2 downto 0)="111") or (I_HCNT="011111111")) then + -- get character data ** need to allow for screen flip! ** + charcolour <= not I_COL; + if I_FLIP='0' then + char_pix_n <= char_pix; + else + char_pix_n <= char_pix(0) & char_pix(1) & char_pix(2) & char_pix(3) & char_pix(4) & char_pix(5) & char_pix(6) & char_pix(7); + end if; + end if; + +end process; + +backround_draw : process +variable pixel : std_logic; +begin + wait until rising_edge(PIX_CLK); + + -- Clear collision position + if I_CLEAR='1' then + O_COLLIDE <= x"000"; + end if; + + -- if in visible area + if I_HCNT(8)='1' and I_VCNT(8)='1' and I_VCNT(7 downto 4) /= "0000" then -- skip rows one side + case I_HCNT(2 downto 0) is + when "000" => pixel := char_pix_n(0); + char_pix_l <= char_pix_n; + when "001" => pixel := char_pix_l(1); + when "010" => pixel := char_pix_l(2); + when "011" => pixel := char_pix_l(3); + when "100" => pixel := char_pix_l(4); + when "101" => pixel := char_pix_l(5); + when "110" => pixel := char_pix_l(6); + when "111" => pixel := char_pix_l(7); + end case; + + if pixel='1' then + O_BLUE <= (charcolour(3) and charcolour(2)) & charcolour(2); + O_GREEN <= (charcolour(3) and charcolour(1)) & charcolour(1); + O_RED <= (charcolour(3) and charcolour(0)) & charcolour(0); + else + -- No background, show sprite + O_BLUE <= sprite_blue; + O_GREEN <= sprite_green; + O_RED <= sprite_red; + end if; + + if pixel='1' and sprite_pixel='1' then + -- if sprite and background present we have collision + O_COLLIDE <= ("00" & I_VCNT(7 downto 3) & I_HCNT(7 downto 3)) + 1; + end if; + else + O_BLUE <= "00"; + O_GREEN <= "00"; + O_RED <= "00"; + end if; + +end process; + +-- ditto for sprite drawing (sprite block, which could be any position H & V!) + +sprite_draw : process +variable V_OFF,H_OFF : integer; +variable pixel : std_logic; +begin + wait until rising_edge(PIX_CLK); + + -- sprite draws from position to position+31 in each direction + + V_OFF := to_integer(unsigned(I_VCNT(7 downto 0)) - unsigned(I_SPRITE_V)); + H_OFF := to_integer(unsigned(I_HCNT(7 downto 0)) - unsigned(I_SPRITE_H) + 33); -- offset by 32, but we want everything 1 pixel earlier + + if (V_OFF>=0 and V_OFF<=31) then + + case H_OFF is + + WHEN -1 => + -- Set sprite address to get sprite pixel data + sprite_addr <= I_SPRITE_I & "00" & std_logic_vector(to_unsigned(V_OFF, 5)); + pixel := '0'; + when 0 | 8 | 16 | 24 => pixel := sprite_pix(0); + when 1 | 9 | 17 | 25 => pixel := sprite_pix(1); + when 2 | 10 | 18 | 26 => pixel := sprite_pix(2); + when 3 | 11 | 19 | 27 => pixel := sprite_pix(3); + when 4 | 12 | 20 | 28 => pixel := sprite_pix(4); + when 5 | 13 | 21 | 29 => pixel := sprite_pix(5); + when 6 | 14 | 22 | 30 => pixel := sprite_pix(6); + when 7 | 15 | 23 => + pixel := sprite_pix(7); + -- get next byte + sprite_addr <= sprite_addr + 32; -- 1; + when 31 => pixel := sprite_pix(7); + when others => pixel := '0'; + end case; + + sprite_pixel <= pixel; + if pixel='1' then + sprite_blue <= (I_SPRITE_C(3) and I_SPRITE_C(2)) & I_SPRITE_C(2); + sprite_green <= (I_SPRITE_C(3) and I_SPRITE_C(1)) & I_SPRITE_C(1); + sprite_red <= (I_SPRITE_C(3) and I_SPRITE_C(0)) & I_SPRITE_C(0); + else + sprite_blue <= "00"; + sprite_green <= "00"; + sprite_red <= "00"; + end if; + else + sprite_blue <= "00"; + sprite_green <= "00"; + sprite_red <= "00"; + end if; + +end process; + +end architecture; diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/bram.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/bram.vhd new file mode 100644 index 00000000..b62e06dc --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/bram.vhd @@ -0,0 +1,199 @@ +-------------------------------------------------------------- +-- Single port Block RAM +-------------------------------------------------------------- + +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.altera_mf_components.all; + +ENTITY spram IS + generic ( + addr_width : integer := 8; + data_width : integer := 8; + mem_init_file : string := " "; + mem_name : string := "MEM" -- for InSystem Memory content editor. + ); + PORT + ( + clock : in STD_LOGIC; + address : in STD_LOGIC_VECTOR (addr_width-1 DOWNTO 0); + data : in STD_LOGIC_VECTOR (data_width-1 DOWNTO 0) := (others => '0'); + enable : in STD_LOGIC := '1'; + wren : in STD_LOGIC := '0'; + q : out STD_LOGIC_VECTOR (data_width-1 DOWNTO 0); + cs : in std_logic := '1' + ); +END spram; + + +ARCHITECTURE SYN OF spram IS + signal q0 : std_logic_vector((data_width - 1) downto 0); + +BEGIN + q<= q0 when cs = '1' else (others => '1'); + + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "BYPASS", + clock_enable_output_a => "BYPASS", + intended_device_family => "Cyclone III", + lpm_hint => "ENABLE_RUNTIME_MOD=YES,INSTANCE_NAME="&mem_name, + lpm_type => "altsyncram", + numwords_a => 2**addr_width, + operation_mode => "SINGLE_PORT", + outdata_aclr_a => "NONE", + outdata_reg_a => "UNREGISTERED", + power_up_uninitialized => "FALSE", + read_during_write_mode_port_a => "NEW_DATA_NO_NBE_READ", + init_file => mem_init_file, + widthad_a => addr_width, + width_a => data_width, + width_byteena_a => 1 + ) + PORT MAP ( + address_a => address, + clock0 => clock, + data_a => data, + wren_a => wren and cs, + q_a => q0 + ); + +END SYN; + +-------------------------------------------------------------- +-- Dual port Block RAM same parameters on both ports +-------------------------------------------------------------- +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.altera_mf_components.all; + +entity dpram is + generic ( + addr_width : integer := 8; + data_width : integer := 8; + mem_init_file : string := " " + ); + PORT + ( + clock : in STD_LOGIC; + + address_a : in STD_LOGIC_VECTOR (addr_width-1 DOWNTO 0); + data_a : in STD_LOGIC_VECTOR (data_width-1 DOWNTO 0) := (others => '0'); + enable_a : in STD_LOGIC := '1'; + wren_a : in STD_LOGIC := '0'; + q_a : out STD_LOGIC_VECTOR (data_width-1 DOWNTO 0); + cs_a : in std_logic := '1'; + + address_b : in STD_LOGIC_VECTOR (addr_width-1 DOWNTO 0) := (others => '0'); + data_b : in STD_LOGIC_VECTOR (data_width-1 DOWNTO 0) := (others => '0'); + enable_b : in STD_LOGIC := '1'; + wren_b : in STD_LOGIC := '0'; + q_b : out STD_LOGIC_VECTOR (data_width-1 DOWNTO 0); + cs_b : in std_logic := '1' + ); +end entity; + + +ARCHITECTURE SYN OF dpram IS +BEGIN + ram : work.dpram_dif generic map(addr_width,data_width,addr_width,data_width,mem_init_file) + port map(clock,address_a,data_a,enable_a,wren_a,q_a,cs_a,address_b,data_b,enable_b,wren_b,q_b,cs_b); +END SYN; + +-------------------------------------------------------------- +-- Dual port Block RAM different parameters on ports +-------------------------------------------------------------- +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.altera_mf_components.all; + +entity dpram_dif is + generic ( + addr_width_a : integer := 8; + data_width_a : integer := 8; + addr_width_b : integer := 8; + data_width_b : integer := 8; + mem_init_file : string := " " + ); + PORT + ( + clock : in STD_LOGIC; + + address_a : in STD_LOGIC_VECTOR (addr_width_a-1 DOWNTO 0); + data_a : in STD_LOGIC_VECTOR (data_width_a-1 DOWNTO 0) := (others => '0'); + enable_a : in STD_LOGIC := '1'; + wren_a : in STD_LOGIC := '0'; + q_a : out STD_LOGIC_VECTOR (data_width_a-1 DOWNTO 0); + cs_a : in std_logic := '1'; + + address_b : in STD_LOGIC_VECTOR (addr_width_b-1 DOWNTO 0) := (others => '0'); + data_b : in STD_LOGIC_VECTOR (data_width_b-1 DOWNTO 0) := (others => '0'); + enable_b : in STD_LOGIC := '1'; + wren_b : in STD_LOGIC := '0'; + q_b : out STD_LOGIC_VECTOR (data_width_b-1 DOWNTO 0); + cs_b : in std_logic := '1' + ); +end entity; + + +ARCHITECTURE SYN OF dpram_dif IS + + signal q0 : std_logic_vector((data_width_a - 1) downto 0); + signal q1 : std_logic_vector((data_width_b - 1) downto 0); + +BEGIN + q_a<= q0 when cs_a = '1' else (others => '1'); + q_b<= q1 when cs_b = '1' else (others => '1'); + + altsyncram_component : altsyncram + GENERIC MAP ( + address_reg_b => "CLOCK1", + clock_enable_input_a => "NORMAL", + clock_enable_input_b => "NORMAL", + clock_enable_output_a => "BYPASS", + clock_enable_output_b => "BYPASS", + indata_reg_b => "CLOCK1", + intended_device_family => "Cyclone III", + lpm_type => "altsyncram", + numwords_a => 2**addr_width_a, + numwords_b => 2**addr_width_b, + operation_mode => "BIDIR_DUAL_PORT", + outdata_aclr_a => "NONE", + outdata_aclr_b => "NONE", + outdata_reg_a => "UNREGISTERED", + outdata_reg_b => "UNREGISTERED", + power_up_uninitialized => "FALSE", + read_during_write_mode_port_a => "NEW_DATA_NO_NBE_READ", + read_during_write_mode_port_b => "NEW_DATA_NO_NBE_READ", + init_file => mem_init_file, + widthad_a => addr_width_a, + widthad_b => addr_width_b, + width_a => data_width_a, + width_b => data_width_b, + width_byteena_a => 1, + width_byteena_b => 1, + wrcontrol_wraddress_reg_b => "CLOCK1" + ) + PORT MAP ( + address_a => address_a, + address_b => address_b, + clock0 => clock, + clock1 => clock, + clocken0 => enable_a, + clocken1 => enable_b, + data_a => data_a, + data_b => data_b, + wren_a => wren_a and cs_a, + wren_b => wren_b and cs_b, + q_a => q0, + q_b => q1 + ); + +END SYN; + diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/build_id.tcl b/Arcade_MiST/Taito Crazy Balloon/rtl/build_id.tcl new file mode 100644 index 00000000..938515d8 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/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/Taito Crazy Balloon/rtl/ne555v.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/ne555v.vhd new file mode 100644 index 00000000..ec899007 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/ne555v.vhd @@ -0,0 +1,54 @@ +-- +-- NE555V implementation as frequency generator +-- +-- basically a real easy way to get one clock from another! +-- +-- Mike Coates +-- + +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + + +entity NE555V is + generic ( + freq_in : integer := 48000; + freq_out : real := 4000.0; + duty : integer := 50 + ); + port ( + reset : in std_logic; -- reset controller + clk_in : in std_logic; -- input frequency + clk_out : out std_logic -- output frequency + ); +end; + + +architecture behavior of NE555V is + + constant maxcount : integer := integer(real(freq_in)/freq_out) - 1; + constant cyclecount : integer := integer(real(maxcount) * ((100.0 - real(duty)) / 100.0)); + signal r_reg, r_next: natural; + +begin + + process(clk_in,reset) + begin + + if reset='0' then + r_reg <= 0; + elsif falling_edge(clk_in) then + r_reg <= r_next; + end if; + end process; + + + -- next state logic + r_next <= 0 when r_reg=maxcount else r_reg+1; + + -- clk_out setting + clk_out <= '0' when r_reg < cyclecount else '1'; + +end behavior; + diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/pll.v b/Arcade_MiST/Taito Crazy Balloon/rtl/pll.v new file mode 100644 index 00000000..b8f21df9 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/pll.v @@ -0,0 +1,337 @@ +// megafunction wizard: %ALTPLL% +// GENERATION: STANDARD +// VERSION: WM1.0 +// MODULE: altpll + +// ============================================================ +// File Name: pll.v +// Megafunction Name(s): +// altpll +// +// Simulation Library Files(s): +// altera_mf +// ============================================================ +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// +// 13.1.4 Build 182 03/12/2014 SJ Full Version +// ************************************************************ + + +//Copyright (C) 1991-2014 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 ( + 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 = 48, + altpll_component.clk0_duty_cycle = 50, + altpll_component.clk0_multiply_by = 71, + altpll_component.clk0_phase_shift = "0", + altpll_component.clk1_divide_by = 192, + altpll_component.clk1_duty_cycle = 50, + altpll_component.clk1_multiply_by = 71, + 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", + 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 "48" +// Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "192" +// Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" +// Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "39.937500" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "9.984375" +// 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 "ps" +// 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 "71" +// Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "71" +// Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" +// Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "39.94800000" +// Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "9.98700000" +// 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.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 "48" +// Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "71" +// Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" +// Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "192" +// Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "71" +// 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.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll.ppf TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL pll_bb.v FALSE +// Retrieval info: LIB_FILE: altera_mf +// Retrieval info: CBX_MODULE_PREFIX: ON diff --git a/Arcade_MiST/Taito Crazy Balloon/rtl/rom/gfx1.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/gfx1.vhd new file mode 100644 index 00000000..3369e114 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/gfx1.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity gfx1 is +port ( + clk : in std_logic; + addr : in std_logic_vector(10 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of gfx1 is + type rom is array(0 to 2047) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"00",X"7C",X"82",X"82",X"82",X"7C",X"00",X"00",X"00",X"00",X"42",X"FE",X"02",X"00",X"00",X"00", + X"00",X"46",X"8A",X"92",X"92",X"62",X"00",X"00",X"00",X"84",X"82",X"92",X"B2",X"CC",X"00",X"00", + X"00",X"18",X"28",X"48",X"FE",X"08",X"00",X"00",X"00",X"E4",X"A2",X"A2",X"A2",X"9C",X"00",X"00", + X"00",X"3C",X"52",X"92",X"92",X"8C",X"00",X"00",X"00",X"80",X"80",X"9E",X"A0",X"C0",X"00",X"00", + X"00",X"6C",X"92",X"92",X"92",X"6C",X"00",X"00",X"00",X"62",X"92",X"92",X"94",X"78",X"00",X"00", + X"00",X"7E",X"90",X"90",X"90",X"7E",X"00",X"00",X"00",X"FE",X"92",X"92",X"92",X"6C",X"00",X"00", + X"00",X"7C",X"82",X"82",X"82",X"44",X"00",X"00",X"00",X"FE",X"82",X"82",X"82",X"7C",X"00",X"00", + X"00",X"FE",X"92",X"92",X"92",X"82",X"00",X"00",X"00",X"FE",X"90",X"90",X"90",X"80",X"00",X"00", + X"00",X"7C",X"82",X"82",X"92",X"9E",X"00",X"00",X"00",X"FE",X"10",X"10",X"10",X"FE",X"00",X"00", + X"00",X"00",X"82",X"FE",X"82",X"00",X"00",X"00",X"00",X"04",X"02",X"02",X"02",X"FC",X"00",X"00", + X"00",X"FE",X"10",X"38",X"44",X"82",X"00",X"00",X"00",X"FE",X"02",X"02",X"02",X"02",X"00",X"00", + X"00",X"FE",X"40",X"30",X"40",X"FE",X"00",X"00",X"00",X"FE",X"20",X"10",X"08",X"FE",X"00",X"00", + X"00",X"7C",X"82",X"82",X"82",X"7C",X"00",X"00",X"00",X"FE",X"90",X"90",X"90",X"60",X"00",X"00", + X"00",X"7C",X"82",X"8A",X"84",X"7A",X"00",X"00",X"00",X"FE",X"90",X"98",X"94",X"62",X"00",X"00", + X"00",X"64",X"92",X"92",X"92",X"4C",X"00",X"00",X"00",X"80",X"80",X"FE",X"80",X"80",X"00",X"00", + X"00",X"FC",X"02",X"02",X"02",X"FC",X"00",X"00",X"00",X"F8",X"04",X"02",X"04",X"F8",X"00",X"00", + X"00",X"FE",X"04",X"18",X"04",X"FE",X"00",X"00",X"00",X"C6",X"28",X"10",X"28",X"C6",X"00",X"00", + X"00",X"C0",X"20",X"1E",X"20",X"C0",X"00",X"00",X"00",X"86",X"8A",X"92",X"A2",X"C2",X"00",X"00", + X"00",X"7C",X"82",X"BA",X"8A",X"7A",X"00",X"00",X"00",X"38",X"44",X"82",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"82",X"44",X"38",X"00",X"00",X"00",X"40",X"80",X"9A",X"A0",X"40",X"00",X"00", + X"00",X"10",X"10",X"7C",X"10",X"10",X"00",X"00",X"00",X"10",X"10",X"10",X"10",X"10",X"00",X"00", + X"00",X"44",X"28",X"FE",X"28",X"44",X"00",X"00",X"00",X"04",X"08",X"10",X"20",X"40",X"00",X"00", + X"00",X"28",X"28",X"28",X"28",X"28",X"00",X"00",X"00",X"00",X"06",X"06",X"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"3C",X"3C",X"3F",X"3F",X"3F",X"3F",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00", + X"3C",X"3C",X"FC",X"FC",X"FC",X"FC",X"00",X"00",X"3C",X"3C",X"3C",X"3C",X"3C",X"3C",X"3C",X"3C", + X"00",X"00",X"3F",X"3F",X"3F",X"3F",X"3C",X"3C",X"00",X"00",X"FC",X"FC",X"FC",X"FC",X"3C",X"3C", + X"00",X"00",X"00",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"28",X"10",X"00",X"00",X"00", + X"00",X"10",X"38",X"6C",X"38",X"10",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00", + X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00", + X"08",X"2A",X"1C",X"77",X"1C",X"2A",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"04",X"15",X"0E",X"3B",X"0E",X"15",X"04",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00", + X"02",X"0A",X"07",X"1D",X"07",X"0A",X"02",X"00",X"00",X"80",X"00",X"C0",X"00",X"80",X"00",X"00", + X"01",X"05",X"03",X"0E",X"03",X"05",X"01",X"00",X"00",X"40",X"80",X"E0",X"80",X"40",X"00",X"00", + X"00",X"02",X"01",X"07",X"01",X"02",X"00",X"00",X"80",X"A0",X"C0",X"70",X"C0",X"A0",X"80",X"00", + X"00",X"01",X"00",X"03",X"00",X"01",X"00",X"00",X"40",X"50",X"E0",X"B8",X"E0",X"50",X"40",X"00", + X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"20",X"A8",X"70",X"DC",X"70",X"A8",X"20",X"00", + X"1C",X"3E",X"7F",X"7F",X"7F",X"3E",X"1C",X"00",X"01",X"06",X"18",X"E0",X"00",X"00",X"00",X"00", + X"00",X"00",X"20",X"28",X"30",X"3C",X"00",X"00",X"00",X"00",X"04",X"14",X"0C",X"3C",X"00",X"00", + X"00",X"00",X"3C",X"30",X"28",X"20",X"00",X"00",X"00",X"00",X"3C",X"0C",X"14",X"04",X"00",X"00", + X"55",X"AA",X"55",X"AA",X"55",X"AA",X"55",X"AA",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"10", + X"10",X"00",X"10",X"54",X"38",X"EE",X"38",X"54",X"54",X"10",X"00",X"10",X"54",X"38",X"EE",X"38", + X"38",X"54",X"10",X"00",X"10",X"54",X"38",X"EE",X"EE",X"38",X"54",X"10",X"00",X"10",X"54",X"38", + X"38",X"EE",X"38",X"54",X"10",X"00",X"10",X"54",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"10", + X"10",X"54",X"38",X"EE",X"38",X"54",X"10",X"00",X"08",X"2A",X"1C",X"77",X"1C",X"2A",X"08",X"00", + X"04",X"15",X"0E",X"BB",X"0E",X"15",X"04",X"00",X"02",X"8A",X"07",X"DD",X"07",X"8A",X"02",X"00", + X"01",X"45",X"83",X"EE",X"83",X"45",X"01",X"00",X"80",X"A2",X"C1",X"77",X"C1",X"A2",X"80",X"00", + X"40",X"51",X"E0",X"BB",X"E0",X"51",X"40",X"00",X"20",X"A8",X"70",X"DD",X"70",X"A8",X"20",X"00", + X"FF",X"FF",X"C6",X"C0",X"C0",X"80",X"00",X"00",X"FF",X"FF",X"EF",X"EF",X"EF",X"EF",X"00",X"00", + X"FF",X"FF",X"FF",X"7F",X"7F",X"FF",X"0F",X"03",X"FF",X"FF",X"80",X"00",X"1C",X"FF",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"A0",X"00",X"0F",X"1F",X"0F",X"1F",X"07",X"0B",X"02",X"00", + X"FF",X"FF",X"E3",X"E0",X"E0",X"C0",X"00",X"00",X"FF",X"83",X"83",X"83",X"83",X"83",X"83",X"00", + X"FF",X"FF",X"FF",X"7F",X"7F",X"FF",X"1E",X"06",X"FF",X"FF",X"80",X"00",X"38",X"FF",X"00",X"00", + X"FF",X"FF",X"D8",X"C0",X"C0",X"80",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7E",X"28", + X"FF",X"FF",X"FF",X"7F",X"7F",X"FF",X"0F",X"03",X"FF",X"FF",X"80",X"00",X"0E",X"FF",X"00",X"00", + X"00",X"10",X"28",X"28",X"10",X"00",X"00",X"00",X"00",X"10",X"28",X"44",X"44",X"44",X"28",X"00", + X"00",X"00",X"10",X"00",X"44",X"44",X"00",X"82",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01", + X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"C6",X"FF",X"FF", + X"00",X"00",X"EF",X"EF",X"EF",X"EF",X"FF",X"FF",X"03",X"0F",X"FF",X"7F",X"7F",X"FF",X"FF",X"FF", + X"00",X"00",X"FF",X"1C",X"00",X"80",X"FF",X"FF",X"00",X"A0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"00",X"02",X"0B",X"07",X"1F",X"0F",X"1F",X"0F",X"00",X"00",X"C0",X"E0",X"E0",X"E3",X"FF",X"FF", + X"00",X"83",X"83",X"83",X"83",X"83",X"83",X"FF",X"06",X"1E",X"FF",X"7F",X"7F",X"FF",X"FF",X"FF", + X"00",X"00",X"FF",X"38",X"00",X"80",X"FF",X"FF",X"00",X"00",X"80",X"C0",X"C0",X"D8",X"FF",X"FF", + X"28",X"7E",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"03",X"0F",X"FF",X"7F",X"7F",X"FF",X"FF",X"FF", + X"00",X"00",X"FF",X"0E",X"00",X"80",X"FF",X"FF",X"00",X"00",X"00",X"10",X"28",X"28",X"10",X"00", + X"00",X"28",X"44",X"44",X"44",X"28",X"10",X"00",X"82",X"00",X"44",X"44",X"00",X"10",X"00",X"00", + X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"01",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"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"00",X"00", + X"FF",X"FF",X"C6",X"C0",X"C0",X"80",X"00",X"00",X"FF",X"DF",X"EF",X"EF",X"EF",X"EF",X"00",X"00", + X"FF",X"FF",X"FF",X"7F",X"7F",X"FF",X"0F",X"03",X"FF",X"80",X"0C",X"18",X"8C",X"FF",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"A0",X"00",X"0F",X"1F",X"0F",X"1F",X"07",X"0B",X"02",X"00", + X"FF",X"FF",X"E3",X"E0",X"E0",X"C0",X"00",X"00",X"FF",X"C7",X"E7",X"E3",X"E3",X"E3",X"E3",X"00", + X"FF",X"FF",X"FF",X"7F",X"7F",X"FF",X"1E",X"06",X"FF",X"80",X"18",X"30",X"98",X"FF",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"A0",X"00",X"0F",X"1F",X"0F",X"1F",X"07",X"0B",X"02",X"00", + X"00",X"00",X"80",X"C0",X"C0",X"C6",X"FF",X"FF",X"00",X"00",X"EF",X"EF",X"EF",X"EF",X"DF",X"FF", + X"03",X"0F",X"FF",X"7F",X"7F",X"FF",X"FF",X"FF",X"00",X"00",X"FF",X"8C",X"18",X"0C",X"80",X"FF", + X"00",X"A0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"02",X"0B",X"07",X"1F",X"0F",X"1F",X"0F", + X"00",X"00",X"C0",X"E0",X"E0",X"E3",X"FF",X"FF",X"00",X"E3",X"E3",X"E3",X"E3",X"E7",X"C7",X"FF", + X"06",X"1E",X"FF",X"7F",X"7F",X"FF",X"FF",X"FF",X"00",X"00",X"FF",X"98",X"30",X"18",X"80",X"FF", + X"00",X"A0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"02",X"0B",X"07",X"1F",X"0F",X"1F",X"0F", + X"3C",X"42",X"99",X"A5",X"A5",X"A5",X"42",X"3C",X"00",X"00",X"00",X"FA",X"00",X"00",X"00",X"00", + X"FE",X"90",X"98",X"94",X"62",X"00",X"FC",X"02",X"02",X"FC",X"00",X"FE",X"92",X"92",X"92",X"6C", + X"FE",X"92",X"92",X"82",X"00",X"FE",X"20",X"10",X"08",X"FE",X"00",X"FE",X"82",X"82",X"82",X"7C", + X"00",X"00",X"D0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"0F",X"0F",X"0F",X"00",X"00", + X"3C",X"3C",X"3F",X"3F",X"3F",X"3F",X"3C",X"3C",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"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"84",X"82",X"92",X"B2",X"CC",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"00",X"18",X"28",X"48",X"FE",X"08",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"); +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/Taito Crazy Balloon/rtl/rom/gfx2.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/gfx2.vhd new file mode 100644 index 00000000..eedb0521 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/gfx2.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity gfx2 is +port ( + clk : in std_logic; + addr : in std_logic_vector(10 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of gfx2 is + type rom is array(0 to 2047) 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"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"40",X"20",X"10",X"08",X"04",X"02",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"70",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",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"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"01",X"03",X"03",X"07",X"07",X"07",X"03",X"03",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"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"30",X"0C",X"02",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"C0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FC",X"FB",X"F8",X"F0",X"C0",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"07",X"0F",X"0F",X"1F",X"1F",X"1F",X"0F",X"0F",X"07",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"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"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"78",X"07", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"E0",X"F0",X"F0",X"F8",X"F8",X"FF",X"F0",X"F0", + X"E0",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"00",X"00",X"00",X"00",X"00",X"00",X"03",X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"1F",X"1F", + X"0F",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"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"00",X"00",X"00",X"00",X"C0",X"E0",X"E0",X"F0", + X"FF",X"F0",X"E0",X"E0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"1F",X"3F",X"3F",X"7F", + X"7F",X"7F",X"3F",X"3F",X"1F",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"07",X"78",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"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"E0",X"F0",X"F0",X"FF",X"F8",X"F8",X"F0",X"F0",X"E0",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"00",X"00",X"00",X"00",X"00",X"00",X"03", + X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"1F",X"1F",X"0F",X"03",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"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"02",X"0C",X"30",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"F0",X"F8",X"FB",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0",X"C0",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"07",X"0F",X"0F",X"1F",X"1F",X"1F",X"0F",X"0F",X"07",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"E0", + X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"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"02",X"04",X"08",X"10",X"20",X"40",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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"70",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"03",X"07",X"07",X"07",X"03",X"03",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"E0", + X"E0",X"E0",X"00",X"80",X"40",X"30",X"08",X"08",X"08",X"30",X"C0",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"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"01",X"01",X"00",X"00",X"80",X"C0",X"C0",X"E0",X"FF",X"E0",X"C0",X"C0",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"0E",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",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"80",X"C0",X"C0",X"E0",X"E0",X"E0",X"C0",X"C0",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"0E",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",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"80",X"40",X"20",X"10",X"08",X"04",X"02",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"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"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"E0",X"F0",X"F0",X"F8",X"F8",X"F8",X"F0",X"F0",X"E0",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"00",X"00",X"00",X"00", + X"00",X"00",X"03",X"0F",X"1F",X"DF",X"3F",X"3F",X"3F",X"1F",X"1F",X"0F",X"03",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"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"40",X"30",X"0C",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"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"F0", + X"F8",X"F8",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"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"07", + X"0F",X"0F",X"FF",X"1F",X"1F",X"0F",X"0F",X"07",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"E0",X"1E",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"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"F8",X"FC",X"FC",X"FE",X"FE", + X"FE",X"FC",X"FC",X"F8",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"0F",X"FF", + X"0F",X"07",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"F0",X"F8",X"F8",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0", + X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"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"07",X"0F",X"0F",X"1F",X"1F",X"FF",X"0F",X"0F",X"07", + 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"01",X"1E",X"E0",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"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"E0",X"F0",X"F0",X"F8",X"F8",X"F8",X"F0",X"F0",X"E0",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"00",X"00",X"00",X"00", + X"00",X"00",X"03",X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"DF",X"1F",X"0F",X"03",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"0C",X"30",X"40",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"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"C0",X"C0",X"E0",X"E0",X"E0",X"C0",X"C0",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"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"0E",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",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"01",X"02",X"04",X"08",X"10",X"20",X"40",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"70",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FE",X"FE",X"FC",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"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"01",X"03",X"03",X"07",X"FF",X"07",X"03",X"03",X"01",X"00",X"00",X"80",X"80",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"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"03",X"0C",X"10",X"10",X"10",X"0C",X"02",X"01",X"00",X"07",X"07", + X"07",X"00",X"00",X"00",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/Taito Crazy Balloon/rtl/rom/prog.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/prog.vhd new file mode 100644 index 00000000..153b0718 --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/prog.vhd @@ -0,0 +1,1046 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity prog is +port ( + clk : in std_logic; + addr : in std_logic_vector(13 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of prog is + type rom is array(0 to 16383) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"00",X"00",X"00",X"F3",X"C3",X"DF",X"0A",X"0F",X"C3",X"11",X"18",X"C3",X"09",X"14",X"23",X"22", + X"C3",X"62",X"19",X"C3",X"06",X"04",X"00",X"23",X"C3",X"C5",X"0A",X"C9",X"C3",X"46",X"14",X"36", + X"C3",X"E3",X"1B",X"C3",X"8A",X"18",X"73",X"59",X"C3",X"04",X"1C",X"C3",X"B4",X"07",X"34",X"3A", + X"C3",X"1C",X"1A",X"C3",X"70",X"1E",X"21",X"FC",X"C3",X"92",X"14",X"91",X"07",X"01",X"1A",X"1A", + X"A2",X"48",X"3E",X"06",X"32",X"FA",X"40",X"CD",X"5C",X"07",X"2A",X"FE",X"43",X"7D",X"E6",X"1F", + X"FE",X"1A",X"38",X"02",X"D6",X"1A",X"6F",X"7C",X"E6",X"1F",X"FE",X"1A",X"38",X"02",X"D6",X"06", + X"0F",X"0F",X"0F",X"67",X"E6",X"E0",X"B5",X"6F",X"7C",X"E6",X"03",X"67",X"11",X"A2",X"48",X"19", + X"7D",X"E6",X"1F",X"FE",X"14",X"30",X"14",X"FE",X"0A",X"38",X"10",X"E5",X"29",X"29",X"29",X"7C", + X"E1",X"E6",X"1F",X"FE",X"1B",X"30",X"04",X"FE",X"09",X"30",X"20",X"36",X"39",X"E5",X"CD",X"5C", + X"07",X"E1",X"01",X"00",X"08",X"09",X"00",X"07",X"07",X"E6",X"07",X"28",X"0C",X"FE",X"03",X"38", + X"04",X"36",X"F1",X"18",X"06",X"36",X"F5",X"18",X"02",X"36",X"F2",X"3A",X"FA",X"40",X"3D",X"32", + X"FA",X"40",X"20",X"93",X"3E",X"01",X"F7",X"18",X"89",X"C9",X"00",X"CC",X"00",X"D0",X"00",X"D4", + X"00",X"D8",X"00",X"DC",X"00",X"E0",X"00",X"E4",X"00",X"01",X"01",X"39",X"01",X"02",X"61",X"2E", + X"01",X"02",X"3C",X"3D",X"01",X"02",X"3E",X"3F",X"01",X"02",X"40",X"41",X"01",X"02",X"42",X"43", + X"01",X"02",X"44",X"45",X"01",X"02",X"46",X"47",X"CD",X"34",X"14",X"FD",X"BE",X"14",X"C0",X"FD", + X"5E",X"15",X"FD",X"56",X"16",X"EB",X"E9",X"CD",X"34",X"14",X"2A",X"FE",X"40",X"01",X"17",X"00", + X"09",X"06",X"05",X"BE",X"23",X"28",X"05",X"23",X"23",X"10",X"F8",X"C9",X"5E",X"23",X"56",X"EB", + X"E9",X"21",X"29",X"01",X"18",X"08",X"21",X"2C",X"01",X"18",X"03",X"21",X"39",X"01",X"3E",X"2E", + X"46",X"23",X"5E",X"23",X"56",X"12",X"10",X"F9",X"C9",X"01",X"92",X"4A",X"06",X"52",X"49",X"53", + X"49",X"75",X"49",X"0C",X"4B",X"14",X"4B",X"51",X"49",X"06",X"C7",X"48",X"F6",X"48",X"49",X"49", + X"4E",X"49",X"A4",X"49",X"03",X"4B",X"FD",X"21",X"09",X"18",X"3E",X"80",X"F7",X"C3",X"E5",X"12", + X"3E",X"04",X"F7",X"2A",X"03",X"40",X"FD",X"21",X"89",X"01",X"7D",X"FE",X"A0",X"DA",X"0F",X"13", + X"7C",X"FE",X"60",X"DA",X"E5",X"12",X"18",X"E8",X"C3",X"A9",X"23",X"C3",X"3D",X"27",X"C3",X"3D", + X"27",X"CD",X"38",X"27",X"C3",X"A9",X"23",X"CD",X"38",X"27",X"C3",X"46",X"01",X"CD",X"42",X"27", + X"C3",X"50",X"01",X"CD",X"3D",X"27",X"C3",X"46",X"01",X"4B",X"06",X"D9",X"15",X"68",X"10",X"5C", + X"05",X"21",X"C3",X"49",X"11",X"9F",X"15",X"06",X"0B",X"40",X"0E",X"87",X"CD",X"19",X"00",X"21", + X"C3",X"51",X"01",X"01",X"0D",X"3E",X"F5",X"CD",X"88",X"02",X"CD",X"B3",X"26",X"3A",X"15",X"40", + X"FE",X"02",X"38",X"12",X"21",X"EC",X"49",X"11",X"0E",X"23",X"CD",X"87",X"0B",X"21",X"4A",X"49", + X"11",X"15",X"23",X"CD",X"87",X"0B",X"3A",X"15",X"40",X"E6",X"0F",X"32",X"06",X"4B",X"3E",X"01", + X"F7",X"01",X"08",X"00",X"E7",X"E7",X"DB",X"03",X"2F",X"E6",X"30",X"28",X"D0",X"E6",X"20",X"08", + X"3A",X"15",X"40",X"47",X"08",X"28",X"09",X"05",X"05",X"FA",X"AD",X"01",X"3E",X"02",X"18",X"03", + X"05",X"3E",X"01",X"32",X"C0",X"40",X"78",X"32",X"15",X"40",X"3E",X"01",X"32",X"CF",X"40",X"32", + X"D0",X"40",X"CD",X"8C",X"22",X"CD",X"FA",X"1E",X"3E",X"00",X"32",X"C1",X"40",X"21",X"0D",X"41", + X"01",X"18",X"00",X"CD",X"CE",X"15",X"21",X"C2",X"40",X"01",X"06",X"00",X"CD",X"CE",X"15",X"3A", + X"27",X"43",X"6F",X"3A",X"21",X"43",X"67",X"C3",X"CB",X"42",X"DD",X"2A",X"28",X"02",X"CD",X"80", + X"02",X"CD",X"02",X"21",X"CD",X"63",X"05",X"CD",X"5F",X"23",X"CD",X"C0",X"06",X"3E",X"20",X"F7", + X"21",X"2E",X"06",X"11",X"02",X"40",X"01",X"03",X"00",X"ED",X"B0",X"21",X"ED",X"40",X"36",X"03", + X"21",X"FC",X"40",X"7E",X"EE",X"01",X"77",X"CB",X"47",X"CA",X"5F",X"06",X"FD",X"21",X"83",X"1A", + X"CD",X"32",X"04",X"3E",X"0F",X"D7",X"FD",X"21",X"D8",X"06",X"CD",X"F6",X"18",X"FD",X"7E",X"09", + X"D7",X"CD",X"71",X"19",X"CD",X"7B",X"19",X"3E",X"20",X"F7",X"CD",X"10",X"1A",X"C3",X"94",X"12", + X"21",X"80",X"48",X"01",X"20",X"1C",X"3E",X"2E",X"C5",X"E5",X"77",X"23",X"0D",X"20",X"FB",X"E1", + X"01",X"20",X"00",X"09",X"C1",X"10",X"F1",X"C9",X"21",X"8A",X"73",X"71",X"23",X"70",X"2C",X"73", + X"4E",X"0D",X"06",X"00",X"25",X"2E",X"7A",X"09",X"09",X"7E",X"23",X"46",X"21",X"8A",X"73",X"A6", + X"2C",X"4F",X"78",X"A6",X"47",X"79",X"C9",X"21",X"8D",X"73",X"71",X"06",X"00",X"21",X"3C",X"71", + X"09",X"7E",X"07",X"C9",X"21",X"8E",X"73",X"71",X"00",X"00",X"00",X"CD",X"25",X"24",X"CD",X"E3", + X"06",X"CD",X"1B",X"04",X"CD",X"2E",X"25",X"FD",X"CB",X"00",X"56",X"28",X"05",X"11",X"C5",X"1B", + X"18",X"03",X"11",X"D6",X"0B",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"E5",X"CD",X"D0",X"14",X"E1", + X"01",X"00",X"08",X"09",X"01",X"06",X"01",X"FD",X"7E",X"01",X"CD",X"88",X"02",X"3E",X"10",X"F7", + X"FD",X"CB",X"00",X"66",X"28",X"32",X"3A",X"03",X"40",X"FD",X"BE",X"06",X"38",X"05",X"FD",X"BE", + X"07",X"38",X"05",X"3E",X"02",X"F7",X"18",X"EE",X"FD",X"CB",X"00",X"F6",X"FD",X"CB",X"00",X"AE", + X"CD",X"2E",X"25",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"01",X"00",X"08",X"09",X"01",X"06",X"01", + X"FD",X"7E",X"01",X"E6",X"F7",X"CD",X"88",X"02",X"FD",X"CB",X"00",X"56",X"28",X"05",X"11",X"CD", + X"1B",X"18",X"03",X"11",X"DE",X"0B",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"CD",X"D0",X"14",X"3E", + X"04",X"F7",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"FD",X"CB",X"00",X"56",X"28",X"0A",X"11",X"D5", + X"1B",X"CD",X"D0",X"14",X"3E",X"7E",X"18",X"08",X"11",X"FC",X"0E",X"CD",X"D0",X"14",X"3E",X"93", + X"FD",X"6E",X"04",X"FD",X"66",X"05",X"77",X"01",X"00",X"08",X"09",X"FD",X"7E",X"01",X"77",X"CD", + X"1B",X"1B",X"3E",X"04",X"F7",X"FD",X"6E",X"04",X"FD",X"66",X"05",X"FD",X"CB",X"00",X"56",X"28", + X"04",X"36",X"7F",X"18",X"02",X"36",X"94",X"3E",X"04",X"F7",X"FD",X"6E",X"04",X"FD",X"66",X"05", + X"FD",X"CB",X"00",X"56",X"28",X"04",X"36",X"80",X"18",X"02",X"36",X"95",X"3E",X"04",X"F7",X"FD", + X"6E",X"04",X"FD",X"66",X"05",X"FD",X"CB",X"00",X"56",X"28",X"0A",X"2B",X"11",X"DB",X"1B",X"E5", + X"CD",X"D0",X"14",X"18",X"0B",X"01",X"DF",X"FF",X"09",X"11",X"02",X"0F",X"E5",X"CD",X"D0",X"14", + X"E1",X"01",X"00",X"08",X"09",X"01",X"03",X"02",X"FD",X"7E",X"01",X"CD",X"88",X"02",X"3E",X"04", + X"F7",X"FD",X"6E",X"04",X"FD",X"66",X"05",X"FD",X"CB",X"00",X"56",X"28",X"03",X"2B",X"18",X"04", + X"01",X"DF",X"FF",X"09",X"01",X"03",X"02",X"CD",X"86",X"02",X"CD",X"C3",X"20",X"3E",X"20",X"F7", + X"FD",X"CB",X"00",X"6E",X"CA",X"D7",X"02",X"FD",X"CB",X"00",X"AE",X"FD",X"CB",X"00",X"66",X"C2", + X"D7",X"02",X"CD",X"95",X"18",X"FD",X"36",X"00",X"00",X"C9",X"CB",X"3A",X"03",X"40",X"FD",X"BE", + X"06",X"38",X"0A",X"FD",X"BE",X"07",X"30",X"05",X"3E",X"02",X"F7",X"18",X"EE",X"FD",X"CB",X"00", + X"EE",X"C9",X"FD",X"7E",X"00",X"A7",X"20",X"04",X"3E",X"0F",X"CF",X"C9",X"32",X"FD",X"40",X"FD", + X"23",X"FD",X"7E",X"00",X"2A",X"03",X"40",X"CB",X"5F",X"C4",X"66",X"04",X"CB",X"57",X"C4",X"63", + X"04",X"CB",X"4F",X"C4",X"60",X"04",X"CB",X"47",X"C4",X"5D",X"04",X"18",X"0E",X"2D",X"18",X"07", + X"2C",X"18",X"04",X"24",X"18",X"01",X"25",X"22",X"03",X"40",X"C9",X"3A",X"FD",X"40",X"3D",X"32", + X"FD",X"40",X"28",X"05",X"3E",X"01",X"F7",X"18",X"C8",X"FD",X"23",X"18",X"B5",X"81",X"09",X"E3", + X"09",X"E6",X"12",X"E9",X"09",X"EC",X"09",X"EC",X"12",X"EC",X"09",X"EE",X"12",X"EC",X"12",X"E9", + X"1B",X"E3",X"09",X"E6",X"12",X"E9",X"12",X"E9",X"12",X"E6",X"09",X"E6",X"09",X"E6",X"24",X"E3", + X"00",X"3E",X"01",X"F7",X"01",X"08",X"00",X"E7",X"E7",X"DB",X"03",X"2F",X"E6",X"30",X"28",X"0A", + X"CD",X"7B",X"19",X"3E",X"14",X"F7",X"3E",X"0A",X"CF",X"C9",X"21",X"7C",X"41",X"CD",X"02",X"1B", + X"E6",X"02",X"BE",X"77",X"20",X"DB",X"23",X"BE",X"28",X"D7",X"77",X"A7",X"28",X"D3",X"3A",X"7B", + X"41",X"FE",X"1C",X"28",X"3E",X"30",X"57",X"FE",X"1A",X"28",X"34",X"30",X"2E",X"4F",X"CB",X"21", + X"06",X"00",X"21",X"F2",X"24",X"09",X"5E",X"23",X"56",X"13",X"1A",X"47",X"21",X"7E",X"41",X"7E", + X"FE",X"0A",X"38",X"07",X"CD",X"7B",X"19",X"3E",X"0A",X"CF",X"C9",X"3C",X"77",X"5F",X"16",X"00", + X"EB",X"19",X"70",X"21",X"07",X"4A",X"CD",X"87",X"0B",X"18",X"96",X"06",X"2E",X"18",X"DD",X"06", + X"2D",X"18",X"D9",X"21",X"7E",X"41",X"7E",X"A7",X"CA",X"A1",X"04",X"E5",X"5F",X"16",X"00",X"EB", + X"19",X"36",X"2E",X"21",X"07",X"4A",X"CD",X"87",X"0B",X"E1",X"35",X"C3",X"A1",X"04",X"CD",X"4C", + X"26",X"3E",X"0B",X"D7",X"CD",X"7B",X"19",X"3E",X"0A",X"CF",X"C9",X"11",X"20",X"00",X"DD",X"7E", + X"00",X"A7",X"C8",X"47",X"DD",X"23",X"DD",X"7E",X"00",X"FE",X"2E",X"28",X"08",X"77",X"19",X"10", + X"FC",X"DD",X"23",X"18",X"E9",X"19",X"10",X"FD",X"DD",X"23",X"18",X"E2",X"82",X"FF",X"07",X"0B", + X"08",X"2F",X"4B",X"21",X"7F",X"50",X"01",X"02",X"1D",X"3E",X"FF",X"CD",X"88",X"02",X"21",X"9D", + X"50",X"01",X"02",X"1C",X"3E",X"F0",X"CD",X"88",X"02",X"21",X"9E",X"50",X"01",X"01",X"08",X"3E", + X"F5",X"CD",X"88",X"02",X"21",X"FE",X"52",X"01",X"01",X"09",X"3E",X"F2",X"CD",X"88",X"02",X"21", + X"81",X"50",X"01",X"1C",X"01",X"3E",X"F8",X"CD",X"88",X"02",X"21",X"A1",X"50",X"01",X"01",X"1A", + X"CD",X"88",X"02",X"21",X"BC",X"50",X"01",X"01",X"1A",X"CD",X"88",X"02",X"21",X"E1",X"53",X"01", + X"1C",X"01",X"CD",X"88",X"02",X"21",X"A2",X"50",X"01",X"1A",X"1A",X"3E",X"F1",X"CD",X"88",X"02", + X"21",X"BE",X"48",X"11",X"8A",X"14",X"CD",X"87",X"0B",X"CD",X"70",X"26",X"CD",X"8C",X"24",X"CD", + X"7D",X"24",X"3A",X"C0",X"40",X"CB",X"47",X"20",X"0C",X"21",X"1E",X"4B",X"11",X"C8",X"14",X"CD", + X"87",X"0B",X"CD",X"94",X"24",X"DD",X"21",X"85",X"19",X"21",X"81",X"48",X"CD",X"B8",X"1F",X"DD", + X"21",X"8C",X"19",X"21",X"A1",X"48",X"CD",X"3B",X"05",X"DD",X"21",X"8C",X"19",X"21",X"BC",X"48", + X"CD",X"3B",X"05",X"DD",X"21",X"8F",X"19",X"21",X"E1",X"4B",X"CD",X"B8",X"1F",X"C9",X"94",X"F8", + X"A9",X"48",X"CA",X"48",X"80",X"AC",X"98",X"F8",X"D6",X"4B",X"B7",X"4B",X"14",X"33",X"94",X"F8", + X"89",X"49",X"AA",X"49",X"84",X"AC",X"98",X"F4",X"D6",X"4B",X"B7",X"4B",X"14",X"3C",X"64",X"D0", + X"40",X"11",X"20",X"20",X"29",X"29",X"29",X"7C",X"07",X"07",X"07",X"E6",X"F0",X"B0",X"D6",X"20", + X"ED",X"44",X"92",X"67",X"7D",X"B1",X"ED",X"44",X"93",X"6F",X"C9",X"92",X"EC",X"FF",X"0B",X"08", + X"2F",X"4B",X"3A",X"BF",X"40",X"A7",X"C8",X"3A",X"15",X"40",X"A7",X"C8",X"C3",X"FB",X"0F",X"CD", + X"38",X"27",X"FD",X"21",X"58",X"0B",X"CD",X"32",X"04",X"3E",X"0F",X"D7",X"21",X"26",X"06",X"11", + X"39",X"41",X"CD",X"48",X"27",X"3E",X"01",X"D7",X"21",X"ED",X"40",X"36",X"00",X"CD",X"71",X"19", + X"CD",X"7B",X"19",X"3E",X"F7",X"32",X"02",X"40",X"CD",X"80",X"02",X"3E",X"02",X"F7",X"CD",X"63", + X"05",X"CD",X"5F",X"23",X"3E",X"07",X"32",X"02",X"40",X"3E",X"02",X"F7",X"CD",X"10",X"1A",X"FD", + X"21",X"39",X"41",X"CD",X"75",X"1D",X"FD",X"21",X"59",X"41",X"CD",X"75",X"1D",X"3E",X"40",X"F7", + X"CD",X"7B",X"19",X"CD",X"71",X"19",X"AF",X"32",X"39",X"41",X"32",X"59",X"41",X"C3",X"94",X"12", + X"FD",X"21",X"CD",X"06",X"CD",X"F6",X"18",X"FD",X"7E",X"09",X"D7",X"18",X"F3",X"80",X"F9",X"40", + X"0A",X"20",X"51",X"49",X"27",X"1C",X"10",X"08",X"80",X"F8",X"40",X"05",X"08",X"D6",X"48",X"D6", + X"1F",X"11",X"66",X"01",X"06",X"20",X"E7",X"3E",X"30",X"F7",X"01",X"06",X"20",X"EF",X"C9",X"FD", + X"20",X"68",X"18",X"05",X"20",X"3F",X"20",X"18",X"21",X"21",X"00",X"44",X"F9",X"EB",X"11",X"7C", + X"01",X"E5",X"D5",X"3E",X"13",X"2A",X"FE",X"43",X"29",X"22",X"FE",X"43",X"01",X"15",X"83",X"09", + X"30",X"03",X"22",X"FE",X"43",X"3D",X"20",X"ED",X"3A",X"FE",X"43",X"33",X"F5",X"1B",X"7A",X"B3", + X"20",X"E1",X"0E",X"C8",X"06",X"15",X"CD",X"19",X"00",X"0E",X"80",X"06",X"02",X"CD",X"19",X"00", + X"21",X"BF",X"14",X"4E",X"0C",X"11",X"7E",X"41",X"06",X"00",X"ED",X"B0",X"3E",X"FF",X"32",X"BF", + X"40",X"06",X"07",X"0E",X"80",X"CD",X"19",X"00",X"01",X"06",X"01",X"E7",X"C3",X"4F",X"07",X"C3", + X"4F",X"07",X"06",X"03",X"1A",X"BE",X"C0",X"1B",X"2B",X"10",X"F9",X"C9",X"2A",X"FE",X"43",X"29", + X"17",X"17",X"AD",X"17",X"AD",X"1F",X"1F",X"2F",X"E6",X"01",X"B5",X"6F",X"22",X"FE",X"43",X"C9", + X"84",X"06",X"01",X"01",X"00",X"88",X"49",X"B9",X"00",X"08",X"88",X"49",X"88",X"0C",X"01",X"01", + X"AF",X"08",X"21",X"C4",X"40",X"11",X"18",X"40",X"CD",X"52",X"07",X"30",X"0A",X"08",X"3E",X"01", + X"08",X"21",X"C2",X"40",X"CD",X"6F",X"08",X"21",X"C7",X"40",X"11",X"18",X"40",X"CD",X"52",X"07", + X"30",X"0A",X"21",X"C5",X"40",X"CD",X"6F",X"08",X"08",X"3E",X"02",X"08",X"08",X"A7",X"CA",X"44", + X"08",X"3D",X"32",X"C1",X"40",X"A7",X"28",X"05",X"CD",X"BE",X"15",X"18",X"03",X"CD",X"AD",X"15", + X"21",X"7E",X"41",X"36",X"00",X"23",X"01",X"0A",X"00",X"3E",X"2E",X"CD",X"D0",X"15",X"CD",X"80", + X"02",X"CD",X"63",X"05",X"21",X"37",X"49",X"0E",X"87",X"11",X"F7",X"23",X"06",X"0B",X"CD",X"19", + X"00",X"21",X"46",X"49",X"11",X"0A",X"24",X"06",X"0B",X"0E",X"87",X"CD",X"19",X"00",X"21",X"C3", + X"49",X"16",X"15",X"1E",X"9F",X"06",X"0B",X"0E",X"87",X"CD",X"19",X"00",X"3E",X"F5",X"01",X"01", + X"0D",X"21",X"C3",X"51",X"CD",X"88",X"02",X"CD",X"B3",X"26",X"3E",X"0A",X"06",X"1A",X"21",X"F2", + X"24",X"5E",X"23",X"56",X"23",X"13",X"12",X"3C",X"10",X"F7",X"5E",X"23",X"56",X"13",X"EB",X"11", + X"1B",X"24",X"CD",X"87",X"0B",X"3E",X"01",X"F7",X"CD",X"52",X"0A",X"CD",X"CF",X"24",X"CD",X"A1", + X"04",X"3E",X"0A",X"D7",X"21",X"7E",X"41",X"7E",X"A7",X"20",X"09",X"01",X"0B",X"00",X"11",X"BF", + X"14",X"EB",X"ED",X"B0",X"CD",X"AD",X"15",X"01",X"06",X"02",X"EF",X"CD",X"71",X"19",X"CD",X"7B", + X"19",X"3E",X"FF",X"32",X"BF",X"40",X"3A",X"15",X"40",X"A7",X"20",X"0F",X"3A",X"C6",X"42",X"6F", + X"3A",X"A8",X"42",X"67",X"C3",X"CB",X"42",X"DD",X"2A",X"F0",X"42",X"C9",X"CD",X"78",X"08",X"11", + X"16",X"40",X"01",X"03",X"00",X"ED",X"B0",X"C9",X"84",X"0B",X"01",X"02",X"00",X"15",X"4B",X"B9", + X"00",X"09",X"15",X"4B",X"CD",X"4A",X"14",X"3A",X"06",X"40",X"E6",X"FE",X"D3",X"06",X"F6",X"01", + X"D3",X"06",X"32",X"06",X"40",X"3A",X"ED",X"40",X"CB",X"47",X"28",X"0C",X"CD",X"6D",X"25",X"CD", + X"94",X"1E",X"CD",X"9A",X"19",X"CD",X"C7",X"21",X"CD",X"84",X"15",X"CD",X"53",X"1F",X"CD",X"52", + X"06",X"CD",X"AD",X"09",X"CD",X"A3",X"20",X"CD",X"3C",X"21",X"CD",X"62",X"20",X"CD",X"94",X"23", + X"C9",X"40",X"49",X"88",X"18",X"02",X"01",X"3E",X"02",X"D7",X"CD",X"71",X"19",X"CD",X"7B",X"19", + X"AF",X"32",X"04",X"41",X"01",X"05",X"FF",X"E7",X"01",X"06",X"78",X"EF",X"3A",X"C1",X"40",X"CB", + X"47",X"20",X"05",X"3A",X"CF",X"40",X"18",X"03",X"3A",X"D0",X"40",X"FD",X"E5",X"FE",X"05",X"38", + X"10",X"FE",X"09",X"38",X"06",X"FD",X"21",X"AD",X"10",X"18",X"0A",X"FD",X"21",X"38",X"13",X"18", + X"04",X"FD",X"21",X"58",X"27",X"CD",X"0A",X"0F",X"FD",X"E1",X"FD",X"6E",X"12",X"FD",X"66",X"13", + X"06",X"04",X"11",X"02",X"41",X"CD",X"9C",X"24",X"CD",X"E5",X"26",X"CD",X"92",X"09",X"3A",X"39", + X"41",X"A7",X"28",X"2B",X"FD",X"21",X"39",X"41",X"E6",X"BF",X"32",X"39",X"41",X"AF",X"32",X"EF", + X"40",X"32",X"EE",X"40",X"CD",X"95",X"18",X"CD",X"25",X"24",X"3A",X"39",X"41",X"E6",X"04",X"28", + X"05",X"11",X"CD",X"1B",X"18",X"03",X"11",X"DE",X"0B",X"2A",X"3B",X"41",X"CD",X"D0",X"14",X"3E", + X"0D",X"D7",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"19",X"21",X"0D",X"41",X"01",X"12",X"00",X"CD", + X"CE",X"15",X"3A",X"CF",X"40",X"3C",X"32",X"CF",X"40",X"3A",X"F0",X"40",X"3C",X"32",X"F0",X"40", + X"18",X"1D",X"21",X"1F",X"41",X"01",X"12",X"00",X"CD",X"CE",X"15",X"3A",X"D0",X"40",X"3C",X"FE", + X"11",X"38",X"02",X"3E",X"01",X"32",X"D0",X"40",X"3A",X"F1",X"40",X"3C",X"32",X"F1",X"40",X"C3", + X"64",X"13",X"3E",X"20",X"F7",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"08",X"FD",X"66",X"09",X"11", + X"02",X"40",X"01",X"03",X"00",X"ED",X"B0",X"3E",X"03",X"32",X"ED",X"40",X"C9",X"01",X"08",X"02", + X"3A",X"07",X"41",X"A7",X"20",X"0D",X"3A",X"15",X"40",X"FE",X"09",X"28",X"06",X"D2",X"00",X"00", + X"E7",X"E7",X"C9",X"EF",X"EF",X"C9",X"01",X"F0",X"48",X"21",X"07",X"23",X"DF",X"C9",X"06",X"06", + X"3A",X"C1",X"40",X"CB",X"47",X"20",X"06",X"DD",X"21",X"0D",X"41",X"18",X"04",X"DD",X"21",X"1F", + X"41",X"DD",X"7E",X"00",X"CB",X"7F",X"C8",X"DD",X"5E",X"01",X"DD",X"56",X"02",X"DD",X"23",X"DD", + X"23",X"DD",X"23",X"EB",X"FE",X"80",X"20",X"0A",X"7E",X"FE",X"39",X"20",X"02",X"36",X"2E",X"10", + X"E0",X"C9",X"CB",X"5F",X"20",X"17",X"CB",X"57",X"20",X"0E",X"CB",X"4F",X"20",X"05",X"11",X"01", + X"00",X"18",X"0D",X"11",X"FF",X"FF",X"18",X"08",X"11",X"E0",X"FF",X"18",X"03",X"11",X"20",X"00", + X"7E",X"FE",X"39",X"28",X"07",X"FE",X"2E",X"20",X"B8",X"19",X"18",X"F4",X"36",X"2E",X"18",X"B1", + X"AF",X"32",X"C1",X"40",X"3E",X"01",X"32",X"F0",X"40",X"32",X"CF",X"40",X"32",X"D0",X"40",X"3C", + X"32",X"C0",X"40",X"CD",X"80",X"02",X"CD",X"02",X"21",X"CD",X"63",X"05",X"CD",X"5F",X"23",X"C3", + X"94",X"12",X"3E",X"10",X"32",X"7B",X"41",X"CD",X"88",X"0A",X"3E",X"06",X"F7",X"CD",X"02",X"1B", + X"E6",X"0C",X"28",X"F6",X"08",X"3E",X"2E",X"CD",X"9A",X"0A",X"CB",X"39",X"08",X"E6",X"04",X"20", + X"08",X"79",X"FE",X"1D",X"30",X"08",X"3C",X"18",X"05",X"79",X"A7",X"28",X"01",X"3D",X"32",X"7B", + X"41",X"3E",X"29",X"CD",X"9A",X"0A",X"18",X"D2",X"3E",X"29",X"CD",X"9A",X"0A",X"3E",X"04",X"F7", + X"3E",X"2E",X"CD",X"9A",X"0A",X"3E",X"04",X"F7",X"18",X"EE",X"21",X"F2",X"24",X"ED",X"4B",X"7B", + X"41",X"06",X"00",X"CB",X"21",X"09",X"5E",X"23",X"56",X"12",X"C9",X"82",X"FF",X"05",X"1A",X"1A", + X"DB",X"4B",X"21",X"CE",X"48",X"01",X"03",X"17",X"CD",X"86",X"02",X"CD",X"F6",X"18",X"FD",X"7E", + X"09",X"D7",X"3E",X"20",X"F7",X"3E",X"04",X"CF",X"C9",X"81",X"F8",X"40",X"05",X"0A",X"EF",X"48", + X"25",X"23",X"06",X"08",X"81",X"F8",X"40",X"05",X"0A",X"EF",X"48",X"3B",X"23",X"06",X"08",X"ED", + X"56",X"21",X"A8",X"1F",X"11",X"00",X"40",X"01",X"10",X"00",X"ED",X"B0",X"21",X"00",X"40",X"01", + X"FF",X"10",X"0C",X"ED",X"A3",X"20",X"FB",X"DB",X"0E",X"C3",X"7B",X"0D",X"3E",X"80",X"D3",X"06", + X"DB",X"0E",X"C3",X"82",X"0D",X"07",X"07",X"07",X"B3",X"5F",X"AF",X"D3",X"06",X"D3",X"0C",X"7B", + X"EE",X"18",X"5F",X"08",X"0E",X"0B",X"21",X"9F",X"15",X"46",X"23",X"ED",X"B3",X"DB",X"03",X"E6", + X"F0",X"0F",X"0F",X"0F",X"0F",X"57",X"3E",X"01",X"D3",X"0A",X"DB",X"03",X"E6",X"F0",X"B2",X"57", + X"AF",X"D3",X"0A",X"7A",X"EE",X"02",X"57",X"FB",X"08",X"C2",X"F1",X"06",X"08",X"C2",X"5F",X"63", + X"31",X"00",X"44",X"CD",X"C8",X"15",X"3E",X"01",X"D3",X"06",X"C3",X"4A",X"0B",X"81",X"F8",X"40", + X"05",X"0A",X"6F",X"49",X"51",X"23",X"06",X"08",X"80",X"00",X"30",X"04",X"80",X"00",X"10",X"01", + X"20",X"00",X"30",X"04",X"20",X"00",X"20",X"04",X"40",X"00",X"0C",X"05",X"C0",X"00",X"28",X"01", + X"10",X"00",X"04",X"01",X"38",X"04",X"80",X"00",X"08",X"01",X"60",X"00",X"20",X"01",X"C0",X"00", + X"30",X"01",X"FF",X"00",X"80",X"00",X"00",X"1A",X"A7",X"C8",X"47",X"13",X"1A",X"77",X"C5",X"01", + X"20",X"00",X"09",X"C1",X"13",X"10",X"F5",X"C9",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"0C",X"FD", + X"66",X"0D",X"11",X"D9",X"40",X"06",X"00",X"4E",X"23",X"ED",X"B0",X"21",X"D9",X"40",X"22",X"D7", + X"40",X"FD",X"6E",X"0E",X"FD",X"66",X"0F",X"22",X"D5",X"40",X"2A",X"03",X"40",X"7C",X"D6",X"08", + X"E6",X"F8",X"67",X"7D",X"D6",X"08",X"E6",X"F8",X"6F",X"22",X"D2",X"40",X"AF",X"32",X"D4",X"40", + X"3E",X"01",X"32",X"D1",X"40",X"C9",X"06",X"01",X"85",X"86",X"87",X"88",X"89",X"8A",X"06",X"01", + X"8B",X"8C",X"8D",X"8E",X"89",X"8A",X"11",X"89",X"41",X"01",X"07",X"00",X"ED",X"B0",X"11",X"90", + X"41",X"21",X"8C",X"41",X"01",X"04",X"00",X"ED",X"B0",X"2A",X"8E",X"41",X"22",X"94",X"41",X"3A", + X"89",X"41",X"E6",X"06",X"3A",X"8B",X"41",X"20",X"1E",X"3D",X"E6",X"07",X"87",X"4F",X"87",X"81", + X"4F",X"06",X"00",X"3A",X"89",X"41",X"E6",X"0C",X"20",X"08",X"21",X"1C",X"26",X"09",X"22",X"96", + X"41",X"C9",X"21",X"E8",X"14",X"18",X"F6",X"E6",X"07",X"3C",X"87",X"4F",X"87",X"81",X"3D",X"18", + X"DF",X"3A",X"89",X"41",X"CB",X"57",X"C2",X"55",X"0E",X"CB",X"5F",X"C2",X"AB",X"0D",X"CB",X"4F", + X"C2",X"DF",X"0C",X"3E",X"01",X"F7",X"ED",X"5B",X"92",X"41",X"3A",X"8B",X"41",X"E6",X"07",X"FE", + X"01",X"28",X"61",X"1A",X"FE",X"2E",X"28",X"0C",X"06",X"03",X"2A",X"96",X"41",X"BE",X"28",X"17", + X"23",X"23",X"10",X"F9",X"01",X"20",X"00",X"EB",X"09",X"3A",X"91",X"41",X"3D",X"28",X"0D",X"32", + X"91",X"41",X"22",X"92",X"41",X"18",X"CF",X"23",X"7E",X"12",X"18",X"E8",X"3A",X"90",X"41",X"3D", + X"28",X"15",X"32",X"90",X"41",X"3A",X"8D",X"41",X"32",X"91",X"41",X"2A",X"94",X"41",X"23",X"22", + X"94",X"41",X"22",X"92",X"41",X"18",X"AC",X"3A",X"8B",X"41",X"3C",X"47",X"3A",X"8A",X"41",X"B8", + X"28",X"09",X"78",X"32",X"8B",X"41",X"CD",X"EE",X"0B",X"18",X"98",X"21",X"89",X"41",X"CB",X"BE", + X"3E",X"05",X"CF",X"C9",X"1A",X"FE",X"39",X"28",X"18",X"FE",X"2E",X"20",X"A7",X"1B",X"1A",X"FE", + X"6F",X"28",X"0A",X"FE",X"55",X"28",X"06",X"3E",X"2E",X"13",X"12",X"18",X"97",X"3E",X"54",X"18", + X"F8",X"1B",X"1A",X"FE",X"2E",X"28",X"04",X"3E",X"6F",X"18",X"EE",X"3E",X"55",X"18",X"EA",X"3E", + X"01",X"F7",X"ED",X"5B",X"92",X"41",X"3A",X"8B",X"41",X"E6",X"07",X"FE",X"06",X"28",X"61",X"1A", + X"FE",X"2E",X"28",X"0C",X"06",X"03",X"2A",X"96",X"41",X"BE",X"28",X"17",X"2B",X"2B",X"10",X"F9", + X"01",X"E0",X"FF",X"EB",X"09",X"3A",X"91",X"41",X"3D",X"28",X"0D",X"32",X"91",X"41",X"22",X"92", + X"41",X"18",X"CF",X"2B",X"7E",X"12",X"18",X"E8",X"3A",X"90",X"41",X"3D",X"28",X"15",X"32",X"90", + X"41",X"3A",X"8D",X"41",X"32",X"91",X"41",X"2A",X"94",X"41",X"2B",X"22",X"92",X"41",X"22",X"94", + X"41",X"18",X"AC",X"3A",X"8B",X"41",X"3D",X"47",X"3A",X"8A",X"41",X"B8",X"28",X"09",X"78",X"32", + X"8B",X"41",X"CD",X"EE",X"0B",X"18",X"98",X"21",X"89",X"41",X"CB",X"BE",X"3E",X"05",X"CF",X"C9", + X"1A",X"FE",X"69",X"28",X"18",X"FE",X"2E",X"20",X"A7",X"13",X"1A",X"FE",X"6A",X"28",X"0A",X"FE", + X"4A",X"28",X"06",X"3E",X"2E",X"1B",X"12",X"18",X"97",X"3E",X"4B",X"18",X"F8",X"13",X"1A",X"FE", + X"2E",X"28",X"04",X"3E",X"6A",X"18",X"EE",X"3E",X"4A",X"18",X"EA",X"3C",X"E6",X"07",X"5F",X"C3", + X"FC",X"0A",X"2F",X"E6",X"07",X"07",X"C3",X"05",X"0B",X"FD",X"73",X"4E",X"CD",X"C4",X"43",X"5F", + X"21",X"DF",X"70",X"4E",X"06",X"00",X"CD",X"98",X"43",X"2E",X"ED",X"77",X"2E",X"FA",X"4E",X"2C", + X"46",X"2E",X"EE",X"71",X"23",X"70",X"2E",X"FD",X"4E",X"06",X"C8",X"3E",X"01",X"F7",X"ED",X"5B", + X"92",X"41",X"3A",X"8B",X"41",X"E6",X"07",X"FE",X"02",X"28",X"61",X"1A",X"FE",X"2E",X"28",X"0C", + X"06",X"03",X"2A",X"96",X"41",X"BE",X"28",X"14",X"23",X"23",X"10",X"F9",X"13",X"3A",X"90",X"41", + X"3D",X"28",X"0E",X"32",X"90",X"41",X"ED",X"53",X"92",X"41",X"18",X"D2",X"23",X"7E",X"12",X"18", + X"EB",X"3A",X"91",X"41",X"3D",X"28",X"18",X"32",X"91",X"41",X"3A",X"8C",X"41",X"32",X"90",X"41", + X"2A",X"94",X"41",X"01",X"20",X"00",X"09",X"22",X"94",X"41",X"22",X"92",X"41",X"18",X"AC",X"3A", + X"8B",X"41",X"3C",X"47",X"3A",X"8A",X"41",X"B8",X"28",X"09",X"78",X"32",X"8B",X"41",X"CD",X"EE", + X"0B",X"18",X"98",X"21",X"89",X"41",X"CB",X"BE",X"3E",X"05",X"CF",X"C9",X"1A",X"FE",X"61",X"28", + X"22",X"FE",X"2E",X"20",X"A7",X"EB",X"01",X"E0",X"FF",X"01",X"E0",X"FF",X"09",X"7E",X"FE",X"62", + X"28",X"0D",X"FE",X"3C",X"28",X"09",X"3E",X"2E",X"A7",X"ED",X"42",X"EB",X"12",X"18",X"8D",X"3E", + X"3D",X"18",X"F5",X"EB",X"01",X"E0",X"FF",X"09",X"7E",X"FE",X"2E",X"28",X"04",X"3E",X"62",X"18", + X"E7",X"3E",X"3C",X"18",X"E3",X"3E",X"01",X"F7",X"ED",X"5B",X"92",X"41",X"3A",X"8B",X"41",X"E6", + X"07",X"FE",X"07",X"28",X"61",X"1A",X"FE",X"2E",X"28",X"0C",X"06",X"03",X"2A",X"96",X"41",X"BE", + X"28",X"14",X"2B",X"2B",X"10",X"F9",X"1B",X"3A",X"90",X"41",X"3D",X"28",X"0E",X"32",X"90",X"41", + X"ED",X"53",X"92",X"41",X"18",X"D2",X"2B",X"7E",X"12",X"18",X"EB",X"3A",X"91",X"41",X"3D",X"28", + X"18",X"32",X"91",X"41",X"3A",X"8C",X"41",X"32",X"90",X"41",X"2A",X"94",X"41",X"01",X"E0",X"FF", + X"09",X"22",X"92",X"41",X"22",X"94",X"41",X"18",X"AC",X"3A",X"8B",X"41",X"3D",X"47",X"3A",X"8A", + X"41",X"B8",X"28",X"09",X"78",X"32",X"8B",X"41",X"CD",X"EE",X"0B",X"18",X"98",X"21",X"89",X"41", + X"CB",X"BE",X"3E",X"05",X"CF",X"C9",X"1A",X"FE",X"39",X"28",X"1F",X"FE",X"2E",X"20",X"A7",X"EB", + X"01",X"20",X"00",X"09",X"7E",X"FE",X"67",X"28",X"0D",X"FE",X"47",X"28",X"09",X"3E",X"2E",X"A7", + X"ED",X"42",X"EB",X"12",X"18",X"90",X"3E",X"46",X"18",X"F5",X"EB",X"01",X"20",X"00",X"09",X"7E", + X"FE",X"2E",X"28",X"04",X"3E",X"67",X"18",X"E7",X"3E",X"47",X"18",X"E3",X"04",X"01",X"8F",X"90", + X"91",X"92",X"03",X"02",X"98",X"2E",X"99",X"2E",X"96",X"97",X"3A",X"04",X"41",X"E6",X"80",X"28", + X"05",X"3E",X"0D",X"D7",X"18",X"F4",X"FD",X"7E",X"00",X"32",X"04",X"41",X"FD",X"23",X"FD",X"7E", + X"01",X"D3",X"05",X"01",X"06",X"04",X"E7",X"3E",X"02",X"F7",X"3A",X"04",X"41",X"E6",X"01",X"28", + X"04",X"01",X"06",X"04",X"EF",X"FD",X"7E",X"00",X"D6",X"02",X"F7",X"FD",X"23",X"FD",X"23",X"FD", + X"7E",X"00",X"A7",X"20",X"D9",X"3E",X"FF",X"D3",X"05",X"01",X"06",X"04",X"EF",X"AF",X"32",X"04", + X"41",X"3E",X"0D",X"CF",X"C9",X"CD",X"80",X"02",X"CD",X"02",X"21",X"CD",X"63",X"05",X"CD",X"5F", + X"23",X"CD",X"E8",X"00",X"CD",X"CE",X"09",X"CD",X"98",X"0B",X"CD",X"E1",X"1F",X"3E",X"05",X"32", + X"F8",X"40",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"06",X"FD",X"66",X"07",X"01",X"01",X"05",X"CD", + X"86",X"02",X"3E",X"08",X"F7",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"06",X"FD",X"66",X"07",X"11", + X"DB",X"1F",X"CD",X"87",X"0B",X"3E",X"08",X"F7",X"3A",X"F8",X"40",X"3D",X"32",X"F8",X"40",X"20", + X"D1",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"05",X"21",X"F0",X"40",X"18",X"03",X"21",X"F1",X"40", + X"7E",X"D9",X"F5",X"CD",X"00",X"20",X"3E",X"2E",X"77",X"23",X"77",X"F1",X"3D",X"D9",X"77",X"FD", + X"2A",X"FE",X"40",X"FD",X"6E",X"0A",X"FD",X"66",X"0B",X"11",X"02",X"40",X"01",X"03",X"00",X"ED", + X"B0",X"3E",X"01",X"32",X"ED",X"40",X"21",X"00",X"02",X"22",X"F2",X"40",X"21",X"00",X"04",X"22", + X"F4",X"40",X"2A",X"03",X"40",X"22",X"F6",X"40",X"3E",X"01",X"F7",X"01",X"C7",X"08",X"C5",X"CD", + X"84",X"25",X"CD",X"F7",X"00",X"CD",X"11",X"1D",X"C3",X"1B",X"1F",X"AF",X"32",X"BF",X"40",X"CD", + X"10",X"1A",X"CD",X"AD",X"15",X"CD",X"7B",X"19",X"CD",X"71",X"19",X"21",X"0D",X"41",X"01",X"24", + X"00",X"CD",X"CE",X"15",X"CD",X"80",X"02",X"CD",X"63",X"05",X"21",X"37",X"49",X"11",X"41",X"1F", + X"CD",X"87",X"0B",X"21",X"77",X"51",X"01",X"01",X"0D",X"3E",X"F4",X"CD",X"88",X"02",X"11",X"91", + X"01",X"01",X"06",X"78",X"EF",X"01",X"05",X"FF",X"E7",X"01",X"06",X"02",X"E7",X"D5",X"AF",X"32", + X"ED",X"40",X"32",X"EE",X"40",X"32",X"04",X"41",X"CD",X"DE",X"17",X"21",X"4E",X"49",X"11",X"8B", + X"20",X"CD",X"87",X"0B",X"21",X"26",X"4A",X"11",X"9B",X"20",X"CD",X"87",X"0B",X"21",X"26",X"52", + X"01",X"01",X"08",X"3E",X"F2",X"C3",X"88",X"02",X"91",X"09",X"01",X"0B",X"08",X"44",X"4A",X"06", + X"08",X"0F",X"38",X"08",X"23",X"23",X"23",X"23",X"23",X"10",X"F6",X"C9",X"35",X"20",X"F5",X"C5", + X"32",X"19",X"40",X"3E",X"FE",X"0F",X"10",X"FD",X"F3",X"DD",X"A6",X"00",X"DD",X"77",X"00",X"23", + X"5E",X"23",X"56",X"23",X"4E",X"23",X"46",X"23",X"C5",X"FD",X"E1",X"EB",X"D5",X"DD",X"E5",X"11", + X"A4",X"10",X"D5",X"E9",X"DD",X"E1",X"E1",X"3A",X"19",X"40",X"C1",X"18",X"CC",X"81",X"06",X"DD", + X"06",X"D2",X"06",X"C9",X"06",X"E4",X"06",X"DD",X"06",X"D2",X"06",X"E1",X"06",X"DB",X"06",X"D2", + X"06",X"E6",X"06",X"DB",X"06",X"D2",X"06",X"E4",X"06",X"DD",X"06",X"D2",X"06",X"EB",X"06",X"DD", + X"06",X"D7",X"06",X"ED",X"06",X"E1",X"06",X"DB",X"06",X"EE",X"06",X"E4",X"06",X"DD",X"24",X"EE", + X"00",X"AF",X"B1",X"5F",X"7E",X"D6",X"0A",X"D6",X"01",X"9F",X"B3",X"4F",X"7E",X"D6",X"06",X"D6", + X"01",X"2A",X"03",X"40",X"7D",X"D6",X"08",X"A0",X"6F",X"7C",X"D6",X"08",X"A0",X"67",X"22",X"D2", + X"40",X"DD",X"2A",X"D5",X"40",X"DD",X"CB",X"00",X"76",X"28",X"07",X"DD",X"E5",X"3E",X"02",X"CF", + X"DD",X"E1",X"2A",X"D7",X"40",X"3A",X"D4",X"40",X"CB",X"47",X"C2",X"CD",X"11",X"CB",X"4F",X"C2", + X"A9",X"11",X"CB",X"57",X"C2",X"7A",X"11",X"3A",X"D3",X"40",X"DD",X"BE",X"04",X"F5",X"DC",X"F1", + X"11",X"F1",X"47",X"3A",X"D4",X"40",X"CB",X"9F",X"32",X"D4",X"40",X"DD",X"CB",X"00",X"5E",X"28", + X"2C",X"78",X"BE",X"30",X"1F",X"70",X"DD",X"4E",X"01",X"06",X"00",X"21",X"3B",X"1B",X"09",X"5E", + X"23",X"56",X"C5",X"FD",X"E5",X"D5",X"FD",X"E1",X"CD",X"0A",X"0F",X"FD",X"E1",X"C1",X"CD",X"B2", + X"22",X"CD",X"85",X"24",X"3A",X"D4",X"40",X"E6",X"0F",X"C2",X"01",X"11",X"C9",X"DD",X"CB",X"00", + X"56",X"28",X"F1",X"7E",X"B8",X"30",X"ED",X"70",X"18",X"EA",X"3A",X"D3",X"40",X"DD",X"BE",X"02", + X"28",X"05",X"F5",X"D4",X"0D",X"12",X"F1",X"47",X"3A",X"D4",X"40",X"CB",X"97",X"32",X"D4",X"40", + X"DD",X"CB",X"00",X"56",X"28",X"06",X"7E",X"B8",X"30",X"CA",X"18",X"A9",X"DD",X"CB",X"00",X"5E", + X"28",X"C2",X"78",X"BE",X"30",X"BE",X"70",X"18",X"BB",X"3A",X"D2",X"40",X"DD",X"BE",X"06",X"28", + X"05",X"F5",X"D4",X"17",X"12",X"F1",X"47",X"3A",X"D4",X"40",X"CB",X"8F",X"32",X"D4",X"40",X"DD", + X"CB",X"00",X"4E",X"28",X"02",X"18",X"CF",X"DD",X"CB",X"00",X"46",X"18",X"D3",X"3A",X"D2",X"40", + X"DD",X"BE",X"08",X"F5",X"DC",X"12",X"12",X"F1",X"47",X"3A",X"D4",X"40",X"CB",X"87",X"32",X"D4", + X"40",X"DD",X"CB",X"00",X"46",X"28",X"03",X"C3",X"41",X"11",X"DD",X"CB",X"00",X"4E",X"C3",X"71", + X"11",X"DD",X"7E",X"05",X"A7",X"F2",X"30",X"12",X"CB",X"BF",X"21",X"00",X"28",X"06",X"00",X"4F", + X"09",X"3A",X"D2",X"40",X"BE",X"38",X"01",X"23",X"23",X"7E",X"7E",X"18",X"23",X"DD",X"7E",X"03", + X"18",X"E2",X"DD",X"7E",X"09",X"18",X"03",X"DD",X"7E",X"07",X"A7",X"F2",X"30",X"12",X"CB",X"BF", + X"21",X"00",X"28",X"06",X"00",X"4F",X"09",X"3A",X"D3",X"40",X"BE",X"38",X"01",X"23",X"23",X"7E", + X"32",X"D1",X"40",X"FD",X"2A",X"FE",X"40",X"DD",X"21",X"00",X"00",X"FD",X"4E",X"0E",X"FD",X"46", + X"0F",X"DD",X"09",X"A7",X"20",X"03",X"76",X"00",X"00",X"3D",X"87",X"4F",X"87",X"87",X"81",X"4F", + X"06",X"00",X"DD",X"09",X"DD",X"22",X"D5",X"40",X"3A",X"D1",X"40",X"4F",X"21",X"D8",X"40",X"09", + X"22",X"D7",X"40",X"C9",X"06",X"00",X"21",X"44",X"72",X"09",X"09",X"7E",X"23",X"46",X"21",X"22", + X"74",X"77",X"23",X"70",X"2E",X"21",X"4E",X"CD",X"93",X"52",X"6F",X"26",X"00",X"C3",X"48",X"54", + X"2A",X"22",X"74",X"36",X"FF",X"C3",X"5E",X"54",X"2A",X"22",X"74",X"36",X"00",X"C3",X"5E",X"54", + X"01",X"24",X"74",X"CD",X"21",X"2A",X"49",X"01",X"0A",X"12",X"CD",X"86",X"02",X"3E",X"80",X"F7", + X"21",X"51",X"49",X"11",X"27",X"1C",X"CD",X"87",X"0B",X"21",X"51",X"51",X"01",X"01",X"0F",X"3E", + X"F0",X"CD",X"88",X"02",X"21",X"2E",X"49",X"11",X"41",X"1F",X"CD",X"87",X"0B",X"21",X"2E",X"51", + X"01",X"01",X"11",X"3E",X"F4",X"CD",X"88",X"02",X"3E",X"40",X"F7",X"CD",X"42",X"00",X"FD",X"21", + X"CD",X"06",X"CD",X"F6",X"18",X"FD",X"7E",X"09",X"D7",X"CD",X"71",X"19",X"CD",X"7B",X"19",X"3E", + X"40",X"F7",X"C3",X"2E",X"02",X"FD",X"6E",X"00",X"FD",X"66",X"01",X"11",X"89",X"41",X"CD",X"E6", + X"0B",X"CD",X"31",X"0C",X"3E",X"05",X"D7",X"3E",X"08",X"F7",X"FD",X"6E",X"02",X"FD",X"66",X"03", + X"11",X"89",X"41",X"CD",X"E6",X"0B",X"CD",X"31",X"0C",X"3E",X"05",X"D7",X"3E",X"08",X"F7",X"FD", + X"6E",X"04",X"FD",X"66",X"05",X"11",X"89",X"41",X"CD",X"E6",X"0B",X"CD",X"31",X"0C",X"3E",X"05", + X"D7",X"FD",X"6E",X"06",X"FD",X"66",X"07",X"11",X"89",X"41",X"CD",X"E6",X"0B",X"CD",X"31",X"0C", + X"3E",X"05",X"D7",X"3E",X"08",X"F7",X"18",X"AD",X"81",X"0A",X"E7",X"0A",X"E9",X"0A",X"EB",X"0A", + X"E1",X"0A",X"E4",X"0A",X"E7",X"0A",X"E4",X"0A",X"E7",X"0A",X"E9",X"0A",X"DF",X"0A",X"E1",X"0A", + X"E4",X"1E",X"E1",X"00",X"88",X"53",X"90",X"53",X"B2",X"53",X"D0",X"53",X"EB",X"53",X"21",X"21", + X"74",X"7E",X"D6",X"10",X"CD",X"7B",X"19",X"CD",X"71",X"19",X"01",X"06",X"78",X"EF",X"AF",X"32", + X"ED",X"40",X"AF",X"32",X"EE",X"40",X"32",X"EF",X"40",X"32",X"39",X"41",X"32",X"59",X"41",X"32", + X"98",X"41",X"32",X"A4",X"41",X"32",X"89",X"41",X"32",X"04",X"41",X"32",X"06",X"41",X"CD",X"10", + X"1A",X"CD",X"80",X"02",X"CD",X"63",X"05",X"C3",X"9A",X"13",X"21",X"72",X"49",X"11",X"E0",X"15", + X"CD",X"87",X"0B",X"21",X"72",X"51",X"01",X"01",X"0E",X"3E",X"F4",X"CD",X"88",X"02",X"3A",X"C1", + X"40",X"CB",X"47",X"20",X"05",X"11",X"EF",X"15",X"18",X"03",X"11",X"F8",X"15",X"21",X"CF",X"49", + X"CD",X"87",X"0B",X"21",X"CC",X"49",X"11",X"01",X"16",X"CD",X"87",X"0B",X"21",X"CC",X"51",X"01", + X"01",X"08",X"3E",X"F0",X"CD",X"88",X"02",X"3E",X"10",X"F7",X"3A",X"C1",X"40",X"CB",X"47",X"20", + X"05",X"3A",X"CF",X"40",X"18",X"03",X"3A",X"D0",X"40",X"CD",X"8D",X"21",X"32",X"0A",X"41",X"0F", + X"0F",X"0F",X"0F",X"E6",X"0F",X"20",X"02",X"3E",X"2E",X"32",X"8C",X"4A",X"3E",X"08",X"F7",X"3A", + X"0A",X"41",X"E6",X"0F",X"32",X"AC",X"4A",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"05",X"21",X"0D", + X"41",X"18",X"03",X"21",X"1F",X"41",X"7E",X"E6",X"80",X"20",X"09",X"CD",X"42",X"00",X"FD",X"21", + X"7D",X"04",X"18",X"04",X"FD",X"21",X"A1",X"21",X"CD",X"0A",X"0F",X"3E",X"0D",X"D7",X"CD",X"7B", + X"19",X"C3",X"55",X"0F",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"05",X"3A",X"CF",X"40",X"18",X"03", + X"3A",X"D0",X"40",X"FE",X"11",X"D8",X"D6",X"10",X"18",X"F9",X"21",X"02",X"40",X"3A",X"05",X"41", + X"A7",X"28",X"13",X"7E",X"C6",X"08",X"D3",X"02",X"23",X"7E",X"2F",X"D6",X"20",X"D3",X"03",X"23", + X"7E",X"2F",X"D3",X"04",X"18",X"0B",X"7E",X"D3",X"02",X"23",X"7E",X"D3",X"03",X"23",X"7E",X"D3", + X"04",X"DD",X"21",X"C8",X"40",X"DB",X"02",X"DD",X"77",X"00",X"DB",X"06",X"DD",X"77",X"01",X"DB", + X"0A",X"DD",X"77",X"02",X"DB",X"0E",X"DD",X"77",X"03",X"C9",X"07",X"1C",X"0C",X"18",X"1B",X"0E", + X"29",X"01",X"FD",X"E5",X"DD",X"E5",X"C5",X"D5",X"E5",X"F5",X"08",X"D9",X"C5",X"D5",X"E5",X"F5", + X"3A",X"87",X"42",X"6F",X"3A",X"A1",X"42",X"67",X"CD",X"D8",X"43",X"AF",X"32",X"00",X"48",X"F1", + X"E1",X"D1",X"C1",X"D9",X"08",X"F1",X"E1",X"D1",X"C1",X"DD",X"E1",X"FD",X"E1",X"FB",X"C9",X"08", + X"11",X"12",X"29",X"1C",X"0C",X"18",X"1B",X"0E",X"07",X"1C",X"0C",X"18",X"1B",X"0E",X"29",X"02", + X"1A",X"4F",X"13",X"1A",X"47",X"13",X"C5",X"E5",X"1A",X"77",X"23",X"13",X"0D",X"20",X"F9",X"E1", + X"01",X"20",X"00",X"09",X"C1",X"10",X"EF",X"C9",X"39",X"61",X"39",X"61",X"39",X"61",X"61",X"62", + X"61",X"3C",X"2E",X"3D",X"62",X"63",X"3C",X"3E",X"3D",X"3F",X"63",X"64",X"3E",X"40",X"3F",X"41", + X"64",X"65",X"40",X"42",X"41",X"43",X"65",X"66",X"42",X"44",X"43",X"45",X"66",X"67",X"44",X"46", + X"45",X"47",X"67",X"39",X"46",X"2E",X"47",X"39",X"3A",X"ED",X"40",X"E6",X"02",X"20",X"5B",X"2A", + X"D5",X"40",X"FD",X"2A",X"FE",X"40",X"CB",X"7E",X"28",X"16",X"3A",X"06",X"41",X"A7",X"20",X"4A", + X"FD",X"6E",X"0A",X"FD",X"66",X"0B",X"11",X"02",X"40",X"01",X"03",X"00",X"ED",X"B0",X"18",X"35", + X"CB",X"76",X"28",X"36",X"7E",X"32",X"01",X"48",X"3A",X"33",X"43",X"6F",X"3A",X"6F",X"43",X"67", + X"CD",X"D8",X"43",X"1A",X"FE",X"36",X"38",X"0C",X"FE",X"70",X"30",X"08",X"FE",X"56",X"38",X"1A", + X"FE",X"60",X"30",X"16",X"FD",X"6E",X"08",X"FD",X"66",X"09",X"11",X"02",X"40",X"01",X"03",X"00", + X"ED",X"B0",X"3E",X"02",X"CF",X"AF",X"32",X"CC",X"40",X"C9",X"DB",X"02",X"E6",X"10",X"28",X"F5", + X"3E",X"01",X"CF",X"C9",X"DD",X"21",X"1A",X"40",X"21",X"1C",X"40",X"DD",X"7E",X"00",X"A7",X"C4", + X"6F",X"10",X"DD",X"23",X"21",X"44",X"40",X"DD",X"7E",X"00",X"A7",X"C4",X"6F",X"10",X"C9",X"0D", + X"B2",X"2E",X"1D",X"0A",X"12",X"1D",X"18",X"2E",X"0C",X"18",X"1B",X"19",X"2D",X"DB",X"00",X"CB", + X"4F",X"20",X"0B",X"01",X"08",X"01",X"E7",X"E7",X"3E",X"FF",X"32",X"05",X"41",X"C9",X"01",X"08", + X"01",X"EF",X"EF",X"AF",X"32",X"05",X"41",X"C9",X"21",X"10",X"40",X"01",X"F0",X"01",X"3E",X"00", + X"57",X"72",X"23",X"0B",X"78",X"B1",X"20",X"F9",X"C9",X"81",X"01",X"EE",X"0B",X"08",X"44",X"4A", + X"0E",X"15",X"0E",X"1D",X"B8",X"1C",X"2E",X"0A",X"1D",X"1D",X"0A",X"0C",X"14",X"2E",X"B3",X"08", + X"19",X"15",X"0A",X"22",X"0E",X"1B",X"2E",X"01",X"08",X"19",X"15",X"0A",X"22",X"0E",X"1B",X"2E", + X"02",X"06",X"15",X"0E",X"1F",X"0E",X"15",X"2C",X"06",X"00",X"21",X"C7",X"26",X"09",X"3A",X"C1", + X"40",X"CB",X"47",X"20",X"05",X"11",X"C2",X"40",X"18",X"03",X"11",X"C5",X"40",X"06",X"03",X"AF", + X"1A",X"8E",X"27",X"12",X"13",X"23",X"10",X"F8",X"C9",X"06",X"00",X"21",X"C7",X"26",X"09",X"3A", + X"C1",X"40",X"CB",X"47",X"20",X"05",X"11",X"C2",X"40",X"18",X"03",X"11",X"C5",X"40",X"06",X"03", + X"AF",X"1A",X"9E",X"27",X"12",X"13",X"23",X"10",X"F8",X"1B",X"20",X"01",X"C9",X"AF",X"12",X"1B", + X"12",X"1B",X"12",X"37",X"C9",X"DD",X"FD",X"E5",X"D1",X"01",X"04",X"00",X"18",X"06",X"FD",X"E5", + X"D1",X"01",X"0C",X"00",X"ED",X"B0",X"FD",X"6E",X"05",X"FD",X"66",X"06",X"7E",X"FE",X"39",X"20", + X"07",X"FD",X"46",X"00",X"CB",X"78",X"20",X"0C",X"3E",X"01",X"F7",X"FD",X"CB",X"00",X"BE",X"FD", + X"7E",X"09",X"CF",X"C9",X"FD",X"6E",X"05",X"FD",X"66",X"06",X"FD",X"7E",X"04",X"CB",X"58",X"C2", + X"D2",X"16",X"CB",X"50",X"C2",X"5D",X"17",X"CB",X"48",X"C2",X"0D",X"17",X"FD",X"86",X"02",X"CB", + X"5F",X"20",X"0C",X"FD",X"77",X"04",X"CD",X"C9",X"17",X"FD",X"7E",X"03",X"F7",X"18",X"C2",X"E6", + X"07",X"FD",X"77",X"04",X"E5",X"23",X"CD",X"C3",X"17",X"CD",X"B5",X"17",X"11",X"20",X"00",X"E1", + X"36",X"2E",X"19",X"10",X"FB",X"FD",X"7E",X"05",X"E6",X"1F",X"FD",X"BE",X"01",X"30",X"AC",X"C3", + X"A9",X"16",X"FD",X"86",X"02",X"CB",X"5F",X"20",X"08",X"FD",X"77",X"04",X"CD",X"C9",X"17",X"18", + X"C8",X"E6",X"07",X"FD",X"77",X"04",X"E5",X"11",X"20",X"00",X"19",X"CD",X"C3",X"17",X"CD",X"B5", + X"17",X"E1",X"36",X"2E",X"23",X"0D",X"20",X"FA",X"FD",X"6E",X"05",X"FD",X"66",X"06",X"29",X"29", + X"29",X"7C",X"E6",X"1F",X"FD",X"BE",X"01",X"D2",X"7B",X"16",X"C3",X"A9",X"16",X"FD",X"96",X"02", + X"FA",X"1C",X"17",X"20",X"21",X"FD",X"BE",X"04",X"28",X"1C",X"18",X"25",X"08",X"7D",X"E6",X"1F", + X"5F",X"FD",X"7E",X"01",X"BB",X"D2",X"7B",X"16",X"2B",X"08",X"E6",X"07",X"28",X"15",X"4F",X"FD", + X"7E",X"04",X"A7",X"79",X"20",X"0D",X"E6",X"07",X"FD",X"77",X"04",X"CD",X"C3",X"17",X"C3",X"A9", + X"16",X"E6",X"07",X"FD",X"77",X"04",X"E5",X"CD",X"C3",X"17",X"CD",X"B5",X"17",X"E1",X"11",X"20", + X"00",X"23",X"0D",X"20",X"FC",X"36",X"2E",X"19",X"10",X"FB",X"C3",X"A9",X"16",X"FD",X"96",X"02", + X"FA",X"6C",X"17",X"20",X"29",X"FD",X"BE",X"04",X"28",X"24",X"18",X"2D",X"08",X"5D",X"54",X"29", + X"29",X"29",X"7C",X"E6",X"1F",X"6F",X"FD",X"7E",X"01",X"BD",X"D2",X"7B",X"16",X"21",X"E0",X"FF", + X"19",X"08",X"E6",X"07",X"28",X"15",X"4F",X"FD",X"7E",X"04",X"A7",X"79",X"20",X"0D",X"E6",X"07", + X"FD",X"77",X"04",X"CD",X"C3",X"17",X"C3",X"A9",X"16",X"E6",X"07",X"FD",X"77",X"04",X"E5",X"CD", + X"C3",X"17",X"CD",X"B5",X"17",X"E1",X"11",X"20",X"00",X"19",X"10",X"FD",X"36",X"2E",X"23",X"0D", + X"20",X"FA",X"C3",X"A9",X"16",X"FD",X"6E",X"07",X"FD",X"66",X"08",X"7E",X"23",X"66",X"6F",X"4E", + X"23",X"46",X"C9",X"FD",X"75",X"05",X"FD",X"74",X"06",X"FD",X"5E",X"07",X"FD",X"56",X"08",X"87", + X"4F",X"06",X"00",X"EB",X"09",X"7E",X"23",X"66",X"6F",X"EB",X"CD",X"D0",X"14",X"C9",X"FD",X"21", + X"EB",X"17",X"CD",X"F6",X"18",X"FD",X"7E",X"09",X"D7",X"18",X"F3",X"81",X"F8",X"40",X"FF",X"0A", + X"F2",X"48",X"82",X"20",X"07",X"08",X"7E",X"A7",X"C8",X"23",X"4E",X"23",X"46",X"23",X"5E",X"23", + X"56",X"23",X"EB",X"CD",X"88",X"02",X"EB",X"18",X"ED",X"3B",X"00",X"AB",X"0A",X"09",X"1A",X"86", + X"18",X"4F",X"ED",X"57",X"F3",X"F5",X"AF",X"08",X"FD",X"E5",X"DD",X"21",X"6D",X"40",X"21",X"6F", + X"40",X"DD",X"7E",X"00",X"A7",X"C4",X"3D",X"18",X"DD",X"23",X"21",X"97",X"40",X"DD",X"7E",X"00", + X"A7",X"C4",X"3D",X"18",X"FD",X"E1",X"08",X"47",X"F1",X"78",X"E0",X"FB",X"C9",X"06",X"08",X"0F", + X"38",X"08",X"23",X"23",X"23",X"23",X"23",X"10",X"F6",X"C9",X"32",X"6C",X"40",X"79",X"BE",X"28", + X"05",X"3A",X"6C",X"40",X"18",X"EC",X"C5",X"3E",X"FE",X"0F",X"10",X"FD",X"DD",X"A6",X"00",X"DD", + X"77",X"00",X"08",X"F6",X"FF",X"F5",X"23",X"5E",X"23",X"56",X"23",X"4E",X"23",X"46",X"23",X"C5", + X"FD",X"E1",X"EB",X"D5",X"DD",X"E5",X"11",X"7B",X"18",X"D5",X"E9",X"DD",X"E1",X"E1",X"F1",X"08", + X"C1",X"3A",X"6C",X"40",X"18",X"C1",X"84",X"FF",X"06",X"1A",X"1A",X"DB",X"4B",X"07",X"B2",X"2E", + X"01",X"09",X"08",X"00",X"2E",X"FD",X"E5",X"E1",X"01",X"08",X"00",X"09",X"FD",X"5E",X"02",X"FD", + X"56",X"03",X"01",X"06",X"00",X"ED",X"B0",X"EB",X"FD",X"6E",X"04",X"FD",X"66",X"05",X"FD",X"CB", + X"00",X"56",X"28",X"03",X"2B",X"18",X"04",X"01",X"DF",X"FF",X"09",X"E5",X"EB",X"01",X"03",X"00", + X"ED",X"B0",X"01",X"1D",X"00",X"EB",X"09",X"EB",X"01",X"03",X"00",X"ED",X"B0",X"EB",X"FD",X"6E", + X"02",X"FD",X"66",X"03",X"01",X"00",X"08",X"09",X"EB",X"01",X"06",X"00",X"ED",X"B0",X"EB",X"E1", + X"01",X"00",X"08",X"09",X"EB",X"01",X"03",X"00",X"ED",X"B0",X"EB",X"01",X"1D",X"00",X"09",X"EB", + X"01",X"03",X"00",X"ED",X"B0",X"C9",X"FD",X"6E",X"01",X"FD",X"66",X"02",X"FD",X"7E",X"03",X"77", + X"FD",X"6E",X"07",X"FD",X"66",X"08",X"0E",X"01",X"46",X"FD",X"6E",X"05",X"FD",X"66",X"06",X"FD", + X"CB",X"00",X"46",X"20",X"05",X"CD",X"86",X"02",X"18",X"0A",X"11",X"00",X"08",X"19",X"FD",X"7E", + X"0A",X"CD",X"88",X"02",X"FD",X"7E",X"04",X"F7",X"FD",X"5E",X"07",X"FD",X"56",X"08",X"FD",X"6E", + X"05",X"FD",X"66",X"06",X"E5",X"D5",X"CD",X"87",X"0B",X"E1",X"0E",X"01",X"46",X"E1",X"11",X"00", + X"08",X"19",X"FD",X"7E",X"0A",X"0F",X"0F",X"0F",X"0F",X"CD",X"88",X"02",X"FD",X"7E",X"04",X"F7", + X"FD",X"6E",X"01",X"FD",X"66",X"02",X"35",X"20",X"A7",X"00",X"00",X"00",X"00",X"FD",X"7E",X"09", + X"CF",X"C9",X"E1",X"FD",X"E5",X"D1",X"DD",X"21",X"6D",X"40",X"FD",X"21",X"6F",X"40",X"C3",X"28", + X"1A",X"AF",X"21",X"6C",X"40",X"77",X"23",X"77",X"23",X"77",X"C9",X"AF",X"21",X"19",X"40",X"77", + X"23",X"77",X"23",X"77",X"C9",X"01",X"35",X"1A",X"31",X"01",X"34",X"00",X"1A",X"33",X"00",X"01", + X"32",X"1A",X"31",X"01",X"30",X"00",X"02",X"01",X"57",X"56",X"06",X"F8",X"21",X"03",X"40",X"16", + X"00",X"3A",X"EE",X"40",X"4F",X"3A",X"ED",X"40",X"E6",X"02",X"28",X"03",X"AF",X"18",X"03",X"CD", + X"02",X"1B",X"B1",X"4F",X"3A",X"EF",X"40",X"2F",X"A1",X"4F",X"7E",X"5F",X"CB",X"19",X"30",X"01", + X"3D",X"CB",X"19",X"30",X"01",X"3C",X"77",X"A0",X"08",X"7B",X"A0",X"5F",X"08",X"BB",X"28",X"08", + X"38",X"04",X"CB",X"CA",X"18",X"02",X"CB",X"C2",X"23",X"7E",X"5F",X"CB",X"19",X"30",X"01",X"3C", + X"CB",X"19",X"30",X"01",X"3D",X"77",X"A0",X"08",X"7B",X"A0",X"5F",X"08",X"BB",X"28",X"08",X"38", + X"04",X"CB",X"D2",X"18",X"02",X"CB",X"DA",X"7A",X"E6",X"0F",X"28",X"0C",X"32",X"D4",X"40",X"21", + X"ED",X"40",X"CB",X"4E",X"C0",X"CD",X"F1",X"10",X"C9",X"98",X"08",X"01",X"1A",X"1A",X"A2",X"48", + X"21",X"AA",X"1F",X"11",X"02",X"40",X"01",X"03",X"00",X"ED",X"B0",X"C9",X"E1",X"FD",X"E5",X"D1", + X"DD",X"21",X"1A",X"40",X"FD",X"21",X"1C",X"40",X"01",X"28",X"00",X"08",X"ED",X"57",X"F3",X"F5", + X"D5",X"D9",X"01",X"00",X"08",X"DD",X"7E",X"00",X"FE",X"FF",X"20",X"10",X"DD",X"23",X"D9",X"FD", + X"09",X"D9",X"DD",X"7E",X"00",X"FE",X"FF",X"20",X"03",X"C3",X"00",X"00",X"CB",X"3F",X"30",X"06", + X"0C",X"10",X"F9",X"C3",X"00",X"00",X"F6",X"80",X"05",X"28",X"04",X"CB",X"3F",X"10",X"FC",X"DD", + X"B6",X"00",X"DD",X"77",X"00",X"79",X"87",X"87",X"81",X"4F",X"FD",X"09",X"D9",X"08",X"FD",X"77", + X"00",X"FD",X"75",X"01",X"FD",X"74",X"02",X"FD",X"73",X"03",X"FD",X"72",X"04",X"FD",X"E1",X"F1", + X"E0",X"FB",X"C9",X"80",X"00",X"10",X"04",X"40",X"00",X"20",X"04",X"20",X"00",X"08",X"01",X"20", + X"00",X"08",X"01",X"80",X"00",X"40",X"04",X"20",X"00",X"18",X"04",X"08",X"00",X"08",X"08",X"80", + X"00",X"10",X"01",X"10",X"00",X"10",X"01",X"80",X"00",X"18",X"09",X"80",X"00",X"08",X"00",X"28", + X"08",X"20",X"00",X"08",X"08",X"20",X"00",X"08",X"08",X"60",X"00",X"08",X"01",X"30",X"00",X"18", + X"08",X"80",X"00",X"10",X"0A",X"40",X"00",X"08",X"08",X"C0",X"00",X"10",X"01",X"40",X"00",X"04", + X"08",X"20",X"00",X"04",X"08",X"60",X"00",X"28",X"01",X"40",X"00",X"20",X"01",X"40",X"00",X"08", + X"01",X"80",X"00",X"20",X"04",X"60",X"00",X"08",X"02",X"40",X"00",X"08",X"04",X"80",X"00",X"18", + X"06",X"40",X"00",X"10",X"04",X"C0",X"00",X"20",X"05",X"80",X"00",X"08",X"01",X"40",X"00",X"20", + X"04",X"00",X"DB",X"00",X"E6",X"02",X"20",X"07",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"04",X"DB", + X"01",X"2F",X"C9",X"DB",X"01",X"2F",X"0F",X"0F",X"0F",X"0F",X"C9",X"3E",X"08",X"F7",X"FD",X"CB", + X"00",X"F6",X"01",X"06",X"10",X"E7",X"FD",X"7E",X"00",X"E6",X"0C",X"32",X"EF",X"40",X"07",X"CB", + X"67",X"28",X"02",X"3E",X"04",X"32",X"EE",X"40",X"C3",X"2E",X"25",X"59",X"1B",X"00",X"5D",X"1B", + X"00",X"61",X"1B",X"00",X"65",X"1B",X"00",X"69",X"1B",X"00",X"6D",X"1B",X"00",X"71",X"1B",X"00", + X"21",X"F6",X"70",X"73",X"23",X"77",X"21",X"AB",X"72",X"81",X"03",X"FA",X"00",X"81",X"03",X"FA", + X"00",X"81",X"03",X"FB",X"00",X"81",X"03",X"FC",X"00",X"81",X"03",X"FD",X"00",X"81",X"03",X"FE", + X"00",X"81",X"03",X"FE",X"00",X"DF",X"70",X"4E",X"79",X"12",X"2E",X"F0",X"36",X"07",X"23",X"36", + X"00",X"DD",X"21",X"B0",X"40",X"DD",X"7E",X"19",X"07",X"07",X"07",X"07",X"E6",X"F0",X"5F",X"DD", + X"7E",X"18",X"E6",X"0F",X"B3",X"5F",X"DD",X"7E",X"1A",X"E6",X"4B",X"F6",X"48",X"57",X"3A",X"05", + X"41",X"A7",X"28",X"02",X"13",X"FE",X"1B",X"C9",X"21",X"A2",X"50",X"18",X"03",X"21",X"A2",X"48", + X"0E",X"1A",X"11",X"20",X"00",X"E5",X"DD",X"7E",X"00",X"A7",X"C4",X"BD",X"1F",X"DD",X"23",X"E1", + X"19",X"0D",X"20",X"F1",X"C9",X"06",X"01",X"70",X"71",X"72",X"73",X"74",X"75",X"06",X"01",X"76", + X"77",X"78",X"79",X"74",X"75",X"04",X"01",X"7A",X"7B",X"7C",X"7D",X"03",X"02",X"2E",X"81",X"82", + X"83",X"2E",X"84",X"F5",X"E5",X"21",X"00",X"40",X"78",X"06",X"00",X"09",X"47",X"ED",X"57",X"EA", + X"FA",X"1B",X"78",X"B6",X"77",X"ED",X"79",X"E1",X"F1",X"C9",X"78",X"F3",X"B6",X"77",X"ED",X"79", + X"E1",X"FB",X"F1",X"C9",X"F5",X"E5",X"21",X"00",X"40",X"78",X"06",X"00",X"09",X"47",X"ED",X"57", + X"EA",X"1C",X"1C",X"78",X"2F",X"A6",X"77",X"ED",X"79",X"E1",X"F1",X"C9",X"78",X"2F",X"F3",X"A6", + X"77",X"ED",X"79",X"E1",X"FB",X"F1",X"C9",X"0F",X"2E",X"2E",X"12",X"17",X"1C",X"0E",X"1B",X"1D", + X"2E",X"0C",X"18",X"12",X"17",X"2E",X"2E",X"ED",X"5B",X"E9",X"40",X"3A",X"33",X"43",X"6F",X"3A", + X"6F",X"43",X"67",X"CD",X"D8",X"43",X"ED",X"53",X"0B",X"41",X"DD",X"21",X"98",X"41",X"0E",X"02", + X"DD",X"7E",X"00",X"CB",X"7F",X"C4",X"DB",X"1C",X"EB",X"11",X"0C",X"00",X"DD",X"19",X"EB",X"0D", + X"20",X"EE",X"21",X"89",X"41",X"CB",X"7E",X"28",X"1A",X"7E",X"4F",X"E6",X"0C",X"28",X"0A",X"CB", + X"61",X"28",X"15",X"79",X"EE",X"1C",X"4F",X"18",X"0F",X"CB",X"61",X"28",X"0B",X"79",X"EE",X"13", + X"4F",X"18",X"05",X"0E",X"80",X"18",X"01",X"4E",X"3A",X"C1",X"40",X"E6",X"01",X"20",X"05",X"21", + X"0D",X"41",X"18",X"03",X"21",X"1F",X"41",X"06",X"06",X"CB",X"7E",X"28",X"08",X"23",X"23",X"23", + X"10",X"F7",X"CD",X"00",X"00",X"71",X"23",X"73",X"23",X"72",X"C9",X"23",X"70",X"2C",X"73",X"CD", + X"9B",X"5D",X"21",X"62",X"74",X"7E",X"2C",X"46",X"D3",X"F2",X"2C",X"7E",X"D6",X"31",X"C2",X"C7", + X"5D",X"2C",X"36",X"20",X"C3",X"CA",X"5D",X"2C",X"36",X"00",X"2E",X"62",X"4E",X"2C",X"46",X"48", + X"79",X"E6",X"0F",X"2E",X"65",X"B6",X"D3",X"F1",X"DB",X"F0",X"2C",X"DD",X"7E",X"00",X"E6",X"0C", + X"20",X"0A",X"CD",X"FF",X"1C",X"C0",X"CD",X"84",X"1E",X"C0",X"18",X"08",X"CD",X"62",X"1E",X"C0", + X"CD",X"6D",X"1E",X"C0",X"0E",X"80",X"DD",X"5E",X"0A",X"DD",X"56",X"0B",X"E1",X"18",X"89",X"D5", + X"DD",X"6E",X"05",X"DD",X"66",X"06",X"29",X"29",X"29",X"EB",X"29",X"29",X"29",X"7A",X"D1",X"94", + X"C9",X"3E",X"01",X"D7",X"CD",X"71",X"19",X"CD",X"7B",X"19",X"CD",X"6F",X"1D",X"AF",X"21",X"ED", + X"40",X"36",X"00",X"CD",X"37",X"1C",X"3E",X"F7",X"32",X"02",X"40",X"CD",X"80",X"02",X"3E",X"02", + X"F7",X"AF",X"32",X"04",X"41",X"3E",X"FF",X"D3",X"05",X"01",X"06",X"04",X"EF",X"CD",X"63",X"05", + X"CD",X"5F",X"23",X"CD",X"E8",X"00",X"CD",X"CE",X"09",X"CD",X"E1",X"1F",X"3E",X"07",X"32",X"02", + X"40",X"3E",X"02",X"F7",X"CD",X"10",X"1A",X"FD",X"21",X"39",X"41",X"FD",X"CB",X"00",X"7E",X"C4", + X"75",X"1D",X"FD",X"21",X"59",X"41",X"FD",X"CB",X"00",X"7E",X"C4",X"75",X"1D",X"18",X"68",X"01", + X"06",X"08",X"E7",X"EF",X"C9",X"FD",X"CB",X"00",X"B6",X"AF",X"32",X"EE",X"40",X"32",X"EF",X"40", + X"CD",X"95",X"18",X"CD",X"25",X"24",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"01",X"00",X"08",X"09", + X"01",X"06",X"01",X"FD",X"7E",X"01",X"CD",X"88",X"02",X"FD",X"CB",X"00",X"56",X"28",X"05",X"11", + X"1C",X"21",X"18",X"03",X"11",X"2C",X"21",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"CD",X"D0",X"14", + X"01",X"06",X"40",X"E7",X"3E",X"04",X"F7",X"FD",X"CB",X"00",X"56",X"28",X"05",X"11",X"24",X"21", + X"18",X"03",X"11",X"34",X"21",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"CD",X"D0",X"14",X"01",X"06", + X"40",X"EF",X"3E",X"04",X"F7",X"18",X"C2",X"3E",X"60",X"F7",X"CD",X"7B",X"19",X"01",X"06",X"78", + X"EF",X"CD",X"10",X"1A",X"3A",X"C0",X"40",X"CB",X"4F",X"20",X"14",X"3A",X"F0",X"40",X"A7",X"C2", + X"5C",X"1E",X"FD",X"21",X"4D",X"0B",X"CD",X"B2",X"0A",X"3E",X"04",X"D7",X"C3",X"80",X"07",X"3A", + X"C1",X"40",X"E6",X"01",X"20",X"2B",X"3A",X"F0",X"40",X"A7",X"28",X"12",X"3A",X"F1",X"40",X"A7", + X"CA",X"5C",X"1E",X"3E",X"01",X"32",X"C1",X"40",X"CD",X"BE",X"15",X"C3",X"5C",X"1E",X"FD",X"21", + X"C9",X"0A",X"CD",X"B2",X"0A",X"3E",X"04",X"D7",X"3A",X"F1",X"40",X"A7",X"20",X"E5",X"C3",X"80", + X"07",X"3A",X"F1",X"40",X"A7",X"28",X"12",X"3A",X"F0",X"40",X"A7",X"CA",X"5C",X"1E",X"3E",X"00", + X"32",X"C1",X"40",X"CD",X"AD",X"15",X"C3",X"5C",X"1E",X"FD",X"21",X"D4",X"0A",X"CD",X"B2",X"0A", + X"3E",X"04",X"D7",X"3A",X"F0",X"40",X"A7",X"20",X"E5",X"C3",X"80",X"07",X"00",X"00",X"00",X"C3", + X"64",X"13",X"DD",X"7E",X"05",X"E6",X"1F",X"6F",X"7B",X"E6",X"1F",X"95",X"C9",X"DD",X"6E",X"05", + X"DD",X"66",X"06",X"29",X"29",X"29",X"D5",X"EB",X"29",X"29",X"29",X"7A",X"D1",X"94",X"C8",X"3C", + X"C8",X"3D",X"3D",X"C9",X"DD",X"7E",X"05",X"E6",X"1F",X"6F",X"7B",X"E6",X"1F",X"95",X"C8",X"3C", + X"C8",X"3D",X"3D",X"C9",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"05",X"3A",X"CF",X"40",X"18",X"03", + X"3A",X"D0",X"40",X"0E",X"08",X"FE",X"11",X"38",X"0A",X"FE",X"21",X"38",X"02",X"00",X"0D",X"0D", + X"0D",X"0D",X"00",X"3A",X"CD",X"40",X"3C",X"32",X"CD",X"40",X"B9",X"38",X"3C",X"AF",X"32",X"CD", + X"40",X"21",X"02",X"40",X"3A",X"CE",X"40",X"A7",X"20",X"17",X"7E",X"E6",X"07",X"FE",X"06",X"20", + X"09",X"3E",X"FF",X"32",X"CE",X"40",X"06",X"06",X"18",X"1A",X"3C",X"47",X"18",X"16",X"00",X"00", + X"00",X"7E",X"E6",X"07",X"20",X"09",X"3E",X"00",X"32",X"CE",X"40",X"06",X"00",X"18",X"05",X"3D", + X"47",X"00",X"00",X"00",X"7E",X"E6",X"F8",X"B0",X"77",X"C9",X"21",X"17",X"1F",X"DB",X"00",X"E6", + X"0C",X"0F",X"0F",X"4F",X"06",X"00",X"09",X"7E",X"32",X"F0",X"40",X"08",X"3A",X"C0",X"40",X"CB", + X"4F",X"C8",X"08",X"32",X"F1",X"40",X"C9",X"02",X"03",X"04",X"05",X"3E",X"1E",X"32",X"09",X"41", + X"3E",X"F0",X"F7",X"3A",X"09",X"41",X"3D",X"32",X"09",X"41",X"20",X"F4",X"3A",X"39",X"41",X"E6", + X"80",X"20",X"09",X"CD",X"E3",X"06",X"3E",X"32",X"F7",X"CD",X"03",X"22",X"3E",X"20",X"F7",X"18", + X"EB",X"11",X"2E",X"2E",X"0C",X"1B",X"0A",X"23",X"22",X"2E",X"0B",X"0A",X"15",X"15",X"18",X"18", + X"17",X"2E",X"2E",X"21",X"12",X"40",X"01",X"07",X"04",X"E7",X"01",X"08",X"00",X"E7",X"E7",X"DB", + X"03",X"2F",X"E6",X"40",X"BE",X"77",X"C0",X"23",X"BE",X"C8",X"77",X"A7",X"01",X"0D",X"01",X"28", + X"02",X"E7",X"C9",X"EF",X"DB",X"00",X"E6",X"E0",X"C8",X"07",X"07",X"07",X"4F",X"06",X"00",X"21", + X"A0",X"1F",X"09",X"7E",X"21",X"14",X"40",X"11",X"15",X"40",X"86",X"FE",X"0C",X"30",X"02",X"77", + X"C9",X"D6",X"0C",X"08",X"1A",X"FE",X"09",X"28",X"05",X"D2",X"00",X"00",X"3C",X"12",X"08",X"18", + X"EA",X"03",X"04",X"06",X"0C",X"18",X"24",X"30",X"00",X"00",X"F7",X"80",X"00",X"FF",X"00",X"14", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"DD",X"7E",X"00",X"A7",X"C8",X"47",X"DD",X"23", + X"DD",X"7E",X"00",X"FE",X"2E",X"28",X"08",X"77",X"23",X"10",X"FC",X"DD",X"23",X"18",X"E9",X"23", + X"10",X"FD",X"DD",X"23",X"18",X"E2",X"04",X"10",X"18",X"0A",X"15",X"05",X"1C",X"1D",X"0A",X"1B", + X"1D",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"05",X"3A",X"F0",X"40",X"18",X"03",X"3A",X"F1",X"40", + X"A7",X"C8",X"F5",X"CD",X"00",X"20",X"11",X"96",X"19",X"CD",X"D0",X"14",X"F1",X"3D",X"18",X"F0", + X"07",X"4F",X"06",X"00",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"10",X"FD",X"66",X"11",X"09",X"5E", + X"23",X"56",X"EB",X"C9",X"21",X"03",X"00",X"4D",X"79",X"86",X"4F",X"23",X"7C",X"FE",X"28",X"20", + X"F7",X"79",X"FE",X"6A",X"28",X"0A",X"2E",X"60",X"26",X"0A",X"2B",X"2B",X"D1",X"E3",X"E5",X"D5", + X"CA",X"64",X"13",X"43",X"20",X"46",X"20",X"4A",X"20",X"4E",X"20",X"52",X"20",X"56",X"20",X"5A", + X"20",X"5E",X"20",X"01",X"01",X"39",X"02",X"01",X"55",X"54",X"02",X"01",X"53",X"52",X"02",X"01", + X"51",X"50",X"02",X"01",X"4F",X"4E",X"02",X"01",X"4D",X"4C",X"02",X"01",X"4B",X"4A",X"02",X"01", + X"2E",X"69",X"21",X"10",X"40",X"DB",X"03",X"2F",X"E6",X"04",X"BE",X"77",X"C0",X"23",X"BE",X"C8", + X"77",X"A7",X"C0",X"3A",X"15",X"40",X"FE",X"09",X"C8",X"D2",X"00",X"00",X"3C",X"32",X"15",X"40", + X"C9",X"C9",X"08",X"5C",X"2E",X"19",X"1E",X"1C",X"11",X"2E",X"5C",X"0F",X"01",X"19",X"15",X"0A", + X"22",X"0E",X"1B",X"2E",X"2E",X"0B",X"1E",X"1D",X"1D",X"18",X"17",X"07",X"0C",X"1B",X"0E",X"0D", + X"12",X"1D",X"2C",X"DB",X"03",X"E6",X"02",X"C0",X"21",X"7E",X"41",X"7E",X"A7",X"C8",X"EB",X"21", + X"BF",X"14",X"CD",X"B8",X"21",X"ED",X"B0",X"21",X"BE",X"49",X"01",X"01",X"0A",X"CD",X"86",X"02", + X"C3",X"70",X"26",X"3E",X"20",X"F7",X"FD",X"CB",X"00",X"B6",X"AF",X"32",X"EF",X"40",X"32",X"EE", + X"40",X"01",X"06",X"10",X"EF",X"C9",X"11",X"20",X"20",X"7C",X"D6",X"20",X"ED",X"44",X"92",X"67", + X"E6",X"07",X"47",X"7D",X"ED",X"44",X"93",X"6F",X"E6",X"07",X"4F",X"7C",X"1F",X"1F",X"1F",X"1F", + X"CB",X"1D",X"1F",X"CB",X"1D",X"1F",X"CB",X"1D",X"E6",X"4B",X"F6",X"48",X"67",X"C9",X"81",X"10", + X"F0",X"00",X"CD",X"34",X"14",X"CB",X"27",X"4F",X"06",X"00",X"21",X"3E",X"28",X"09",X"5E",X"23", + X"56",X"ED",X"53",X"FE",X"40",X"FD",X"21",X"00",X"00",X"FD",X"19",X"C9",X"06",X"01",X"9A",X"9B", + X"9C",X"9D",X"9E",X"9F",X"06",X"01",X"A0",X"A1",X"A2",X"A3",X"A4",X"A5",X"06",X"01",X"A6",X"A7", + X"A8",X"A9",X"AA",X"AB",X"06",X"01",X"AC",X"AD",X"AE",X"AF",X"B0",X"B1",X"DB",X"03",X"E6",X"08", + X"C0",X"3A",X"BF",X"40",X"A7",X"C0",X"CD",X"C8",X"15",X"3E",X"FF",X"32",X"07",X"41",X"21",X"2A", + X"49",X"01",X"0A",X"12",X"CD",X"86",X"02",X"21",X"CF",X"49",X"11",X"85",X"21",X"CD",X"87",X"0B", + X"FD",X"21",X"7A",X"21",X"CD",X"F6",X"18",X"FD",X"7E",X"09",X"D7",X"CD",X"80",X"02",X"AF",X"32", + X"07",X"41",X"3E",X"FF",X"32",X"BF",X"40",X"C3",X"DF",X"0A",X"81",X"F8",X"40",X"18",X"04",X"CF", + X"49",X"85",X"21",X"12",X"F0",X"07",X"1D",X"2E",X"12",X"2E",X"15",X"2E",X"1D",X"08",X"AF",X"08", + X"D6",X"0A",X"38",X"06",X"08",X"C6",X"10",X"27",X"18",X"F5",X"C6",X"0A",X"4F",X"08",X"81",X"27", + X"C9",X"81",X"18",X"EB",X"12",X"ED",X"08",X"EB",X"18",X"E7",X"18",X"E7",X"12",X"E7",X"08",X"E4", + X"12",X"E7",X"08",X"E8",X"18",X"E7",X"00",X"B3",X"4E",X"0C",X"06",X"00",X"C9",X"42",X"4F",X"21", + X"C7",X"36",X"09",X"7E",X"07",X"C9",X"4E",X"3A",X"ED",X"40",X"E6",X"02",X"C0",X"3A",X"39",X"41", + X"E6",X"80",X"C0",X"06",X"F8",X"2A",X"03",X"40",X"7D",X"A0",X"6F",X"3A",X"F6",X"40",X"A0",X"BD", + X"20",X"0A",X"7C",X"A0",X"67",X"3A",X"F7",X"40",X"A0",X"BC",X"28",X"0A",X"22",X"F6",X"40",X"2A", + X"F2",X"40",X"22",X"F4",X"40",X"C9",X"2A",X"F4",X"40",X"01",X"01",X"00",X"A7",X"ED",X"42",X"22", + X"F4",X"40",X"C0",X"3A",X"03",X"40",X"E6",X"F8",X"47",X"21",X"3F",X"41",X"D6",X"14",X"77",X"23", + X"78",X"C6",X"14",X"77",X"2A",X"03",X"40",X"CD",X"D6",X"20",X"ED",X"5B",X"D5",X"40",X"1A",X"E6", + X"0C",X"20",X"09",X"3A",X"04",X"40",X"FE",X"80",X"38",X"06",X"18",X"21",X"E6",X"04",X"28",X"1D", + X"3E",X"88",X"32",X"39",X"41",X"01",X"C0",X"00",X"09",X"E5",X"01",X"C0",X"4B",X"37",X"ED",X"42", + X"38",X"28",X"E1",X"26",X"4B",X"7D",X"E6",X"DF",X"F6",X"C0",X"6F",X"18",X"1E",X"3E",X"84",X"32", + X"39",X"41",X"01",X"80",X"FF",X"09",X"E5",X"01",X"A0",X"48",X"37",X"ED",X"42",X"30",X"0B",X"E1", + X"26",X"48",X"7D",X"E6",X"BF",X"F6",X"A0",X"6F",X"18",X"01",X"E1",X"22",X"3B",X"41",X"3A",X"39", + X"41",X"E6",X"04",X"28",X"05",X"01",X"21",X"00",X"18",X"03",X"01",X"E1",X"FF",X"09",X"22",X"3D", + X"41",X"FD",X"21",X"39",X"41",X"FD",X"36",X"01",X"F4",X"C3",X"CB",X"02",X"DB",X"00",X"E6",X"10", + X"20",X"05",X"21",X"AA",X"22",X"18",X"03",X"21",X"AE",X"22",X"E5",X"11",X"31",X"41",X"01",X"04", + X"00",X"ED",X"B0",X"E1",X"01",X"04",X"00",X"ED",X"B0",X"C9",X"00",X"00",X"50",X"00",X"00",X"00", + X"00",X"01",X"CD",X"08",X"16",X"3E",X"FF",X"32",X"06",X"41",X"3A",X"C1",X"40",X"CB",X"47",X"20", + X"08",X"21",X"31",X"41",X"11",X"C4",X"40",X"18",X"06",X"21",X"35",X"41",X"11",X"C7",X"40",X"CB", + X"7E",X"C0",X"23",X"23",X"23",X"CD",X"52",X"07",X"D8",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"17", + X"21",X"31",X"41",X"CB",X"FE",X"FD",X"E5",X"FD",X"21",X"FE",X"20",X"CD",X"0A",X"0F",X"FD",X"E1", + X"21",X"F0",X"40",X"34",X"C3",X"E1",X"1F",X"21",X"35",X"41",X"CB",X"FE",X"FD",X"E5",X"FD",X"21", + X"FE",X"20",X"CD",X"0A",X"0F",X"FD",X"E1",X"21",X"F1",X"40",X"34",X"C3",X"E1",X"1F",X"06",X"29", + X"2E",X"18",X"1B",X"2E",X"29",X"0F",X"02",X"19",X"15",X"0A",X"22",X"0E",X"1B",X"2E",X"2E",X"0B", + X"1E",X"1D",X"1D",X"18",X"17",X"15",X"5C",X"2E",X"01",X"19",X"15",X"0A",X"22",X"0E",X"1B",X"2E", + X"10",X"0A",X"16",X"0E",X"2E",X"18",X"1F",X"0E",X"1B",X"2E",X"5C",X"15",X"5C",X"2E",X"02",X"19", + X"15",X"0A",X"22",X"0E",X"1B",X"2E",X"10",X"0A",X"16",X"0E",X"2E",X"18",X"1F",X"0E",X"1B",X"2E", + X"5C",X"0D",X"5C",X"2E",X"10",X"0A",X"16",X"0E",X"2E",X"18",X"1F",X"0E",X"1B",X"2E",X"5C",X"FD", + X"2A",X"FE",X"40",X"FD",X"5E",X"00",X"FD",X"56",X"01",X"DD",X"21",X"00",X"00",X"DD",X"19",X"CD", + X"AD",X"1B",X"FD",X"6E",X"02",X"FD",X"66",X"03",X"CD",X"F6",X"17",X"11",X"D6",X"1F",X"FD",X"6E", + X"04",X"FD",X"66",X"05",X"CD",X"87",X"0B",X"11",X"DB",X"1F",X"FD",X"6E",X"06",X"FD",X"66",X"07", + X"CD",X"87",X"0B",X"C9",X"3A",X"08",X"41",X"A7",X"28",X"05",X"3D",X"32",X"08",X"41",X"C9",X"3E", + X"C0",X"32",X"08",X"41",X"01",X"01",X"00",X"E7",X"C9",X"3E",X"80",X"F7",X"CD",X"D0",X"23",X"21", + X"70",X"07",X"FD",X"21",X"98",X"41",X"CD",X"5E",X"16",X"FD",X"7E",X"09",X"D7",X"3E",X"02",X"F7", + X"21",X"7C",X"07",X"FD",X"21",X"98",X"41",X"CD",X"56",X"16",X"FD",X"7E",X"09",X"D7",X"18",X"DF", + X"3E",X"80",X"F7",X"21",X"78",X"08",X"FD",X"21",X"A4",X"41",X"CD",X"5E",X"16",X"FD",X"7E",X"09", + X"D7",X"3E",X"30",X"F7",X"21",X"C3",X"08",X"FD",X"21",X"A4",X"41",X"CD",X"56",X"16",X"FD",X"7E", + X"09",X"D7",X"3E",X"20",X"F7",X"18",X"DC",X"12",X"17",X"0A",X"16",X"0E",X"2E",X"2E",X"1B",X"0E", + X"10",X"12",X"1C",X"1D",X"1B",X"0A",X"1D",X"12",X"18",X"17",X"10",X"17",X"0A",X"16",X"0E",X"2E", + X"2E",X"29",X"29",X"29",X"29",X"29",X"29",X"29",X"29",X"29",X"29",X"09",X"2D",X"2E",X"2E",X"2E", + X"B4",X"B5",X"2E",X"B6",X"B7",X"FD",X"E5",X"E1",X"01",X"08",X"00",X"09",X"EB",X"FD",X"6E",X"02", + X"FD",X"66",X"03",X"01",X"06",X"00",X"ED",X"B0",X"FD",X"6E",X"04",X"FD",X"66",X"05",X"FD",X"CB", + X"00",X"56",X"28",X"03",X"2B",X"18",X"04",X"01",X"DF",X"FF",X"09",X"E5",X"01",X"03",X"00",X"ED", + X"B0",X"01",X"1D",X"00",X"09",X"01",X"03",X"00",X"ED",X"B0",X"FD",X"6E",X"02",X"FD",X"66",X"03", + X"01",X"00",X"08",X"09",X"01",X"06",X"00",X"ED",X"B0",X"E1",X"01",X"00",X"08",X"09",X"01",X"03", + X"00",X"ED",X"B0",X"01",X"1D",X"00",X"09",X"01",X"03",X"00",X"ED",X"B0",X"C9",X"21",X"FD",X"49", + X"11",X"18",X"40",X"18",X"15",X"3A",X"C1",X"40",X"CB",X"47",X"20",X"08",X"21",X"BD",X"48",X"11", + X"C4",X"40",X"18",X"06",X"21",X"1D",X"4B",X"11",X"C7",X"40",X"06",X"06",X"0E",X"00",X"CB",X"40", + X"20",X"09",X"1A",X"0F",X"0F",X"0F",X"0F",X"CD",X"B9",X"24",X"05",X"05",X"20",X"02",X"CB",X"C1", + X"04",X"1A",X"CD",X"B9",X"24",X"1B",X"10",X"EA",X"C9",X"E6",X"0F",X"28",X"0A",X"CB",X"C1",X"77", + X"C5",X"01",X"20",X"00",X"09",X"C1",X"C9",X"CB",X"41",X"20",X"F4",X"3E",X"2E",X"18",X"F0",X"3E", + X"15",X"32",X"7A",X"41",X"3E",X"F0",X"F7",X"3A",X"7A",X"41",X"3D",X"32",X"7A",X"41",X"20",X"F4", + X"FD",X"21",X"A8",X"26",X"CD",X"F6",X"18",X"FD",X"7E",X"09",X"D7",X"CD",X"7B",X"19",X"3E",X"0A", + X"CF",X"C9",X"F2",X"48",X"32",X"49",X"72",X"49",X"B2",X"49",X"F2",X"49",X"32",X"4A",X"72",X"4A", + X"B2",X"4A",X"F2",X"4A",X"32",X"4B",X"72",X"4B",X"F0",X"48",X"30",X"49",X"70",X"49",X"B0",X"49", + X"F0",X"49",X"30",X"4A",X"70",X"4A",X"B0",X"4A",X"F0",X"4A",X"30",X"4B",X"70",X"4B",X"EE",X"48", + X"2E",X"49",X"6E",X"49",X"AE",X"49",X"EE",X"49",X"2E",X"4A",X"6E",X"4A",X"CE",X"4A",X"3E",X"01", + X"F7",X"21",X"CD",X"40",X"7E",X"FE",X"06",X"30",X"02",X"36",X"06",X"23",X"FD",X"7E",X"00",X"E6", + X"04",X"28",X"19",X"CB",X"7E",X"28",X"0B",X"3A",X"02",X"40",X"E6",X"07",X"FE",X"04",X"30",X"02", + X"36",X"00",X"FD",X"7E",X"00",X"E6",X"60",X"EE",X"40",X"28",X"D3",X"C9",X"CB",X"7E",X"20",X"F2", + X"3A",X"02",X"40",X"E6",X"07",X"FE",X"03",X"38",X"E9",X"36",X"FF",X"18",X"E5",X"DD",X"21",X"B5", + X"40",X"DD",X"7E",X"16",X"E6",X"08",X"C8",X"3A",X"CC",X"40",X"FE",X"02",X"D2",X"18",X"15",X"3C", + X"32",X"CC",X"40",X"C9",X"FD",X"2A",X"FE",X"40",X"FD",X"6E",X"12",X"FD",X"66",X"13",X"E5",X"11", + X"16",X"26",X"CD",X"87",X"0B",X"E1",X"11",X"00",X"08",X"19",X"01",X"01",X"05",X"3E",X"F4",X"CD", + X"88",X"02",X"21",X"D9",X"26",X"11",X"01",X"41",X"01",X"03",X"00",X"ED",X"B0",X"3E",X"80",X"F7", + X"FD",X"6E",X"12",X"FD",X"66",X"13",X"01",X"01",X"05",X"CD",X"86",X"02",X"3E",X"10",X"F7",X"FD", + X"6E",X"12",X"FD",X"66",X"13",X"11",X"02",X"41",X"06",X"04",X"CD",X"9C",X"24",X"3E",X"05",X"32", + X"00",X"41",X"3E",X"F0",X"F7",X"3A",X"00",X"41",X"3D",X"32",X"00",X"41",X"20",X"F4",X"FD",X"6E", + X"12",X"FD",X"66",X"13",X"01",X"01",X"05",X"CD",X"86",X"02",X"3E",X"10",X"F7",X"21",X"CA",X"26", + X"11",X"01",X"41",X"CD",X"3E",X"16",X"FD",X"6E",X"12",X"FD",X"66",X"13",X"11",X"02",X"41",X"06", + X"04",X"CD",X"9C",X"24",X"3E",X"10",X"F7",X"21",X"03",X"41",X"11",X"15",X"26",X"CD",X"52",X"07", + X"20",X"CC",X"C9",X"00",X"00",X"00",X"05",X"0B",X"18",X"17",X"1E",X"1C",X"39",X"55",X"39",X"6F", + X"2E",X"54",X"54",X"52",X"6F",X"6E",X"55",X"53",X"52",X"50",X"6E",X"6D",X"53",X"51",X"50",X"4E", + X"6D",X"6C",X"51",X"4F",X"4E",X"4C",X"6C",X"6B",X"4F",X"4D",X"4C",X"4A",X"6B",X"6A",X"4D",X"4B", + X"4B",X"2E",X"6A",X"69",X"4A",X"69",X"69",X"39",X"69",X"39",X"69",X"39",X"3E",X"05",X"32",X"F8", + X"40",X"21",X"BE",X"49",X"01",X"01",X"0A",X"CD",X"86",X"02",X"3E",X"05",X"F7",X"CD",X"70",X"26", + X"3E",X"05",X"F7",X"3A",X"F8",X"40",X"3D",X"32",X"F8",X"40",X"20",X"E5",X"3E",X"0B",X"CF",X"C9", + X"21",X"7E",X"41",X"7E",X"FE",X"02",X"38",X"29",X"FE",X"04",X"38",X"20",X"FE",X"06",X"38",X"17", + X"FE",X"08",X"38",X"0E",X"FE",X"0A",X"38",X"05",X"11",X"BE",X"49",X"18",X"17",X"11",X"DE",X"49", + X"18",X"12",X"11",X"FE",X"49",X"18",X"0D",X"11",X"1E",X"4A",X"18",X"08",X"11",X"3E",X"4A",X"18", + X"03",X"11",X"5E",X"4A",X"EB",X"C3",X"87",X"0B",X"80",X"79",X"41",X"05",X"1E",X"46",X"49",X"0A", + X"24",X"0C",X"00",X"21",X"03",X"49",X"11",X"8D",X"18",X"CD",X"87",X"0B",X"21",X"03",X"51",X"01", + X"01",X"07",X"3E",X"F6",X"C3",X"88",X"02",X"10",X"00",X"00",X"20",X"00",X"00",X"00",X"01",X"00", + X"00",X"02",X"00",X"00",X"03",X"00",X"00",X"05",X"00",X"00",X"10",X"00",X"C9",X"2A",X"B8",X"73", + X"23",X"22",X"B8",X"73",X"21",X"3E",X"05",X"32",X"F8",X"40",X"FD",X"2A",X"FE",X"40",X"FD",X"6E", + X"04",X"FD",X"66",X"05",X"01",X"01",X"04",X"CD",X"86",X"02",X"3E",X"08",X"F7",X"FD",X"2A",X"FE", + X"40",X"FD",X"6E",X"04",X"FD",X"66",X"05",X"11",X"D6",X"1F",X"CD",X"87",X"0B",X"3E",X"08",X"F7", + X"3A",X"F8",X"40",X"3D",X"32",X"F8",X"40",X"20",X"D1",X"21",X"01",X"41",X"CD",X"0E",X"16",X"CD", + X"85",X"24",X"3E",X"04",X"F7",X"FD",X"6E",X"12",X"FD",X"66",X"13",X"01",X"01",X"05",X"CD",X"86", + X"02",X"3E",X"40",X"F7",X"3E",X"03",X"CF",X"C9",X"21",X"0E",X"06",X"18",X"08",X"21",X"16",X"06", + X"18",X"03",X"21",X"1E",X"06",X"11",X"59",X"41",X"FD",X"E5",X"D5",X"FD",X"E1",X"01",X"08",X"00", + X"ED",X"B0",X"CD",X"C8",X"02",X"FD",X"E1",X"C9",X"81",X"08",X"DD",X"08",X"E1",X"08",X"E4",X"08", + X"E6",X"08",X"E1",X"08",X"E4",X"08",X"E6",X"08",X"E9",X"08",X"E4",X"08",X"E6",X"08",X"E9",X"08", + X"EB",X"08",X"E6",X"08",X"E9",X"08",X"EB",X"08",X"ED",X"08",X"E9",X"08",X"EB",X"08",X"ED",X"28", + X"EE",X"00",X"3A",X"73",X"21",X"C0",X"73",X"4E",X"2E",X"3C",X"71",X"23",X"36",X"00",X"01",X"C2", + X"73",X"11",X"E2",X"70",X"CD",X"1F",X"3A",X"21",X"E2",X"70",X"4E",X"06",X"00",X"CD",X"ED",X"42", + X"21",X"F4",X"70",X"4E",X"2C",X"46",X"2A",X"C2",X"73",X"09",X"22",X"F4",X"70",X"3E",X"FF",X"21", + X"F4",X"70",X"96",X"2C",X"4F",X"3E",X"00",X"9E",X"9F",X"2A",X"F4",X"70",X"2B",X"22",X"EE",X"70", + X"EB",X"21",X"44",X"71",X"19",X"4F",X"7E",X"D6",X"0A",X"C6",X"FF",X"9F",X"A1",X"0F",X"D2",X"F4", + X"48",X"21",X"38",X"73",X"36",X"01",X"23",X"36",X"00",X"01",X"44",X"71",X"2C",X"71",X"23",X"70", + X"2C",X"36",X"FF",X"23",X"36",X"00",X"01",X"C2",X"73",X"11",X"E2",X"70",X"CD",X"1F",X"3A",X"0E", + X"0F",X"CD",X"15",X"42",X"21",X"EE",X"70",X"4E",X"2C",X"46",X"24",X"2E",X"44",X"09",X"7E",X"D6", + X"A8",X"04",X"02",X"70",X"08",X"04",X"38",X"0A",X"09",X"60",X"07",X"08",X"78",X"0D",X"0C",X"40", + X"04",X"0E",X"40",X"07",X"06",X"58",X"0A",X"0B",X"78",X"0D",X"0C",X"88",X"05",X"04",X"30",X"04", + X"05",X"A8",X"09",X"08",X"38",X"0C",X"0B",X"70",X"0F",X"10",X"78",X"11",X"0F",X"80",X"10",X"06", + X"21",X"C8",X"73",X"77",X"D6",X"30",X"9F",X"2E",X"CB",X"4F",X"7E",X"2E",X"C8",X"96",X"9F",X"C5", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"86",X"28",X"B8",X"29",X"D6",X"48",X"27",X"4B",X"DC",X"29",X"DF",X"29",X"E2",X"29",X"ED",X"29", + X"4F",X"2A",X"BB",X"48",X"02",X"11",X"01",X"02",X"68",X"01",X"04",X"46",X"01",X"0A",X"71",X"01", + X"0C",X"77",X"01",X"00",X"00",X"00",X"14",X"39",X"01",X"33",X"00",X"04",X"39",X"08",X"2E",X"02", + X"39",X"03",X"2E",X"03",X"39",X"00",X"03",X"39",X"0E",X"2E",X"03",X"39",X"00",X"03",X"39",X"0F", + X"2E",X"02",X"39",X"00",X"02",X"39",X"10",X"2E",X"02",X"39",X"00",X"02",X"39",X"0B",X"2E",X"02", + X"39",X"03",X"2E",X"02",X"39",X"01",X"32",X"05",X"2E",X"01",X"BA",X"00",X"02",X"39",X"0C",X"2E", + X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"01", + X"39",X"00",X"01",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"08",X"2E",X"01",X"39", + X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00", + X"01",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"01", + X"39",X"06",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39", + X"06",X"2E",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"04",X"39",X"00",X"01",X"39",X"06", + X"2E",X"02",X"39",X"0C",X"2E",X"05",X"39",X"00",X"07",X"2E",X"02",X"39",X"0D",X"2E",X"04",X"39", + X"00",X"07",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E", + X"04",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"05", + X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"00",X"05",X"2E",X"04",X"39",X"06",X"2E",X"04",X"39", + X"05",X"2E",X"02",X"39",X"00",X"05",X"2E",X"01",X"33",X"02",X"39",X"06",X"2E",X"01",X"39",X"04", + X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39", + X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39",X"00",X"06",X"2E",X"02",X"39",X"10",X"2E", + X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"0E",X"2E",X"02",X"39",X"00",X"06",X"2E",X"05",X"39", + X"04",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"00",X"05",X"2E",X"01",X"33",X"14",X"39",X"00", + X"37",X"1E",X"03",X"CD",X"10",X"49",X"2F",X"0F",X"F2",X"05",X"02",X"AF",X"50",X"F2",X"07",X"04", + X"EF",X"50",X"F2",X"04",X"03",X"6F",X"51",X"F6",X"06",X"06",X"B6",X"50",X"F5",X"04",X"06",X"10", + X"52",X"F6",X"05",X"07",X"02",X"53",X"F5",X"01",X"07",X"07",X"53",X"00",X"64",X"28",X"D0",X"64", + X"D0",X"40",X"0A",X"00",X"38",X"E8",X"A8",X"A8",X"60",X"38",X"70",X"70",X"00",X"80",X"00",X"38", + X"02",X"08",X"01",X"E0",X"01",X"A8",X"05",X"04",X"00",X"A0",X"03",X"40",X"01",X"E0",X"02",X"A8", + X"04",X"01",X"00",X"E0",X"03",X"A8",X"80",X"E0",X"03",X"70",X"09",X"08",X"00",X"A0",X"03",X"40", + X"05",X"A0",X"02",X"70",X"08",X"01",X"00",X"38",X"83",X"08",X"05",X"A0",X"01",X"60",X"06",X"01", + X"00",X"38",X"07",X"08",X"01",X"58",X"05",X"00",X"06",X"04",X"00",X"A0",X"86",X"40",X"06",X"58", + X"08",X"00",X"07",X"01",X"09",X"A0",X"09",X"40",X"05",X"68",X"04",X"60",X"07",X"01",X"0C",X"E0", + X"09",X"A8",X"89",X"68",X"03",X"38",X"0A",X"40",X"00",X"E0",X"0A",X"A8",X"07",X"30",X"09",X"00", + X"0A",X"C2",X"4B",X"A2",X"4B",X"C4",X"4B",X"A4",X"4B",X"82",X"4B",X"84",X"4B",X"83",X"2A",X"C9", + X"2B",X"C9",X"48",X"C7",X"48",X"ED",X"2B",X"F0",X"2B",X"F3",X"2B",X"03",X"2C",X"97",X"2C",X"CA", + X"48",X"03",X"16",X"01",X"05",X"50",X"01",X"07",X"46",X"01",X"0B",X"6B",X"01",X"0D",X"7D",X"01", + X"0F",X"83",X"01",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"35",X"05",X"31",X"01",X"34",X"0C", + X"39",X"00",X"06",X"2E",X"01",X"39",X"08",X"2E",X"02",X"39",X"05",X"2E",X"04",X"39",X"00",X"06", + X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39", + X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"01",X"33", + X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"05",X"2E",X"01",X"33",X"01",X"39",X"01", + X"32",X"05",X"31",X"01",X"30",X"06",X"39",X"05",X"2E",X"01",X"39",X"00",X"05",X"2E",X"0E",X"39", + X"06",X"2E",X"01",X"39",X"00",X"06",X"2E",X"03",X"39",X"04",X"2E",X"05",X"39",X"07",X"2E",X"01", + X"39",X"00",X"06",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"0E", + X"2E",X"03",X"39",X"05",X"2E",X"04",X"39",X"00",X"01",X"39",X"0D",X"2E",X"02",X"39",X"05",X"2E", + X"05",X"39",X"00",X"02",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"05",X"39",X"00",X"02",X"39", + X"06",X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"06", + X"2E",X"03",X"39",X"04",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"05",X"2E", + X"03",X"39",X"05",X"2E",X"01",X"39",X"06",X"2E",X"05",X"39",X"00",X"01",X"39",X"06",X"2E",X"01", + X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39",X"06",X"2E",X"02",X"39", + X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"01",X"39",X"07",X"2E",X"02",X"39",X"05", + X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"01",X"39",X"07",X"2E",X"03",X"39",X"05",X"2E", + X"03",X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"06",X"2E",X"02",X"39",X"08",X"2E",X"01", + X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"16",X"2E",X"02",X"39",X"00",X"04",X"39",X"14", + X"2E",X"02",X"39",X"00",X"04",X"39",X"0A",X"2E",X"01",X"39",X"08",X"2E",X"03",X"39",X"00",X"05", + X"39",X"02",X"2E",X"02",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"04",X"39",X"00",X"1A",X"39", + X"00",X"CD",X"AC",X"44",X"21",X"D7",X"70",X"77",X"C3",X"F2",X"05",X"07",X"A2",X"50",X"F5",X"01", + X"07",X"A7",X"50",X"F6",X"07",X"07",X"A9",X"50",X"F2",X"02",X"07",X"B0",X"50",X"F5",X"07",X"02", + X"4A",X"52",X"F5",X"03",X"07",X"12",X"53",X"F5",X"04",X"06",X"28",X"53",X"00",X"24",X"80",X"C8", + X"24",X"D0",X"C0",X"0F",X"E8",X"A8",X"68",X"A8",X"88",X"68",X"00",X"38",X"60",X"08",X"50",X"A8", + X"78",X"68",X"60",X"80",X"00",X"E0",X"01",X"A8",X"02",X"E0",X"01",X"A8",X"0F",X"08",X"00",X"A0", + X"01",X"68",X"03",X"E0",X"02",X"A8",X"8C",X"08",X"00",X"60",X"02",X"08",X"03",X"E0",X"03",X"A8", + X"8F",X"01",X"09",X"38",X"0E",X"08",X"04",X"A0",X"03",X"88",X"05",X"01",X"00",X"38",X"0E",X"08", + X"05",X"80",X"04",X"68",X"06",X"01",X"09",X"38",X"08",X"08",X"06",X"60",X"05",X"40",X"07",X"04", + X"00",X"38",X"08",X"08",X"07",X"38",X"06",X"00",X"07",X"04",X"00",X"60",X"09",X"40",X"92",X"60", + X"0E",X"00",X"08",X"04",X"00",X"A0",X"95",X"68",X"08",X"60",X"98",X"00",X"09",X"02",X"00",X"E0", + X"0A",X"A8",X"09",X"50",X"0B",X"00",X"0A",X"02",X"0C",X"E0",X"0B",X"A8",X"09",X"60",X"0F",X"58", + X"0A",X"01",X"00",X"A0",X"0F",X"78",X"0D",X"A0",X"02",X"68",X"09",X"08",X"09",X"70",X"0C",X"68", + X"0E",X"A0",X"02",X"68",X"09",X"08",X"00",X"60",X"0D",X"40",X"9B",X"A0",X"03",X"68",X"08",X"40", + X"00",X"E0",X"0F",X"A8",X"0C",X"A0",X"01",X"68",X"0B",X"A2",X"48",X"C2",X"48",X"A4",X"48",X"C4", + X"48",X"E2",X"48",X"E4",X"48",X"CB",X"2C",X"63",X"2E",X"53",X"4B",X"3B",X"4B",X"91",X"2E",X"94", + X"2E",X"97",X"2E",X"AA",X"2E",X"5C",X"2F",X"52",X"4B",X"06",X"1B",X"01",X"0E",X"6E",X"01",X"10", + X"46",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1A",X"39",X"00",X"03",X"39", + X"02",X"2E",X"01",X"39",X"02",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"03",X"2E",X"02",X"39", + X"00",X"02",X"39",X"08",X"2E",X"06",X"39",X"04",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"00", + X"01",X"39",X"0A",X"2E",X"04",X"39",X"0A",X"2E",X"01",X"39",X"00",X"01",X"39",X"0A",X"2E",X"02", + X"39",X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39", + X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"05",X"2E",X"03",X"39",X"08",X"2E",X"03",X"39",X"05", + X"2E",X"01",X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"06",X"2E", + X"01",X"39",X"00",X"03",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"03",X"39",X"06",X"2E",X"01", + X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39", + X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"03",X"2E",X"05",X"39",X"04",X"2E",X"04",X"39",X"00", + X"01",X"39",X"05",X"2E",X"05",X"39",X"03",X"2E",X"04",X"39",X"04",X"2E",X"04",X"39",X"00",X"01", + X"39",X"05",X"2E",X"06",X"39",X"03",X"2E",X"03",X"39",X"05",X"2E",X"03",X"39",X"00",X"01",X"39", + X"04",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"00",X"01",X"39",X"04", + X"2E",X"02",X"39",X"03",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00", + X"01",X"39",X"03",X"2E",X"03",X"39",X"0A",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00",X"01", + X"39",X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39", + X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39",X"04", + X"2E",X"01",X"39",X"04",X"2E",X"02",X"39",X"05",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00", + X"02",X"39",X"03",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34", + X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39", + X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"02",X"39",X"07",X"2E",X"02",X"39",X"01",X"33", + X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"03",X"39",X"02",X"2E",X"01",X"39",X"02",X"2E",X"03", + X"39",X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"0B",X"39",X"01",X"33",X"05",X"2E", + X"01",X"33",X"01",X"39",X"01",X"33",X"05",X"2E",X"01",X"33",X"00",X"2A",X"0C",X"74",X"09",X"23", + X"22",X"0C",X"74",X"F5",X"05",X"07",X"A7",X"50",X"F2",X"08",X"03",X"A2",X"51",X"F4",X"07",X"03", + X"0C",X"52",X"F5",X"02",X"05",X"6C",X"52",X"F5",X"06",X"02",X"02",X"53",X"F6",X"07",X"07",X"0D", + X"53",X"F5",X"01",X"07",X"15",X"53",X"F4",X"05",X"07",X"16",X"53",X"F5",X"01",X"07",X"1B",X"53", + X"00",X"44",X"70",X"38",X"44",X"30",X"40",X"12",X"00",X"40",X"68",X"00",X"28",X"48",X"80",X"E8", + X"A8",X"88",X"48",X"E8",X"B0",X"B0",X"88",X"88",X"78",X"48",X"80",X"00",X"40",X"02",X"08",X"01", + X"48",X"12",X"00",X"01",X"04",X"00",X"68",X"03",X"48",X"01",X"48",X"11",X"00",X"02",X"04",X"00", + X"98",X"9E",X"70",X"02",X"48",X"AD",X"00",X"03",X"04",X"00",X"E0",X"04",X"A0",X"03",X"28",X"05", + X"00",X"04",X"02",X"00",X"E0",X"05",X"A0",X"03",X"48",X"06",X"30",X"04",X"02",X"00",X"E0",X"06", + X"88",X"10",X"80",X"07",X"50",X"05",X"02",X"09",X"E0",X"07",X"88",X"0E",X"A8",X"A1",X"88",X"06", + X"08",X"00",X"E0",X"08",X"A8",X"09",X"E0",X"08",X"B0",X"07",X"08",X"0C",X"A0",X"08",X"88",X"0A", + X"E0",X"09",X"B0",X"07",X"08",X"00",X"80",X"09",X"48",X"0B",X"E0",X"0A",X"B0",X"0E",X"08",X"09", + X"40",X"0A",X"38",X"0C",X"E0",X"0B",X"B0",X"0D",X"01",X"00",X"30",X"0B",X"08",X"0C",X"E0",X"0C", + X"B0",X"0D",X"01",X"00",X"40",X"0E",X"08",X"0D",X"A8",X"A4",X"88",X"12",X"01",X"00",X"80",X"07", + X"48",X"0D",X"A8",X"0A",X"88",X"A7",X"01",X"09",X"68",X"10",X"48",X"12",X"80",X"0E",X"78",X"11", + X"08",X"0F",X"80",X"06",X"70",X"AA",X"80",X"0E",X"50",X"03",X"08",X"00",X"68",X"10",X"48",X"12", + X"70",X"0F",X"50",X"02",X"40",X"00",X"40",X"AA",X"08",X"12",X"80",X"0D",X"50",X"01",X"D6",X"4B", + X"D8",X"4B",X"B6",X"4B",X"B8",X"4B",X"96",X"4B",X"98",X"4B",X"2E",X"13",X"5E",X"CD",X"15",X"50", + X"5F",X"21",X"13",X"74",X"4E",X"CD",X"E8",X"4E",X"21",X"13",X"74",X"34",X"C2",X"5A",X"50",X"C9", + X"21",X"19",X"74",X"36",X"00",X"2D",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"18",X"74",X"96", + X"DA",X"B0",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"9F",X"50",X"21",X"19",X"74",X"34",X"21", + X"19",X"74",X"7E",X"D6",X"02",X"DA",X"AB",X"50",X"3E",X"FF",X"C9",X"2D",X"34",X"C2",X"88",X"50", + X"AF",X"C9",X"21",X"1A",X"74",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"1A",X"74",X"96",X"DA", + X"D3",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"CC",X"50",X"AF",X"C9",X"21",X"1A",X"74",X"34", + X"C2",X"B7",X"50",X"3E",X"FF",X"C9",X"CD",X"12",X"50",X"CD",X"C3",X"46",X"CD",X"D2",X"43",X"21", + X"07",X"74",X"77",X"2C",X"36",X"00",X"21",X"07",X"74",X"7E",X"D6",X"41",X"9F",X"2F",X"4F",X"3E", + X"5A",X"96",X"9F",X"2F",X"A1",X"5F",X"7E",X"D6",X"30",X"9F",X"2F",X"D5",X"4F",X"3E",X"39",X"96", + X"A8",X"04",X"02",X"70",X"08",X"04",X"38",X"0A",X"09",X"60",X"07",X"08",X"78",X"0D",X"0C",X"40", + X"04",X"0E",X"40",X"07",X"06",X"58",X"0A",X"0B",X"78",X"0D",X"0C",X"88",X"05",X"04",X"30",X"04", + X"05",X"A8",X"09",X"08",X"38",X"0C",X"0B",X"70",X"0F",X"10",X"78",X"11",X"0F",X"80",X"10",X"06", + X"21",X"C8",X"73",X"77",X"D6",X"30",X"9F",X"2E",X"CB",X"4F",X"7E",X"2E",X"C8",X"96",X"9F",X"C5", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"86",X"28",X"B8",X"29",X"D6",X"48",X"27",X"4B",X"DC",X"29",X"DF",X"29",X"E2",X"29",X"ED",X"29", + X"4F",X"2A",X"BB",X"48",X"02",X"11",X"01",X"02",X"68",X"01",X"04",X"46",X"01",X"0A",X"71",X"01", + X"0C",X"77",X"01",X"00",X"00",X"00",X"14",X"39",X"01",X"33",X"00",X"04",X"39",X"08",X"2E",X"02", + X"39",X"03",X"2E",X"03",X"39",X"00",X"03",X"39",X"0E",X"2E",X"03",X"39",X"00",X"03",X"39",X"0F", + X"2E",X"02",X"39",X"00",X"02",X"39",X"10",X"2E",X"02",X"39",X"00",X"02",X"39",X"0B",X"2E",X"02", + X"39",X"03",X"2E",X"02",X"39",X"01",X"32",X"05",X"2E",X"01",X"BA",X"00",X"02",X"39",X"0C",X"2E", + X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"01", + X"39",X"00",X"01",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"08",X"2E",X"01",X"39", + X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00", + X"01",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"01", + X"39",X"06",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39", + X"06",X"2E",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"04",X"39",X"00",X"01",X"39",X"06", + X"2E",X"02",X"39",X"0C",X"2E",X"05",X"39",X"00",X"07",X"2E",X"02",X"39",X"0D",X"2E",X"04",X"39", + X"00",X"07",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E", + X"04",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"05", + X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"00",X"05",X"2E",X"04",X"39",X"06",X"2E",X"04",X"39", + X"05",X"2E",X"02",X"39",X"00",X"05",X"2E",X"01",X"33",X"02",X"39",X"06",X"2E",X"01",X"39",X"04", + X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39", + X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39",X"00",X"06",X"2E",X"02",X"39",X"10",X"2E", + X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"0E",X"2E",X"02",X"39",X"00",X"06",X"2E",X"05",X"39", + X"04",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"00",X"05",X"2E",X"01",X"33",X"14",X"39",X"00", + X"37",X"1E",X"03",X"CD",X"10",X"49",X"2F",X"0F",X"F2",X"05",X"02",X"AF",X"50",X"F2",X"07",X"04", + X"EF",X"50",X"F2",X"04",X"03",X"6F",X"51",X"F6",X"06",X"06",X"B6",X"50",X"F5",X"04",X"06",X"10", + X"52",X"F6",X"05",X"07",X"02",X"53",X"F5",X"01",X"07",X"07",X"53",X"00",X"64",X"28",X"D0",X"64", + X"D0",X"40",X"0A",X"00",X"38",X"E8",X"A8",X"A8",X"60",X"38",X"70",X"70",X"00",X"80",X"00",X"38", + X"02",X"08",X"01",X"E0",X"01",X"A8",X"05",X"04",X"00",X"A0",X"03",X"40",X"01",X"E0",X"02",X"A8", + X"04",X"01",X"00",X"E0",X"03",X"A8",X"80",X"E0",X"03",X"70",X"09",X"08",X"00",X"A0",X"03",X"40", + X"05",X"A0",X"02",X"70",X"08",X"01",X"00",X"38",X"83",X"08",X"05",X"A0",X"01",X"60",X"06",X"01", + X"00",X"38",X"07",X"08",X"01",X"58",X"05",X"00",X"06",X"04",X"00",X"A0",X"86",X"40",X"06",X"58", + X"08",X"00",X"07",X"01",X"09",X"A0",X"09",X"40",X"05",X"68",X"04",X"60",X"07",X"01",X"0C",X"E0", + X"09",X"A8",X"89",X"68",X"03",X"38",X"0A",X"40",X"00",X"E0",X"0A",X"A8",X"07",X"30",X"09",X"00", + X"0A",X"C2",X"4B",X"A2",X"4B",X"C4",X"4B",X"A4",X"4B",X"82",X"4B",X"84",X"4B",X"83",X"2A",X"C9", + X"2B",X"C9",X"48",X"C7",X"48",X"ED",X"2B",X"F0",X"2B",X"F3",X"2B",X"03",X"2C",X"97",X"2C",X"CA", + X"48",X"03",X"16",X"01",X"05",X"50",X"01",X"07",X"46",X"01",X"0B",X"6B",X"01",X"0D",X"7D",X"01", + X"0F",X"83",X"01",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"35",X"05",X"31",X"01",X"34",X"0C", + X"39",X"00",X"06",X"2E",X"01",X"39",X"08",X"2E",X"02",X"39",X"05",X"2E",X"04",X"39",X"00",X"06", + X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39", + X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"01",X"33", + X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"05",X"2E",X"01",X"33",X"01",X"39",X"01", + X"32",X"05",X"31",X"01",X"30",X"06",X"39",X"05",X"2E",X"01",X"39",X"00",X"05",X"2E",X"0E",X"39", + X"06",X"2E",X"01",X"39",X"00",X"06",X"2E",X"03",X"39",X"04",X"2E",X"05",X"39",X"07",X"2E",X"01", + X"39",X"00",X"06",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"0E", + X"2E",X"03",X"39",X"05",X"2E",X"04",X"39",X"00",X"01",X"39",X"0D",X"2E",X"02",X"39",X"05",X"2E", + X"05",X"39",X"00",X"02",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"05",X"39",X"00",X"02",X"39", + X"06",X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"06", + X"2E",X"03",X"39",X"04",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"05",X"2E", + X"03",X"39",X"05",X"2E",X"01",X"39",X"06",X"2E",X"05",X"39",X"00",X"01",X"39",X"06",X"2E",X"01", + X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39",X"06",X"2E",X"02",X"39", + X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"01",X"39",X"07",X"2E",X"02",X"39",X"05", + X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"01",X"39",X"07",X"2E",X"03",X"39",X"05",X"2E", + X"03",X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"06",X"2E",X"02",X"39",X"08",X"2E",X"01", + X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"16",X"2E",X"02",X"39",X"00",X"04",X"39",X"14", + X"2E",X"02",X"39",X"00",X"04",X"39",X"0A",X"2E",X"01",X"39",X"08",X"2E",X"03",X"39",X"00",X"05", + X"39",X"02",X"2E",X"02",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"04",X"39",X"00",X"1A",X"39", + X"00",X"CD",X"AC",X"44",X"21",X"D7",X"70",X"77",X"C3",X"F2",X"05",X"07",X"A2",X"50",X"F5",X"01", + X"07",X"A7",X"50",X"F6",X"07",X"07",X"A9",X"50",X"F2",X"02",X"07",X"B0",X"50",X"F5",X"07",X"02", + X"4A",X"52",X"F5",X"03",X"07",X"12",X"53",X"F5",X"04",X"06",X"28",X"53",X"00",X"24",X"80",X"C8", + X"24",X"D0",X"C0",X"0F",X"E8",X"A8",X"68",X"A8",X"88",X"68",X"00",X"38",X"60",X"08",X"50",X"A8", + X"78",X"68",X"60",X"80",X"00",X"E0",X"01",X"A8",X"02",X"E0",X"01",X"A8",X"0F",X"08",X"00",X"A0", + X"01",X"68",X"03",X"E0",X"02",X"A8",X"8C",X"08",X"00",X"60",X"02",X"08",X"03",X"E0",X"03",X"A8", + X"8F",X"01",X"09",X"38",X"0E",X"08",X"04",X"A0",X"03",X"88",X"05",X"01",X"00",X"38",X"0E",X"08", + X"05",X"80",X"04",X"68",X"06",X"01",X"09",X"38",X"08",X"08",X"06",X"60",X"05",X"40",X"07",X"04", + X"00",X"38",X"08",X"08",X"07",X"38",X"06",X"00",X"07",X"04",X"00",X"60",X"09",X"40",X"92",X"60", + X"0E",X"00",X"08",X"04",X"00",X"A0",X"95",X"68",X"08",X"60",X"98",X"00",X"09",X"02",X"00",X"E0", + X"0A",X"A8",X"09",X"50",X"0B",X"00",X"0A",X"02",X"0C",X"E0",X"0B",X"A8",X"09",X"60",X"0F",X"58", + X"0A",X"01",X"00",X"A0",X"0F",X"78",X"0D",X"A0",X"02",X"68",X"09",X"08",X"09",X"70",X"0C",X"68", + X"0E",X"A0",X"02",X"68",X"09",X"08",X"00",X"60",X"0D",X"40",X"9B",X"A0",X"03",X"68",X"08",X"40", + X"00",X"E0",X"0F",X"A8",X"0C",X"A0",X"01",X"68",X"0B",X"A2",X"48",X"C2",X"48",X"A4",X"48",X"C4", + X"48",X"E2",X"48",X"E4",X"48",X"CB",X"2C",X"63",X"2E",X"53",X"4B",X"3B",X"4B",X"91",X"2E",X"94", + X"2E",X"97",X"2E",X"AA",X"2E",X"5C",X"2F",X"52",X"4B",X"06",X"1B",X"01",X"0E",X"6E",X"01",X"10", + X"46",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1A",X"39",X"00",X"03",X"39", + X"02",X"2E",X"01",X"39",X"02",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"03",X"2E",X"02",X"39", + X"00",X"02",X"39",X"08",X"2E",X"06",X"39",X"04",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"00", + X"01",X"39",X"0A",X"2E",X"04",X"39",X"0A",X"2E",X"01",X"39",X"00",X"01",X"39",X"0A",X"2E",X"02", + X"39",X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39", + X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"05",X"2E",X"03",X"39",X"08",X"2E",X"03",X"39",X"05", + X"2E",X"01",X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"06",X"2E", + X"01",X"39",X"00",X"03",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"03",X"39",X"06",X"2E",X"01", + X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39", + X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"03",X"2E",X"05",X"39",X"04",X"2E",X"04",X"39",X"00", + X"01",X"39",X"05",X"2E",X"05",X"39",X"03",X"2E",X"04",X"39",X"04",X"2E",X"04",X"39",X"00",X"01", + X"39",X"05",X"2E",X"06",X"39",X"03",X"2E",X"03",X"39",X"05",X"2E",X"03",X"39",X"00",X"01",X"39", + X"04",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"00",X"01",X"39",X"04", + X"2E",X"02",X"39",X"03",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00", + X"01",X"39",X"03",X"2E",X"03",X"39",X"0A",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00",X"01", + X"39",X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39", + X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39",X"04", + X"2E",X"01",X"39",X"04",X"2E",X"02",X"39",X"05",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00", + X"02",X"39",X"03",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34", + X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39", + X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"02",X"39",X"07",X"2E",X"02",X"39",X"01",X"33", + X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"03",X"39",X"02",X"2E",X"01",X"39",X"02",X"2E",X"03", + X"39",X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"0B",X"39",X"01",X"33",X"05",X"2E", + X"01",X"33",X"01",X"39",X"01",X"33",X"05",X"2E",X"01",X"33",X"00",X"2A",X"0C",X"74",X"09",X"23", + X"22",X"0C",X"74",X"F5",X"05",X"07",X"A7",X"50",X"F2",X"08",X"03",X"A2",X"51",X"F4",X"07",X"03", + X"0C",X"52",X"F5",X"02",X"05",X"6C",X"52",X"F5",X"06",X"02",X"02",X"53",X"F6",X"07",X"07",X"0D", + X"53",X"F5",X"01",X"07",X"15",X"53",X"F4",X"05",X"07",X"16",X"53",X"F5",X"01",X"07",X"1B",X"53", + X"00",X"44",X"70",X"38",X"44",X"30",X"40",X"12",X"00",X"40",X"68",X"00",X"28",X"48",X"80",X"E8", + X"A8",X"88",X"48",X"E8",X"B0",X"B0",X"88",X"88",X"78",X"48",X"80",X"00",X"40",X"02",X"08",X"01", + X"48",X"12",X"00",X"01",X"04",X"00",X"68",X"03",X"48",X"01",X"48",X"11",X"00",X"02",X"04",X"00", + X"98",X"9E",X"70",X"02",X"48",X"AD",X"00",X"03",X"04",X"00",X"E0",X"04",X"A0",X"03",X"28",X"05", + X"00",X"04",X"02",X"00",X"E0",X"05",X"A0",X"03",X"48",X"06",X"30",X"04",X"02",X"00",X"E0",X"06", + X"88",X"10",X"80",X"07",X"50",X"05",X"02",X"09",X"E0",X"07",X"88",X"0E",X"A8",X"A1",X"88",X"06", + X"08",X"00",X"E0",X"08",X"A8",X"09",X"E0",X"08",X"B0",X"07",X"08",X"0C",X"A0",X"08",X"88",X"0A", + X"E0",X"09",X"B0",X"07",X"08",X"00",X"80",X"09",X"48",X"0B",X"E0",X"0A",X"B0",X"0E",X"08",X"09", + X"40",X"0A",X"38",X"0C",X"E0",X"0B",X"B0",X"0D",X"01",X"00",X"30",X"0B",X"08",X"0C",X"E0",X"0C", + X"B0",X"0D",X"01",X"00",X"40",X"0E",X"08",X"0D",X"A8",X"A4",X"88",X"12",X"01",X"00",X"80",X"07", + X"48",X"0D",X"A8",X"0A",X"88",X"A7",X"01",X"09",X"68",X"10",X"48",X"12",X"80",X"0E",X"78",X"11", + X"08",X"0F",X"80",X"06",X"70",X"AA",X"80",X"0E",X"50",X"03",X"08",X"00",X"68",X"10",X"48",X"12", + X"70",X"0F",X"50",X"02",X"40",X"00",X"40",X"AA",X"08",X"12",X"80",X"0D",X"50",X"01",X"D6",X"4B", + X"D8",X"4B",X"B6",X"4B",X"B8",X"4B",X"96",X"4B",X"98",X"4B",X"2E",X"13",X"5E",X"CD",X"15",X"50", + X"5F",X"21",X"13",X"74",X"4E",X"CD",X"E8",X"4E",X"21",X"13",X"74",X"34",X"C2",X"5A",X"50",X"C9", + X"21",X"19",X"74",X"36",X"00",X"2D",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"18",X"74",X"96", + X"DA",X"B0",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"9F",X"50",X"21",X"19",X"74",X"34",X"21", + X"19",X"74",X"7E",X"D6",X"02",X"DA",X"AB",X"50",X"3E",X"FF",X"C9",X"2D",X"34",X"C2",X"88",X"50", + X"AF",X"C9",X"21",X"1A",X"74",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"1A",X"74",X"96",X"DA", + X"D3",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"CC",X"50",X"AF",X"C9",X"21",X"1A",X"74",X"34", + X"C2",X"B7",X"50",X"3E",X"FF",X"C9",X"CD",X"12",X"50",X"CD",X"C3",X"46",X"CD",X"D2",X"43",X"21", + X"07",X"74",X"77",X"2C",X"36",X"00",X"21",X"07",X"74",X"7E",X"D6",X"41",X"9F",X"2F",X"4F",X"3E", + X"5A",X"96",X"9F",X"2F",X"A1",X"5F",X"7E",X"D6",X"30",X"9F",X"2F",X"D5",X"4F",X"3E",X"39",X"96", + X"A8",X"04",X"02",X"70",X"08",X"04",X"38",X"0A",X"09",X"60",X"07",X"08",X"78",X"0D",X"0C",X"40", + X"04",X"0E",X"40",X"07",X"06",X"58",X"0A",X"0B",X"78",X"0D",X"0C",X"88",X"05",X"04",X"30",X"04", + X"05",X"A8",X"09",X"08",X"38",X"0C",X"0B",X"70",X"0F",X"10",X"78",X"11",X"0F",X"80",X"10",X"06", + X"21",X"C8",X"73",X"77",X"D6",X"30",X"9F",X"2E",X"CB",X"4F",X"7E",X"2E",X"C8",X"96",X"9F",X"C5", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"60",X"28",X"60",X"28",X"5D",X"2A",X"60",X"28",X"5D",X"2A",X"A5",X"2C",X"5D",X"2A",X"A5",X"2C", + X"86",X"28",X"B8",X"29",X"D6",X"48",X"27",X"4B",X"DC",X"29",X"DF",X"29",X"E2",X"29",X"ED",X"29", + X"4F",X"2A",X"BB",X"48",X"02",X"11",X"01",X"02",X"68",X"01",X"04",X"46",X"01",X"0A",X"71",X"01", + X"0C",X"77",X"01",X"00",X"00",X"00",X"14",X"39",X"01",X"33",X"00",X"04",X"39",X"08",X"2E",X"02", + X"39",X"03",X"2E",X"03",X"39",X"00",X"03",X"39",X"0E",X"2E",X"03",X"39",X"00",X"03",X"39",X"0F", + X"2E",X"02",X"39",X"00",X"02",X"39",X"10",X"2E",X"02",X"39",X"00",X"02",X"39",X"0B",X"2E",X"02", + X"39",X"03",X"2E",X"02",X"39",X"01",X"32",X"05",X"2E",X"01",X"BA",X"00",X"02",X"39",X"0C",X"2E", + X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"01", + X"39",X"00",X"01",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"08",X"2E",X"01",X"39", + X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00", + X"01",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"01", + X"39",X"06",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39", + X"06",X"2E",X"02",X"39",X"04",X"2E",X"02",X"39",X"07",X"2E",X"04",X"39",X"00",X"01",X"39",X"06", + X"2E",X"02",X"39",X"0C",X"2E",X"05",X"39",X"00",X"07",X"2E",X"02",X"39",X"0D",X"2E",X"04",X"39", + X"00",X"07",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E", + X"04",X"39",X"05",X"2E",X"02",X"39",X"07",X"2E",X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"05", + X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"00",X"05",X"2E",X"04",X"39",X"06",X"2E",X"04",X"39", + X"05",X"2E",X"02",X"39",X"00",X"05",X"2E",X"01",X"33",X"02",X"39",X"06",X"2E",X"01",X"39",X"04", + X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39", + X"00",X"06",X"2E",X"01",X"39",X"12",X"2E",X"01",X"39",X"00",X"06",X"2E",X"02",X"39",X"10",X"2E", + X"02",X"39",X"00",X"06",X"2E",X"04",X"39",X"0E",X"2E",X"02",X"39",X"00",X"06",X"2E",X"05",X"39", + X"04",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"00",X"05",X"2E",X"01",X"33",X"14",X"39",X"00", + X"37",X"1E",X"03",X"CD",X"10",X"49",X"2F",X"0F",X"F2",X"05",X"02",X"AF",X"50",X"F2",X"07",X"04", + X"EF",X"50",X"F2",X"04",X"03",X"6F",X"51",X"F6",X"06",X"06",X"B6",X"50",X"F5",X"04",X"06",X"10", + X"52",X"F6",X"05",X"07",X"02",X"53",X"F5",X"01",X"07",X"07",X"53",X"00",X"64",X"28",X"D0",X"64", + X"D0",X"40",X"0A",X"00",X"38",X"E8",X"A8",X"A8",X"60",X"38",X"70",X"70",X"00",X"80",X"00",X"38", + X"02",X"08",X"01",X"E0",X"01",X"A8",X"05",X"04",X"00",X"A0",X"03",X"40",X"01",X"E0",X"02",X"A8", + X"04",X"01",X"00",X"E0",X"03",X"A8",X"80",X"E0",X"03",X"70",X"09",X"08",X"00",X"A0",X"03",X"40", + X"05",X"A0",X"02",X"70",X"08",X"01",X"00",X"38",X"83",X"08",X"05",X"A0",X"01",X"60",X"06",X"01", + X"00",X"38",X"07",X"08",X"01",X"58",X"05",X"00",X"06",X"04",X"00",X"A0",X"86",X"40",X"06",X"58", + X"08",X"00",X"07",X"01",X"09",X"A0",X"09",X"40",X"05",X"68",X"04",X"60",X"07",X"01",X"0C",X"E0", + X"09",X"A8",X"89",X"68",X"03",X"38",X"0A",X"40",X"00",X"E0",X"0A",X"A8",X"07",X"30",X"09",X"00", + X"0A",X"C2",X"4B",X"A2",X"4B",X"C4",X"4B",X"A4",X"4B",X"82",X"4B",X"84",X"4B",X"83",X"2A",X"C9", + X"2B",X"C9",X"48",X"C7",X"48",X"ED",X"2B",X"F0",X"2B",X"F3",X"2B",X"03",X"2C",X"97",X"2C",X"CA", + X"48",X"03",X"16",X"01",X"05",X"50",X"01",X"07",X"46",X"01",X"0B",X"6B",X"01",X"0D",X"7D",X"01", + X"0F",X"83",X"01",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"35",X"05",X"31",X"01",X"34",X"0C", + X"39",X"00",X"06",X"2E",X"01",X"39",X"08",X"2E",X"02",X"39",X"05",X"2E",X"04",X"39",X"00",X"06", + X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39", + X"00",X"06",X"2E",X"01",X"39",X"11",X"2E",X"02",X"39",X"00",X"06",X"2E",X"01",X"39",X"01",X"33", + X"07",X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"05",X"2E",X"01",X"33",X"01",X"39",X"01", + X"32",X"05",X"31",X"01",X"30",X"06",X"39",X"05",X"2E",X"01",X"39",X"00",X"05",X"2E",X"0E",X"39", + X"06",X"2E",X"01",X"39",X"00",X"06",X"2E",X"03",X"39",X"04",X"2E",X"05",X"39",X"07",X"2E",X"01", + X"39",X"00",X"06",X"2E",X"02",X"39",X"06",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"0E", + X"2E",X"03",X"39",X"05",X"2E",X"04",X"39",X"00",X"01",X"39",X"0D",X"2E",X"02",X"39",X"05",X"2E", + X"05",X"39",X"00",X"02",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"05",X"39",X"00",X"02",X"39", + X"06",X"2E",X"01",X"39",X"05",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"06", + X"2E",X"03",X"39",X"04",X"2E",X"01",X"39",X"05",X"2E",X"06",X"39",X"00",X"01",X"39",X"05",X"2E", + X"03",X"39",X"05",X"2E",X"01",X"39",X"06",X"2E",X"05",X"39",X"00",X"01",X"39",X"06",X"2E",X"01", + X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"04",X"39",X"00",X"01",X"39",X"06",X"2E",X"02",X"39", + X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"00",X"01",X"39",X"07",X"2E",X"02",X"39",X"05", + X"2E",X"03",X"39",X"07",X"2E",X"01",X"39",X"00",X"01",X"39",X"07",X"2E",X"03",X"39",X"05",X"2E", + X"03",X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"06",X"2E",X"02",X"39",X"08",X"2E",X"01", + X"39",X"06",X"2E",X"01",X"39",X"00",X"02",X"39",X"16",X"2E",X"02",X"39",X"00",X"04",X"39",X"14", + X"2E",X"02",X"39",X"00",X"04",X"39",X"0A",X"2E",X"01",X"39",X"08",X"2E",X"03",X"39",X"00",X"05", + X"39",X"02",X"2E",X"02",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"04",X"39",X"00",X"1A",X"39", + X"00",X"CD",X"AC",X"44",X"21",X"D7",X"70",X"77",X"C3",X"F2",X"05",X"07",X"A2",X"50",X"F5",X"01", + X"07",X"A7",X"50",X"F6",X"07",X"07",X"A9",X"50",X"F2",X"02",X"07",X"B0",X"50",X"F5",X"07",X"02", + X"4A",X"52",X"F5",X"03",X"07",X"12",X"53",X"F5",X"04",X"06",X"28",X"53",X"00",X"24",X"80",X"C8", + X"24",X"D0",X"C0",X"0F",X"E8",X"A8",X"68",X"A8",X"88",X"68",X"00",X"38",X"60",X"08",X"50",X"A8", + X"78",X"68",X"60",X"80",X"00",X"E0",X"01",X"A8",X"02",X"E0",X"01",X"A8",X"0F",X"08",X"00",X"A0", + X"01",X"68",X"03",X"E0",X"02",X"A8",X"8C",X"08",X"00",X"60",X"02",X"08",X"03",X"E0",X"03",X"A8", + X"8F",X"01",X"09",X"38",X"0E",X"08",X"04",X"A0",X"03",X"88",X"05",X"01",X"00",X"38",X"0E",X"08", + X"05",X"80",X"04",X"68",X"06",X"01",X"09",X"38",X"08",X"08",X"06",X"60",X"05",X"40",X"07",X"04", + X"00",X"38",X"08",X"08",X"07",X"38",X"06",X"00",X"07",X"04",X"00",X"60",X"09",X"40",X"92",X"60", + X"0E",X"00",X"08",X"04",X"00",X"A0",X"95",X"68",X"08",X"60",X"98",X"00",X"09",X"02",X"00",X"E0", + X"0A",X"A8",X"09",X"50",X"0B",X"00",X"0A",X"02",X"0C",X"E0",X"0B",X"A8",X"09",X"60",X"0F",X"58", + X"0A",X"01",X"00",X"A0",X"0F",X"78",X"0D",X"A0",X"02",X"68",X"09",X"08",X"09",X"70",X"0C",X"68", + X"0E",X"A0",X"02",X"68",X"09",X"08",X"00",X"60",X"0D",X"40",X"9B",X"A0",X"03",X"68",X"08",X"40", + X"00",X"E0",X"0F",X"A8",X"0C",X"A0",X"01",X"68",X"0B",X"A2",X"48",X"C2",X"48",X"A4",X"48",X"C4", + X"48",X"E2",X"48",X"E4",X"48",X"CB",X"2C",X"63",X"2E",X"53",X"4B",X"3B",X"4B",X"91",X"2E",X"94", + X"2E",X"97",X"2E",X"AA",X"2E",X"5C",X"2F",X"52",X"4B",X"06",X"1B",X"01",X"0E",X"6E",X"01",X"10", + X"46",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1A",X"39",X"00",X"03",X"39", + X"02",X"2E",X"01",X"39",X"02",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"03",X"2E",X"02",X"39", + X"00",X"02",X"39",X"08",X"2E",X"06",X"39",X"04",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"00", + X"01",X"39",X"0A",X"2E",X"04",X"39",X"0A",X"2E",X"01",X"39",X"00",X"01",X"39",X"0A",X"2E",X"02", + X"39",X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"06",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39", + X"0C",X"2E",X"01",X"39",X"00",X"01",X"39",X"05",X"2E",X"03",X"39",X"08",X"2E",X"03",X"39",X"05", + X"2E",X"01",X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"07",X"2E",X"02",X"39",X"06",X"2E", + X"01",X"39",X"00",X"03",X"39",X"04",X"2E",X"03",X"39",X"06",X"2E",X"03",X"39",X"06",X"2E",X"01", + X"39",X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"06",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39", + X"00",X"02",X"39",X"05",X"2E",X"03",X"39",X"03",X"2E",X"05",X"39",X"04",X"2E",X"04",X"39",X"00", + X"01",X"39",X"05",X"2E",X"05",X"39",X"03",X"2E",X"04",X"39",X"04",X"2E",X"04",X"39",X"00",X"01", + X"39",X"05",X"2E",X"06",X"39",X"03",X"2E",X"03",X"39",X"05",X"2E",X"03",X"39",X"00",X"01",X"39", + X"04",X"2E",X"08",X"39",X"03",X"2E",X"02",X"39",X"06",X"2E",X"02",X"39",X"00",X"01",X"39",X"04", + X"2E",X"02",X"39",X"03",X"2E",X"02",X"39",X"05",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00", + X"01",X"39",X"03",X"2E",X"03",X"39",X"0A",X"2E",X"02",X"39",X"06",X"2E",X"01",X"39",X"00",X"01", + X"39",X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39", + X"04",X"2E",X"01",X"39",X"0B",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00",X"01",X"39",X"04", + X"2E",X"01",X"39",X"04",X"2E",X"02",X"39",X"05",X"2E",X"03",X"39",X"05",X"2E",X"01",X"39",X"00", + X"02",X"39",X"03",X"2E",X"01",X"39",X"04",X"2E",X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34", + X"01",X"39",X"01",X"35",X"05",X"2E",X"01",X"34",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"05",X"2E",X"01",X"33",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39", + X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"01",X"39",X"09",X"2E",X"01",X"39",X"01", + X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"02",X"39",X"07",X"2E",X"02",X"39",X"01",X"33", + X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"03",X"39",X"02",X"2E",X"01",X"39",X"02",X"2E",X"03", + X"39",X"01",X"33",X"06",X"2E",X"01",X"39",X"01",X"33",X"00",X"0B",X"39",X"01",X"33",X"05",X"2E", + X"01",X"33",X"01",X"39",X"01",X"33",X"05",X"2E",X"01",X"33",X"00",X"2A",X"0C",X"74",X"09",X"23", + X"22",X"0C",X"74",X"F5",X"05",X"07",X"A7",X"50",X"F2",X"08",X"03",X"A2",X"51",X"F4",X"07",X"03", + X"0C",X"52",X"F5",X"02",X"05",X"6C",X"52",X"F5",X"06",X"02",X"02",X"53",X"F6",X"07",X"07",X"0D", + X"53",X"F5",X"01",X"07",X"15",X"53",X"F4",X"05",X"07",X"16",X"53",X"F5",X"01",X"07",X"1B",X"53", + X"00",X"44",X"70",X"38",X"44",X"30",X"40",X"12",X"00",X"40",X"68",X"00",X"28",X"48",X"80",X"E8", + X"A8",X"88",X"48",X"E8",X"B0",X"B0",X"88",X"88",X"78",X"48",X"80",X"00",X"40",X"02",X"08",X"01", + X"48",X"12",X"00",X"01",X"04",X"00",X"68",X"03",X"48",X"01",X"48",X"11",X"00",X"02",X"04",X"00", + X"98",X"9E",X"70",X"02",X"48",X"AD",X"00",X"03",X"04",X"00",X"E0",X"04",X"A0",X"03",X"28",X"05", + X"00",X"04",X"02",X"00",X"E0",X"05",X"A0",X"03",X"48",X"06",X"30",X"04",X"02",X"00",X"E0",X"06", + X"88",X"10",X"80",X"07",X"50",X"05",X"02",X"09",X"E0",X"07",X"88",X"0E",X"A8",X"A1",X"88",X"06", + X"08",X"00",X"E0",X"08",X"A8",X"09",X"E0",X"08",X"B0",X"07",X"08",X"0C",X"A0",X"08",X"88",X"0A", + X"E0",X"09",X"B0",X"07",X"08",X"00",X"80",X"09",X"48",X"0B",X"E0",X"0A",X"B0",X"0E",X"08",X"09", + X"40",X"0A",X"38",X"0C",X"E0",X"0B",X"B0",X"0D",X"01",X"00",X"30",X"0B",X"08",X"0C",X"E0",X"0C", + X"B0",X"0D",X"01",X"00",X"40",X"0E",X"08",X"0D",X"A8",X"A4",X"88",X"12",X"01",X"00",X"80",X"07", + X"48",X"0D",X"A8",X"0A",X"88",X"A7",X"01",X"09",X"68",X"10",X"48",X"12",X"80",X"0E",X"78",X"11", + X"08",X"0F",X"80",X"06",X"70",X"AA",X"80",X"0E",X"50",X"03",X"08",X"00",X"68",X"10",X"48",X"12", + X"70",X"0F",X"50",X"02",X"40",X"00",X"40",X"AA",X"08",X"12",X"80",X"0D",X"50",X"01",X"D6",X"4B", + X"D8",X"4B",X"B6",X"4B",X"B8",X"4B",X"96",X"4B",X"98",X"4B",X"2E",X"13",X"5E",X"CD",X"15",X"50", + X"5F",X"21",X"13",X"74",X"4E",X"CD",X"E8",X"4E",X"21",X"13",X"74",X"34",X"C2",X"5A",X"50",X"C9", + X"21",X"19",X"74",X"36",X"00",X"2D",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"18",X"74",X"96", + X"DA",X"B0",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"9F",X"50",X"21",X"19",X"74",X"34",X"21", + X"19",X"74",X"7E",X"D6",X"02",X"DA",X"AB",X"50",X"3E",X"FF",X"C9",X"2D",X"34",X"C2",X"88",X"50", + X"AF",X"C9",X"21",X"1A",X"74",X"36",X"00",X"0E",X"1B",X"0D",X"79",X"21",X"1A",X"74",X"96",X"DA", + X"D3",X"50",X"4E",X"CD",X"DB",X"4E",X"0F",X"D2",X"CC",X"50",X"AF",X"C9",X"21",X"1A",X"74",X"34", + X"C2",X"B7",X"50",X"3E",X"FF",X"C9",X"CD",X"12",X"50",X"CD",X"C3",X"46",X"CD",X"D2",X"43",X"21", + X"07",X"74",X"77",X"2C",X"36",X"00",X"21",X"07",X"74",X"7E",X"D6",X"41",X"9F",X"2F",X"4F",X"3E", + X"5A",X"96",X"9F",X"2F",X"A1",X"5F",X"7E",X"D6",X"30",X"9F",X"2F",X"D5",X"4F",X"3E",X"39",X"96"); +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/Taito Crazy Balloon/rtl/rom/sfx3.vhd b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/sfx3.vhd new file mode 100644 index 00000000..46b7469d --- /dev/null +++ b/Arcade_MiST/Taito Crazy Balloon/rtl/rom/sfx3.vhd @@ -0,0 +1,839 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity sfx3 is +port ( + clk : in std_logic; + addr : in std_logic_vector(13 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of sfx3 is + type rom is array(0 to 13061) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"52",X"49",X"46",X"46",X"FE",X"32",X"00",X"00",X"57",X"41",X"56",X"45",X"66",X"6D",X"74",X"20", + X"10",X"00",X"00",X"00",X"01",X"00",X"01",X"00",X"80",X"3E",X"00",X"00",X"80",X"3E",X"00",X"00", + X"01",X"00",X"08",X"00",X"64",X"61",X"74",X"61",X"9C",X"32",X"00",X"00",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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"80",X"80",X"80",X"80", + X"80",X"80",X"80",X"7F",X"80",X"80",X"80",X"80",X"80",X"7F",X"80",X"7F",X"7F",X"80",X"80",X"80", + X"80",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"7F",X"7F", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"80", + X"7F",X"80",X"80",X"80",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"7F",X"7F", + X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"80",X"7F",X"7F",X"80",X"7F", + X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"80",X"7F",X"80", + X"80",X"80",X"7F",X"80",X"80",X"7F",X"80",X"80",X"7F",X"80",X"7F",X"80",X"7F",X"7F",X"7F",X"80", + X"7F",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"7F", + X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"80",X"7F",X"7F", + X"80",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7E",X"7F",X"7F",X"7F",X"7E",X"7F",X"7F",X"7F", + X"80",X"7F",X"7F",X"7E",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7E",X"7F",X"80",X"80",X"81", + X"80",X"81",X"7F",X"81",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",X"81",X"7F",X"7E",X"7E",X"80", + X"7F",X"7E",X"7F",X"80",X"80",X"7E",X"80",X"7F",X"80",X"7F",X"7E",X"7F",X"7D",X"82",X"81",X"7F", + X"7E",X"80",X"7E",X"7F",X"80",X"81",X"80",X"7D",X"80",X"82",X"80",X"7E",X"80",X"81",X"7D",X"7F", + X"80",X"7E",X"7E",X"80",X"82",X"7E",X"7D",X"81",X"81",X"82",X"7F",X"80",X"80",X"7E",X"7F",X"84", + X"82",X"81",X"80",X"7F",X"82",X"7F",X"83",X"80",X"81",X"82",X"84",X"80",X"80",X"83",X"82",X"7E", + X"7E",X"81",X"80",X"80",X"83",X"80",X"81",X"80",X"80",X"82",X"81",X"81",X"84",X"84",X"86",X"85", + X"86",X"81",X"84",X"82",X"80",X"84",X"85",X"82",X"85",X"80",X"84",X"80",X"83",X"86",X"84",X"84", + X"7F",X"7F",X"84",X"81",X"82",X"7E",X"80",X"7E",X"7E",X"7E",X"83",X"82",X"83",X"84",X"81",X"85", + X"83",X"81",X"81",X"7F",X"82",X"7F",X"81",X"86",X"84",X"7F",X"7F",X"82",X"86",X"84",X"82",X"86", + X"83",X"81",X"85",X"85",X"84",X"86",X"86",X"7F",X"82",X"81",X"82",X"81",X"80",X"80",X"82",X"83", + X"80",X"7C",X"7D",X"81",X"86",X"7F",X"7F",X"82",X"82",X"7F",X"81",X"82",X"83",X"81",X"7F",X"80", + X"7E",X"80",X"81",X"7F",X"81",X"80",X"86",X"82",X"83",X"80",X"7E",X"83",X"80",X"83",X"80",X"85", + X"84",X"80",X"81",X"82",X"86",X"85",X"81",X"84",X"80",X"80",X"81",X"81",X"7E",X"7F",X"82",X"8B", + X"62",X"81",X"9C",X"B8",X"94",X"85",X"94",X"8F",X"A8",X"B9",X"D9",X"D4",X"F9",X"F5",X"F9",X"FB", + X"FF",X"FB",X"FF",X"FA",X"FF",X"EF",X"E9",X"C6",X"D8",X"E4",X"96",X"AA",X"43",X"47",X"64",X"72", + X"71",X"41",X"60",X"0E",X"25",X"00",X"27",X"1D",X"00",X"04",X"08",X"15",X"12",X"04",X"2D",X"29", + X"54",X"64",X"7D",X"45",X"3D",X"36",X"07",X"1C",X"3B",X"4F",X"72",X"5B",X"32",X"7C",X"73",X"22", + X"1C",X"26",X"25",X"3F",X"93",X"63",X"7E",X"86",X"7A",X"8F",X"82",X"A1",X"BB",X"B1",X"98",X"B6", + X"8F",X"8F",X"A3",X"A7",X"80",X"92",X"AB",X"A3",X"94",X"B8",X"C1",X"97",X"53",X"35",X"69",X"48", + X"4B",X"68",X"6E",X"6A",X"8B",X"9A",X"80",X"72",X"4B",X"6A",X"78",X"71",X"54",X"69",X"69",X"68", + X"5D",X"78",X"8B",X"7A",X"78",X"8F",X"9A",X"AB",X"87",X"66",X"62",X"8A",X"77",X"80",X"A0",X"E1", + X"D9",X"DD",X"B8",X"BF",X"A3",X"8B",X"8F",X"C3",X"B7",X"C9",X"CB",X"DA",X"D1",X"C8",X"AF",X"CD", + X"B9",X"CF",X"E6",X"D0",X"C2",X"B4",X"C1",X"C2",X"B5",X"C3",X"D2",X"CA",X"C9",X"B3",X"B0",X"AB", + X"A9",X"A6",X"9B",X"91",X"87",X"82",X"82",X"6F",X"5D",X"69",X"66",X"59",X"5E",X"6D",X"5B",X"5E", + X"61",X"53",X"42",X"41",X"40",X"4B",X"4F",X"45",X"3F",X"48",X"5A",X"50",X"53",X"61",X"4A",X"4C", + X"3B",X"3B",X"40",X"43",X"44",X"4B",X"58",X"58",X"5A",X"4E",X"48",X"46",X"4E",X"5F",X"6A",X"75", + X"8B",X"83",X"7A",X"65",X"5F",X"72",X"86",X"72",X"79",X"6B",X"86",X"88",X"98",X"9B",X"81",X"79", + X"83",X"8B",X"7C",X"6B",X"68",X"63",X"7B",X"80",X"A9",X"B3",X"9F",X"B7",X"BD",X"AB",X"94",X"96", + X"B9",X"A3",X"8C",X"92",X"A3",X"99",X"9F",X"B3",X"A7",X"90",X"88",X"8C",X"98",X"98",X"90",X"87", + X"8E",X"81",X"88",X"6E",X"7A",X"92",X"9D",X"B1",X"A8",X"A6",X"99",X"93",X"9C",X"9B",X"9A",X"92", + X"84",X"8D",X"91",X"90",X"90",X"90",X"9C",X"A7",X"9C",X"93",X"87",X"86",X"77",X"83",X"6C",X"6F", + X"69",X"6F",X"6D",X"75",X"7F",X"84",X"7B",X"6E",X"64",X"70",X"59",X"53",X"6F",X"6D",X"68",X"6D", + X"75",X"7C",X"6E",X"66",X"72",X"68",X"6D",X"61",X"60",X"50",X"4F",X"4D",X"51",X"49",X"57",X"4F", + X"6D",X"6F",X"65",X"66",X"63",X"7A",X"73",X"7B",X"6F",X"65",X"5A",X"5C",X"65",X"5D",X"64",X"6D", + X"64",X"6D",X"7E",X"75",X"6A",X"78",X"6E",X"72",X"75",X"70",X"73",X"6E",X"70",X"76",X"8B",X"7A", + X"68",X"6A",X"6F",X"69",X"6A",X"75",X"7B",X"75",X"79",X"70",X"8A",X"87",X"81",X"86",X"8B",X"94", + X"96",X"8A",X"8F",X"88",X"79",X"7C",X"7F",X"76",X"73",X"71",X"78",X"7D",X"8D",X"89",X"7E",X"81", + X"86",X"84",X"89",X"93",X"97",X"89",X"8C",X"95",X"91",X"8E",X"91",X"91",X"94",X"9C",X"B2",X"B0", + X"AC",X"9F",X"A7",X"A8",X"B2",X"B6",X"BC",X"B0",X"B0",X"AD",X"A9",X"B2",X"A7",X"9C",X"A8",X"A0", + X"9C",X"A9",X"A5",X"9A",X"98",X"92",X"9A",X"8E",X"8C",X"84",X"8D",X"8A",X"8F",X"9C",X"8E",X"8A", + X"8B",X"8E",X"8B",X"88",X"81",X"75",X"7A",X"7D",X"82",X"79",X"7A",X"78",X"74",X"77",X"7B",X"80", + X"73",X"6A",X"6C",X"6A",X"5F",X"63",X"6A",X"6B",X"71",X"72",X"76",X"6F",X"64",X"66",X"67",X"73", + X"75",X"6A",X"6B",X"66",X"6A",X"6E",X"6B",X"6E",X"68",X"6F",X"72",X"7E",X"7E",X"7E",X"7D",X"77", + X"6B",X"70",X"6F",X"72",X"75",X"77",X"76",X"79",X"76",X"6D",X"6C",X"6E",X"72",X"71",X"69",X"67", + X"65",X"6E",X"71",X"76",X"6F",X"6F",X"79",X"7B",X"6F",X"6D",X"6E",X"77",X"6D",X"65",X"68",X"79", + X"7A",X"74",X"73",X"71",X"78",X"76",X"71",X"70",X"72",X"81",X"7B",X"7A",X"79",X"7A",X"78",X"6F", + X"6B",X"70",X"6F",X"70",X"75",X"6D",X"77",X"77",X"70",X"6F",X"70",X"76",X"74",X"79",X"7A",X"7E", + X"80",X"83",X"80",X"85",X"82",X"7C",X"84",X"86",X"84",X"8D",X"93",X"91",X"94",X"99",X"97",X"8F", + X"96",X"96",X"95",X"93",X"8F",X"8E",X"92",X"95",X"94",X"91",X"8B",X"8E",X"8E",X"8B",X"8A",X"84", + X"89",X"8E",X"91",X"98",X"8F",X"8E",X"8F",X"8A",X"83",X"89",X"93",X"8A",X"80",X"7D",X"83",X"85", + X"81",X"80",X"80",X"83",X"83",X"86",X"85",X"78",X"82",X"88",X"82",X"84",X"7B",X"81",X"78",X"74", + X"75",X"76",X"77",X"74",X"76",X"7D",X"74",X"6E",X"77",X"77",X"76",X"75",X"75",X"77",X"75",X"76", + X"77",X"77",X"73",X"78",X"76",X"7C",X"7D",X"7D",X"7A",X"79",X"7C",X"7F",X"7D",X"7E",X"80",X"7B", + X"7F",X"80",X"7B",X"7F",X"7F",X"7A",X"78",X"7A",X"80",X"7A",X"7C",X"7C",X"7A",X"76",X"78",X"79", + X"7A",X"76",X"77",X"74",X"7A",X"78",X"7C",X"7E",X"7B",X"7C",X"7C",X"80",X"75",X"77",X"79",X"7C", + X"81",X"7D",X"7E",X"81",X"7E",X"7E",X"80",X"7E",X"7F",X"81",X"80",X"7F",X"82",X"84",X"86",X"82", + X"7D",X"82",X"80",X"82",X"82",X"84",X"81",X"7B",X"7F",X"7F",X"7E",X"7C",X"7C",X"81",X"81",X"7D", + X"7B",X"7C",X"7C",X"78",X"7D",X"84",X"85",X"8A",X"88",X"86",X"83",X"83",X"82",X"88",X"81",X"82", + X"7C",X"7E",X"85",X"84",X"86",X"84",X"8A",X"8C",X"8D",X"8C",X"86",X"88",X"86",X"8A",X"91",X"95", + X"93",X"8F",X"8A",X"8C",X"8A",X"89",X"89",X"8A",X"8A",X"85",X"86",X"86",X"8A",X"8E",X"8E",X"8E", + X"8B",X"8A",X"81",X"81",X"80",X"7F",X"7F",X"7A",X"7A",X"76",X"7D",X"7A",X"7B",X"7B",X"7D",X"79", + X"75",X"73",X"73",X"76",X"71",X"74",X"71",X"6F",X"75",X"78",X"76",X"79",X"7C",X"7D",X"78",X"7D", + X"7B",X"78",X"77",X"77",X"7D",X"7B",X"78",X"7A",X"79",X"7C",X"7C",X"7C",X"7E",X"7D",X"7D",X"75", + X"76",X"76",X"78",X"7C",X"78",X"78",X"7A",X"7C",X"7C",X"7A",X"7A",X"79",X"78",X"75",X"75",X"72", + X"74",X"78",X"78",X"7A",X"79",X"77",X"78",X"77",X"79",X"75",X"74",X"75",X"79",X"76",X"7A",X"76", + X"75",X"76",X"79",X"77",X"76",X"7D",X"7E",X"7D",X"7B",X"7A",X"80",X"7F",X"7E",X"78",X"7C",X"7C", + X"7C",X"7D",X"7F",X"81",X"83",X"83",X"83",X"85",X"81",X"81",X"87",X"86",X"82",X"86",X"83",X"83", + X"81",X"84",X"8A",X"87",X"83",X"86",X"84",X"87",X"84",X"80",X"81",X"85",X"84",X"85",X"86",X"84", + X"82",X"85",X"89",X"8A",X"8C",X"8D",X"8C",X"8A",X"8B",X"8B",X"86",X"87",X"8A",X"8A",X"8C",X"8C", + X"8E",X"8D",X"8E",X"8C",X"8B",X"89",X"88",X"89",X"8C",X"8D",X"8B",X"87",X"89",X"87",X"89",X"87", + X"83",X"7F",X"7E",X"7F",X"7F",X"7D",X"7E",X"7F",X"7E",X"7F",X"7C",X"7B",X"7A",X"7B",X"7A",X"79", + X"7A",X"7C",X"80",X"7C",X"7D",X"7E",X"7E",X"81",X"7F",X"81",X"7F",X"7C",X"7E",X"81",X"80",X"81", + X"84",X"84",X"84",X"83",X"82",X"7F",X"7F",X"7D",X"7F",X"7F",X"80",X"82",X"7E",X"7B",X"7B",X"7B", + X"7C",X"7A",X"79",X"77",X"7A",X"7A",X"75",X"71",X"75",X"78",X"77",X"75",X"71",X"72",X"73",X"73", + X"78",X"79",X"78",X"7B",X"79",X"78",X"78",X"7C",X"7A",X"78",X"7A",X"7A",X"7B",X"7D",X"7D",X"80", + X"7E",X"7D",X"7E",X"7E",X"7E",X"7C",X"7D",X"7E",X"7B",X"7C",X"7E",X"7F",X"7D",X"7D",X"7D",X"7C", + X"7D",X"7E",X"7D",X"79",X"79",X"7C",X"7D",X"7B",X"7B",X"7C",X"7D",X"7B",X"7A",X"7B",X"7F",X"7F", + X"7D",X"7C",X"7E",X"7F",X"7D",X"7E",X"7F",X"81",X"84",X"83",X"82",X"81",X"81",X"82",X"83",X"83", + X"83",X"85",X"83",X"84",X"85",X"86",X"86",X"83",X"82",X"81",X"82",X"82",X"83",X"83",X"81",X"83", + X"84",X"82",X"82",X"82",X"84",X"85",X"84",X"86",X"85",X"82",X"81",X"81",X"82",X"82",X"82",X"84", + X"83",X"83",X"82",X"84",X"84",X"83",X"81",X"82",X"82",X"81",X"81",X"81",X"82",X"82",X"80",X"82", + X"81",X"81",X"81",X"80",X"81",X"81",X"80",X"7F",X"80",X"80",X"7F",X"7E",X"7C",X"7C",X"7A",X"7C", + X"7F",X"7D",X"7B",X"7D",X"7B",X"7A",X"7B",X"7A",X"7A",X"79",X"7C",X"7C",X"7C",X"7C",X"7D",X"7C", + X"7C",X"7D",X"7D",X"7C",X"7D",X"80",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"80",X"81",X"81",X"7F", + X"7F",X"7F",X"80",X"80",X"82",X"82",X"80",X"82",X"81",X"7F",X"81",X"81",X"80",X"7F",X"81",X"80", + X"7E",X"81",X"83",X"83",X"81",X"81",X"80",X"80",X"7E",X"7F",X"7F",X"80",X"7F",X"7E",X"7F",X"7F", + X"7F",X"7F",X"80",X"7F",X"81",X"80",X"80",X"7F",X"7F",X"7F",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E", + X"7E",X"80",X"81",X"81",X"81",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"81", + X"7F",X"81",X"80",X"82",X"81",X"80",X"82",X"81",X"82",X"82",X"82",X"81",X"80",X"80",X"80",X"7E", + X"7F",X"81",X"7F",X"7E",X"7D",X"7F",X"7F",X"7E",X"7F",X"7E",X"7D",X"7C",X"7E",X"7D",X"7E",X"7E", + X"7D",X"7C",X"7E",X"7C",X"7D",X"7D",X"7D",X"7D",X"7D",X"7F",X"7D",X"7F",X"7E",X"7E",X"7E",X"7F", + X"7E",X"7F",X"80",X"80",X"7F",X"7F",X"7E",X"7F",X"7F",X"7F",X"7F",X"7E",X"7F",X"7F",X"7F",X"7F", + X"80",X"81",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7C",X"7C",X"7C",X"7B",X"7C",X"7C",X"7A",X"7A", + X"7C",X"7C",X"7C",X"7C",X"7D",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7F",X"7E",X"7E", + X"7D",X"7C",X"7E",X"7E",X"7E",X"7D",X"7E",X"7E",X"80",X"80",X"7F",X"80",X"81",X"7F",X"7E",X"7D", + X"7E",X"7E",X"7F",X"7F",X"7F",X"81",X"81",X"81",X"7F",X"80",X"7F",X"7F",X"7E",X"7F",X"80",X"80", + X"80",X"81",X"81",X"81",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"80",X"80",X"81",X"81",X"82",X"81", + X"81",X"81",X"82",X"81",X"82",X"82",X"82",X"81",X"81",X"80",X"81",X"81",X"81",X"81",X"80",X"81", + X"81",X"81",X"82",X"82",X"82",X"81",X"81",X"81",X"81",X"82",X"81",X"81",X"81",X"81",X"80",X"81", + X"81",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E", + X"7E",X"7E",X"7F",X"7F",X"7E",X"7E",X"7D",X"7C",X"7C",X"7D",X"7D",X"7C",X"7C",X"7C",X"7C",X"7C", + X"7D",X"7D",X"7E",X"7C",X"7D",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7D", + X"7D",X"7D",X"7D",X"7E",X"7E",X"7E",X"7D",X"7E",X"7E",X"7E",X"7F",X"7F",X"7D",X"7E",X"7E",X"7D", + X"7E",X"7D",X"7E",X"7F",X"7E",X"7E",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E", + X"7D",X"7D",X"7F",X"7F",X"7F",X"7F",X"7E",X"7F",X"7E",X"7C",X"7D",X"7E",X"7D",X"7E",X"7F",X"7F", + X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7D",X"7D",X"7E",X"7E",X"7E",X"7E", + X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7E",X"7E",X"7F",X"7E",X"7E",X"7F",X"7E",X"7F",X"7E", + X"7E",X"7F",X"7E",X"7F",X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E", + X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7F",X"7E",X"7D",X"7C",X"7C",X"7D",X"7E",X"7E",X"7E",X"7F", + X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7D",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"80",X"7F",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7E",X"7E", + X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E", + X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"80", + X"80",X"80",X"80",X"80",X"7F",X"80",X"80",X"81",X"80",X"80",X"80",X"81",X"81",X"81",X"81",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"80",X"80",X"81",X"81",X"80",X"80",X"81",X"81",X"80",X"80", + X"81",X"81",X"80",X"81",X"81",X"81",X"81",X"80",X"80",X"80",X"80",X"81",X"80",X"7F",X"7F",X"80", + X"80",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7E",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7E",X"7F",X"7F",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"81",X"80",X"80",X"81",X"81",X"81",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"80",X"81",X"81",X"81", + X"81",X"81",X"80",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"82",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"82",X"81",X"81",X"81",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"81", + X"81",X"81",X"81",X"81",X"81",X"81",X"81",X"80",X"81",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"7F",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"81", + X"81",X"80",X"80",X"80",X"80",X"80",X"81",X"81",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"80",X"80", + X"80",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80", + X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"80",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"80",X"80",X"81",X"81",X"81",X"80",X"80",X"80", + X"81",X"81",X"80",X"80",X"7F",X"80",X"80",X"80",X"81",X"80",X"80",X"7F",X"7F",X"7F",X"80",X"7F", + X"7F",X"80",X"80",X"81",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"81",X"81", + X"81",X"81",X"80",X"80",X"80",X"81",X"81",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"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"7F",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"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"7F", + X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7E",X"7F",X"7E",X"7E",X"7F",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7E",X"7E",X"7E", + X"7E",X"7E",X"7F",X"7F",X"7E",X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7E",X"7F",X"7F",X"7F",X"7E", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7E",X"7E",X"7F",X"7F",X"7E",X"7E",X"7E",X"7E",X"7F",X"7E", + X"7F",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7E",X"7E",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F",X"80",X"80",X"7F",X"7F",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"7F",X"80",X"80",X"80",X"80", + X"80",X"80",X"80",X"7F",X"80",X"80",X"80",X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F", + X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"80",X"7F",X"7F",X"7F",X"80",X"7F",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"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"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F", + X"7F",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F", + X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"80",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"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"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"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"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F", + X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"7F",X"7F",X"7F",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"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80", + X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"80", + X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",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"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"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"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"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"80",X"80",X"80",X"80",X"80",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"80",X"80",X"80",X"7F",X"7F",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"80",X"80", + X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"80",X"80",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"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"80",X"80",X"80",X"80",X"80",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"80",X"80",X"80",X"80",X"80",X"80",X"80",X"80", + X"80",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"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"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",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"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"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"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"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"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"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"80",X"80",X"80",X"80",X"7F",X"7F",X"80",X"7F",X"7F",X"7F",X"7F",X"80",X"80", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"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"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"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"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"80",X"80",X"80",X"80",X"80",X"80",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + 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"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"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"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"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"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"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F", + X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"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"80",X"80",X"4C",X"49",X"53",X"54",X"12",X"00",X"00",X"00", + X"49",X"4E",X"46",X"4F",X"49",X"47",X"4E",X"52",X"06",X"00",X"00",X"00",X"4F",X"74",X"68",X"65", + X"72",X"00",X"69",X"64",X"33",X"20",X"1C",X"00",X"00",X"00",X"49",X"44",X"33",X"03",X"00",X"00", + X"00",X"00",X"00",X"12",X"54",X"43",X"4F",X"4E",X"00",X"00",X"00",X"07",X"00",X"00",X"00",X"4F", + X"74",X"68",X"65",X"72",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;