diff --git a/Sega - SG1000/Snapshot/sg1000.qar b/Sega - SG1000/Snapshot/sg1000.qar new file mode 100644 index 00000000..7ceb305b Binary files /dev/null and b/Sega - SG1000/Snapshot/sg1000.qar differ diff --git a/Sega - SG1000/Snapshot/sg1000.rbf b/Sega - SG1000/Snapshot/sg1000.rbf new file mode 100644 index 00000000..6e33ba41 Binary files /dev/null and b/Sega - SG1000/Snapshot/sg1000.rbf differ diff --git a/Sega - SG1000/Snapshot/sg1000_mist.rbf b/Sega - SG1000/Snapshot/sg1000_mist.rbf deleted file mode 100644 index d9efdb9e..00000000 Binary files a/Sega - SG1000/Snapshot/sg1000_mist.rbf and /dev/null differ diff --git a/Sega - SG1000/rtl/SG1000_MiST.sv b/Sega - SG1000/rtl/SG1000_MiST.sv new file mode 100644 index 00000000..065dd5a8 --- /dev/null +++ b/Sega - SG1000/rtl/SG1000_MiST.sv @@ -0,0 +1,158 @@ +module SG1000_MiST( + input CLOCK_27, + output LED, + output VGA_HS, + output VGA_VS, + output [5:0] VGA_R, + output [5:0] VGA_G, + output [5:0] VGA_B, + inout SPI_DO, + input SPI_DI, + input SPI_SCK, + input SPI_SS2, + input SPI_SS3, + input SPI_SS4, + input CONF_DATA0, + output AUDIO_L, + output AUDIO_R +); + +assign LED = ~ioctl_download; +`include "build_id.v" +localparam CONF_STR = +{ + "SG1000;BINSG ;", + "O23,Scandoubler Fx,None,HQ2x,CRT 25%,CRT 50%;", + "O5,Pause,Off,On;", + "T6,Reset;", + "V,v1.0.",`BUILD_DATE +}; + +wire [1:0] buttons, switches; +wire [31:0] status; +wire ypbpr; +wire scandoubler_disable; +wire ps2_kbd_data, ps2_kbd_clk; +wire ioctl_ce; +wire ioctl_download; +wire [7:0] ioctl_index; +wire ioctl_wr; +wire [24:0] ioctl_addr; +wire [7:0] ioctl_dout; +wire [1:0] r, g, b; +wire hb, vb, hs, vs; +wire blankn = ~(hb | vb); +wire [5:0] audio; + +wire clk_8, clk_16, clk_32; + +pll pll ( + .inclk0(CLOCK_27), + .c0(clk_32),//64!!! + .c1(clk_16), + .c2(clk_8) + ); + +mist_io #( + .STRLEN($size(CONF_STR)>>3)) +user_io ( + .clk_sys(clk_32), + .CONF_DATA0(CONF_DATA0), + .SPI_SCK(SPI_SCK), + .SPI_DI(SPI_DI), + .SPI_DO(SPI_DO), + .SPI_SS2(SPI_SS2), + .conf_str(CONF_STR), + .ypbpr(ypbpr), + .status(status), + .scandoubler_disable(scandoubler_disable), + .buttons(buttons), + .switches(switches), + .ps2_kbd_clk(ps2_kbd_clk), + .ps2_kbd_data(ps2_kbd_data), + .ioctl_ce(1'b1), + .ioctl_wr(ioctl_wr), + .ioctl_index(ioctl_index), + .ioctl_download(ioctl_download), + .ioctl_addr(ioctl_addr), + .ioctl_dout(ioctl_dout) + ); + +video_mixer #( + .LINE_LENGTH(480), + .HALF_DEPTH(0)) +video_mixer ( + .clk_sys ( clk_32 ), + .ce_pix ( clk_8 ), + .ce_pix_actual ( clk_8 ), + .SPI_SCK ( SPI_SCK ), + .SPI_SS3 ( SPI_SS3 ), + .SPI_DI ( SPI_DI ), + .R (blankn ? {r,r,r} : "000000" ), + .G (blankn ? {g,g,g} : "000000" ), + .B (blankn ? {b,b,b} : "000000" ), + .HSync ( hs ), + .VSync ( vs ), + .VGA_R ( VGA_R ), + .VGA_G ( VGA_G ), + .VGA_B ( VGA_B ), + .VGA_VS ( VGA_VS ), + .VGA_HS ( VGA_HS ), + .scanlines (scandoubler_disable ? 2'b00 : {status[3:2] == 3, status[3:2] == 2}), + .scandoubler_disable(1'b1),//scandoubler_disable), + .hq2x (status[3:2]==1), + .ypbpr ( ypbpr ), + .ypbpr_full ( 1 ), + .line_start ( 0 ), + .mono ( 0 ) + ); + + +sg1000_top sg1000_top ( + .RESET_n(~(status[0] | status[6] | buttons[1])), + .sys_clk(clk_8), + .clk_vdp(clk_16), + .pause(status[5]), +// .Cart_In(Cart_In), +// .Cart_Out(Cart_Out), +// .Cart_Addr(Cart_Addr), + .audio(audio), + .vblank(vb), + .hblank(hb), + .vga_hs(hs), + .vga_vs(vs), + .vga_r(r), + .vga_g(g), + .vga_b(b), + .Joy_A(), + .Joy_B() +); +/* +wire [7:0] Cart_Out; +wire [7:0] Cart_In; +wire [14:0] Cart_Addr; + +spram #( + .init_file("roms/32.hex"),//Test + .widthad_a(15), + .width_a(8)) +CART ( + .address(ioctl_download ? ioctl_addr[14:0] : Cart_Addr), + .clock(clk_32), + .data(ioctl_dout), + .wren(ioctl_wr), + .q(Cart_Out) + ); */ + +dac #( + .msbi_g(5)) +dac ( + .clk_i(clk_32), + .res_i(), + .dac_i(audio), + .dac_o(AUDIO_L) + ); + +assign AUDIO_R = AUDIO_L; + +endmodule \ No newline at end of file diff --git a/Sega - SG1000/rtl/build_id.tcl b/Sega - SG1000/rtl/build_id.tcl new file mode 100644 index 00000000..481e9ebf --- /dev/null +++ b/Sega - SG1000/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 "sys/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/Sega - SG1000/rtl/build_id.v b/Sega - SG1000/rtl/build_id.v new file mode 100644 index 00000000..6efa26c3 --- /dev/null +++ b/Sega - SG1000/rtl/build_id.v @@ -0,0 +1,2 @@ +`define BUILD_DATE "180816" +`define BUILD_TIME "200421" diff --git a/Sega - SG1000/rtl/dac.vhd b/Sega - SG1000/rtl/dac.vhd new file mode 100644 index 00000000..560e85e2 --- /dev/null +++ b/Sega - SG1000/rtl/dac.vhd @@ -0,0 +1,71 @@ +------------------------------------------------------------------------------- +-- +-- Delta-Sigma DAC +-- +-- $Id: dac.vhd,v 1.1 2006/11/29 14:17:19 arnim Exp $ +-- +-- Refer to Xilinx Application Note XAPP154. +-- +-- This DAC requires an external RC low-pass filter: +-- +-- dac_o 0---XXXXX---+---0 analog audio +-- 2K2 | +-- === 10n +-- | +-- GND +-- +------------------------------------------------------------------------------- + +library ieee; +use ieee.std_logic_1164.all; + +entity dac is + + generic ( + msbi_g : integer := 7 + ); + port ( + clk_i : in std_logic; + res_i : in std_logic; + dac_i : in std_logic_vector(msbi_g downto 0); + dac_o : out std_logic + ); + +end entity; + +library ieee; +use ieee.numeric_std.all; + +architecture rtl of dac is + + signal DACout_q : std_logic; + signal DeltaAdder_s, + SigmaAdder_s, + SigmaLatch_q, + DeltaB_s : unsigned(msbi_g+2 downto 0); + +begin + + DeltaB_s(msbi_g+2 downto msbi_g+1) <= SigmaLatch_q(msbi_g+2) & + SigmaLatch_q(msbi_g+2); + DeltaB_s(msbi_g downto 0) <= (others => '0'); + + DeltaAdder_s <= unsigned('0' & '0' & dac_i) + DeltaB_s; + + SigmaAdder_s <= DeltaAdder_s + SigmaLatch_q; + + seq: process (clk_i, res_i) + begin + if res_i = '1' then + SigmaLatch_q <= to_unsigned(2**(msbi_g+1), SigmaLatch_q'length); + DACout_q <= '0'; + + elsif clk_i'event and clk_i = '1' then + SigmaLatch_q <= SigmaAdder_s; + DACout_q <= SigmaLatch_q(msbi_g+2); + end if; + end process seq; + + dac_o <= DACout_q; + +end architecture; diff --git a/Sega - SG1000/rtl/hq2x.sv b/Sega - SG1000/rtl/hq2x.sv new file mode 100644 index 00000000..f17732b6 --- /dev/null +++ b/Sega - SG1000/rtl/hq2x.sv @@ -0,0 +1,454 @@ +// +// +// Copyright (c) 2012-2013 Ludvig Strigeus +// Copyright (c) 2017 Sorgelig +// +// This program is GPL Licensed. See COPYING for the full license. +// +// +//////////////////////////////////////////////////////////////////////////////////////////////////////// + +// synopsys translate_off +`timescale 1 ps / 1 ps +// synopsys translate_on + +`define BITS_TO_FIT(N) ( \ + N <= 2 ? 0 : \ + N <= 4 ? 1 : \ + N <= 8 ? 2 : \ + N <= 16 ? 3 : \ + N <= 32 ? 4 : \ + N <= 64 ? 5 : \ + N <= 128 ? 6 : \ + N <= 256 ? 7 : \ + N <= 512 ? 8 : \ + N <=1024 ? 9 : 10 ) + +module hq2x_in #(parameter LENGTH, parameter DWIDTH) +( + input clk, + + input [AWIDTH:0] rdaddr, + input rdbuf, + output[DWIDTH:0] q, + + input [AWIDTH:0] wraddr, + input wrbuf, + input [DWIDTH:0] data, + input wren +); + + localparam AWIDTH = `BITS_TO_FIT(LENGTH); + wire [DWIDTH:0] out[2]; + assign q = out[rdbuf]; + + hq2x_buf #(.NUMWORDS(LENGTH), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf0(clk,data,rdaddr,wraddr,wren && (wrbuf == 0),out[0]); + hq2x_buf #(.NUMWORDS(LENGTH), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf1(clk,data,rdaddr,wraddr,wren && (wrbuf == 1),out[1]); +endmodule + + +module hq2x_out #(parameter LENGTH, parameter DWIDTH) +( + input clk, + + input [AWIDTH:0] rdaddr, + input [1:0] rdbuf, + output[DWIDTH:0] q, + + input [AWIDTH:0] wraddr, + input [1:0] wrbuf, + input [DWIDTH:0] data, + input wren +); + + localparam AWIDTH = `BITS_TO_FIT(LENGTH*2); + wire [DWIDTH:0] out[4]; + assign q = out[rdbuf]; + + hq2x_buf #(.NUMWORDS(LENGTH*2), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf0(clk,data,rdaddr,wraddr,wren && (wrbuf == 0),out[0]); + hq2x_buf #(.NUMWORDS(LENGTH*2), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf1(clk,data,rdaddr,wraddr,wren && (wrbuf == 1),out[1]); + hq2x_buf #(.NUMWORDS(LENGTH*2), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf2(clk,data,rdaddr,wraddr,wren && (wrbuf == 2),out[2]); + hq2x_buf #(.NUMWORDS(LENGTH*2), .AWIDTH(AWIDTH), .DWIDTH(DWIDTH)) buf3(clk,data,rdaddr,wraddr,wren && (wrbuf == 3),out[3]); +endmodule + + +module hq2x_buf #(parameter NUMWORDS, parameter AWIDTH, parameter DWIDTH) +( + input clock, + input [DWIDTH:0] data, + input [AWIDTH:0] rdaddress, + input [AWIDTH:0] wraddress, + input wren, + output [DWIDTH:0] q +); + + altsyncram altsyncram_component ( + .address_a (wraddress), + .clock0 (clock), + .data_a (data), + .wren_a (wren), + .address_b (rdaddress), + .q_b(q), + .aclr0 (1'b0), + .aclr1 (1'b0), + .addressstall_a (1'b0), + .addressstall_b (1'b0), + .byteena_a (1'b1), + .byteena_b (1'b1), + .clock1 (1'b1), + .clocken0 (1'b1), + .clocken1 (1'b1), + .clocken2 (1'b1), + .clocken3 (1'b1), + .data_b ({(DWIDTH+1){1'b1}}), + .eccstatus (), + .q_a (), + .rden_a (1'b1), + .rden_b (1'b1), + .wren_b (1'b0)); + defparam + altsyncram_component.address_aclr_b = "NONE", + altsyncram_component.address_reg_b = "CLOCK0", + altsyncram_component.clock_enable_input_a = "BYPASS", + altsyncram_component.clock_enable_input_b = "BYPASS", + altsyncram_component.clock_enable_output_b = "BYPASS", + altsyncram_component.intended_device_family = "Cyclone III", + altsyncram_component.lpm_type = "altsyncram", + altsyncram_component.numwords_a = NUMWORDS, + altsyncram_component.numwords_b = NUMWORDS, + altsyncram_component.operation_mode = "DUAL_PORT", + altsyncram_component.outdata_aclr_b = "NONE", + altsyncram_component.outdata_reg_b = "UNREGISTERED", + altsyncram_component.power_up_uninitialized = "FALSE", + altsyncram_component.read_during_write_mode_mixed_ports = "DONT_CARE", + altsyncram_component.widthad_a = AWIDTH+1, + altsyncram_component.widthad_b = AWIDTH+1, + altsyncram_component.width_a = DWIDTH+1, + altsyncram_component.width_b = DWIDTH+1, + altsyncram_component.width_byteena_a = 1; + +endmodule + +//////////////////////////////////////////////////////////////////////////////////////////////////////// + +module DiffCheck +( + input [17:0] rgb1, + input [17:0] rgb2, + output result +); + + wire [5:0] r = rgb1[5:1] - rgb2[5:1]; + wire [5:0] g = rgb1[11:7] - rgb2[11:7]; + wire [5:0] b = rgb1[17:13] - rgb2[17:13]; + wire [6:0] t = $signed(r) + $signed(b); + wire [6:0] gx = {g[5], g}; + wire [7:0] y = $signed(t) + $signed(gx); + wire [6:0] u = $signed(r) - $signed(b); + wire [7:0] v = $signed({g, 1'b0}) - $signed(t); + + // if y is inside (-24..24) + wire y_inside = (y < 8'h18 || y >= 8'he8); + + // if u is inside (-4, 4) + wire u_inside = (u < 7'h4 || u >= 7'h7c); + + // if v is inside (-6, 6) + wire v_inside = (v < 8'h6 || v >= 8'hfA); + assign result = !(y_inside && u_inside && v_inside); +endmodule + +module InnerBlend +( + input [8:0] Op, + input [5:0] A, + input [5:0] B, + input [5:0] C, + output [5:0] O +); + + function [8:0] mul6x3; + input [5:0] op1; + input [2:0] op2; + begin + mul6x3 = 9'd0; + if(op2[0]) mul6x3 = mul6x3 + op1; + if(op2[1]) mul6x3 = mul6x3 + {op1, 1'b0}; + if(op2[2]) mul6x3 = mul6x3 + {op1, 2'b00}; + end + endfunction + + wire OpOnes = Op[4]; + wire [8:0] Amul = mul6x3(A, Op[7:5]); + wire [8:0] Bmul = mul6x3(B, {Op[3:2], 1'b0}); + wire [8:0] Cmul = mul6x3(C, {Op[1:0], 1'b0}); + wire [8:0] At = Amul; + wire [8:0] Bt = (OpOnes == 0) ? Bmul : {3'b0, B}; + wire [8:0] Ct = (OpOnes == 0) ? Cmul : {3'b0, C}; + wire [9:0] Res = {At, 1'b0} + Bt + Ct; + assign O = Op[8] ? A : Res[9:4]; +endmodule + +module Blend +( + input [5:0] rule, + input disable_hq2x, + input [17:0] E, + input [17:0] A, + input [17:0] B, + input [17:0] D, + input [17:0] F, + input [17:0] H, + output [17:0] Result +); + + reg [1:0] input_ctrl; + reg [8:0] op; + localparam BLEND0 = 9'b1_xxx_x_xx_xx; // 0: A + localparam BLEND1 = 9'b0_110_0_10_00; // 1: (A * 12 + B * 4) >> 4 + localparam BLEND2 = 9'b0_100_0_10_10; // 2: (A * 8 + B * 4 + C * 4) >> 4 + localparam BLEND3 = 9'b0_101_0_10_01; // 3: (A * 10 + B * 4 + C * 2) >> 4 + localparam BLEND4 = 9'b0_110_0_01_01; // 4: (A * 12 + B * 2 + C * 2) >> 4 + localparam BLEND5 = 9'b0_010_0_11_11; // 5: (A * 4 + (B + C) * 6) >> 4 + localparam BLEND6 = 9'b0_111_1_xx_xx; // 6: (A * 14 + B + C) >> 4 + localparam AB = 2'b00; + localparam AD = 2'b01; + localparam DB = 2'b10; + localparam BD = 2'b11; + wire is_diff; + DiffCheck diff_checker(rule[1] ? B : H, rule[0] ? D : F, is_diff); + + always @* begin + case({!is_diff, rule[5:2]}) + 1,17: {op, input_ctrl} = {BLEND1, AB}; + 2,18: {op, input_ctrl} = {BLEND1, DB}; + 3,19: {op, input_ctrl} = {BLEND1, BD}; + 4,20: {op, input_ctrl} = {BLEND2, DB}; + 5,21: {op, input_ctrl} = {BLEND2, AB}; + 6,22: {op, input_ctrl} = {BLEND2, AD}; + + 8: {op, input_ctrl} = {BLEND0, 2'bxx}; + 9: {op, input_ctrl} = {BLEND0, 2'bxx}; + 10: {op, input_ctrl} = {BLEND0, 2'bxx}; + 11: {op, input_ctrl} = {BLEND1, AB}; + 12: {op, input_ctrl} = {BLEND1, AB}; + 13: {op, input_ctrl} = {BLEND1, AB}; + 14: {op, input_ctrl} = {BLEND1, DB}; + 15: {op, input_ctrl} = {BLEND1, BD}; + + 24: {op, input_ctrl} = {BLEND2, DB}; + 25: {op, input_ctrl} = {BLEND5, DB}; + 26: {op, input_ctrl} = {BLEND6, DB}; + 27: {op, input_ctrl} = {BLEND2, DB}; + 28: {op, input_ctrl} = {BLEND4, DB}; + 29: {op, input_ctrl} = {BLEND5, DB}; + 30: {op, input_ctrl} = {BLEND3, BD}; + 31: {op, input_ctrl} = {BLEND3, DB}; + default: {op, input_ctrl} = 11'bx; + endcase + + // Setting op[8] effectively disables HQ2X because blend will always return E. + if (disable_hq2x) op[8] = 1; + end + + // Generate inputs to the inner blender. Valid combinations. + // 00: E A B + // 01: E A D + // 10: E D B + // 11: E B D + wire [17:0] Input1 = E; + wire [17:0] Input2 = !input_ctrl[1] ? A : + !input_ctrl[0] ? D : B; + + wire [17:0] Input3 = !input_ctrl[0] ? B : D; + InnerBlend inner_blend1(op, Input1[5:0], Input2[5:0], Input3[5:0], Result[5:0]); + InnerBlend inner_blend2(op, Input1[11:6], Input2[11:6], Input3[11:6], Result[11:6]); + InnerBlend inner_blend3(op, Input1[17:12], Input2[17:12], Input3[17:12], Result[17:12]); +endmodule + + +//////////////////////////////////////////////////////////////////////////////////////////////////// + +module Hq2x #(parameter LENGTH, parameter HALF_DEPTH) +( + input clk, + input ce_x4, + input [DWIDTH:0] inputpixel, + input mono, + input disable_hq2x, + input reset_frame, + input reset_line, + input [1:0] read_y, + input [AWIDTH+1:0] read_x, + output [DWIDTH:0] outpixel +); + + +localparam AWIDTH = `BITS_TO_FIT(LENGTH); +localparam DWIDTH = HALF_DEPTH ? 8 : 17; + +wire [5:0] hqTable[256] = '{ + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 47, 35, 23, 15, 55, 39, + 19, 19, 26, 58, 19, 19, 26, 58, 23, 15, 35, 35, 23, 15, 7, 35, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 55, 39, 23, 15, 51, 43, + 19, 19, 26, 58, 19, 19, 26, 58, 23, 15, 51, 35, 23, 15, 7, 43, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 61, 35, 35, 23, 61, 51, 35, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 35, 23, 15, 51, 35, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 61, 7, 35, 23, 61, 7, 43, + 19, 19, 26, 11, 19, 19, 26, 58, 23, 15, 51, 35, 23, 61, 7, 43, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 47, 35, 23, 15, 55, 39, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 35, 23, 15, 51, 35, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 55, 39, 23, 15, 51, 43, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 39, 23, 15, 7, 43, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 35, 23, 15, 51, 39, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 35, 23, 15, 7, 35, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 51, 35, 23, 15, 7, 43, + 19, 19, 26, 11, 19, 19, 26, 11, 23, 15, 7, 35, 23, 15, 7, 43 +}; + +reg [17:0] Prev0, Prev1, Prev2, Curr0, Curr1, Next0, Next1, Next2; +reg [17:0] A, B, D, F, G, H; +reg [7:0] pattern, nextpatt; +reg [1:0] i; +reg [7:0] y; + +wire curbuf = y[0]; +reg prevbuf = 0; +wire iobuf = !curbuf; + +wire diff0, diff1; +DiffCheck diffcheck0(Curr1, (i == 0) ? Prev0 : (i == 1) ? Curr0 : (i == 2) ? Prev2 : Next1, diff0); +DiffCheck diffcheck1(Curr1, (i == 0) ? Prev1 : (i == 1) ? Next0 : (i == 2) ? Curr2 : Next2, diff1); + +wire [7:0] new_pattern = {diff1, diff0, pattern[7:2]}; + +wire [17:0] X = (i == 0) ? A : (i == 1) ? Prev1 : (i == 2) ? Next1 : G; +wire [17:0] blend_result; +Blend blender(hqTable[nextpatt], disable_hq2x, Curr0, X, B, D, F, H, blend_result); + +reg Curr2_addr1; +reg [AWIDTH:0] Curr2_addr2; +wire [17:0] Curr2 = HALF_DEPTH ? h2rgb(Curr2tmp) : Curr2tmp; +wire [DWIDTH:0] Curr2tmp; + +reg [AWIDTH:0] wrin_addr2; +reg [DWIDTH:0] wrpix; +reg wrin_en; + +function [17:0] h2rgb; + input [8:0] v; +begin + h2rgb = mono ? {v[5:3],v[2:0], v[5:3],v[2:0], v[5:3],v[2:0]} : {v[8:6],v[8:6],v[5:3],v[5:3],v[2:0],v[2:0]}; +end +endfunction + +function [8:0] rgb2h; + input [17:0] v; +begin + rgb2h = mono ? {3'b000, v[17:15], v[14:12]} : {v[17:15], v[11:9], v[5:3]}; +end +endfunction + +hq2x_in #(.LENGTH(LENGTH), .DWIDTH(DWIDTH)) hq2x_in +( + .clk(clk), + + .rdaddr(Curr2_addr2), + .rdbuf(Curr2_addr1), + .q(Curr2tmp), + + .wraddr(wrin_addr2), + .wrbuf(iobuf), + .data(wrpix), + .wren(wrin_en) +); + +reg [1:0] wrout_addr1; +reg [AWIDTH+1:0] wrout_addr2; +reg wrout_en; +reg [DWIDTH:0] wrdata; + +hq2x_out #(.LENGTH(LENGTH), .DWIDTH(DWIDTH)) hq2x_out +( + .clk(clk), + + .rdaddr(read_x), + .rdbuf(read_y), + .q(outpixel), + + .wraddr(wrout_addr2), + .wrbuf(wrout_addr1), + .data(wrdata), + .wren(wrout_en) +); + +always @(posedge clk) begin + reg [AWIDTH:0] offs; + reg old_reset_line; + reg old_reset_frame; + + wrout_en <= 0; + wrin_en <= 0; + + if(ce_x4) begin + + pattern <= new_pattern; + + if(~&offs) begin + if (i == 0) begin + Curr2_addr1 <= prevbuf; + Curr2_addr2 <= offs; + end + if (i == 1) begin + Prev2 <= Curr2; + Curr2_addr1 <= curbuf; + Curr2_addr2 <= offs; + end + if (i == 2) begin + Next2 <= HALF_DEPTH ? h2rgb(inputpixel) : inputpixel; + wrpix <= inputpixel; + wrin_addr2 <= offs; + wrin_en <= 1; + end + if (i == 3) begin + offs <= offs + 1'd1; + end + + if(HALF_DEPTH) wrdata <= rgb2h(blend_result); + else wrdata <= blend_result; + + wrout_addr1 <= {curbuf, i[1]}; + wrout_addr2 <= {offs, i[1]^i[0]}; + wrout_en <= 1; + end + + if(i==3) begin + nextpatt <= {new_pattern[7:6], new_pattern[3], new_pattern[5], new_pattern[2], new_pattern[4], new_pattern[1:0]}; + {A, G} <= {Prev0, Next0}; + {B, F, H, D} <= {Prev1, Curr2, Next1, Curr0}; + {Prev0, Prev1} <= {Prev1, Prev2}; + {Curr0, Curr1} <= {Curr1, Curr2}; + {Next0, Next1} <= {Next1, Next2}; + end else begin + nextpatt <= {nextpatt[5], nextpatt[3], nextpatt[0], nextpatt[6], nextpatt[1], nextpatt[7], nextpatt[4], nextpatt[2]}; + {B, F, H, D} <= {F, H, D, B}; + end + + i <= i + 1'b1; + if(old_reset_line && ~reset_line) begin + old_reset_frame <= reset_frame; + offs <= 0; + i <= 0; + y <= y + 1'd1; + prevbuf <= curbuf; + if(old_reset_frame & ~reset_frame) begin + y <= 0; + prevbuf <= 0; + end + end + + old_reset_line <= reset_line; + end +end + +endmodule // Hq2x diff --git a/Sega - SG1000/rtl/mist_io.v b/Sega - SG1000/rtl/mist_io.v new file mode 100644 index 00000000..1cfcb753 --- /dev/null +++ b/Sega - SG1000/rtl/mist_io.v @@ -0,0 +1,496 @@ +// +// mist_io.v +// +// mist_io for the MiST board +// http://code.google.com/p/mist-board/ +// +// Copyright (c) 2014 Till Harbaum +// Copyright (c) 2015-2017 Sorgelig +// +// This source file is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published +// by the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This source file is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +/////////////////////////////////////////////////////////////////////// + +// +// Use buffer to access SD card. It's time-critical part. +// Made module synchroneous with 2 clock domains: clk_sys and SPI_SCK +// (Sorgelig) +// +// for synchronous projects default value for PS2DIV is fine for any frequency of system clock. +// clk_ps2 = clk_sys/(PS2DIV*2) +// + +module mist_io #(parameter STRLEN=0, parameter PS2DIV=100) +( + + // parameter STRLEN and the actual length of conf_str have to match + input [(8*STRLEN)-1:0] conf_str, + + // Global clock. It should be around 100MHz (higher is better). + input clk_sys, + + // Global SPI clock from ARM. 24MHz + input SPI_SCK, + + input CONF_DATA0, + input SPI_SS2, + output SPI_DO, + input SPI_DI, + + output reg [7:0] joystick_0, + output reg [7:0] joystick_1, + output reg [15:0] joystick_analog_0, + output reg [15:0] joystick_analog_1, + output [1:0] buttons, + output [1:0] switches, + output scandoubler_disable, + output ypbpr, + + output reg [31:0] status, + + // SD config + input sd_conf, + input sd_sdhc, + output [1:0] img_mounted, // signaling that new image has been mounted + output reg [31:0] img_size, // size of image in bytes + + // SD block level access + input [31:0] sd_lba, + input [1:0] sd_rd, + input [1:0] sd_wr, + output reg sd_ack, + output reg sd_ack_conf, + + // SD byte level access. Signals for 2-PORT altsyncram. + output reg [8:0] sd_buff_addr, + output reg [7:0] sd_buff_dout, + input [7:0] sd_buff_din, + output reg sd_buff_wr, + + // ps2 keyboard emulation + output ps2_kbd_clk, + output reg ps2_kbd_data, + output ps2_mouse_clk, + output reg ps2_mouse_data, + + // ps2 alternative interface. + + // [8] - extended, [9] - pressed, [10] - toggles with every press/release + output reg [10:0] ps2_key = 0, + + // [24] - toggles with every event + output reg [24:0] ps2_mouse = 0, + + // ARM -> FPGA download + input ioctl_ce, + input ioctl_wait, + output reg ioctl_download = 0, // signal indicating an active download + output reg [7:0] ioctl_index, // menu index used to upload the file + output reg ioctl_wr = 0, + output reg [13:0] ioctl_addr, + output reg [7:0] ioctl_dout +); + +reg [7:0] but_sw; +reg [2:0] stick_idx; + +reg [1:0] mount_strobe = 0; +assign img_mounted = mount_strobe; + +assign buttons = but_sw[1:0]; +assign switches = but_sw[3:2]; +assign scandoubler_disable = but_sw[4]; +assign ypbpr = but_sw[5]; + +// this variant of user_io is for 8 bit cores (type == a4) only +wire [7:0] core_type = 8'ha4; + +// command byte read by the io controller +wire drive_sel = sd_rd[1] | sd_wr[1]; +wire [7:0] sd_cmd = { 4'h6, sd_conf, sd_sdhc, sd_wr[drive_sel], sd_rd[drive_sel] }; + +reg [7:0] cmd; +reg [2:0] bit_cnt; // counts bits 0-7 0-7 ... +reg [9:0] byte_cnt; // counts bytes + +reg spi_do; +assign SPI_DO = CONF_DATA0 ? 1'bZ : spi_do; + +reg [7:0] spi_data_out; + +// SPI transmitter +always@(negedge SPI_SCK) spi_do <= spi_data_out[~bit_cnt]; + +reg [7:0] spi_data_in; +reg spi_data_ready = 0; + +// SPI receiver +always@(posedge SPI_SCK or posedge CONF_DATA0) begin + reg [6:0] sbuf; + reg [31:0] sd_lba_r; + reg drive_sel_r; + + if(CONF_DATA0) begin + bit_cnt <= 0; + byte_cnt <= 0; + spi_data_out <= core_type; + end + else + begin + bit_cnt <= bit_cnt + 1'd1; + sbuf <= {sbuf[5:0], SPI_DI}; + + // finished reading command byte + if(bit_cnt == 7) begin + if(!byte_cnt) cmd <= {sbuf, SPI_DI}; + + spi_data_in <= {sbuf, SPI_DI}; + spi_data_ready <= ~spi_data_ready; + if(~&byte_cnt) byte_cnt <= byte_cnt + 8'd1; + + spi_data_out <= 0; + case({(!byte_cnt) ? {sbuf, SPI_DI} : cmd}) + // reading config string + 8'h14: if(byte_cnt < STRLEN) spi_data_out <= conf_str[(STRLEN - byte_cnt - 1)<<3 +:8]; + + // reading sd card status + 8'h16: if(byte_cnt == 0) begin + spi_data_out <= sd_cmd; + sd_lba_r <= sd_lba; + drive_sel_r <= drive_sel; + end else if (byte_cnt == 1) begin + spi_data_out <= drive_sel_r; + end else if(byte_cnt < 6) spi_data_out <= sd_lba_r[(5-byte_cnt)<<3 +:8]; + + // reading sd card write data + 8'h18: spi_data_out <= sd_buff_din; + endcase + end + end +end + +reg [31:0] ps2_key_raw = 0; +wire pressed = (ps2_key_raw[15:8] != 8'hf0); +wire extended = (~pressed ? (ps2_key_raw[23:16] == 8'he0) : (ps2_key_raw[15:8] == 8'he0)); + +// transfer to clk_sys domain +always@(posedge clk_sys) begin + reg old_ss1, old_ss2; + reg old_ready1, old_ready2; + reg [2:0] b_wr; + reg got_ps2 = 0; + + old_ss1 <= CONF_DATA0; + old_ss2 <= old_ss1; + old_ready1 <= spi_data_ready; + old_ready2 <= old_ready1; + + sd_buff_wr <= b_wr[0]; + if(b_wr[2] && (~&sd_buff_addr)) sd_buff_addr <= sd_buff_addr + 1'b1; + b_wr <= (b_wr<<1); + + if(old_ss2) begin + got_ps2 <= 0; + sd_ack <= 0; + sd_ack_conf <= 0; + sd_buff_addr <= 0; + if(got_ps2) begin + if(cmd == 4) ps2_mouse[24] <= ~ps2_mouse[24]; + if(cmd == 5) begin + ps2_key <= {~ps2_key[10], pressed, extended, ps2_key_raw[7:0]}; + if(ps2_key_raw == 'hE012E07C) ps2_key[9:0] <= 'h37C; // prnscr pressed + if(ps2_key_raw == 'h7CE0F012) ps2_key[9:0] <= 'h17C; // prnscr released + if(ps2_key_raw == 'hF014F077) ps2_key[9:0] <= 'h377; // pause pressed + end + end + end + else + if(old_ready2 ^ old_ready1) begin + + if(cmd == 8'h18 && ~&sd_buff_addr) sd_buff_addr <= sd_buff_addr + 1'b1; + + if(byte_cnt < 2) begin + + if (cmd == 8'h19) sd_ack_conf <= 1; + if((cmd == 8'h17) || (cmd == 8'h18)) sd_ack <= 1; + mount_strobe <= 0; + + if(cmd == 5) ps2_key_raw <= 0; + end else begin + + case(cmd) + // buttons and switches + 8'h01: but_sw <= spi_data_in; + 8'h02: joystick_0 <= spi_data_in; + 8'h03: joystick_1 <= spi_data_in; + + // store incoming ps2 mouse bytes + 8'h04: begin + got_ps2 <= 1; + case(byte_cnt) + 2: ps2_mouse[7:0] <= spi_data_in; + 3: ps2_mouse[15:8] <= spi_data_in; + 4: ps2_mouse[23:16] <= spi_data_in; + endcase + ps2_mouse_fifo[ps2_mouse_wptr] <= spi_data_in; + ps2_mouse_wptr <= ps2_mouse_wptr + 1'd1; + end + + // store incoming ps2 keyboard bytes + 8'h05: begin + got_ps2 <= 1; + ps2_key_raw[31:0] <= {ps2_key_raw[23:0], spi_data_in}; + ps2_kbd_fifo[ps2_kbd_wptr] <= spi_data_in; + ps2_kbd_wptr <= ps2_kbd_wptr + 1'd1; + end + + 8'h15: status[7:0] <= spi_data_in; + + // send SD config IO -> FPGA + // flag that download begins + // sd card knows data is config if sd_dout_strobe is asserted + // with sd_ack still being inactive (low) + 8'h19, + // send sector IO -> FPGA + // flag that download begins + 8'h17: begin + sd_buff_dout <= spi_data_in; + b_wr <= 1; + end + + // joystick analog + 8'h1a: begin + // first byte is joystick index + if(byte_cnt == 2) stick_idx <= spi_data_in[2:0]; + else if(byte_cnt == 3) begin + // second byte is x axis + if(stick_idx == 0) joystick_analog_0[15:8] <= spi_data_in; + else if(stick_idx == 1) joystick_analog_1[15:8] <= spi_data_in; + end else if(byte_cnt == 4) begin + // third byte is y axis + if(stick_idx == 0) joystick_analog_0[7:0] <= spi_data_in; + else if(stick_idx == 1) joystick_analog_1[7:0] <= spi_data_in; + end + end + + // notify image selection + 8'h1c: mount_strobe[spi_data_in[0]] <= 1; + + // send image info + 8'h1d: if(byte_cnt<6) img_size[(byte_cnt-2)<<3 +:8] <= spi_data_in; + + // status, 32bit version + 8'h1e: if(byte_cnt<6) status[(byte_cnt-2)<<3 +:8] <= spi_data_in; + default: ; + endcase + end + end +end + + +/////////////////////////////// PS2 /////////////////////////////// +// 8 byte fifos to store ps2 bytes +localparam PS2_FIFO_BITS = 3; + +reg clk_ps2; +always @(negedge clk_sys) begin + integer cnt; + cnt <= cnt + 1'd1; + if(cnt == PS2DIV) begin + clk_ps2 <= ~clk_ps2; + cnt <= 0; + end +end + +// keyboard +reg [7:0] ps2_kbd_fifo[1<= 1)&&(ps2_kbd_tx_state < 9)) begin + ps2_kbd_data <= ps2_kbd_tx_byte[0]; // data bits + ps2_kbd_tx_byte[6:0] <= ps2_kbd_tx_byte[7:1]; // shift down + if(ps2_kbd_tx_byte[0]) + ps2_kbd_parity <= !ps2_kbd_parity; + end + + // transmission of parity + if(ps2_kbd_tx_state == 9) ps2_kbd_data <= ps2_kbd_parity; + + // transmission of stop bit + if(ps2_kbd_tx_state == 10) ps2_kbd_data <= 1; // stop bit is 1 + + // advance state machine + if(ps2_kbd_tx_state < 11) ps2_kbd_tx_state <= ps2_kbd_tx_state + 1'd1; + else ps2_kbd_tx_state <= 0; + end + end +end + +// mouse +reg [7:0] ps2_mouse_fifo[1<= 1)&&(ps2_mouse_tx_state < 9)) begin + ps2_mouse_data <= ps2_mouse_tx_byte[0]; // data bits + ps2_mouse_tx_byte[6:0] <= ps2_mouse_tx_byte[7:1]; // shift down + if(ps2_mouse_tx_byte[0]) + ps2_mouse_parity <= !ps2_mouse_parity; + end + + // transmission of parity + if(ps2_mouse_tx_state == 9) ps2_mouse_data <= ps2_mouse_parity; + + // transmission of stop bit + if(ps2_mouse_tx_state == 10) ps2_mouse_data <= 1; // stop bit is 1 + + // advance state machine + if(ps2_mouse_tx_state < 11) ps2_mouse_tx_state <= ps2_mouse_tx_state + 1'd1; + else ps2_mouse_tx_state <= 0; + end + end +end + + +/////////////////////////////// DOWNLOADING /////////////////////////////// + +localparam UIO_FILE_TX = 8'h53; +localparam UIO_FILE_TX_DAT = 8'h54; +localparam UIO_FILE_INDEX = 8'h55; + +// data_io has its own SPI interface to the io controller +always@(posedge SPI_SCK, posedge SPI_SS2) begin + reg [6:0] sbuf; + reg [7:0] cmd; + reg [4:0] cnt; + reg [13:0] addr; + + if(SPI_SS2) cnt <= 0; + else begin + // don't shift in last bit. It is evaluated directly + // when writing to ram + if(cnt != 15) sbuf <= { sbuf[5:0], SPI_DI}; + + // count 0-7 8-15 8-15 ... + if(cnt < 15) cnt <= cnt + 1'd1; + else cnt <= 8; + + // finished command byte + if(cnt == 7) cmd <= {sbuf, SPI_DI}; + + // prepare/end transmission + if((cmd == UIO_FILE_TX) && (cnt == 15)) begin + // prepare + if(SPI_DI) begin +// addr <= ioctl_index ? 14'd9 : 14'd0; //.p files loaded at $4009, ROM is at 0 + addr <= 14'd0; + ioctl_download <= 1; + end else begin + ioctl_addr <= addr; + ioctl_download <= 0; + end + end + + // command 0x54: UIO_FILE_TX + if((cmd == UIO_FILE_TX_DAT) && (cnt == 15)) begin + ioctl_addr <= addr; + ioctl_dout <= {sbuf, SPI_DI}; + addr <= addr + 1'd1; + ioctl_wr <= 1; + end else + ioctl_wr <= 0; + + // expose file (menu) index + if((cmd == UIO_FILE_INDEX) && (cnt == 15)) ioctl_index <= {sbuf, SPI_DI}; + end +end + +endmodule diff --git a/Sega - SG1000/rtl/osd.v b/Sega - SG1000/rtl/osd.v new file mode 100644 index 00000000..c62c10af --- /dev/null +++ b/Sega - SG1000/rtl/osd.v @@ -0,0 +1,179 @@ +// A simple OSD implementation. Can be hooked up between a cores +// VGA output and the physical VGA pins + +module osd ( + // OSDs pixel clock, should be synchronous to cores pixel clock to + // avoid jitter. + input clk_sys, + + // SPI interface + input SPI_SCK, + input SPI_SS3, + input SPI_DI, + + // VGA signals coming from core + input [5:0] R_in, + input [5:0] G_in, + input [5:0] B_in, + input HSync, + input VSync, + + // VGA signals going to video connector + output [5:0] R_out, + output [5:0] G_out, + output [5:0] B_out +); + +parameter OSD_X_OFFSET = 10'd0; +parameter OSD_Y_OFFSET = 10'd0; +parameter OSD_COLOR = 3'd0; + +localparam OSD_WIDTH = 10'd256; +localparam OSD_HEIGHT = 10'd128; + +// ********************************************************************************* +// spi client +// ********************************************************************************* + +// this core supports only the display related OSD commands +// of the minimig +reg osd_enable; +(* ramstyle = "no_rw_check" *) reg [7:0] osd_buffer[2047:0]; // the OSD buffer itself + +// the OSD has its own SPI interface to the io controller +always@(posedge SPI_SCK, posedge SPI_SS3) begin + reg [4:0] cnt; + reg [10:0] bcnt; + reg [7:0] sbuf; + reg [7:0] cmd; + + if(SPI_SS3) begin + cnt <= 0; + bcnt <= 0; + end else begin + sbuf <= {sbuf[6:0], SPI_DI}; + + // 0:7 is command, rest payload + if(cnt < 15) cnt <= cnt + 1'd1; + else cnt <= 8; + + if(cnt == 7) begin + cmd <= {sbuf[6:0], SPI_DI}; + + // lower three command bits are line address + bcnt <= {sbuf[1:0], SPI_DI, 8'h00}; + + // command 0x40: OSDCMDENABLE, OSDCMDDISABLE + if(sbuf[6:3] == 4'b0100) osd_enable <= SPI_DI; + end + + // command 0x20: OSDCMDWRITE + if((cmd[7:3] == 5'b00100) && (cnt == 15)) begin + osd_buffer[bcnt] <= {sbuf[6:0], SPI_DI}; + bcnt <= bcnt + 1'd1; + end + end +end + +// ********************************************************************************* +// video timing and sync polarity anaylsis +// ********************************************************************************* + +// horizontal counter +reg [9:0] h_cnt; +reg [9:0] hs_low, hs_high; +wire hs_pol = hs_high < hs_low; +wire [9:0] dsp_width = hs_pol ? hs_low : hs_high; + +// vertical counter +reg [9:0] v_cnt; +reg [9:0] vs_low, vs_high; +wire vs_pol = vs_high < vs_low; +wire [9:0] dsp_height = vs_pol ? vs_low : vs_high; + +wire doublescan = (dsp_height>350); + +reg ce_pix; +always @(negedge clk_sys) begin + integer cnt = 0; + integer pixsz, pixcnt; + reg hs; + + cnt <= cnt + 1; + hs <= HSync; + + pixcnt <= pixcnt + 1; + if(pixcnt == pixsz) pixcnt <= 0; + ce_pix <= !pixcnt; + + if(hs && ~HSync) begin + cnt <= 0; + pixsz <= (cnt >> 9) - 1; + pixcnt <= 0; + ce_pix <= 1; + end +end + +always @(posedge clk_sys) begin + reg hsD, hsD2; + reg vsD, vsD2; + + if(ce_pix) begin + // bring hsync into local clock domain + hsD <= HSync; + hsD2 <= hsD; + + // falling edge of HSync + if(!hsD && hsD2) begin + h_cnt <= 0; + hs_high <= h_cnt; + end + + // rising edge of HSync + else if(hsD && !hsD2) begin + h_cnt <= 0; + hs_low <= h_cnt; + v_cnt <= v_cnt + 1'd1; + end else begin + h_cnt <= h_cnt + 1'd1; + end + + vsD <= VSync; + vsD2 <= vsD; + + // falling edge of VSync + if(!vsD && vsD2) begin + v_cnt <= 0; + vs_high <= v_cnt; + end + + // rising edge of VSync + else if(vsD && !vsD2) begin + v_cnt <= 0; + vs_low <= v_cnt; + end + end +end + +// area in which OSD is being displayed +wire [9:0] h_osd_start = ((dsp_width - OSD_WIDTH)>> 1) + OSD_X_OFFSET; +wire [9:0] h_osd_end = h_osd_start + OSD_WIDTH; +wire [9:0] v_osd_start = ((dsp_height- (OSD_HEIGHT<> 1) + OSD_Y_OFFSET; +wire [9:0] v_osd_end = v_osd_start + (OSD_HEIGHT<= h_osd_start) && (h_cnt < h_osd_end) && + (VSync != vs_pol) && (v_cnt >= v_osd_start) && (v_cnt < v_osd_end); + +reg [7:0] osd_byte; +always @(posedge clk_sys) if(ce_pix) osd_byte <= osd_buffer[{doublescan ? osd_vcnt[7:5] : osd_vcnt[6:4], osd_hcnt[7:0]}]; + +wire osd_pixel = osd_byte[doublescan ? osd_vcnt[4:2] : osd_vcnt[3:1]]; + +assign R_out = !osd_de ? R_in : {osd_pixel, osd_pixel, OSD_COLOR[2], R_in[5:3]}; +assign G_out = !osd_de ? G_in : {osd_pixel, osd_pixel, OSD_COLOR[1], G_in[5:3]}; +assign B_out = !osd_de ? B_in : {osd_pixel, osd_pixel, OSD_COLOR[0], B_in[5:3]}; + +endmodule diff --git a/Sega - SG1000/rtl/pll.v b/Sega - SG1000/rtl/pll.v new file mode 100644 index 00000000..f0d3343f --- /dev/null +++ b/Sega - SG1000/rtl/pll.v @@ -0,0 +1,357 @@ +// 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.0.1 Build 232 06/12/2013 SP 1 SJ Full Version +// ************************************************************ + + +//Copyright (C) 1991-2013 Altera Corporation +//Your use of Altera Corporation's design tools, logic functions +//and other software and tools, and its AMPP partner logic +//functions, and any output files from any of the foregoing +//(including device programming or simulation files), and any +//associated documentation or information are expressly subject +//to the terms and conditions of the Altera Program License +//Subscription Agreement, Altera MegaCore Function License +//Agreement, or other applicable license agreement, including, +//without limitation, that your use is for the sole purpose of +//programming logic devices manufactured by Altera and sold by +//Altera or its authorized distributors. Please refer to the +//applicable agreement for further details. + + +// synopsys translate_off +`timescale 1 ps / 1 ps +// synopsys translate_on +module pll ( + inclk0, + c0, + c1, + c2); + + input inclk0; + output c0; + output c1; + output c2; + + wire [4:0] sub_wire0; + wire [0:0] sub_wire6 = 1'h0; + wire [2:2] sub_wire3 = sub_wire0[2:2]; + wire [0:0] sub_wire2 = sub_wire0[0:0]; + wire [1:1] sub_wire1 = sub_wire0[1:1]; + wire c1 = sub_wire1; + wire c0 = sub_wire2; + wire c2 = sub_wire3; + wire sub_wire4 = inclk0; + wire [1:0] sub_wire5 = {sub_wire6, sub_wire4}; + + altpll altpll_component ( + .inclk (sub_wire5), + .clk (sub_wire0), + .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 (), + .locked (), + .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 = 27, + altpll_component.clk0_duty_cycle = 50, + altpll_component.clk0_multiply_by = 64, + altpll_component.clk0_phase_shift = "0", + altpll_component.clk1_divide_by = 27, + altpll_component.clk1_duty_cycle = 50, + altpll_component.clk1_multiply_by = 16, + altpll_component.clk1_phase_shift = "0", + altpll_component.clk2_divide_by = 27, + altpll_component.clk2_duty_cycle = 50, + altpll_component.clk2_multiply_by = 8, + altpll_component.clk2_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_UNUSED", + 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_USED", + 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.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 "27" +// Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "27" +// Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "27" +// Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" +// Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" +// Retrieval info: PRIVATE: DUTY_CYCLE2 STRING "50.00000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "64.000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "16.000000" +// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "8.000000" +// Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0" +// Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" +// Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "0" +// Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0" +// Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575" +// Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1" +// Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "27.000" +// Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz" +// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "100.000" +// Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1" +// Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz" +// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III" +// Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1" +// Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "0" +// Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1" +// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available" +// Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0" +// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg" +// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg" +// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 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: MIRROR_CLK2 STRING "0" +// Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "64" +// Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "16" +// Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "8" +// Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" +// Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "64.00000000" +// Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "16.00000000" +// Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "8.00000000" +// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "0" +// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "0" +// Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "0" +// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" +// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" +// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT2 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_SHIFT2 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: PHASE_SHIFT_UNIT2 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: STICKY_CLK2 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_CLK2 STRING "1" +// Retrieval info: PRIVATE: USE_CLKENA0 STRING "0" +// Retrieval info: PRIVATE: USE_CLKENA1 STRING "0" +// Retrieval info: PRIVATE: USE_CLKENA2 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 "27" +// Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "64" +// Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" +// Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "27" +// Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "16" +// Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0" +// Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "27" +// Retrieval info: CONSTANT: CLK2_DUTY_CYCLE NUMERIC "50" +// Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "8" +// Retrieval info: CONSTANT: CLK2_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_UNUSED" +// 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_USED" +// 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: 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: c2 0 0 0 0 OUTPUT_CLK_EXT VCC "c2" +// Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" +// 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: c2 0 0 0 0 @clk 0 0 1 2 +// 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/Sega - SG1000/rtl/roms/32.hex b/Sega - SG1000/rtl/roms/32.hex new file mode 100644 index 00000000..cc0b6834 --- /dev/null +++ b/Sega - SG1000/rtl/roms/32.hex @@ -0,0 +1,2049 @@ +:10000000F3ED56C3D611FFFF22188BE3D5C3C10011 +:10001000E1C1D1E3C920080E3AC98ACB47C9FFFF25 +:10002000CD603CC93D080E09CD2A41C94E204F4044 +:100030003200C1C94D415040F3F5C5D5E5DDE5FDC0 +:10004000E508D9F5C5D5CD7702DBBFCD5B09D1C1B8 +:10005000F1D908FDE1DDE1E1D1C1F1FBC93A39385F +:10006000393837363534F53A228BFEFF20123A17ED +:100070008BFE20380B3A238B2F32238BAF32178B1A +:10008000F1ED453A1A8BB72807324383AF324483E8 +:10009000C90000FF910003010301030003010301F4 +:1000A0000300030003010301030003000301030134 +:1000B0000300030003010301030103000300030025 +:1000C000FEC5E52A188BC93A0B8BE6BF18053A0B1B +:1000D0008BF640320B8B470E0178D3BF79F680D375 +:1000E000BFC9211D0101BF10EDB33A1D01320A8BBA +:1000F0003A1F01320B8B210018CD7601AF0603D3D6 +:10010000BE3C20FB10F9010018C52100203E11CD96 +:100110008E01210000C1AFCD8E01C337010280A244 +:10012000810682FF83038436850786008721003895 +:10013000010008AFCD8E0121001B0100203ED1CD72 +:100140006401232379CD6401230C0C0C0C3E01CDFA +:1001500064012310E8C9EBCD76011AD3BE130B79E5 +:10016000B020F7C9F5CD7601E3E3F1D3BEC9CD8365 +:1001700001E3E3DBBEC97DF3D3BF7CE63FF640D3AA +:10018000BFFBC97DF3D3BF7CE63FD3BFFBC9F5CD31 +:100190007601F1D3BEF50B79B020F7F1C93A0D8B9A +:1001A00021AB01E60F5F1600197EC90001050007AB +:1001B0000806000302040000000000E5210D8BCBBF +:1001C0006EE13EFFC0AFC9C55179E6074F21E60198 +:1001D000097EF57B0F0F0FE61F677AE6F84F7BE687 +:1001E00007B16FF1C1C98040201008040201060266 +:1001F00011FFFF1B7AB320FB10F6C93E92D3DFAF8D +:10020000D3DEDBDEB728023E80320C8BC93A0C8B82 +:10021000073005DBDCC36C023E07D3DEDBDC4F3E80 +:1002200004D3DEDBDCCB6F2002CB893E05D3DEDBE3 +:10023000DCCB6F2002CB913E06D3DEDBDCCB6F2024 +:1002400002CB99CB772002CB813E02D3DEDBDCCB25 +:10025000672002CBA13E01D3DEDBDCCB67280A3E60 +:1002600003D3DEDBDCCB672002CBA979210D8B2FFA +:1002700047AE7023A077C93A178BFE2030043C327A +:10028000178B3A238BFEFFC8CD8300CD0D02CDEA3C +:10029000233A158BFE0228253AE48AB720173A0E36 +:1002A0008BE610FE10200E3A148BB720043E011886 +:1002B00001AF32148B21138BAFB6C835C93A0D8B01 +:1002C000E630FE3028403A0E8BB72803CDD1021815 +:1002D000E4E5C5F52113033A1F8BFE0E28154FAF39 +:1002E00047097E211F8B34C1B82805211F8B36009A +:1002F000C1E1C9F1E63028F3AF32158B3C32218BD6 +:100300003C32208B18EAAF32158B3C32218B3220E5 +:100310008B18BC0408040804080204010801040244 +:100320000820434F4E54494E55452040444F4F52AC +:1003300020204F50454E40048020065C03FC020AFA +:100340000E802106E803FC02030B802201A903FCB6 +:1003500000030A80230625040301010D8004EA81BD +:1003600003A280EA81039B04EA9803A0A0EDA00207 +:100370009FA280EA98039F9DED9B029F9B04E55EF0 +:1003800003ED9B029FA29FEDA0029DA2A2ED9B0206 +:100390009FA29FEDA0029DEBEDA702A6A4A2EDA453 +:1003A00002A2A2A2EDA202A0EB801AEAD1039F9DB5 +:1003B000EAD1039F049F029D9B9A9B029A9A9A9A64 +:1003C000029898989802969A808008080808E5ABE9 +:1003D000039B029FA20480029D01A0A2A09F9D9B5F +:1003E000029FA2048002A0EB8004EA16049A0298FD +:1003F0009680EA16048002968F0480080808089BFD +:10040000029A9896980296969696029493918F02E5 +:10041000938F04E5EA03800696029A0298049602F6 +:1004200080069602EBE3048004EA2F04E52904E148 +:100430000BE4028D04E10DE40504E10BE4028D02FE +:1004400002E10DE40504EB048020066C04F70308C8 +:100450000E802106B604F702060A8022069304F7EE +:1004600003080D80230625040301010D8004EA7DA5 +:1004700004A2A2A2EA7D04ABA704E56E04EDA704E2 +:10048000AB02A7EDA902AEAEAEEDA704AB02A7ED9D +:10049000A902EB8004EAA4049D9A96EAA404A29F10 +:1004A00004E595049F02A2A7A2A002A2A6A29F0211 +:1004B000A2A7A2A002EB80048F088E088F088E08E6 +:1004C0008F088E088F088E048FE5B80402802007FD +:1004D000DF04FA00060E802107F504FA00060E9BE1 +:1004E000039B019D039D019F039F01A003A0019F0A +:1004F00004969B80E293039301960396019B039BD2 +:10050000019D039D019B04939380E20480200630AB +:1005100005F5030A0D8021066E05F502030C802205 +:10052000068F05F502050C802306AD050301010DBC +:100530008002EDA401809F9FA1029FEDA4029FA1D4 +:100540009FEDA601809F9FA1029FEDA6029FA19F04 +:10055000EDA801809F9FA1029FEDA8029FA19FE4AB +:100560000BEDA904ABEDAD04AFE40AE53205800262 +:100570009F01809C9C9D029C9F029C9D9CEC000383 +:100580007005E40BA104A3A404A6E403E5700580B0 +:1005900002980602980602970697020697029806A6 +:1005A000029806029A049C9D049FE59105E304804D +:1005B00002E5290403A02004D0050301010EA021B7 +:1005C00004DA050301010EA02204E4050301010D74 +:1005D000A5AA049994028D8803E2A7AC0499A0020D +:1005E0008DA003E2A49E04999E02818803E2018803 +:1005F0002101F8050301010D00E002012002008045 +:100600000101F00200000202500200D00201F001DC +:1006100000000400C00202D003035001008001006A +:100620004001EF01A821012D060301010D01820007 +:10063000F0050000000003020003000400F0008049 +:10064000020200030003EF018022015106000101B4 +:100650000D9902A099A0EE01EC000A51069903A0A1 +:1006600099A0EEFFEC000D5D06E2038020038606F4 +:10067000000104078021038606030104078022038A +:100680008606070104078D019194F001EE01EC004C +:100690000A86069414E204802005D7060001070D9F +:1006A0008021050A070001040C802201D306000006 +:1006B000040C802305BB060001040DE304EA2F04AB +:1006C000EC0007BD06E10BE4020202E10DE40502C5 +:1006D0000204E28001E005EAFF069E089804049BFC +:1006E000989D029B999B9D08EAFF069E80A280042C +:1006F0009EA202A404A080029D049B029904E29998 +:1007000004999D999E029D9B9DEB91088D04919467 +:10071000069602940480929194809902A09BA099DD +:10072000048091088D049194068F02940280988031 +:10073000049899029B04998002940492029104E225 +:10074000038020045C070101040D8021047307016C +:1007500001040D8022048A070101040D8D029D9978 +:100760009E9B9EA09DA0A29EA2A4A0A4A50E020254 +:100770000202E29D02A09DA29EA2A4A0A4A5A2A501 +:10078000A7A4A79D0E02020202E281028D81838F3F +:1007900083859185869286889488810E02888181DE +:1007A000E204802005C6070D030C0F802105100808 +:1007B00001010C0C802205780801010C0C80230536 +:1007C000C7080001040D80049D9D029906A0049EA7 +:1007D0009D02A00698089B940C80089206969908A2 +:1007E0009E049D9B0C9804941080049DA0029E067C +:1007F0009D049B049D02A00698089B94108004927F +:100800000296049996029E049D9B029D069920E201 +:1008100080048D02910494910299108004940698AA +:100820000499029D0A99029896800A920491029274 +:100830000494029604940292048004940698049905 +:10084000029B1080068D02919406990A98049402E6 +:100850008004949602980499029B04990298049942 +:10086000029896800492029698999B99800494022B +:1008700098999B99989420E281028DEC0008780861 +:100880008894EC00068008889988988692EC000687 +:100890008B08869186928894EC0006960888968844 +:1008A00098818DEC0007A10881988894EC0006AA35 +:1008B00008889988988692EC0004B50888948894F2 +:1008C000889688988120E2E304EA2F04EC0007C9A7 +:1008D00008EAE808EA2F04EA2F04EA2F04EAE80805 +:1008E000EA2F04EA2F0408E2E10BE4020202E10D20 +:1008F000E405040404EB0E091009120915091C098A +:10090000240931092909370937093F093F09FF013E +:10091000FF02FFFD02FFEEDDCCBBAA01FFEEDCBA59 +:1009200098765402EFFEDCBA02EEFF429977A655A4 +:1009300001DFFFED876500EEFF429977A65501FFC5 +:10094000E8DDCCBBAC014C094E095109FE00FFEEBD +:1009500000EFFEEEEFFEEDDEEFFE003A228BFEFF33 +:10096000200B3A238BFEFF2004CD470DC9CD87090C +:10097000DD2102C10606C5DDCB007EC4390A112087 +:1009800000DD19C110F0C93A00C1CB7FCA380DFE95 +:100990008ECAE209D2380DD681F84F060021AE0981 +:1009A00009094E2346111900197E23666FE93703A2 +:1009B0004704CC040B05B405EE05230647066A067A +:1009C0006A0696064007A107F209F209F209F20940 +:1009D000F209FB09FB09050A050AF209F209F20905 +:1009E000F2093EDFD37FAF32A2C12142C1CB96C311 +:1009F000350ACD380D1102C1C3120A2122C1CBD64E +:100A00001182C1180D21B9C136002142C1CBD611C6 +:100A1000A2C160694623C5010900EDB03E20121352 +:100A20003E011213AF1213121312E521120019EB3B +:100A3000E113C110E13E80F7C9DD5E0CDD560D13F8 +:100A4000DD730CDD720DDD6E0ADD660BB7ED52CC89 +:100A50009F0BDD5E10DD56117BB22007DD36160FD1 +:100A6000C3110BDDCB006E2025DD7E06B72014DD23 +:100A70007312DD7213C3CA0A3D4F060009097E23B3 +:100A8000666FC9214609CD780ACD690B183CD5DDC2 +:100A90006E14DD6615B7ED52F57DF29F0AED4467E1 +:100AA000DD5E0CCDE90DDD5E0ACDF50D5F1600F1C2 +:100AB0007BF2BA0AED442802155FE119EBDD7312EF +:100AC000DD7213DD7E06B7C2830ADD7E07B7200B19 +:100AD000DD7E082FE60FDD7716180BCBBF21F60859 +:100AE000CD780ACD2F0BDDCB00762025DD7E01E60B +:100AF0000F4F060021240B094EDD7E12E60FB1CD0B +:100B0000300DDD7E12E6F0DDB6130F0F0F0FCD3086 +:100B10000DDD7E01E60F4F060021280B097EDDB6B4 +:100B200016C3300D80A0C0C090B0D0F0DD770EE5C8 +:100B3000DD7E0ECB3FF54F060009F17EE138140F44 +:100B40000F0F0FB728E6FE102005DD350E18E0FE6A +:100B500020280BDD340EF6F0DD86083C3801AF2F7F +:100B6000E60FDD7716C9DD770FE5DD7E0FCB3FF5AC +:100B70004F060009F17EE138140F0F0F0FB7CA6658 +:100B80000BFE102008DD350F18DFFE20C8DD340F06 +:100B90002FE60F6F2600EB19DD7512DD7413C9DD2A +:100BA0005E03DD56041A13FEE0D2330CDDCB005E8B +:100BB0002060B7F2EE0BD6802803DD860521570DA5 +:100BC0004F060009097EDD7710237EDD7711DDCB2E +:100BD000006E28581A13D680DD860521570D4F0662 +:100BE0000009097EDD7714237EDD77151A13D5679A +:100BF000DD5E02CDE90DD1DD750ADD740BAFDD7769 +:100C00000EDD770FDD7303DD7204AFDD770CDD776A +:100C10000DC9DD77111A13DD7710DDCB006E28CCFE +:100C20001A13DD77151A13DD771418C01AB7F2ED11 +:100C30000B18CA21460CE5E61F214A0C4F06000995 +:100C4000097E23666FE913C3A50B850C9E0CC50CAA +:100C5000A30CBA0CBF0C6C0CC50CC50CC50CDB0C82 +:100C6000F60C090D6C0C7D0CCC0C8A0C3A01C132CF +:100C700004C13224C13244C13264C11BC91ADD86A9 +:100C800005DD7705C91ADD7702C91ADD8608FE0081 +:100C9000F2960CAF1809FE0F38053E0F18011ADD49 +:100CA0007708C91AF6E0F5CD300DF1F6FC3C2005C9 +:100CB000DDCB00B6C9DDCB00F6C91ADD7707C9EB7D +:100CC0005E23561BC92142C1CB9618052122C1CBF8 +:100CD00096AFDD7700CD210DE1E1C91A4F131A4718 +:100CE000C5DDE5E1DD3509DD4E09DD350906000923 +:100CF000722B73D11BC9DDE5E1DD4E090600095EEB +:100D00002356DD3409DD3409C91A13C6174F06000E +:100D1000DDE5E1097EB720021A771335C2BF0C1357 +:100D2000C9DD7E01E60F4F060021280B097EF60F74 +:100D3000DDCB0056C0D37FC9D92102C11103C10147 +:100D4000BF003600EDB0D9D921530D0E7F0604ED5A +:100D5000B3D9C99FBFDFFF0000FF03C70390035D46 +:100D6000032D03FF02D402AB02850261023F021E83 +:100D7000020002E301C801AF01960180016A015639 +:100D800001430130011F010F010001F200E400D70F +:100D900000CB00C000B500AB00A100980090008817 +:100DA000008000790072006C00660060005B0055F6 +:100DB0000051004C004800440040003C003900361F +:100DC00000330030002D002B0028002600240022D4 +:100DD0000020001E001C001B001900180016001542 +:100DE00000140013001200110016006A06082930D2 +:100DF000011910FAC90608ED6A7C3803BB38039361 +:100E000067B710F37D172FC9CDD60FAF3210C03A98 +:100E10000D8BE630200CFB76CD2A0E3A10C0E60290 +:100E200028EDCDE40FAF32E48AC92110C07E0F3027 +:100E3000040F3020C9CBC63E803213C021E00E0122 +:100E4000C00011400ECDA00F21980E112C190108E1 +:100E500003C3BE0F2113C03520052110C0CBCE2106 +:100E600011C07E34FE182002360026006F11B00E2D +:100E70001911402ECD880E1108001911802ECD8831 +:100E80000E1108001911C02ECDB50F0608C50108B6 +:100E900000CDA30FC110F6C9C8C9CACBCCCDCECFE7 +:100EA000D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDFCA +:100EB000404040505050707070F0F0F0F0F0F07022 +:100EC0007070505050404040404040505050707002 +:100ED00070F0F0F0F0F0F070707050505040404002 +:100EE000000F3F7F78F7EFEF00FEFEFE00FEFEFEF4 +:100EF000000F3F7F78F7EFEF00F8F8F901FBFBFBFD +:100F0000003FFFFFE0DFBFBF00F8F8F800F8F8F897 +:100F100000060F1F1F3936361C225DD5D9D5E2FCDD +:100F2000EEEFEFF7787F3F0F00E0F8FC3CDEEEEEEF +:100F3000EEEFEFEFE0EFEFEF03F3F3F303F3F3F391 +:100F4000B8B7B7B7B0B7B7B700F8F8F818D8D9D965 +:100F5000766F6FEFD9D9D9B0E0606070B0B0B8D813 +:100F600000FFFFFF00FFFFFFEEEEEEDE3CFCF8E0CF +:100F7000EEEFEFF7787F3F0F03FBFBFB01F9F8F88B +:100F8000B8BFBFDFE0FFFF3FD9DBDBDB1FFEFEFEAC +:100F9000B0BF6F6F60CFCFCFD8DCECEC0EFEFEFEA3 +:100FA000CDB50FE5C5CDAB0FC1E1C97ED3BE230BD7 +:100FB00078B120F7C97BD3BF7AF640D3BFC9C5D576 +:100FC000E5C50600CDA00F09E521200019EBE1C120 +:100FD00010EFE1D1C1C9F321001B7DD3BF7CD3BF8A +:100FE0003ED0D3BEAF210018010003C38E01000024 +:100FF000000C12120C000000000000C06060000035 +:1010000000F0080830000000007E7E00000030FE86 +:10101000347CB6BA7400008C8686E6CC00001800DA +:101020007CC6060C380032FE307CB2B2740064FA22 +:101030006C6C6C6CD8000E1C70E0701C0E000C9E6A +:101040008C8CCC8C18007CC6000000C67C00181864 +:101050007E0C86C07C00C0C0C0C0C0E67C000CFE18 +:101060003C4C3C0C38006CFE6C6C60603C007C18A6 +:10107000FE3860603C0060FE606EC0C0CE0030FE96 +:10108000607C06067C0000FCFE06061C0000FE1CC0 +:10109000387060603C0020663C3060603E0000DEDE +:1010A000C0C0C0E0DE007CD6929292A244000CBE8A +:1010B0008C9CEEAC180024E62444444C38003018D4 +:1010C000309A9A183000003078CC86020000187CE4 +:1010D000187C385C3000447CE6B69A92640060F874 +:1010E00060F86064380068FC6A6234303000186C64 +:1010F00060FCC6061C0046464646060C18007E0CE0 +:101100003C06324E3C0060F46C7C74E4620060F09B +:101110007C66E6666C0060F86E3078603E006AF5CA +:101120006A6C6C6CD80015BD9898D8983000CACA03 +:10113000C0C0C0E67C0015FD384C3C0C3800751D65 +:10114000FE3860603C0065F5606EC0C0CE0065652D +:101150003C3060603E000000F81870408000003CA9 +:10116000181818187E0030FE363636366C00FE062B +:10117000060C1C36C2007E6676DE0C0C1800FE06DD +:10118000060E0C1CF000FE06066C3C180C00FE005F +:10119000FE06060CF800C6C6C6C6060C30006C6C0F +:1011A0006C6C6C4E8C00FEC6C606060C380035FD15 +:1011B000363636366C003535FE38FE181800656553 +:1011C000786C64606000026D6A6C6C4482000000A0 +:1011D00000000000000031F0C0CD470D3100A0013B +:1011E0000010210000E50B78B120FA3100C40100A5 +:1011F00002210000E50B78B120FA31F0C0CDEE01FC +:10120000CDFB01CD1F20CDB035AF32148B3C321554 +:101210008BCDF91DCD912038EDCD1E1218EBCDDC14 +:1012200036CD69123AE38AB7C03A2483B720EF3A41 +:10123000CA8A32168B3E0732CA8A3E063201C1CDB7 +:10124000E8223A208BB72001C93E0532248332368A +:1012500083AF32E48A212B830603772310FC213DE0 +:10126000830603772310FC18B5AF32C98A32D68AB9 +:1012700032E08A32E18A32E28A32E38A32E88ACD87 +:101280007A353A208BFE0220043D32E28AAF3220CA +:101290008B3AE48AFE0128493A238BFEFF2019AFDE +:1012A000321B8B3A2083FE62200C3A0D8BFE3220DB +:1012B000053E01321B8B18E03A1B8BB72823CFD792 +:1012C0003A0D8BFE31201A3A1A8BB728063E81F769 +:1012D000AF18053E82F73E03324383323183321A20 +:1012E0008BDF2007AF32CB8A32CC8ACDB0353E01BE +:1012F00032E88ACD2A24AF32E88ACDCC34CDFC2D19 +:101300003AE38AB7C0CDA016CDCB15CD4513CDA1FC +:1013100041CD7D16CD0A16CD0817CD802C3AE08A36 +:10132000B7280DDD21128BDD360000DD360100C946 +:101330003AE18ACD5523B7C03AC98A3C32C98ACD31 +:101340004B34C3911221000011FF003A3483473A15 +:1013500035834F0C0CCD8017B73AD68A280AFE1178 +:10136000380B3E8EF7AF1805B720023E1132D68AF1 +:101370003ACB8AFE02380AFE05300616012E031803 +:1013800008FE06380416FF2E013ACC8AB73AD68AF0 +:10139000200AB728193E1132D68A18123C32D68A52 +:1013A000FE11300AFE0930041E0118021E00B72883 +:1013B000037A1804CD4E1A82CD83147BFE012002DD +:1013C000CBD4FEFF2002CBDCCD8017B72802CB9C0C +:1013D000CB5C2804AFCD6C140D0D0404AFCD5A17AF +:1013E0002802CBA4050505AFCD5A172802CBAC04C3 +:1013F000CB5C2043CDC2140DCB44201ACD4C1C280D +:1014000002CB9405CB4C280DCB542809CD4C1C287D +:1014100004CB94CB8C04CB4C201C04CD4C1C280258 +:10142000CB9404CB44280DCB542809CD4C1C280464 +:10143000CB94CB8405050C0CCB542003CDC2140DEA +:101440003AD68AB72804CBD5181ECB5C2804CBD556 +:101450001816CB442807CDD5142002CB84CB4C28BA +:1014600007CDE7142002CB8CCD9D14C9F505CD4DD9 +:101470001C2802CB8CF1040404CD4D1C2802CB8423 +:101480000505C9FEFE2003CBEC3CFEFF2002CBCCC1 +:10149000FE022003CBE43DFE01C0CBC4C97C4C2638 +:1014A00000E6302802CBE479E60C2808CBD4E60429 +:1014B0002802CBDC79E6032808CBC4E6012802CB5E +:1014C000CCC93AD68AB72803AF1806CB5C20F93EC0 +:1014D00001CD6C14C9E521FB143E03CDEF14E1CD21 +:1014E0008615C8CD0015C9E521FE143E0118EC3261 +:1014F000FD8A3EC332FA8A22FB8AC90404C905C99F +:10150000CFDF206CCDFA8A3E02CDE918E5DDE15748 +:10151000200216FF0C3E02CDE9185F20021EFF7B61 +:10152000A2FEFF284B7BB2FEFF28047BBA204A7B39 +:10153000FEFF20047ADDE5E14FE5DDE1DD7E04CB51 +:10154000572036CB472029E5C5DDE5CD9D15CDFAE1 +:101550008ACD231C201F0CCD231C2019CD7C150DFA +:10156000CD7C15DDE1C1E13AFD8ADD7704CD404354 +:101570003E01B7D7C9DDE1C1E1AF18F73E04CDE9BF +:1015800018C8CD952FC9CFDF200ECDFA8ACDA6156C +:101590002806CD7A47AFD7C93E01B718F9E5237EB3 +:1015A0002346234EE1C9CD0E1CE602281C0CCD0EAD +:1015B0001CE602281411EE86195E160021040001B3 +:1015C0004683CD722F3E01B7C9AFC921868311056D +:1015D0000006100E007EB72815CF232346234E2386 +:1015E0007ECD751A77D7237E2BFE34C44043190C69 +:1015F00010E321868306100E007EB72808237E2B79 +:10160000FE34CC4043190C10F0C92116841105009A +:1016100006087EB72803CD3C161910F6211684065D +:10162000080E007EB72810E5DDE1DD7E04E6052822 +:1016300003CD3C16CDC643190C10E8C9DFC0CF233B +:101640007E2346234E2356FE3620037A182CFE377F +:1016500020067ACD4C1B1822FE3820067ACDFC1AC3 +:101660001818FE3920067ACDD11A180EFE3A200637 +:101670007ACDC91A18047ACDC11A77D7C9CDFF1609 +:10168000CF7EFE1F2007CDF716CD171A77D719107A +:10169000EFCDFF167EFE1F2003CD8D461910F5C934 +:1016A000CDFF16CF7EFE0C2005CDED441844FE0D77 +:1016B0002005CDFE44183BFE0F2005CD41451832D4 +:1016C000FE1C20153AC98AE6072027E5CDF716CD7E +:1016D000641877E1CD06461819FE1D20153AC98A0F +:1016E000E607200EE5CDF716CD6C1877E1CD404624 +:1016F0001800D71910ADC92346234E23237EC921D4 +:101700003E841105000610C921D68311040006107D +:10171000CF7EB72813237E2BFE212005CDE046186F +:1017200007FE232003CD0347D71910E4C9C5083E9F +:101730001DB83821CD1B1C201C0CCD1B1C20160CE9 +:1017400008FE02280DB72005CD771C1803CD6F1CAD +:101750002803AFC1C93E01B7C1C9C5F5CD4D1C288D +:1017600003F118F1F10CCD4D1C20EA18E5C53E132C +:10177000B938DFCD6F1C20DD04CD6F1C20D718D207 +:10178000C579FEFF28CF3E13B938C7CD441C20C50C +:1017900004CD441C20BF18BAC53E13B938B7CD7765 +:1017A0001C20B204CD771C20ACC35217CF3E13B916 +:1017B00038161E02CD0E1C57E60820057AE63020AA +:1017C00007041D20EFAFD7C93EFFB718F9C5083E83 +:1017D00013B9300608B72810180BCD1B1C200904BC +:1017E000CD1B1C2003AFC1C93E01B7C1C9E56F0CB9 +:1017F0000CCDCD17570D0D0D7DCDCD175F0CE1C96B +:10180000E56FC504047DCD2D1757C1057DCD2D177E +:101810005F04E1C9CF677ACD00187AB720087BB79B +:10182000280ECBCC180A7BB72004CB8C1802CB84B3 +:101830007CD7C93A3483B8C8D55778C608BA3810A7 +:1018400078D60830033F18085F7ABB38033E01B7EB +:10185000D1C9D53A34835778BAD1C9D53A358357E7 +:1018600079BAD1C9D51601CD7418D1C9D51602CD12 +:101870007418D1C9CFCB5F2030D5C5670CCD981770 +:10188000B7202104041520F5C1D1E50C7A8757D57E +:10189000C53E06CDE9182803CD952FC1D1041520EA +:1018A000EEE1183FC1D1CBDC7CD5C5670DCDAC17BF +:1018B000B7202904041520F5C1D1E50D7A8757D545 +:1018C000C53E07CDE918C1280BCD6019113483CD71 +:1018D0006C2F28ECD1041520E6E11807C1D1CB9C70 +:1018E0007C18967CD7C9F1AFC9F578FE1E30F77920 +:1018F000FE1430F2F1D5C5F5CB47281F50591D3ADB +:101900003483673A35836FCD6C2F280615CD6C2F45 +:101910002009213483F13E01B71842F108CD0E1C95 +:10192000E608283911EE86197ECB3FCB3FCB3F4FDF +:1019300008CB612010CB4F2824C569260011050073 +:101940000186831810CB572814CBA1C56926001136 +:101950000500011684CD722F3E01B7C179C1D1C9EE +:10196000E5C5F5113483CD6C2F20123A35833D3215 +:101970003583CD8A413EFFCD6E41F11823E5DDE18F +:10198000DD4602DD4E030DCDAC17B72806CD952FF1 +:10199000F1180DE5CDA31904CDA319E1F1CD6547EB +:1019A000C1E1C93E07CDE918C8CD6019C9E5C5DD5B +:1019B000E567CB5C28240DCD8017B72804CB94189D +:1019C000390C0C0C0CCDAC17B72804CB94182BE5B4 +:1019D000CDA31904CDA319E118200CCDAC17B7285D +:1019E00004CB941815CD001A04CD001A050C0C0C6C +:1019F0000CAFCDCD17B72802CB947CDDE1C1E1C996 +:101A0000E53E06CDE918280D232323237ECB57205E +:101A100004E1CB94C9E1C9CB47C8CF67DF202104DB +:101A200004CD431A200C050505CD431A2812CBCC52 +:101A3000180E050505CD431A2004CB8C1802CB8463 +:101A40007CD7C93E1DB83002B7C9CD1B1CC9CF26F3 +:101A5000003E02F5CD7F1CE6032808E6012803249A +:101A600018012504F13D20EB7CFE0220013DFEFE25 +:101A700020013CD7C9CF67DF20440C0CCD231C20AC +:101A800017C504CD231CC1200FCD7C1504CD7C15BA +:101A9000CB84CBD4CB9C1826CD4E1A2600CD8314F4 +:101AA0000D0D04043E02CD2D17B72802CB84050589 +:101AB000053E02CD2D17B72802CB8CCD9D147CD7C7 +:101AC000C9D51600CD1418D1C9D51600CD1418D11A +:101AD000C9D5C55F0C0CCD6D1720097BCB87CBD743 +:101AE000CB9F1815CB930D0DCD33183806CBC316ED +:101AF00001180216007BCD1418C1D1C9CF670C0C98 +:101B0000CD6D172008CB84CBD4CB9C183C0D0DCBCE +:101B100054201BCB4428171600CD33183809160162 +:101B2000CD5B18300216027CCD141867181BCD331C +:101B300018200ECBD4CBDC0DCD6D17280CCB941810 +:101B400008CB94CBC430D7CB847CD7C9CF672E00C9 +:101B5000CB542054CB94CBC4CB9CCD5B183802CB58 +:101B6000DC3E02CD00187AB7201B7BB7CAFA1B7D7A +:101B7000B7200ACD3318302FCBCCC3FA1BCD521867 +:101B800038F6C3F61B7BB728067DB7281A18677D81 +:101B9000B7200ACD3318300FCB8CC3FA1BCD5218A7 +:101BA000280230F4C3F61B2CCB84CBD4CB8CCD5283 +:101BB000183002CBCCAFCDED177AB720207BB72001 +:101BC0000CCD33183834CD5B18202F1887CD33183F +:101BD0003806CD5B18D2541BCB9CC3FA1B7BB7C213 +:101BE000541BCD3318DAF11BCD5B18CA541BDA54E1 +:101BF0001BCBDCC3FA1BCB84CB947CD7C9D5C5697E +:101C00002600480600111E00CD722FC1D1C9CDFD9E +:101C10001BE5D5119684197ED1E1C9E5CD0E1CE6F0 +:101C200030E1C9E578FE1E38053E01B7181479FE8B +:101C30001430073E04CDE9182803AF1805CD0E1C5B +:101C4000E630E1C9E5CD0E1CE680E1C9AF083E1DD6 +:101C5000B838183E13B9381308B72809E5CD0E1C5B +:101C6000E1E60A2004CD441CC9AFC93E01B7C9E56D +:101C7000CD0E1CE620E1C9E5CD0E1CE640E1C9E52C +:101C8000D5CD0E1CE601280611EE86197EB7D1E1EE +:101C9000C9010E0811AF1CCDDA1FC801120A11C10B +:101CA0001CCDDA1FC801150211CE1CCDDA1FC95098 +:101CB00055534820535441525420425554544F4E8A +:101CC000405B204153434949203139383640524521 +:101CD00050524F4752414D4D45442047414D4520BC +:101CE0005B2053454741203139383640D5C511F086 +:101CF0009CC57E47E6F0CB3FCB3FCB3FCB3F12139B +:101D000078E60F121323C10B78B120E5E129444D89 +:101D1000E111F09CEBC57E180A122313C10B78B1B8 +:101D200020F3C90600FE0F20068047237E18F680A8 +:101D300018E7AF321D8B321E8B11F09C7EB7C8475F +:101D400007380DCD5F1D237E121310FC23C33C1DED +:101D5000CBB8CD5F1D237E12132310FAC33C1DE5C3 +:101D6000C52A1D8B48060009221D8BC1E1C921F03F +:101D70009CF5ED4B1D8BCB38791F4FF1D5C5CD941C +:101D80001DC1D113D5C5CD941DC1D1FE02280413A8 +:101D9000CD941DC9EDA0EA9A1DC913FE0228F513C2 +:101DA00018F20602C5CDAD1DC10520F8C906107E8A +:101DB000CB3FCB3FCB3FCB3F121313232310F0AFCE +:101DC000012000ED42011000EBED42EB1800060887 +:101DD0007ECB27CB27CB27CB27EB4EEBB1121313B0 +:101DE000232310EC060818007ECB27CB27CB27CB6C +:101DF00027121313232310F0C9CD762CCD080ECD56 +:101E00009120CDB0353E0132E48ACDB51E212F4D53 +:101E1000CD321D3E02115096CD6E1D210A4ECD329F +:101E20001D3E02118098CD6E1D21F24811730006EF +:101E300023CDAA36CDAA3621F248117301CDAA3698 +:101E4000CDAA3621F248117302CDAA36CDAA3606A4 +:101E500001C5CD181F3AE48AB72842CD27221101C7 +:101E600002CD2A22CD911C3AE48AB72830CDAA1E91 +:101E7000202BCDE41EC110D9C5CD912021FEC12259 +:101E8000E58AAF32E78A3E0732CA8A3E063201C18E +:101E9000CD1E123AE48AB72804C1C3F91DC1AF327E +:101EA000E48AF7CD4026CDE41EC90680CD2A242041 +:101EB0000310F9AFC9CDE41E21000011000419017F +:101EC0000014AFCD8E01210020110004190100146F +:101ED0003E11CD8E0106082100003E3FEF0478FE42 +:101EE0000EC818F62E041E17CDFD1EEBCDFD1EEB01 +:101EF000CD2A242C2C1D1D7DFE1820ECC9CFCD0C25 +:101F00001F0620AFCD64012310F9D7C92600292967 +:101F100029292911001819C93E8AF73E0132CA8AB7 +:101F2000217A29CD751F280FEBCD7E1FEBCD2A24FA +:101F300028F1AF32E48AC9217A290E00CD4E1FC89C +:101F40003E0132CA8A21DE290E01CD4E1FC9CD7550 +:101F50001F280FEBCD7E1FCD2A242014CD931FEB1D +:101F600018EC2B2BCD751FEBCD7E1FEB3E01B7C9B7 +:101F7000AF32E48AC97EFE80C856235E23C9C5D528 +:101F80001673E5E5CDAB1FE13E078467CDAB1FE1DE +:101F9000D1C1C979B72006C5D5160018E5E5C53EFB +:101FA00004856F060ECD8834C1E1C9010507E5C57A +:101FB000E5C57DFE043812FE18300E7CFE20300987 +:101FC000D5CDD33CD17ACD6401C1E17AB7280114D3 +:101FD0002410DDC1E12C0D20D5C9261D69CDF91FC6 +:101FE000CD2A24200FCD1A20257CB820F0CDF91F52 +:101FF0003E01B7C9AF32E48AC9CF0E0106001AFE0E +:102000004028157CFE20300C79B728031A18023EB0 +:1020100020CDA834132418E6D7C9CF0E0018DDAFA1 +:1020200032228B21B55D11108ECD3C1D21806311B4 +:102030001096014000CDEC1C2152481100C2010055 +:1020400001CDEC1CFBCDE200CD2D010E0106E2CD51 +:10205000D90021224A22D78A210018010003AFCDDE +:102060006401230B78B120F6ED5B1E4A2A204AB7A3 +:10207000ED52444DEB110038CD56010603AF212E31 +:1020800083772310FC3E071E98AF32DBF332E48ADD +:10209000C93E053224833E703220833E06323383AC +:1020A0003E013221833E0732CA8A3E063201C13EDA +:1020B000003222833E11322383AF32238B321B8BBB +:1020C0000609AF212583772310FC32318332328316 +:1020D00032E88A321A8B210080110180010C00360F +:1020E00000EDB0210D80110E8001C50236FFEDB06C +:1020F000060021FF003E3FEF0478FE0320F4210F8D +:10210000003E3FEF0478FE0620F4CD6E22CD5D2226 +:1021100021D24ECD321D3E02116096CD6E1D21C6DC +:102120004BCD321D3E02112098CD6E1D21B05CCDED +:10213000321D3E0211E099CD6E1D21A84FCD321DFA +:102140003E0211F099CD6E1D21CC4FCD321D3E02C5 +:1021500011309ACD6E1D21E04FCD321D3E0211503F +:102160009ACD6E1DCD3E22210449110D000601CDF0 +:10217000AA3621F648061CCDAA3621F048CDAA364B +:102180002106490601CDAA3621FE48060ACDAA3607 +:1021900021F8480604CDAA360602CDAA36CDAA36C5 +:1021A000210049061ACDAA36CD27222100110104AB +:1021B000073E0ECDC2363E2ACDA0222100010101EC +:1021C000033E52CDC2362100090101043E51CDC269 +:1021D000362102010101023E55CDC2362103010123 +:1021E00001023E57CDC2363AE48AB720223A218313 +:1021F000CB5F2805CDBB35B7C9210113112C000ECB +:10220000590601CD99342C113400CD9934B7C92128 +:1022100001121170290E590601CD993421021311B2 +:102220007529CD9934B7C9110101CD3E222100494C +:10223000061CCDAA3621FE48060ACDAA36C9D521EC +:102240004450CD321D3E0211709ACD6E1D21F44FC7 +:10225000CD321D3E0211309CCD6E1DD1C9CF21A4BF +:102260005CCD321D3E02115096CD6E1DD7C9219016 +:102270005CCD321D3E0211D09CCD6E1D2102495E07 +:1022800023562101000606DD211640CF292929DD2C +:102290007E00CDDE22CDDE22D7DD23232310ECC944 +:1022A000F50E33B720020E3F7921FFC00606EF7905 +:1022B000210FC004EFF1F50E46B720020E00792180 +:1022C000001F0604F5E5C5CDD33CCD6401C1E1F1A5 +:1022D0002C10F1F1210018010407CDC236C90608FF +:1022E000F5CD213FF110F9C9AF32228B3E0132E426 +:1022F0008AAF320D8B32158B3E8CF73A24833236FF +:1023000083CD9430210D0901030ECD88342C0D208E +:10231000F9210E0B118D36010102CD99343E303278 +:10232000218B3E0232158BAF321F8BCD2A24212107 +:102330008B3520F73A208BB7281AFE012005112192 +:10234000031803112C03210E0B010102CD99343E19 +:1023500060CD0C28C9B7C8F5CD59333A2183CB5F7E +:10236000280BCDFD330E073A2083CD24363AE28A7E +:10237000B7280D210D80110E8001D1003600EDB07F +:10238000F1F5FE0120103A2083D610273220833E3B +:10239000113235831838FE03200F3A2083C60127F7 +:1023A000322083AF3234831825FE05200F3A208374 +:1023B000C61027322083AF3235831812FE07200E55 +:1023C0003A2083D601273220833E1C3234832134C5 +:1023D00083112283011200EDB03A2183CB5F2808DC +:1023E0000E0F3A2083CD2436F1C9C53AC98A4FCDA4 +:1023F000BB01B72807CB41200332CC8A3AE48AB725 +:10240000200DCD9D01B72807CB41200332CB8A3A5E +:10241000158BFE0120123A0D8BE630280B3EFE3262 +:10242000D58A3AE48AB72800C1C9CF3ACA8ACD0C06 +:10243000283AE48AB728403AE88AB7283ADF2037B2 +:102440002AE58A3AE78AB72008232322E58A237EF1 +:102450002B3D32E78A7EE60F32CB8A7ECB6728049B +:102460003EFF1801AF32CC8AD51100C3CD6C2FD1FD +:1024700038053E0132E38A21CD8A06097EFEFF201F +:10248000042310F8AFD7C9AF32228BCD9926211380 +:10249000000E011600E7247CFE1E20F7DD21EE2948 +:1024A000DD4E003EFFB928183A2083B920243A3483 +:1024B00083DD4E01B9201B3A3583DD4E02B920126F +:1024C000DD6E03DD6604CDEF14CDFA8A3EFF3222C5 +:1024D0008BC9010500DD0918C7AF32228B3ACA8AC1 +:1024E00032168B3E0732CA8A3E063201C13E8DF754 +:1024F00021368334CD99262100000E02CDFB252103 +:102500000100111200CD0D2621011C110D00CD0D71 +:1025100026210E14E50E02CDFB25E12C25252525CF +:102520007DFE1420EF210C190E201600CDF5423E41 +:10253000023234833E11323583CD8A413E06CD6E60 +:102540004121BA2B22FE8A21150022058BAF3207CA +:102550008B32E38A21960022088BCD2A24CD552880 +:10256000CD3B2921C98A343AE38AB728EDCD2A2404 +:10257000CD552821C98A347EFE5338F1CD4026211D +:102580000C190E001600CDED423E2CCD3126CD2A81 +:10259000243E2DCD3126CD2A243E2ECD3126210AB2 +:1025A000173E3B0608CD24262424CD24262C2C259A +:1025B00025CD24262424CD2426210E180104043EF2 +:1025C0009FCDC236CD2A243E3F210000CD3426CDFA +:1025D0004F260640CD2A2410FBCDCD37AF32E38AFB +:1025E00021112C22FE8ACD2A24CD3B293AE38AB739 +:1025F00028F43EA0CD0C28CD0C28C97DE60157E774 +:10260000247AEE0157E7247CFE1E20EFC9ED53DD4E +:102610008A0E06E5D5CD683ACD963AD1E12C1B7AE3 +:10262000B320F0C9E5F5C5CD9241C1F1EFE13C041D +:10263000C9210C17060CCD24263D2424CD2426C9FF +:1026400021000006083E3FEF0478FE0B20F7C92169 +:1026500007183EAF32FD8ACD7E262D7DFE0320F782 +:10266000210718AF32FD8ACD7E262D7DFE0420F78E +:102670000603CD2A2410FB210418CD7E26C9E5E5EA +:10268000CD8D26E124CD8D26CD2A24E1C9444DCD22 +:10269000C33C3AFD8ACD6401C9CDA437CDCD37CD39 +:1026A0002722113809CD1828110102CD2A2211380C +:1026B00011CD1828210849119F010610CDAA36CD49 +:1026C0005D222104490601CDAA36210849119F0245 +:1026D0000610CDAA363EAF32678A32688AAF32C959 +:1026E0008A32D68A32E38A324483324383C93ACA71 +:1026F0008A32168B3E0732CA8A3E063201C13E8BB1 +:10270000F73E053234833E11323583CD8A413E0691 +:10271000CD6E4121FD2922038B212C2B22FE8A2103 +:10272000150022058BAF32078B215B2C22088BCD45 +:102730002A24CD2B28CDB228CD3B2921C98A343A71 +:10274000E38AB728EAAF32E38ACD2A24CD2B28CDFD +:10275000552821C98A343AC98AFE7F38EC3E90CD8B +:102760000C283A168B32CA8A0607B83E0628023E63 +:10277000043201C1C93A2183CB5FCAEE263ACA8A24 +:1027800032168B3E0732CA8A3E063201C13E8BF7B3 +:10279000CBCF3221833E053234833E11323583CD97 +:1027A0008A413E06CD6E4121832A22038B21692B6B +:1027B00022FE8A21240022058BAF32078B215B2C5D +:1027C00022088BCD2A24CD2B28CDB228CDEC28CDC4 +:1027D0003B2921C98A343AE38AB728E7AF32E38A32 +:1027E000CD2A24CD2B28CD552821C98A343AC98A2F +:1027F000FE7F38EC3E90CD0C283A168B32CA8A0602 +:1028000007B83E0628023E043201C1C9E521118BFA +:1028100077FB763520FBE1C901C00321EE0FCD56D1 +:1028200001CBEC01C0033EF0C38E01CD4028ED5337 +:10283000038B0E001600CDED42CD4028CD5128C9A6 +:102840002A038BCD751F2007235E2356EB18F4EB6C +:10285000C9CFC3E4462A088B7EFEFF200A235E23ED +:1028600056ED53088B18EEFEFE2009CD8A413E0638 +:10287000CD6E41C9DF200D7E32CB8A237E32CC8AD9 +:102880002322088BCD4513CDA1413A3483473A35F5 +:10289000834FCD0E1CE604C8DFC060690E00160031 +:1028A000CDED422138833421268334CD3E30CD2AEC +:1028B00024C93A078B3C32078B2A058B4EB9D89135 +:1028C000FE04D02356235EEBFE03280EF5CD924185 +:1028D000F14F3E2E91060CEF1811E52100003E3F0E +:1028E000060CEFE10E2B1600CDF542C93A078B21FD +:1028F00027004EB9C03E99F50E09CD2436CD2F29BB +:10290000F1D61030F20E630699C5C579210080CD4D +:102910001833C10E04B728020E0778CD2436CD2F08 +:1029200029C178D6104779D60A4FFE0920DBC9C5E0 +:102930000E20060010FE0D20F9C1C92AFE8A7E2352 +:1029400022FE8AFEFE20073E0132E38A1821FEFDA8 +:10295000200D56235EED53008B2322FE8A18DCF5F2 +:102960002A008B2422008B25CDD33CF1CD6401C9F4 +:1029700044454D4F4047414D4540FD001500151859 +:10298000FD18FE0114011417FE17FF02130213169F +:10299000FF1600031203121500150104110411148F +:1029A0000114020510051013021303060F060F127F +:1029B000031204070E070E11041105080D080D106F +:1029C000051006090C090C0F060F070A0B0A0B0E5F +:1029D000070E080B0A0B0A0D080D090C8080090C64 +:1029E000090B090A090909080907090680809918CD +:1029F0000EEE26500C067527FFFFFFEE261A031970 +:102A000003180317031603150415051606170718F0 +:102A10000719071A061B051B041A031903180418C3 +:102A2000051706160715081409130A120B110C10C6 +:102A30000D0F0E0E0E0D0E0C0E0B0E0A0E0A0E0AC8 +:102A40000E0A0E0B0E0C0E0D0E0E0E0F0E100D11AB +:102A50000C120B130A140915081607170618051887 +:102A60000480642A170316031504150516061707B4 +:102A7000180719071A061B051B041A031903180364 +:102A800080642A1B031A0319031803170216011581 +:102A90000015001500150014001301130213031490 +:102AA000041505160517051805190519051A051A3F +:102AB000051B041A04190419041804180417041730 +:102AC000041604160415041605170517051804192D +:102AD000031A031B041B051B051A061A06190718FF +:102AE000081709160A150B140C130C120D110D10F2 +:102AF0000D0F0E0E0E0D0E0C0E0B0E0A0E0A0E0A08 +:102B00000E0A0E0B0E0C0E0D0E0E0E0F0E100D11EA +:102B10000D120D130C140C150B160A1709180818B2 +:102B200007190619051904180380642AFD03082BE8 +:102B3000484D3C2D276363FD03092E4A2C3D632B32 +:102B40002F2C56604C6363FD030A33342B4E433500 +:102B50002763636363FD030B382C363A3D633A2FDA +:102B6000293B633052332C27FEFD03082E404433AB +:102B7000433F286339503E632B2F2CFD0309344912 +:102B8000343E6342463D283C474B4A3B2C43352765 +:102B9000636363FD030A3F4630283835313B2B4ED3 +:102BA0003B3052332C276363636363FD030B2B2F8E +:102BB0002C56604563532D5127FEFD040A5A5D5F74 +:102BC0005C2A5840446363FD040B5B5954555D4DCA +:102BD000FD040C3835313DFD040D432C4843343899 +:102BE0002763636363FD0F082B2B632E2D4F334345 +:102BF000286363FD0F09323E404D30493E4CFD0FC6 +:102C00000A4339324D4A3BFD0F0B2E4843343827D7 +:102C1000FEFD050837343B634138483F2863342BB9 +:102C20004B363D6330473443343827636363FD0AD2 +:102C30000F146308630563636305630E63046363D2 +:102C4000636363636363FD081362575E2A616363B2 +:102C500006010912196314010C05FE0301030103A7 +:102C60000103000300030007000700070007000737 +:102C7000000700FF9100AF21001B018000C38E01FF +:102C8000CFDFCA6B2D3AE08AB720273A4383B7C219 +:102C90006B2D3A3483473A35834FCD6D2D20130485 +:102CA000CD6D2D200D0CCD6D2D200705CD6D2DCAC0 +:102CB0006B2D3ACA8A32168B3E0732CA8A3E0632DA +:102CC00001C1AF32C98A0610C5CD2A242600CDAE77 +:102CD0002D21C98A343A238BFEFF28F9C178FE10D2 +:102CE00020033E83F710E1CD2A24AF32CB8A32CCC9 +:102CF0008ACD45137CCB5728103A3583FE12300914 +:102D0000CDAE2D21C98A3418DECD8A413E0DCD6E5F +:102D1000410620CD2A2410FB21248335213683351A +:102D20003A168B32CA8A0607B83E0628023E04329B +:102D300001C13AE08AB720333C32E08A3AE48AB7EC +:102D400028053E0132E38A213683112483010D00D8 +:102D5000EDB03A3183B72805C6043231833A328365 +:102D6000B72805C604323283CD5933D7C9C579FE99 +:102D7000143803AF182CCD0E1C57E68020247AE6B9 +:102D800010281F11EE86197EE607573AD68AFE02F2 +:102D90003806FE113002CB923A4483B72802CB8A20 +:102DA0007AB7C1C9E5D53E0132CA8AD1E1C97BFEF5 +:102DB0000420143A128BFE023E0032128B28083E89 +:102DC00085F73E40CD0C28CB542015CD8A413AC919 +:102DD0008AE60320043E071803060980CD6E41C928 +:102DE000DF20E83A34833C878787673A35833C3273 +:102DF0003583C603873C87873D6F18D2DFC03A34DE +:102E000083473A35834FCD0E1CE604C8DD21D683B7 +:102E100050590610D5C5DDE5DD6602DD6E03CD6CCB +:102E20002FC2062FDD7E01FE232803CD262FFE2094 +:102E30002019CD142FCDD924212183CBD63E0132A8 +:102E4000E38ACDE41ECD2722C3062FFE212012CD1A +:102E5000142FCD8724CDE41ECD2722CDDC36C3062A +:102E60002FFE222016212183CBDE21001101040731 +:102E70003E0ECDC236CDBB35C3062FFE23201B3AF6 +:102E80004383FE0ACA062FFE003E0A32438320080F +:102E9000AF3244833E82F776186CFE2420153A1A2E +:102EA0008BB7200D3E10324483AF3243833E84F70C +:102EB000761853FE2520073E0132E28A1848FE2686 +:102EC0002005CD8730183F4FD627F55F1600CD92ED +:102ED00041E5215D00197EE1060DEF3E1032F98AD1 +:102EE000F1875F1600219836195E2356CDC92F79D8 +:102EF000FE2A3812D62A5F1600213783197EFEFF7C +:102F0000280434CD3E30DDE1010400DD09C1D105E6 +:102F1000C2142EC9CDB51E213483112283011200A3 +:102F2000EDB0CD5933C9F5E5F5AFDD77000E0016EC +:102F300000CDED42F1FE2120082100003E3F060BAE +:102F4000EF3E87F7CD2A24E1F1C9E5DDE12100005C +:102F5000FD2100000610DD29ED6AFD29CD6C2F381A +:102F600004ED52FD2310EFEBFDE5E1C97CBAC07D15 +:102F7000BBC9C53E10444D210000CB23CB12380FF6 +:102F80003D280F18F53D280A29CB23CB1230F6092E +:102F900018F3C109C9E5C5CDDD42E5AFDD77004FC6 +:102FA00057CDED42E1CDAB2FC1E1C93E86F7CD92C1 +:102FB000413E2CF5060CEFCD2A24F13CFE2F20F3E8 +:102FC0003E3F060C210000EFC9C5213F837E8327C9 +:102FD000772B7E8A27772BDC87307ECE00277711F0 +:102FE0004083213D8306031A4EB93806200F132370 +:102FF00010F5213D83114083010300EDB0CD023077 +:10300000C1C9213D83112200CD1530214083112AF1 +:1030100000CD1530C90603CD203013132310F8C995 +:10302000CFAFED6F47ED6F4FED6FEB1100181978D3 +:10303000C647CD64012379C647CD6401D7C91100C5 +:1030400018214300191137830E01060E1AD5E5C564 +:103050006F2600110500CD4A2FC155141CE115281B +:103060000979CD64012310F6180B0C1D280979CDC0 +:1030700064012310F6D1C9D10C1379FE0D20CDAF18 +:10308000CD64012310F9C9F5E52136837E34CD9452 +:1030900030E1F1C9110018216300193A3683B7C82D +:1030A0003DFE0E38023E0E4F0C060E0D28D13E0D91 +:1030B000CD64012310F5C9E579FE1B301DE5874F6E +:1030C000060021C0470956235EC1CDFD1B01968431 +:1030D00009720158020973C34F31FE1F3018D61B05 +:1030E000E5874F060021F647097A5E2356EB874FA6 +:1030F000060009C3C6302004D60618C1FE303005CC +:103100003E04C3E030FE40303A7B8787875FCBBB0D +:1031100079FE35300616A8E5C3C930200F7AFE02C5 +:103120003006CBC3161818EF16A818EBCBFBFE36EB +:10313000200B7AFE023006CBD3163818DACBC31632 +:103140003818D4FE55300416A018CC16A218C8E1C1 +:10315000C9F5E5C547FE30DAD931FE3630393A9245 +:10316000845F3C3292841600CF210500018683CD16 +:10317000722FE5CDD7322911DF8019DDE1C1D17B76 +:10318000CD1833E1DD7700DD7001DD7402DD7503FC +:10319000DD360400C30B323A94845F3C32948416CB +:1031A00000CF210500011684CD722FE5CDD7321155 +:1031B0006F8219DDE1C1D17BCD1833E1DD7700F5F8 +:1031C000DD7001DD7402DD7503CB6920043E01185A +:1031D000023E03DD7704F118323A93845F3C329368 +:1031E000841600CF21040001D683CD722FE5CDD700 +:1031F000322911A78119DDE1C1D17BCD1833E1DD81 +:103200007700DD7001DD7402DD7503C1E147F1C9AE +:10321000E5D5D53A91845F3C3291841600E5E521ED +:103220000400014683CD722FE5DDE1E17CCD503213 +:10323000CD1833E1D1DD7700F51D3ADF8A87878726 +:103240008783DD7701DD7402DD7503F1D1E157C9B4 +:10325000FE00200C3A8E841100003C328E84181A35 +:10326000FE1C200C3A8F841102003C328F84180A15 +:103270003A90841101003C3290843DF5CDF732192B +:10328000110D8019F1C9F5CFF5D53A95845F3C321F +:1032900095841600E5210500013E84CD722FE5DD01 +:1032A000E1E1D1F1DD7700DD7401DD7502DD73034D +:1032B000FE0C20043E031819FE0D20043E011811D7 +:1032C000FE1C3003AF180AFE1F30043E0418023EF5 +:1032D00001DD7704D7F1C9D5C53A20834FCB3FCB69 +:1032E0003FCB3FCB3F5F1600210A0079E60F4F0628 +:1032F00000CD722FC1D1C9D5C53A20834FCB3FCB6A +:103300003FCB3FCB3F6F260011150079E60F874F6B +:103310000600CD722FC1D1C9CFCD2933047E17103D +:10332000FD3E0030023E01D7C947CB3FCB3FCB3FEC +:103330005F16001978E60747C9CFCD29333E0890BC +:103340004779B728091F1710FD4EB17718093EFEBF +:103350001F1710FD4EA177D7C9AF328E84328F84EC +:103360003290842146831104003A9184B728104793 +:10337000CF4E23237ECD5032CD3933D71910F121D2 +:1033800086831105003A9284B7281E47AF32928493 +:10339000CF4ECDD7322911DF80193A92843C329238 +:1033A000843DCD3933D71910E721D6831104003A73 +:1033B0009384B7281E47AF329384CF4ECDD732299E +:1033C00011A781193A93843C3293843DCD3933D788 +:1033D0001910E72116841105003A9484B7281D4777 +:1033E000AF329484CF4ECDD732116F82193A948484 +:1033F0003C3294843DCD3933D71910E8C9CDD7324A +:103400007D0E01210080CD3933C9F5CFCB4128385D +:1034100059444DDF20160DCD7F1C2806E6102802EA +:10342000180A04CD7F1C2820E610281C0E04CB4B64 +:1034300020020E0C213E8411050006107EFE1B208A +:103440000479CD78451910F4D7F1C921F98A7EB7EE +:10345000280D3D77B720082100003E3F060DEF3ACA +:10346000C98AE60FC0214383CD7234214483CD72D3 +:1034700034C97EB7C83D77FE06D0B72801C93A1ACD +:103480008BB720033E81F7C9E5C5E5CDD33CAFCD71 +:103490006401E12410F4C1E1C9CF1AFE402807CD30 +:1034A000A834132418F4D7C9FE202003AF180BFE4C +:1034B0003A3004D630C65DD64181CFCDD33CCD6401 +:1034C0000178B72805CD2A2410FBD7C93AE48AB77A +:1034D000281721D58A7EFEFE2801C93EFF32228BA5 +:1034E000AF32E48A3C32E38AC93AD38A4FDF2811EB +:1034F000CD3A352000CB7120083E0132248332E0E2 +:103500008A3A148BB720063E07060618043E0206C8 +:103510000432CA8A3A4383CD2E353A4483CD2E35C0 +:10352000783201C13AD48A4FCB49CC7A35C9FE01F1 +:103530002805FE022801C90518FCE5D5F5F33A0D6A +:103540008BE630FE302809AF32128B32138B1825F0 +:103550003A128BB728173A138BB720193E0132E085 +:103560008A3EFF32138B3E0232128B180821128BD7 +:1035700036012336FFFBF1D1E1C9C53AE48AB72011 +:103580002A3AE38AFE0128053E003200C1CD2A24F2 +:10359000AF32CB8A32CC8ACDB035CD2A24200C3A3A +:1035A000CB8AB720063ACC8AB728EFCD8037C1C97D +:1035B00021CD8A060936FF2310FBC93E0221FF9068 +:1035C00006000E2FF5E511001079EF197904EF19B7 +:1035D0000C7904EFE11110FF19040CF13D20E521F5 +:1035E0000000E5E54C06002600110A00CD722F7D93 +:1035F000210080CD1833E10E04B728020E07CD3626 +:1036000036247CFE0A20DCE12C7DFE0A20D43A2000 +:10361000830E0FCD24363A2183CB4FC83E090E09C5 +:10362000CD2436C9E56FCB3DCB3DCB3DCB3DE60F41 +:1036300067CD3636E1C9E5C57D8785C6026F0602CE +:10364000E5C5C57C4FCB3FC60F677DE6075F16001B +:10365000CB3DCB3DCB3D7D87858785846F2600297B +:103660002929191100201979C1CB47200FCB21CB73 +:1036700021CB21CB21CD6E01E60F1805CD6E01E6E1 +:10368000F0B1CD6401C1E12C10B6C1E1C947414D93 +:103690004520204F56455240000800040002000417 +:1036A00000020001500020001000E5C5D55E235641 +:1036B000E1E5292929CD303FE12310F5EBC1E123D4 +:1036C00023C9C5E5F5E5CDD33CCD6401E1F1B728CB +:1036D000013C2410EFE1C12C0D20E7C9AF32228B51 +:1036E000CD4026CDA437210A495E2356EBCD321DAD +:1036F0003E02115096D5CD6E1DD1210000D5CD30A2 +:103700003FD1210008D5CD303FD1210010CD303F31 +:10371000CDCD37210000060B3E3FEF060D3E3FEFBB +:10372000011100212283113483EDB0CD0230CD3E52 +:1037300030CD94303A20835FE60F87874F0600CB69 +:103740003BCB3BCB3BCB3B1600212A00CD722FE578 +:10375000CDE937CD0238E123232323E5CDE937CD69 +:103760001638E12B2BCDE937CD7938CD8A413A3364 +:1037700083CD6E413AE48AFE0128053EFF32228B5A +:103780003A4383B728043E82F7C93A4483B7280AEC +:103790003A1A8BB720033E84F7C93A1A8BB7200335 +:1037A0003E81F7C9214689114789011F013600ED85 +:1037B000B0214683114783014F013600EDB03E72C0 +:1037C00032668A3E1A32678AAF32688AC911001897 +:1037D00021800019AF018002CD8E012196841197BE +:1037E0008401AF043600EDB0C9D5E5ED5BD78A1989 +:1037F0005E2356E17AB3200711224A195E2356EB65 +:10380000D1C9AF32DB8A32DC8A22D98A2100002278 +:10381000DD8ACD1E38C93E1C32DB8AAF18E82AD9B2 +:103820008A7E4FE6073C5F1600FE08CC843BED53D2 +:10383000DD8A2AD98A2322D98A79CB3FCB3FCB3F55 +:103840004FFE07200B3ADB8AFE1C20110E08180DD4 +:10385000FE0820093ADB8AFE0020020E0779CD6CB3 +:10386000383ADB8AFE02C8FE1EC818B2B72805FE29 +:1038700010DA7039E60FC3B8383E0232DB8AAF3255 +:10388000DC8A22D98A21000022DD8ACDAA383E02B4 +:1038900032DB8AAF32DC8A21000022DD8ACD623938 +:1038A00021000022DD8ACD963BC9CD5F3BCDB838E3 +:1038B0003ADC8AFE14C818F24F3ADB8A673ADC8A8F +:1038C0006FED5BDD8A79FE0C3807FE0E2803CD868E +:1038D00032B720140E00D579B7C4843ACD1E3CD13E +:1038E0001B7AB320F1C36139FE04301D32DF8AD563 +:1038F0007DE60157E7247DE601EE0157E7CD1E3C4A +:10390000D11B7AB320E9C36139FE073005D6034FD6 +:1039100018C4FE093016D6074FD5CD683ACD963A71 +:10392000CD1E3CD11B7AB320F0C361392006D605E9 +:103930004FC3D638FE0C3019D51600E724E7252CE6 +:103940001601E724E7CD1E3CD11B7AB320EAC36100 +:1039500039FE103006D60A4FC31939D60B4FC3D6DD +:1039600038C9CD5F3BCD70393ADB8AFE1CC818F2EE +:103970004F3ADB8A673ADC8A6FED5BDD8A79FE0CB1 +:10398000380BFE0E2807C610CD8632D610B7200D94 +:10399000D5CD473CD11B7AB320F6C3673AFE05303C +:1039A00013C6044FD5CD843ACD473CD11B7AB32002 +:1039B000F3C3673AFE0520153C4FD5CD683ACD9646 +:1039C0003ACD473CD11B7AB320F0C3673AFE0620BC +:1039D000337BFE012825CDC73ACD1032CDE23ACD5A +:1039E000473CCD0C3BCD473CCD0C3BCD473C3ADB77 +:1039F0008AB72807FE1C2803C3673ACD213BCD4771 +:103A00003CC3673AFE0B3006C6024FC3A4392047B9 +:103A1000E5D543052C10FDE5444DCDC33CCD6E01ED +:103A2000E1B72007F53E1BCD8632F1D1E1B728047E +:103A30000E0B18020E07F5D5CD683ACD963ACD4754 +:103A40003CD11B7AB320F0F1B7C2673A2C2C2C0E74 +:103A50000BCD843AC3673AFE0F3006D6044FC3BA83 +:103A600039D6034FC3A439C9E52ADD8ACD6C2F208E +:103A700003AF180E210100CD6C2F20043E02180266 +:103A80003E01E1C9C5E5692600292911374019EB36 +:103A9000E1CDB33AC1C9C5E5060069260029092967 +:103AA00029116B4019EB26006F292919EBE1CDB3E1 +:103AB0003AC1C9E5EB4E23562346237EE1CDC13AF8 +:103AC000C9E7244857E7C9E5D52DCD2A3BFE043088 +:103AD0000632DF8AD1E1C93ADF8AE60320F33E03EA +:103AE00018EFD5D53ADF8AC63F4F1600E7CD3243EF +:103AF00025D17AB728143ADF8A3D4F8781874F7BDB +:103B000081C6414F1600E7CD3243D1C97AB7C8D537 +:103B10007BC6534F16003A91843D5FE7CD3243D1C7 +:103B2000C90E161600E7CD3243C9CF7DFE0430051D +:103B3000114689180CFE0C300511A68918031106D0 +:103B40008A444DCDC33CCD6E0106034F131AB728EE +:103B500007B928063CB9280210F23E0490D7C92ABA +:103B6000D98A7E4FE60F3C5F1600FE10CC843BEDF9 +:103B700053DD8A2AD98A2322D98A79CB3FCB3FCBFE +:103B80003FCB3FC92AD98A2322D98A7E6F260019C2 +:103B9000EBFEFF28EFC92AD98A7EB7C84FE60F8708 +:103BA00032DB8A2AD98A2322D98A7E47E61F32DC71 +:103BB0008A79CB3FCB3FCB3FCB3F4F78E6E0B1CDCF +:103BC000CB3B2AD98A2322D98A18CB4F3ADB8A6782 +:103BD0003ADC8A6F79E60FCB712804C6201802C63A +:103BE00030CD51310878B7C808FE362821FE232889 +:103BF00026FE21200CF5CFCD92413E2A060BEFD7B1 +:103C0000F11600CB69280216044FCDF542C94F2C9E +:103C10001600E7CD3243C94F1600CDED42C93ADB5D +:103C20008AFE002822FE1C281E3C3C32DB8AFE1C39 +:103C3000200C3E0232DB8A3ADC8A3C32DC8A3ADBF8 +:103C40008A673ADC8A6FC93ADC8A3C32DC8AFE1425 +:103C500020ECAF32DC8A3ADB8A3C3C32DB8A18DE6D +:103C6000F5E5C5D57DFE1430557CFE1E3050C5CD22 +:103C7000B730444D79FE04300D214689DD21668A36 +:103C8000FD210000181CFE0C300D21A689DD2167E6 +:103C90008AFD210001180B21068ADD21688AFD2199 +:103CA0000002D17BFE0D20021E0C1600197EB720EB +:103CB00004CD673D7ED1D582CDC33CCD6401D1C159 +:103CC000E1F1C9F5D5C5046079C6046FCDD33CC117 +:103CD000D1F1C9D55C1600260029292929291911F5 +:103CE000001819D1C9DD7E00C601DD7700C9CFF506 +:103CF0002100C31110C373237223FD7E0277FD667A +:103D000001FD6E00CD321D1110C33E02CD6E1DF1BE +:103D1000FE2F384DFE3628492110C31150C3FE37FF +:103D20002012011000EDB02140C31180C30110002A +:103D3000EDB01824FE382007012000EDB01819FE60 +:103D40003920021804FE3A2007014000EDB018089F +:103D5000FE3B2002180218062150C31190C3CDA2C9 +:103D60001DFD2100C3D7C97BB7C8E5C5B7ED52E536 +:103D7000FDE5E1D5FDE1FD29FD19010A49FD09CD6A +:103D8000EE3C7BD1FE40D2E03DFE30D2F73DFE2A34 +:103D9000D2BA3DFE1BDA9D3DFE1FDAA33DCDF63EB5 +:103DA000C30F3E0603210000114689DD21668ACD3E +:103DB000F63ECD123E10F8C30F3ECD0C3FEB211660 +:103DC00040D62A4F0600094EEBCDB23E0604CDE5A3 +:103DD0003CC5060879CD213F10FAC110F1C30F3E52 +:103DE000CD0C3FEB211C40D6404F0600094EEBCDD9 +:103DF000B23E0602C3CE3DFE3628A20603210000D5 +:103E0000114689DD21668ACD213ECD123E10F8C1D2 +:103E1000E1C9C501000109EB01600009EBDD23C127 +:103E2000C9F5CFCD0C3F08CD553E08FE36381D08EC +:103E3000CD633ECD703ECD783ECD823ECD883E08EE +:103E4000FE3A300ECD913ECD993E1806CDA23ECD24 +:103E5000AA3ED7F1C9CDB23E0604CDE53CCD303FF8 +:103E600010F8C9CDB23EEBCD593FEB11698A18E885 +:103E7000CDB23ECDB93E18E0CDB23ECDC23E060633 +:103E800018D8CDE03EEB18E3CDEB3EEB11698A1874 +:103E9000EDCDC83ECDC23F18F3CDE03ECDC23FEBE5 +:103EA00018EACDB23ECDB93E18D4CDDA3ECDC23FF0 +:103EB00018DAFD5E00FD5601C9C5014000EB09EBB3 +:103EC000C1C9C501800018F5CDB23ECDB93EE5EBC4 +:103ED00011698A014000EDB0E1C9CDB23EC3CE3ECA +:103EE000CDB23ECDB93EEBCD593FC9CDB23ECDC2EC +:103EF0003EEBCD6C3FC9F5CFCD0C3FCDB23EFD467C +:103F000002CDE53CCD303F10F8D7F1C9F5EB4F06B7 +:103F10000009EBDD7E003C124F060009292929F13A +:103F2000C9C5081ACD443F1308CD4B3F2313C1C95F +:103F3000C50608C51ACD443F131ACD4B3F2313C104 +:103F400010F1C1C9010000CD523FC9010020CD527E +:103F50003FC9E509CD6401E1C9CF11698ACD7F3F31 +:103F600001200009EB09EBCD7F3FD7C9CF11698A4A +:103F7000CD9C3F01300009EB09EBCD9C3FD7C9D563 +:103F8000011000EB09EB0602E5C5CDA73F011000CB +:103F900009B7EBED42EBC110F0E1D1C9D50120002A +:103FA000EB09EB060318E1E5D50608C54EAF060898 +:103FB000CB391710FB1223137E122313C110ECD13F +:103FC000E1C9E5D521B18ACDE53F060421998AC52D +:103FD000E5CDFA3FE111F0FF19C110F321698ACD57 +:103FE000E53FD1E1C91108000E020604AF77233E78 +:103FF00011772310F7190D20F1C9E50108000954C4 +:104000005D01180009EB010800EDB0E1545D010805 +:104010000009EBEDB0C95181D12171B1F18171F588 +:10402000F8FDF2F7FB85688D82878B75787D725776 +:104030007B5181D12171B100000000040004010016 +:104040000005000600000009000900110001010040 +:1040500000110001011300130000001700170118E0 +:104060000018011B051B061F001F010700070107A1 +:104070000107010701070200000800080108010804 +:104080000200000C000C010C020C010C020C000DD3 +:10409000000D020D010D020D010D000E000E010EAE +:1040A000010E010E010E020F000F010F000F010F94 +:1040B000000F011500150115021503150415051B48 +:1040C000001B011B021B021B031B041C001C011C08 +:1040D000021C031C021C031D001D0100001D030027 +:1040E000001D031D011D021D0400001D0400001B16 +:1040F000001B011B021B021B001B01F5CFF5E5781D +:1041000087875F160021001B19D17BCD6401237ABC +:10411000CD640123F1FEFF28058787CD6401237953 +:10412000FEFF2803CD6401D7F1C9D5C5FEFF2829BC +:10413000E52A204A5F1600194EF579FE0820163A46 +:104140004383CD604128040E0F180A3A4483CD60A2 +:104150004128020E02F1E118014FCDFB40C1D1C947 +:10416000B7C8FE033002DFC93AC98ACB57C9FEFF80 +:1041700028033245835F87835706087BFEFF2801AB +:104180007AEF140478FE0B20F2C93A3483673A358B +:10419000836F7C3C878787677DC6048787873D6FF1 +:1041A000C9EB3AD68AFE0120033E88F7DFCA2B42CC +:1041B000CB622818CB422814CB4A28093A34833CD6 +:1041C00032348318073A34833D323483CD8A413AFE +:1041D000D68AFE012808CB63203BCB5320373AC94F +:1041E0008ACB43282CCB4B2014CB4728043E011804 +:1041F00036CB4F20043E02182E3E03182ACB472808 +:10420000043E061822CB4F20043E07181A3E081819 +:10421000163E001812CB43280CCB4B20043E04184A +:10422000063E0918023E05CD6E41C93A3483B720D7 +:1042300020CB43281CCB4B20183A2083E60F2811B3 +:10424000CD8A413E01CD6E413E00F73E0732E18A04 +:10425000C93A3483FE1C2022CB43281ECB4B281A9C +:104260003A2083E60FFE092811CD8A413E06CD6E25 +:10427000413E00F73E0332E18AC93A3483473C8726 +:10428000673A3583FEFE20093E00F73E0132E18A9F +:10429000C9FE1420093E00F73E0532E18AC94FC627 +:1042A00004876FCB422814CB4A20090525CB62280E +:1042B0000A2518070424CB62280124CB52280ACBF4 +:1042C0005A28040D2D18020C2C783234837932359B +:1042D000837C8787677D87873D6FC3CF41E5DDE1BD +:1042E000DD7E01DD6602DD6E03DD4E04C9E724E7F5 +:1042F0002CE725E7C9CD2843252CCD3343CD3243C8 +:10430000C9CD2843CD324325252CCD3343CD32436F +:10431000CD3243C9CD2843252CCD3343CD3243255F +:104320002CCD3343CD3243C9E7CD3243C9E7CD3637 +:1043300043C92414E7C92515E7C90E001600E7C9CB +:10434000CF59CDDD42FE34CC0A3408DF284708CBF4 +:10435000412828CB49200F4F1600CDF54224CD3AF5 +:10436000432DE7C3C4431600F5D525CD3A432CE7CA +:10437000D1F12D244FCDF542C3C443CB51CAC44320 +:104380001600F5D52DCD3A4324E7D1F12C254FCD9C +:10439000F542C3C44308CB41281ACB49200D16046B +:1043A00025DD74024FCD0143C3C443160424DD74DC +:1043B000022518F0CB51CAC443160A2CDD75032D13 +:1043C0004FCD1443D7C9CF59237E2BFE36CA9C4408 +:1043D000DF2844CDDD42CB41280CCB492003C35715 +:1043E000431604C36843CB51281CCB492004160054 +:1043F00018021604CB59CA82434FCDF5422CCD3A50 +:104400004325E7C3C443CB49200416001802160411 +:104410004FCDF542C3C443CDDD42CB41280ECB493D +:104420002005160CC3A0431616C3AD43CB51285B21 +:10443000CB492004161C18021622CB592021F54422 +:104440004D0C0C3E01CDCD17B72004F1C3BB43F199 +:10445000AFDD7700574FCDED42CDAB2FC3C443F551 +:10446000444D0D3E01CDCD17B72003F11812F1AF29 +:10447000DD7700574FCDED422D2DCDAB2FC3C4437B +:104480002DDD75034FCD1443C3C443CB492004161F +:1044900008180216124FCDF542C3C443CDDD423A8F +:1044A000C98AE63FFE10300B16002C0E36CD28438D +:1044B000C3C443FE183004160218EFFE383012CB86 +:1044C0004720041604180216080E36CDF542C3C460 +:1044D0004320E4CD3A4324CD3A432518DAE5DDE123 +:1044E000DD6601DD6E02DD4603DD4E04C9CFCDDDA4 +:1044F000443AC98AE6030E0CCD1345C3C443CFCD5D +:10450000DD443AC98AE6034F3E03910E0DCD1345B3 +:10451000C3C443DD21324887875F160005DD19DDFE +:104520005600CD3B4524DD5601CD3B4524DD5602EA +:10453000CD3B4510F024DD5603E7C9DDE5E7DDE1BD +:10454000C9CFCDDD443AC98ACB6F200EE603DD2109 +:1045500042480E0FCD1745C3C443788747E5C5448D +:104560004DCDFD1B01968409361001580209360015 +:10457000C1E12410E8C3C443CFDDE5CDDD444FDF06 +:10458000202F79444DCDAD194FDD7104CB51CA01B7 +:1045900046CB5920072CDD75022D18042DDD750240 +:1045A0000E1B1607CDF54214252C2C2CCDF54218E8 +:1045B00050DDE5DD4E04CB512841CB59281F0E1BA1 +:1045C0001603CD28432CCD3A4325E72C2C2C0E1B6B +:1045D0001605CD28432CCD3A4325E7181E2D0E1B7A +:1045E0001602E724E72C1604CD2D432C2C2CCD3AB3 +:1045F0004324E72C0E1B1606CD2D43DDE1AFDD77FE +:1046000004DDE1C3C443CFDF201DCDDD44CB51CA5F +:104610002746CB5928142DDD75020E1C1600CD2817 +:10462000432C1603CD2D43C3C4432CDD75022D0E40 +:10463000001600E724E72C0E1C1601CD2D4318E7C9 +:10464000CFDF202ACDDD44CB512823CB5928222D82 +:10465000DD75020E1D1600CD284324CD28432CCD38 +:104660003A43250E1D1604CD2D4325CD3A43C3C430 +:10467000432CDD75022DCD3A4324E724E724E72CB3 +:1046800016020E1DCD2D4325CD2D4318E1CFCDDDD6 +:1046900044CB41CAC443CB490E1F3AC98A201ECB22 +:1046A00047200E25DD74011602CD2843CD32431874 +:1046B000091600CD284324CD3A43C3C443CB472039 +:1046C0000724DD74012518DF25CD3A43240E1F167B +:1046D00000CD284318E4E5DDE1DD6602DD6E03C9A7 +:1046E000CFCDD646E5CD92413AC98AE601C62A0623 +:1046F0000BEFE13AC98AE6018787570E21CDF542D3 +:10470000C3C443CFCDD6463AC98AE67FFE102851AE +:10471000D2C443E50603216989110000C5E5D57EB1 +:10472000B7282426006F19292929110020191107FB +:104730000019CD6E014F06072BCD6E0123CD64010C +:104740002B10F579CD6401D1E101600009EB010086 +:104750000109EBC110C6E10E231600CDED42C3C422 +:10476000430E0018F45FCDDD422DDD75034F1600BA +:10477000CDF5422CCD3A4325E7C9E5DDE1DD7E01EB +:10478000E60F3D5F1600213783197EB7283135DDEE +:10479000E5CD3E30DDE1AFDD7700DD6602DD6E03A5 +:1047A000DD7E01E6F0CB3FCB3FCB3FCB3FC63F4F5B +:1047B0001600E7CD3243252C0E001600CDED42C980 +:1047C0000000E000E000E000E000E000E000A00009 +:1047D000A000100210011001A101A102A110A0006F +:1047E0000000E000E000E000E000A000A0001001F8 +:1047F0001001A000A000004810481848184822489E +:10480000A000A0002000A000A000A000A000A00028 +:10481000A000A000A000A000A000A000A000200018 +:104820002000240020002000200024002000200080 +:104830002000030504030002010003040503000136 +:10484000020002030203010001000302030200014F +:1048500000013702F13033B03F453F80237F4202F1 +:10486000F45310235F43310277F8376F8302F4501B +:10487000131F48037703F877F207F837101F11F872 +:10488000472F8302F83F433B01F130174017F102F5 +:104890007201310132013905F443EF4202F8502F21 +:1048A000440236F493C09F8802F470FFFFAF1108F2 +:1048B000720F974F8273F837204330274013903F91 +:1048C000110F8320737F11F413103F4631F41F1131 +:1048D000F8202F8302F433F9F473DF42F11F8503CC +:1048E000F13F8201F4602F140EF13F42320FFFA01E +:1048F0002098509680986096F099309A509A309C03 +:10490000709AD09C5096E099B55C215101265102D5 +:104910003651024651025651026651016651018FCD +:1049200051038F5103AD5101B95102D05102E751EA +:1049300006E7510647520373520421510171510198 +:10494000715101805101805101AC5206ED520201BA +:1049500053021E53022151012151013C530FE353D5 +:10496000041B54051B5405435405945404CE5408A9 +:104970002A5504655504885504C15504EE55042E86 +:1049800056046A5604AB5604ED5604ED5604ED5633 +:1049900004ED5604ED5604ED56040E57107D5710E5 +:1049A000EE5710455810B358100C590678590C1A88 +:1049B0005A288A5A28165B284D5B1CBA5B1C215169 +:1049C00001215101215101215101525C02525C022D +:1049D000525C02655C02655C02655C02655C0265B6 +:1049E0005C02655C02655C02655C02655C02655C9C +:1049F00002655C02655C02655C02655C02655C02E6 +:104A0000655C02655C02655C027E5C027E5C027E27 +:104A10005C027E5C027E5C027E5C027E5C02108E2A +:104A20001096A463AA631264176454645964896479 +:104A30008E64E364EB642C653365A365A865E46567 +:104A4000E9652C662F666B666F66B266B466B666FD +:104A500005670B673B6741677E678367B667BB6720 +:104A60000368066862686868AE68B06805690969C5 +:104A700055695B69A369A869AA69E669EA69526A26 +:104A8000566A9C6AA06AD36AD66A0D6B106B656B16 +:104A90006A6BC66BC96B066C0B6C846C876CE36CC1 +:104AA000E56CE86C256D296D6F6D736DCB6DCE6D0A +:104AB0001D6E216E596E5E6E856E8A6EB86EBD6E0D +:104AC000E76EEB6E536F596FAE6FB06FB26FFD6FE5 +:104AD00001703270367077707A70C270C470027173 +:104AE000067139713F718A718F71BE71C171EE713A +:104AF000F27125722772297266726972A972AD729B +:104B0000FE7202733C7340738A739173BD73C473F6 +:104B100006740D7467746C74A174A674F474F674DE +:104B2000FA744575497567756C75C675CA75FD75F6 +:104B300001761C761E7665766876B876BB76057744 +:104B40000A7747774B77907792779577D177D977B0 +:104B5000097811785F786578AB78B178FF78047957 +:104B600036793C7984798A79D979DE791C7A227A06 +:104B7000697A6C7A6E7AC17AC47AEC7AF47A3A7B82 +:104B80003E7B837B887BE57BEA7B257C2A7C477C9C +:104B90004A7C8C7C907CC17CC67C007D027D047D3F +:104BA0004E7D517D977D9B7DEB7DEF7D157E1A7E41 +:104BB000487E4D7E987E9D7EE27EE77E467F497FE1 +:104BC000667F6B7FB87F85FF00001F33030389FF7B +:104BD0000004E030363B33FF0400843C6664FF038E +:104BE0000081400300C0FF00000800008000FF00BB +:104BF000000C0E08081CFF1038387C7CFEFE0303F6 +:104C000001200103070733BB1185003C7EFF69F2D9 +:104C10003C0000048080002070200001030100049B +:104C200000207030B0B0033E8D2A2A3E3F1F01297C +:104C3000290143E7E700040F8607070301FFF70395 +:104C4000FF967F3FFF1E73E14D1971F5383F61F10B +:104C5000B99D8FC7FFF1B3B303B6BCFBB30F0730E9 +:104C60002040840C070000557F002A000C00001033 +:104C70008092DFFFFF7C0000203277FFFF100008EA +:104C8000181C3CFFFFFC00044044EEFFFF910003B2 +:104C9000071F7FFFFF0FE706FF820CF3050084FF6D +:104CA00071B5B505958371B5B50595817104B503E9 +:104CB00095817107B5817507B58371F58503A58366 +:104CC00085857106858165039581B5048503950405 +:104CD00058815B0395858585B5858504B504850375 +:104CE000B50685816506F5035F038F826FEF088542 +:104CF000825B5B0353825858198582F8F8058F81CF +:104D0000F804EF045F033504158471853535041507 +:104D10008371853505158471853535040582718566 +:104D200006158371F8EC050583715FE506710003D4 +:104D300000870103070F1F073F06FF81FC04FF8F59 +:104D4000FCE08008DCFDFCFE7E0F03E3FF8008042E +:104D5000188580C0C0DCF603C6030088387ECC8886 +:104D6000D01F3F3F037F03FF87FEFCF8F8F0F0E021 +:104D70000800810107008D98CC840000030F1FC636 +:104D80006321007803FF83E0FF3C03008283C308B4 +:104D9000FF08E010008A3E7C7838180800000703FE +:104DA000060183E7F7F704FF83FBFFFF037F8B3FD9 +:104DB0003F1FE0F0F0F8F8FCFCFE0F008D0100034F +:104DC0000F1F3F7EFFFF79F9E1C1040108F8851F3D +:104DD0000F070301030006FF863F070080E0FC0386 +:104DE000FFA1FE03070E7CF8F0C000FFFF7F0F035A +:104DF00001000081C7DCF8F0E0C040FCFFFF7F3F0E +:104E00001F0F0777B177B12AB1000D0090010103A0 +:104E100000000181C3E7F7F980C0E0F0F803FC1C53 +:104E200000813F03FF840707010004FF04FC04FF27 +:104E300008FC050083030F1F0400817C03FF0600AC +:104E40008AC0F0E0C0C0E0F0FCFEFF070081800CEB +:104E5000FC04FDA83F7FFEFCF8F8F0F0FFFF1F0701 +:104E600001000103F8FCFCF8F0E0C080FF7F1F07A1 +:104E700003010000C0F0F8FCFEFF7F7F08FC04FF88 +:104E800004FD82F0F003F88BFCFFFF070E1C387066 +:104E9000E0C080070085040000C0F804FF033F9FC6 +:104EA0007FFEFCF8E0FEFF7F7F3E1E0C04FEFF7FCE +:104EB0007F3E1E0C04FFFF7F3F1F0F0700E0F80539 +:104EC000FF89F80F3EFCF8F0C0000077B177B12AF7 +:104ED000B1008A0A0F0F070303081CAAFF06F0821D +:104EE0008FFF06F082FFFF06F08207FF06F082D5F3 +:104EF000FF06F0812004708B50D8F81C1C1F1B1B70 +:104F00000F070728F084F8F8F010033882F803043C +:104F10000783363F1F28F08AD8F8F0FCDCD8F8F079 +:104F20000F0F06FF07F081FF07F081FF07F081FFF9 +:104F300007F081FF07F083FFE0E006FF03F587E558 +:104F4000E5F585855FF1061182F5F1061182F8F12C +:104F500006118258F1061182F5F806110385816564 +:104F600004F582856504F582E5F5281183F5E5E50C +:104F700003858265F50385816503F581E528118345 +:104F8000F5F5E504F583E5252505618171071181B6 +:104F900071071181710711817107118171071183E7 +:104FA00071F5F5056181710084D8D8DAF803DA99D2 +:104FB0000063D6C66636B6630019B5B535B5B51902 +:104FC00000CFACACCEACACAF0020B10087CCD8F1F8 +:104FD000E3F3DBCD0300869B5BCF03DE00107100A3 +:104FE00090C6C6C0C6C6D6F60070C0C6EDCFCCC748 +:104FF00000107100817C05C6847C0018380418AD4F +:105000003C007CC6C60C3860FE007CC6061C06C68A +:105010007C000C1C2C4CCCFE0C00FEC0FC0606C612 +:105020007C007CC6C0FCC6C67C00FEC60C04189181 +:10503000007CC6C67CC6C67C007CC6C67E06C67C16 +:1050400000508100921038384C7C868600FC6666E1 +:105050007C6666FC003C6603C085623C00F8640325 +:10506000669B64F800FE6268786862FE00FE626813 +:10507000786860F0003C66C0CEC6663E0003C6811C +:10508000FE03C682003C0518833C003E030C8DCC19 +:10509000CC7800C6CCD8F0E8C4C200F004608762C7 +:1050A000FE00C6C6EEEE03B68B00C666765E4E46C2 +:1050B000E200384403C6A5443800FC66667C6060A4 +:1050C000F0003844C6C6DE643A00FC66667C786C44 +:1050D000E6003C66603C0646FC007E5A0418823CB2 +:1050E0000006668A3C00C2C264643838100005DAE3 +:1050F0008E6C4800C26438182C468200C2643803A3 +:10510000189A3C00FE8C183060C2FE003C4299A107 +:10511000A199423C7EE7C30E180018187731693117 +:1051200000080008110008FF08E7817406F48211E6 +:105130007406F481110008FF08E781970684821144 +:1051400097068481110008FF08E781F706748251F1 +:10515000F70674815100080F08F0817106F182E1B1 +:105160007106F181E100810006FE81FF07F78117DA +:105170000089FF7F3F1F0F0703017106F1811100B6 +:1051800089FFFEFCF8F0E0C0807106F18111008813 +:105190009FBF837F3F1F0F070BFF85FEFCF8F0E0EA +:1051A000037F05510331055103310551000AFF8684 +:1051B000FEFCF8F0E0C010510004100538057C82B8 +:1051C000FFFF03F1817104F1817105F182715100DA +:1051D00082FFFF053E051C040882715105F18171B3 +:1051E00004F1817103F100B2C37EDBE7E7DB7EC32C +:1051F000FF00FF6666FF00FFFF00FF6666FF00FF1F +:10520000C37EF7CFF3EF7EC3F000FF6666FF000FAB +:105210000F00FF6666FF00F01AA104A694A11A51C0 +:10522000F1F1E6F6F1F17171F1F1E6F6F1F1511AF1 +:10523000A104A692A11A47F1F1E6F6F1F17447F143 +:10524000F1E6F6F1F17400893F3C5A66665A3C3F3C +:10525000FF060092FFFC3C5A66665A3CFC51F1F195 +:10526000F7F7F1F151510611895151F1F1F7F7F1C9 +:10527000F15100A03C66C38181C3663C3C66C3819A +:1052800081C3663CC003300C0C3003C0C003300C3B +:105290000C3003C004510881045190815181518127 +:1052A000518151518151815181518100907F3F5DE8 +:1052B0007F6D7F3F0DFEE0BAFEB6FEFCB0081B0816 +:1052C000E8051B830F7F3F05E893F0F8C0F7F771FF +:1052D000F171F17131F7F771F171F1713108F10884 +:1052E0007105F18371F7F7067182F7F70090FFA956 +:1052F0008B8B898BA9FFFF515BBBBB5B5BFF104BAB +:105300000004C089C2DEC0C00000F0FFF0030081CD +:1053100071057F8771711111F1F171031100850021 +:10532000000FFF0F0300040389437B03031111F1F6 +:10533000F17103118171057F8271710090FC060F7C +:105340000A0A0F06FC3F60F05050F0603F081885D5 +:105350000F17377FFE035F85F0E8ECFE7F03FF89C0 +:10536000037F7F0066321A0FF803FF84664C58F003 +:105370000418840F17377F041885F0E8ECFEFE034D +:105380005F0400817F03FF080083037F7F050081A6 +:10539000F803FF8466321A0F040084664C58F00448 +:1053A00000814F06F1824F4F06F1814F08510431C1 +:1053B00081F1037F043181F1077F0431047F0431DF +:1053C000045104310451043181F1037F041181F14E +:1053D000037F0811047F0411047F04310411043198 +:1053E000041100057F83FF6D7F06FF92B6FE010169 +:1053F000073F0101073F80FCE08080FCE080067FE2 +:10540000823171037F0371813103718E515171714A +:105410005151715151717151517100067F82161FA6 +:1054200006FF816606FF83FE68F8080308E0057F33 +:105430008251310671835131710574825131097184 +:1054400008510086FFFF4E313B6E04FFA1728CDCD9 +:1054500076FFFF0F0F040303060F0FFFFFE718BDD2 +:10546000E7FFFFF0F020C0C060F0F0713151037130 +:1054700085F171713151037185F171713151037190 +:1054800085F171713151037185F171713151037180 +:1054900082F171008B05070F0F05070303A0E0E001 +:1054A00003F084E0E0060703038F0E1F1FF07880EF +:1054B000F0787C3FDCB1B1818103F18361B1B10649 +:1054C00081037187F19191F1F181810671008C80E6 +:1054D000C0A0030707020702060A8004C08403076E +:1054E000190203058601E0F0C8C0800400890307A3 +:1054F0000702070307008004C092E0C0051A8585F3 +:10550000C5610000E0D881010306000003F703D75E +:1055100005F705D782F7F706FB82D7F706FB04DB12 +:1055200084F3FBFBF707DB11F700816006F08A10BC +:1055300001073FF1081C0C187005F08E90C040EC7C +:10554000001038031FF86181818F0387818C03F17C +:1055500085F7C7C79C9C058C8B87671F7C7C9797BA +:105560009CFCF7F10009008D8000400000800000E5 +:10557000010002000105008D1038100000558899C7 +:10558000BBAA22CC4418B100A5183D1A3C7E6A562D +:105590004218BC583C7E6A56427E427E6256627E0B +:1055A0003C7E427E6256627E3CB1B191F1F1037461 +:1055B00085B1B191F1F109748221C106748221C1D2 +:1055C000008C00000304090911111EFEC0800400B4 +:1055D00090183C7E7E3C1800008060183C7E7E3C2B +:1055E0001810C181F1078183C1C1F10581008401D7 +:1055F00001030303018503C0C0E0E003C082E007AC +:10560000050F840E07F0F803E887C818F09191F1B0 +:10561000F1037188F16161F171C1213103F18131CF +:1056200003718A3121317171A1A12121C100A00032 +:105630000103070F0F1F1F00F0E8DCB8B0E0C0FF48 +:105640000F1F3E7C7CFEFE008F1F3E7C7CFEFE0416 +:10565000B181F103A104B181F103A1811103B181F1 +:10566000F103A104B181F103A100900003070F0F22 +:1056700007071F000080C0C0F0E070030E870F070F +:10568000070301381C030C869CD8F01181F10381BB +:10569000843131111103818531316191F104B18A75 +:1056A0009191819191F1F1B1A1A100AF01030103A9 +:1056B000297F7F29C0E0C0E0CA3FC0CA01010301C1 +:1056C00003010301C0C0E0C0E0C0E0C0A1B1A1B1CE +:1056D000A1A1C1A1C1A1C1A1A1A88C03A18EB1A109 +:1056E000B1A1B1A1C1C1A1C1A1C1A1C100840000EA +:1056F0000306030785030000C06003E081C00601C4 +:105700008A000080C080E0E080000020B100A00797 +:105710001F1F070F3F7F7FE0F8F8E0F0FCFEFEF16F +:10572000FBBEFFF7EB7F1FF8030F0FDFFFFEF83024 +:105730000099B19191C121B1B1A1A19181C1212162 +:105740008181989889898668616198056898616106 +:10575000119191111121B1A1B19198C121B2BAA1B8 +:1057600011918111112103A18481918181036185AE +:105770009A988986860361829181066100827F0002 +:1057800004FE8480F7FF0004FE8200EF03F78180AF +:1057900003FE818003EF810003FE31008F918E9E16 +:1057A0008E8E6E1E8E918E9E8E8E6E1E038EA56EBA +:1057B0001E8E8E6E1E8E8E6E1E8E8E6E1E91919120 +:1057C000818161E1819191918E8E6EEE8E919191A8 +:1057D000818161E103819661E1818161E18E8E6E5B +:1057E000EE8E8E6EE1818161E1818161E100921F27 +:1057F0003F7FFFFFFFFFFFFFFEFEFFFFFFFFEFFF0B +:10580000FF05FF837FC7C703EF83FFFFFE300083E1 +:10581000515171057F8351517104738171057F036B +:1058200071827B7903718773737151517171047146 +:10583000825151067184515171310C71827B790C06 +:105840007182317100A03F2E7F6E7FFFDEFAFCEC8B +:10585000FEEEFE5FFFF7DEF4F46E7F6E3F3F1FF754 +:10586000FFEEFEEEFCFC300082B161038184BA6180 +:1058700086A1046186AB68618186BA046184B168DF +:1058800061A1046183A1B16103818CB16181BA61BD +:10589000868186BA6168A1046186A161618181B156 +:1058A000046184B18168BA046184BA6161A1046150 +:1058B00081A100030F857FFFFFFEC303F095FEBFAC +:1058C0001F0FBFC1FDF0F8FDF0F06083C37FFFFF45 +:1058D0000F0F0630008831312171777774740321FE +:1058E0008171097483B7B5B4057483B7B5B4031176 +:1058F000037186717132322177047403110A7103C6 +:10590000B1057483B7B5B4057103B100A0000103FC +:105910000707030E3F40C0E0E060C0F0FC3F1D0AF7 +:10592000161F60DBF6FCD890486806BBD5300081B6 +:105930008103B1848181F1F103B18391818104F10B +:105940008671F1F1177F7403F18571F1177F740689 +:105950001182F1F103B185918181F1F1061104F118 +:105960008371F1F1037190F1F171F1F1717F74F1D3 +:10597000F17171F171715100050083010307040099 +:10598000D480C0E0F0050F1A3735ED7F1FA0F05826 +:10599000ECACB7FEF800C0FC7F03033B0FC0E07027 +:1059A00033B3B7E6CC07361F87EF7DF13FFCE0FC51 +:1059B000CE66198FFC001D3F67C3C3031B60F0B8A0 +:1059C000187C7E36EE361B8FDF7B07E33FDCF8FC6E +:1059D000EEDCF8C7FC041184D1D12121041184D15B +:1059E000D121C105D1832521C104D184512521C1F3 +:1059F00006D182F16108D18361F1E103D18225C131 +:105A000005D1831D25C107D181F108D182F1F104AF +:105A1000D18225C106D18225C100A000012B0E55DF +:105A20005F7D778E347C6BBB7AF43B5DA9A0C0C0F0 +:105A3000F17F1F6EDC1BAE78FAF04008009015B6BF +:105A4000EC7C5FDC1F4FEA78D2D4F0BF7F1B3800BC +:105A50000781818B0381848B8B8181078B8281817C +:105A6000038B058108000481828B81078B038108E9 +:105A7000000C81048B058184B18181B10781068B83 +:105A8000868181B18181B1048100A04063773F7F2D +:105A9000E67FFF0898B8F0FE3CFEFC7F1F3F1C3CF1 +:105AA00098821EFE7FFE3FF13108781000907FF053 +:105AB0007870780EEC78FE3F7FF7FC63373C30005F +:105AC00084B1B1918104F184B1B1918105F105F8FE +:105AD0008AE671F18F818B8B89E671100081F10468 +:105AE0008F8FF87671F18F8F818BB87671B1B1910C +:105AF0008104F184B1B1918104F184B1B191810546 +:105B0000F1048184B17171F1058F836771F10381B3 +:105B100084B1B17171009501033FFF0F000C0E7F3E +:105B2000FFFEFCE0F83CCFCCC8F33F3F03BF88F357 +:105B3000F0F8FCFCFEFFFF5000065182B1B10851A5 +:105B400083B1B15105470851200030510081030352 +:105B5000079C0C1F0F1FF0F8F8FE7CFAF8FE3F8F31 +:105B6000DB919BDFF01FFC7E6FE3E3F8833C50008A +:105B70008BD1D15171F1F17171D1D1510671814740 +:105B8000044D8A1D71D1D4D1DFDFD11D7120009366 +:105B9000D1D15171F1F17171D1D15171F1F77171AF +:105BA000D1D151077187F1F1D1D171717D054D824C +:105BB000D17103D182F1F103710084000010100350 +:105BC00030AB703F78FCFC0C0C3EE330180F033018 +:105BD000301000F1C70F7FFF6E6EDE03061C3830F9 +:105BE0006060C03F78FCFC0C0C3EE1C08003038B7E +:105BF000180C07F0C70F3FFE01061C300007818D0F +:105C00008451747171F4F4747FB4B1B1F103818281 +:105C1000717F0374847151517108818C5174717159 +:105C2000F4F4717F8181717B0471817F037404714D +:105C30000881815103718C5151717151517171F110 +:105C4000F171F1038181B104710474047181F10770 +:105C5000710003FF85F0E0C0800003FF850F07039C +:105C6000010010F10003FF85F0E0C0800003FF8514 +:105C70000F0703010003F105F403F105F40081C1EE +:105C800004DD84C1FFFF8304BB8383FFFF10510049 +:105C9000900078FC7B3233393300387C3810181090 +:105CA0000010410088006CFEFE7C38100008810066 +:105CB00008800871000289058906860D867F863E68 +:105CC0008B094B0C4BE086E087F087F387FF861C3F +:105CD0008B284B084B04BA24BA1BB81F981F893B6A +:105CE0008FC6F8CFF800BA80BA00BA009840864054 +:105CF000867FF87FF8064B06890F8618861F863D3B +:105D00008A3786358A104B38897C898A86FA869F3D +:105D10008AF786938AEFF8E6B810F7DBFBDFFBDF44 +:105D2000FB9FFB0FFB3FF83FF8BFF8A0FBA0FB2059 +:105D3000FB20FB20FB338638842F8B0F8BEF8BEF00 +:105D400086EF86E786F7864F8BC68BE08B7486746A +:105D5000867A8674860CFB3FBFCFFBE4F7CEF79FB5 +:105D6000F7BFF7BFF760FB1FBF30F730F718F71C1E +:105D7000F79CF7CEF7C186067607750B750B750B8A +:105D80007507750F7568869076E07560756075604B +:105D900075F0757875FFF77FF77FFE7FFE3FFE2E6B +:105DA000FE3EFE37FEEFF7EEF7ECFEA8FEE8FEA89B +:105DB000FEB4FED0FE8603071FFCF87003008D0CB6 +:105DC0001F360F0E0000C0E0F83F1F0E03008530A5 +:105DD000F86CF07006008A070D1D0F0703000130F4 +:105DE0003106008AE0B0B8F0E0C000800C8C0800FA +:105DF000832030180600841E1C1E06030083040C3A +:105E000018060086783C7E7F3F0304008D011F0E3C +:105E10001E0F0000F0F000F8F87C030081F003D0C2 +:105E2000813006008A0C1B3F3F1F1E001000100728 +:105E3000000480040082C0C010008A0F040E0C060B +:105E40000402707078060086C03C7E7F3F03040029 +:105E50008D031F3C331F0000F0F000F8F87C0300B6 +:105E600082F0F803F00600890C1B3F3F1F1C00C0A6 +:105E7000C008000480840000060611008BC0700476 +:105E80000E0C060402707078050087061C3C7E7FAD +:105E90003F0304008D011F2F1F0F0000F0F000F8DA +:105EA000F87C030085F0FC98F0F006008A0C1B3F9C +:105EB0003F1F1E00D0C010070004808400000606AB +:105EC00011008BC070040E0C06040270707805007F +:105ED00087061C1E3F3F1F01030097033F1F080B4F +:105EE0001F0700787880FCFC3E0000C0E0F0F0F86E +:105EF000FEC0050089060D1F1F0CC06000040800CD +:105F000003C015008DC06038020706030201383E49 +:105F10003C1806008D03071FFCF8700000183C1F9A +:105F20000E0303008DC0E0F83F1F0E0000183CF880 +:105F300070C0070088070D1D6F6703000108008807 +:105F4000E0B0B8F6E6C000800A0081200300892096 +:105F5000301C0C00001C0E040300810403008F049D +:105F60000C383000002070306020400E0E1E0600FD +:105F700081030F0087F00F0F001F1F3E0300810FEA +:105F8000030B880C00003C7EFEFCC004008580F8FA +:105F90007078F007000401040082030305009530C7 +:105FA000D8FCFCF878000800080000207030602061 +:105FB000400E0E1E05008260380E0088030E0F0F83 +:105FC000001F1F3E0300820F1F030F8700003C7E4F +:105FD000FEFCC0040085C0F83CCCF8070004018436 +:105FE0000000606007008930D8FCFCF8380003032B +:105FF0000300892070306020400E0E1E0500826074 +:10600000380E0088030E0F0F001F1F3E03008C0F79 +:106010003F190F0F00003C7EFEFCC004008580F895 +:10602000FCF8F0070004018400006060070096306F +:10603000D8FCFCF87800030308000040E060C04092 +:10604000801C7C3C1813009803061C1E1E013F3F59 +:106050007C000003070F0E1F7F030078FCFCF88014 +:1060600003008780FCF810D0F8E0060003030C0062 +:106070008960B0F8F870030600200300890C0C005A +:10608000000C080606070B0081400C008862F7F739 +:10609000F3F37939D803DC821C04050083E038BCB3 +:1060A00003FC8578787070400B0003038A63F15914 +:1060B000080004060301010300048088861C3800E0 +:1060C0003860C0800D00AE0406030101187C780220 +:1060D00004060C0E040003070F1F09171F7C300075 +:1060E000033F7F7E3C00F0F8F8FCFEFCE000007C03 +:1060F000F8F800F0F005008710000003CFDB0C0C6F +:10610000008380868005008660C0808101010600D2 +:106110008880C06030002A1F0603C00B0084081C62 +:106120003E3E047F843B3D1D080400822038033B33 +:10613000881B1C9E8FCFCFEF460D0081020A008C7A +:10614000E0E06050302000303000006004F08378E0 +:1061500038D803DC83DE0602070089306A7E7E7C45 +:106160007C6C706005008303070704030A0083C08A +:10617000C09403808400000C1C0C00840301F955BA +:106180000A0082010104819D7F3F1F0C00802000D6 +:1061900080E0CEFCF8FAFAFEFDF9F1610103071088 +:1061A0000103373F7F04FF81FC04F888FCF0C0E066 +:1061B000C092029603FF817F043FF71F0F0707037A +:1061C000C9E0E9FFFF09211DBC74E44DDB6E46CE3A +:1061D0007BF1142509202448036236B7FE7E6B6AE2 +:1061E000E6A22B64200E37694E904499A8A2A9AC70 +:1061F0005548371C03F00CD62DC2298555149249F9 +:10620000891A621CE0021100540050208000A01086 +:106210000044101104400844200410040100080246 +:10622000082240288000001111FF1111FF1111FFF9 +:106230001111A3FF111100001111FF1111FF111114 +:10624000FF1111FF111100001010FF1010FF1010AE +:10625000FF1010FF10101000AFFF1111FF1111FF00 +:106260001111FF1111FF111100FF1111FF1111FF89 +:106270001111FF1111FF111100FF1010FF1010FF7D +:106280001010FF1010FF1010110010801400820C6D +:106290001C050C811E0800817006D88170080088DA +:1062A0001C3636060C18303E0800817006D8817006 +:1062B0000800883E30303C0606361C080081700617 +:1062C000D8817008008263E6056681F30800818E3C +:1062D00006DB818E08008871DBDB1B3363C3F908A2 +:1062E00000818C065A818C080088113373B3B3FB8C +:1062F00033790800818C065A818C0800817103DB98 +:10630000817303DB81710700818C075A818C030044 +:10631000A5FEFCF89080C0F0F0F8F8F0E0C0C0C82E +:10632000C81F070304000307070F07030101000844 +:106330000CFBD1C0E0E003C003E003C0868000FF97 +:106340007F7FFF047F063F861F1FC8C8E0E004F080 +:1063500081F805FC85F8F00840010507810F051F4D +:10636000870F0700C0C0E0C0078004C0811F030F73 +:106370008C07030301000103070F0F073F200000F4 +:106380008B78B78B78B78B78B778B78B78B78BB8B3 +:10639000778B78B8B7119BF011117F0F0F0F0F0F8C +:1063A0000F011110A08E081007024C1F0801190FD1 +:1063B0000C100A1109120113031200140312001128 +:1063C0002203220011320332011030073001103055 +:1063D000073001103007300110300730011030074E +:1063E00030011030073001103007300110390F1024 +:1063F00010200F2EF00F02F00F02F00F02F00F022C +:10640000F00F0E300F02400F15D1C4C1C6FBD1FCF6 +:10641000D100A088368F064C1C003A022803E80FF2 +:106420000E3601310F0C2602200F0C3602300F0CF5 +:106430002602200F0A1C0FA8B60F35B3A8B3ABB3C2 +:10644000AE139146851988198B198E7DC88DCB9D09 +:10645000CE6DD100A088368F064C1C011A011A0F90 +:1064600023100F17100F2F100DA90E1C06F006F0A9 +:106470000510200F5BF00F03F00F3BF006F00F0844 +:10648000D1C8D1D17DC86DD100A08A348F04420912 +:1064900012024612021902103501100210350110C5 +:1064A00002103505103004100410300410041030B0 +:1064B00004100410300A1030F40510300A10300AAD +:1064C00010300B300B32F1300F240930400F1230F6 +:1064D000400F4610200F6810200173B1C9C6A9CD26 +:1064E000CAC60000A0889A03309F010C4C1C3F01D3 +:1064F00008330F31380F373400300F0A3C0F443067 +:10650000400F9E71D072D073D074D075D076D08881 +:10651000C48886188889C48AC48A861A888A8C0A9C +:106520008E8BC48CC48C861C888DC40000A0889F70 +:1065300002339A0711024711021803380B30021078 +:10654000073002100730011107300111023003300B +:106550000210023003300210330331023303310FD3 +:106560000F31033112013103321101310330033095 +:1065700000310330033000310330033A00100F487C +:106580007202740ED40EE4088202840F0730400FAA +:106590000030400F0A10200F0410200771C8A2C855 +:1065A00073C80088338F033302110A11470318039D +:1065B000190B100B110A1600140F0AF23202320FD7 +:1065C00018100F0C320F111502130F1810200BF0BA +:1065D0000610200F0B540F63570F19618C66CE26DF +:1065E000916ACE0000A08F06310813481F0E08E301 +:1065F0000B300F04330F123103300F213000330200 +:106600003004B00F171800120372007100730F13DB +:10661000F00F14F00F2C510F21C00F08BA0F09050D +:10662000916788678D089149853B8C008F08311CE4 +:106630000F10320F0133083600320F0B300050308C +:106640000F003100300F1B310050340B310A310F75 +:106650000C1C0FF452831387138C3483058C3684FF +:10666000378C1791388108883A840088328F071C4C +:106670000F0B3202330B300B30023705B1300230D2 +:106680000B300B300B3006350F113704370230005A +:10669000370F0C150014000F0B580F24620F63877F +:1066A000087D0F06C0B4A486ACB78407C9888C09DE +:1066B00081008F0C070C0111001701100B100B103B +:1066C0000B10011300120F54300B30920011011106 +:1066D0000130920110053092011004329101100432 +:1066E00032910110033490011001370F1D580F092A +:1066F000C00F03C004580F8277CA77CC88C279A82C +:106700002C824DC5008802308E9B331C0F1711015F +:1067100010021001110F4B310032003200319F1A6C +:106720003290329F0D3C0F45560F39560F48E1CA43 +:10673000F4CA66CA68CAFACAEDCA008802308E9BDB +:10674000361C0F23100F171F0A0F179130063093B6 +:106750003006309330063092310631923006309355 +:106760003006309132063203F00F67F007F002F086 +:106770000F46F00F13B18641CAB7A6BD8600883414 +:106780008E9B360F2410083209320A31023006314E +:106790000B30073002300F179F3E32D632043040A4 +:1067A0000F09F00F3FF00F4D10200F0410200F04C1 +:1067B000102007D1C80098339F03350F24300035CF +:1067C00006360834083401F63508330A310B300533 +:1067D0003203973003973102963202953302943593 +:1067E000019337003C04720F91800F1880037106EB +:1067F000D302800BE303820484C095C086C097C097 +:1068000088C0009F08333000360030001005300B80 +:10681000300B3106310231001200330231120034E4 +:106820000230120035021200360310003708340718 +:106830003501320131053201310F00120F241C0FD6 +:1068400006C20F1FF00F04F00F48C20F3BC1C6C1B4 +:10685000C8E1CE228AE2CE8583A6B178C168CC9900 +:10686000CC0088338D3588351502130F17D103D628 +:106870001103180A100B100615021003130311035D +:10688000120213031101150310001703190211025C +:10689000150F181D0F30F00FB3638A65876789974E +:1068A0009179C6698B7AC67BC67CC67DC6008F0C83 +:1068B0001F090812091102160010023003120331D9 +:1068C00003120232110012023303100234110011BC +:1068D000013505360532013114003202301400331F +:1068E0000130130233011204320111063007300562 +:1068F0003003320331003B0F20F00FC3D1C5D4C5A4 +:1069000086A2EACB0088349F070F3E3320600050F8 +:106910002036200420342006203220082030200396 +:106920002203200F0D22002202200B30200A3121E9 +:1069300007200A20300520022034200032002032B7 +:106940000FF4D1D183A2338473A985CB97C077D0BC +:1069500089CB7BA90088329D91359A1500150F17B8 +:1069600035150A110A110A110530011000100B101B +:106970000F07100F321001A40F05350112010F206F +:10698000F002F002F00F206300590F04D00F03E073 +:10699000045203560F0F550B30400F0EE1C5CAC508 +:1069A0005DC4008B18200706070C011001170110A9 +:1069B0000B100B1001360210280F103500100F239A +:1069C000100F0E3201320F0D1029011039011A0F6C +:1069D0001D5B05D00F03E00F08550F4E550F1EC766 +:1069E000C878AAFAC8008F0634891C0F12110A143D +:1069F0000110001002100510001002100512021004 +:106A000000100010021102100010001102100611F7 +:106A100002100611021001100011001201100612DE +:106A200001100610001001100212001003120012D3 +:106A30000F1013041A00100F55DD05ED07C70F489E +:106A4000C00F04228F22911881089019815B892B35 +:106A50008C0088338F071206120F17100033003393 +:106A600000100F0C2202220F0D3204320F0B100304 +:106A7000A203100F02320F1C120010021000120F9E +:106A8000195206570F7E5206570F19D1CF22917413 +:106A9000C574C87AC57AC82C91DDC1008F063689C5 +:106AA0001CEC0F0C13001205E60F0F1701100F0D51 +:106AB000170F0F170F0F170417011C0F05BA0F49F7 +:106AC000B40F4FB80F0E74C275C2B7A9078C4886B1 +:106AD0000982008F08360F104006600150026001E5 +:106AE000500F1E40086004500F1F500060066006E3 +:106AF000500F0C500A6001A80E1C0FF4F1C08486E0 +:106B0000858187A0F7C589A18AA6FDC0008F0834BA +:106B10001C00B002B002100B1005A004100B1003F3 +:106B200014021003B006100B1005A0041001100889 +:106B300010011404100110B205100B100B100B10F3 +:106B40000B100F02A000A00F0011021C0F3AC40F7F +:106B50000B5C0AD80AE8018E0F097407710B820CCE +:106B600083028700008802308F071002180516057F +:106B700010340610300230001301103002300310C0 +:106B80000110300F151030023113011030023102A4 +:106B90001001103002310510300231051035051A90 +:106BA0000F2D1301160F326401640F09D00F03E09B +:106BB0000F59640F101287128C188618911A91DBE6 +:106BC000C31C91CDC2008F0834001B0F171C071483 +:106BD00008130813091200C60112001602110A1147 +:106BE0000B1407100F0C120F121C0F73570F6903B1 +:106BF0008783CB73D184CB94CE74D1558795CE67E0 +:106C0000C168C13B910088358F0336130012001311 +:106C10000F171300120017001200130010001000CD +:106C200010001000100010011000100010001000E3 +:106C30001000100F0C1000100010001000100010B9 +:106C400001100010001000100010001000130012BE +:106C500000170012001700120017001200130F1780 +:106C60001C0F34F00F03F00F40F00F03F00F36D17C +:106C7000C671CAF3C683CAE7C697CAFBC68BCADD0C +:106C8000C67DCA008F08361501120B100B100B10B1 +:106C9000011501120B100B100B1001150114091234 +:106CA00009110A1100150113001305110211051134 +:106CB0000211051102130113041101130411011330 +:106CC000001200110113000F7BD00F03E00F4A30B8 +:106CD000400771C171C571C996AE99829986998A2A +:106CE000998E00070C038F08011A0F1C1706150157 +:106CF00011031401110413011105120114031101F0 +:106D000015031001110013051101130F0D1A0F12B5 +:106D1000100512C6120F19540FC664843687679087 +:106D200088A28B820088338F071C0F0D120011037D +:106D3000100F0C170B100B10041101110F0F130083 +:106D4000120F1B1400100514001003A116051C0FD0 +:106D5000B9540F2605810587058E0881088709919A +:106D60001B891B8B1B8D1B8F1B916CC66DC6008FE7 +:106D700004338B12061506150615001002100012BA +:106D80000F24120010021000120F03100F0510063E +:106D9000100F1D1002100F0E12021002120F2555B7 +:106DA0000F09530F1CF002F00F0B530F1D550F1955 +:106DB00061C472C473C4638A6581658E67886981A2 +:106DC000698E7BC46B8A7CC46DC4008F08331C0F32 +:106DD0000AC401D40C100DD4C40F0CC401D4001487 +:106DE000011A011A011A03130310031303100811E7 +:106DF00000100E110A11031C0FF462CE03840387E6 +:106E000063CE048107847ACF7AD10B817BCF7BD18B +:106E10000C810C87ECCFECD1EDCFEDD10088338F16 +:106E2000071C0F1710001B0119031804180319037E +:106E30001904180418041201130411031204100396 +:106E40001309130F0E1C0FF471CD81CF72CD82CFB9 +:106E500093CE94CE8682368B0088358F03361C0FF6 +:106E6000171206120F0A1108110F0DC60F1A12067B +:106E7000120F241202160FF4E1C51282828C8CAC20 +:106E80001C91EDC50088358F03361301160F17FCD2 +:106E90000EA202A20F01180F381204F4100010F411 +:106EA0000F171C0F646509540F06650F5581C9F64D +:106EB000CCE7CFF8CC8DC90088358F03361C0F3155 +:106EC000FC0C9C1198110014901401109810009063 +:106ED0001098109F0312941C0F171B000FF441C150 +:106EE000E1CA0284EDCA0088358F07160014E60B4C +:106EF000100B1005100110011000110012011001FB +:106F0000130012041005100413001200C101130035 +:106F1000120410F5100410051001D1001005100422 +:106F200017041700C1011005E209100B1004100529 +:106F300011D20010051C0F05BE0F31BD0F0DC00F83 +:106F40002DF00F25438268CA6ACA6BCAFCCE6DCA8F +:106F5000FDCE008802308F03361200110113041198 +:106F60000A110A11071407340113027209820F1261 +:106F700011321001130F251204130F1815011300FD +:106F80000F7BD00F03E00F2D530053005300520F1F +:106F90000581CB92CB34C86AC19A837AC69A889A03 +:106FA000CB9A8D9AD06BC17BC68BCB8BD000070C54 +:106FB0008F0C011A0F27170D100F19170E100F0144 +:106FC00050170F0C170B100B100418010F03D00FE4 +:106FD00003E00A540F90720F1583348384D13586F1 +:106FE000358885D1368386D1B7A8B78BB7AE97D110 +:106FF000388398D13986398899D13A83008E368F73 +:1070000001B500B50F181902E90F0D1000170F0B8D +:107010001003140F0E1100100F10120813021F0797 +:107020000F1DB60FC03690A7824786378938903B30 +:107030008E008E368F010F0BDB07140813C6011A62 +:10704000021205B002120A110A110B100B100F27C1 +:10705000100F131C09F004F00F14F00C580F2757F1 +:107060000F69028052835583078039843A860B80EA +:107070003B883C8A3D8C008F08361CEC0F0E160FA7 +:1070800010160F0C10001008100F0C180F0B100F1B +:107090000C18011C0F05BD0F00510F77540F336101 +:1070A000C2A4AB0490A68B0690F7C5A7ABF8C5C8E1 +:1070B000C80890F9C5C9C8A98B4A820A90EDC8EDE5 +:1070C000CD008F0C1C0F183308330B300B300833F6 +:1070D00008330A310A3108330833083605380836D0 +:1070E000053614001B00160F5972007200700F0E47 +:1070F000F002F002F00F5B83A6838A6DC17DC58D1F +:10710000C9008F05348A1202167209820F14130106 +:10711000160F241803B80F00100A110912091406DB +:10712000160517031900160F64F00F7F81C632C3CE +:1071300082C6128EA4A8A9A3008803308A368E15B1 +:1071400000150F241500150F0A100A100F17100351 +:10715000100010031004120F02100A100F171C0F5A +:10716000555300550F04C0005406550F5C61C6719D +:10717000CD64C174A865C196CE2881288398CE8934 +:10718000C18AC17AA86DC67DCD0089348F02361BB5 +:107190000F251B0F3211061309120A1101120610D6 +:1071A0000113091309130814031200180F4BF00FF1 +:1071B0009891C192C1128993C1A5A31983008F0828 +:1071C000360F2A160F2A1109110F2A160F1D1C0F30 +:1071D00030F005F00F64F005F00F3071C6F1C9040E +:1071E00091AA829BC09CC09DC0FDC67DC900883409 +:1071F0008F071501130F0CC804130011051300119C +:107200000F42D803180F0F1A0F0C1A000F03C00FEC +:10721000B95E0F08128194C685C6B5AE96C657846E +:107220005A841C9100070C8F0C01380F1B250F3856 +:107230003000230130033095310330953103319311 +:107240003204319133043705350F0D15001509D877 +:107250000AE805540F4F540F13C509580F0E8F003D +:107260000316C64CCA008F083600320432023104BD +:1072700031043004300F1030043004320232023A4C +:107280000F32300A3208320A300F171C0AF00F246E +:10729000F00F22F00F8061C0128CE5C086C8B6B135 +:1072A00087C888C8E9C01C8C0088358F070138055D +:1072B0002408220A200B200F16200F03300A312049 +:1072C000082030052005302003200320310A300F2C +:1072D00003200A2208240636021C0F0FF00F24F0A8 +:1072E0000F1B520F11F00F32F00F0CE1C071D17271 +:1072F000D173D167CD7BD17CD1EDC07DD1008835F4 +:107300008F071B0B100B100E1101110F1F11011114 +:107310000F1C10011101110F1910041101110F0D93 +:107320001B000FCF5B00660BC882A2229183A6844C +:10733000AA85AE86A287A688AA89AE008A2F048C69 +:1073400014001B0015001400140411001305110093 +:10735000120F27100A1109103109103020091030BE +:10736000200910310A11001009100F181B0F075BBC +:1073700000610F0A300F1BF001F001F00F0D100F2C +:107380006275C5A6C276C577C5008C359991998876 +:10739000360F5815001535003B003525002806220C +:1073A00035003B00351500150F0F50061C0F74F00B +:1073B0000F6F94A62A869B91ECC0EDC0008C359986 +:1073C0009199883512011201120F4B1130013010C2 +:1073D000300130113221322135213221322F0A3F42 +:1073E0000A1C0111001200110F0C13001200130FE0 +:1073F00034D00F03E00F3FD00F03E00F37E1C1E2BD +:10740000C1ECC1EDC1008C359991998835120015F8 +:1074100000110313081308130813081308150011AB +:10742000031F0005351005350623301006223107ED +:107430003310073308130F193100331C0F4E30403F +:107440000F0030400F0030400F0030400F02CA0FD5 +:1074500009C20F2562C263C299C12A882A8A2A8C6E +:107460002A8E2A909DC1008A338D358A1500150F0A +:107470003610001009120A10041005100F3D100FED +:1074800003AC0C1C0F1EF003F003F00F23102009B7 +:10749000C60F0530400F28F00F25FBC1FCC1FDC110 +:1074A000008A368D368A1A0A110F2611001600102E +:1074B00007120F0F10051004109510001002109500 +:1074C0001003129410031294100310001093110271 +:1074D0001100109410021196100211961002190258 +:1074E0000FA6530F12304004530F0DC3CF9584697C +:1074F000C14BC600070C8F080802110010001000D5 +:10750000100010001001100B100B1002100D100FC6 +:107510000D100F0710021100100010001004110AC6 +:10752000110F241B0F161C0F26C00F09CE0F11C6FA +:107530000F0FC80F13C40F11C604C1C161CC16814F +:1075400018821C84008F0802301C0FC1AB0C1C0F6A +:107550003CF00F27F00F27F00F27F00E61C1E2C1BA +:10756000FDC6FDCAFDCE008802308F071C0F17181C +:1075700009120E1100110F0D1302100F141100113A +:107580000210071002110610021130031000100241 +:107590001131920511329105113390120112340FFD +:1075A00020540F0AD00F03E00F32640F4BF1C5F1E6 +:1075B000CB168516871689168B168D168F1691C8D1 +:1075C000C68DC18DC7008F0798361C05B00F1231CC +:1075D0000431033194310431923106340F1B100A07 +:1075E000100F1D300595309B309B30953C06F00FF9 +:1075F00033F00F24560F2CF00F23F00B008F079859 +:1076000036001B0F24190F2A190F2439029F17392E +:10761000120FF442C6B6838688B68D008F0C110017 +:1076200014340511300230061030023006103002DA +:1076300030073002301100110F2C1100170F2611E6 +:1076400000130F1D1100190F25C60F19200F04106C +:10765000200F04100F6312831288128DA9B1DAC1B2 +:10766000DBC1DCC1008F08341107120F0B2105218B +:107670000F27290F19180F10160F1B1303120010D4 +:107680000F08530B300E5209650BF00E20018001DC +:10769000800C400170017001650F13F00B100F0793 +:1076A0005300590F02C2008E0372C973C9D4D0753A +:1076B000C976C978C979C9008F083506120F14C276 +:1076C00005100B10A802100B190210001072100503 +:1076D00010018206100B100B10001504100B100B7C +:1076E0001007100F17130015F17F000F0C8B0F14EC +:1076F000C703F00365005500100F346500550030D6 +:107700000F2B38CA0088358F03350F241001100164 +:1077100010011001100F24110111001101110F248B +:1077200012011201120F241C0FF491C581CAE1CF7E +:10773000E2CF84A2258787A2278C29878AA2ECCF53 +:107740009DC58DCAEDCF0088368F0708100B100B32 +:10775000100B10021502100B100B100B100B100564 +:10776000160B100B100B100B10021502100B100B48 +:10777000100B100B1002190204740F868404840F7E +:1077800045028C029185C0F5C5F5CA85CF088700F2 +:10779000070C070B88120912491F1A05100212095B +:1077A0001209120913011601110A110A110A11090D +:1077B00019001001100F211C0F0E10200F08660F6A +:1077C0006F650F37F2CF94C5078CB791B98C2CC574 +:1077D0000000A08A2B893603300C4C1F1700B00321 +:1077E000B10F1C1201170F10100A11051601130F0B +:1077F0002260001C0FF471C51791B9918AC51B8CCA +:107800008CC5BD87FDCAFDCF0000A08A03302B893F +:10781000360110011006411001104612011A011A1A +:1078200001170F2412011000110111041001100B97 +:107830001104A004100B100312011201120F2418DE +:10784000C2100F275309D909E9055301660F2C30DF +:107850000F40830061CAE2CF2691E8CAFCCA00004B +:10786000A08B362B8D0C4C1F170F2410011001110B +:10787000031006110210061002110210011102116C +:1078800009130714011003110A100F0E17C2110F6C +:1078900016D00F03E00F0ADD05ED0F7D71CA61D12F +:1078A00087CA888788919BC5ECCF0000A08B368D56 +:1078B000350C4C1F170F121308120110F210021092 +:1078C0000710021007100210071002130311021014 +:1078D000B204100210031002100210071002100769 +:1078E000100B10071701120F5E780F0D880F24661A +:1078F0000F2091CA74CE67CC6A85EAC9FDCE00001C +:10790000A08F06350C4C1F170F1713F3120F0C1214 +:10791000C500120F0A11011401110F241C0FF4F1FC +:10792000C5F1C9F1CC3291A3A6A4B196CC98CC09EB +:10793000867DCC7DCF0000A08B368F020210041014 +:10794000024210041042130417041704130F2410EA +:107950000A100F0A100A100E110110011102120470 +:10796000120F0FA100A10313011001130F286605C8 +:1079700055650F5F55650F06660F19E2C567CA7832 +:10798000A1ECC50000A08B368F020612024612023F +:10799000180318031702110F2410001601110F0C01 +:1079A000190F0D120C110A130815011201170F28D7 +:1079B000650F1510200F32300F0130400F0030409E +:1079C0000F2AB1B1B4AA348D1587E6CA678EB88A7A +:1079D000698F6B907DC08DC5002B882B8E33051170 +:1079E0000A110A1144051603180DA10F08140F4EB1 +:1079F00013071109120813021900110F08F00F32B2 +:107A0000F00710200F32F00F4BE1C072C073C0744A +:107A1000C075C06790698EFCC5FDC50001A08F01CF +:107A20003535051001100810011002451001100233 +:107A3000160110021601100B100B100B100B100288 +:107A40001601100B100B100B100B10041401100278 +:107A5000190F1A1C0F86D40EE40F05660F2DE2C510 +:107A60009287E2D0968CFBCE00070B88970C002BF8 +:107A70000F0B2102210021012102210520022109F1 +:107A800021092102200320002102210921092109C5 +:107A900021032104210B230A210F012000200D24A2 +:107AA0000724052B01C10F09560F74CA045600564E +:107AB0000F2DF1CAF4C8F5C7858F6682F6C6E6CBEE +:107AC00000970836220F24290F27290F27290F2472 +:107AD000200129007D0F08D00F03E00FB815828523 +:107AE000A795ACB5B1F8C5F8CAF8CF009036903676 +:107AF000903690360F24210920002107210121060C +:107B00002102210521022206250922052002210544 +:107B10002101210921092109200A2104200A21A685 +:107B20000222062C0F58F008F00F13F00F28F00F68 +:107B300024D3C7D3CAFDC8FDCC00903697070F24C5 +:107B40002001200120012001200F182008200522FB +:107B50000F21220F02200A20022102210F062005F8 +:107B60002C0F315A0F215300520F245A0F30F1CAF3 +:107B700093CE94B1F6C786CAF8C788CA9A919BCEAD +:107B8000FDCA009036970336011000130110031050 +:107B900006100310061005150220011601200B2007 +:107BA0000F082000260221002205210121062101C3 +:107BB0002006230F02210923022102210121022193 +:107BC0000120032104210A210926D2220F1B1020A3 +:107BD0000EC30F7B30400F1FC2041486F5CFB5B122 +:107BE000F6CFEDC60090369703360F242001210210 +:107BF0002101200F0B21012201210F0B2001210265 +:107C00002101200F0B21012201210F0E2102210F42 +:107C10000D2C0FF4F1C784A285C895CE89A28AC81D +:107C20009ACEFDC70090369703360F27290F2429D7 +:107C30000F2A290F242C0FF4F1CA3682B6A7B6AC4E +:107C40003691FDC0FDC5009708350F0B210A220FA4 +:107C500001200220062109220F03210B2103220407 +:107C60002102220A210A20022005200421032104E6 +:107C70002201210F01200A21092F000FF4F2C492E2 +:107C8000CB8380648688CC89C28BC70090369707E7 +:107C90000F2420012502200F21A20C200322012203 +:107CA0000F17200125002000200F242402240F316B +:107CB000580F79520F1E81CBE1CF97820788978C9E +:107CC0000090369535942901200F17200E260F2796 +:107CD0002201240F1A2000200F1DA001A00C290151 +:107CE000200F23520F65570F18D00F03E00F04F138 +:107CF000C5118CB5B1E6CBE7CBB883B888E8CB002B +:107D0000970C970C002000290F1A27F10F2520004F +:107D100027A106230926002103250023022203238D +:107D200002210324022300250A220923002C0F0527 +:107D3000570FD771CE71D172CE72D1D3C073D184A7 +:107D4000A274D1158775D176D177D178D1009708F3 +:107D50003502290F1A23012001200F1A23012001C7 +:107D6000200F1C2101200121012008230F0F2001D9 +:107D7000200F0A2300277C0F01D30F00E30F19C443 +:107D800008520F84B6A2568687AA8AA6FAC9FACDE7 +:107D90009DC59DC99DCD0090369707041605100816 +:107DA0001100100B100620071100200F0B140F0DEF +:107DB0001203140B100B100C1104110F0A160F0CE8 +:107DC0002C06CB085410200F0C5303640010200F16 +:107DD0000B640F125802640BC4076400530F19544C +:107DE00030400F0785CB97CB7BCA00903697070FA3 +:107DF0002424022902240F172101240F0E9F17208B +:107E00009B219A229923982C0F46610F3D610F4BBD +:107E100041C7A7C40090369703360F2420022A0AD0 +:107E2000220B200B210B2002250221072002200714 +:107E300093210694200694289F232C0FF4F1C799D0 +:107E40008299876DC06DC50097033690360F0E205E +:107E50000320052003200520032003200020032009 +:107E600003220320032203200321042003210420F2 +:107E70000321042003210921092102219102220169 +:107E80002192289F00209F172C0FF4F1C08580F7C6 +:107E9000C647CC8A80ADC70090369703360F2420A2 +:107EA000002000210021002000200F1720002000CA +:107EB000210021002000200F172590259F292298BE +:107EC00024932C0F18530F2D5200520F11520052B1 +:107ED0000F20530F2891C6B3AA85C689C6BB8A9DB9 +:107EE000C600903697033602B003B2210DA002A15E +:107EF0000F032A0B200B20012302230B200B200150 +:107F00002303220B2001952002200195200022014D +:107F100094210220019421059322059223059128A2 +:107F2000012A00200FC7610F01C4008E0371C571C3 +:107F3000C872C572C873C573C878C579C579CB7A5C +:107F4000C5AAC87ACB009708360F74200B210A22E5 +:107F50000F122C0F172C7E0FD18C0673A273A6D391 +:107F6000C87BA27BA600970501303629012601B106 +:107F700001B00F18260524072209200B2005A101B6 +:107F8000A00F042504270225042203200321052035 +:107F90000F04A001A00F032C0F06650F15650F1528 +:107FA000650F37610F0AD50DE50F0DC1C261C461C0 +:107FB000C673C275C21CCE00970C00390039312E31 +:107FC0003020313938362E30382E3331FFFFFFFF65 +:107FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:107FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:107FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:00000001FF diff --git a/Sega - SG1000/rtl/roms/BombJack(32).bin b/Sega - SG1000/rtl/roms/BombJack(32).bin new file mode 100644 index 00000000..155dc6cd Binary files /dev/null and b/Sega - SG1000/rtl/roms/BombJack(32).bin differ diff --git a/Sega - SG1000/rtl/roms/BombJack(32).hex b/Sega - SG1000/rtl/roms/BombJack(32).hex new file mode 100644 index 00000000..74aa2418 --- /dev/null +++ b/Sega - SG1000/rtl/roms/BombJack(32).hex @@ -0,0 +1,2049 @@ +:1000000031FFC3ED560150C3CD467A212B00CD7888 +:100010007AFD2103C02100C001C003AFCD507ACDCD +:100020008B73F33E92D3DFFBC36C0001037603FFB7 +:100030000EA2024F0BC2292B08D9DBBFA7F2510039 +:100040002100C0CB462003CDB86F2A04C023220470 +:10005000C0CDB806D908FBC93E0132123DC93EFFEA +:1000600032133DC33B2BFD360030ED4531FFC3CD90 +:100070008B732178002201C0212B00CD787A21BC1E +:100080000501C00011400ECDF87A116405CD5A7AF1 +:100090000602CD8D7A2108C07E34FE18200236007B +:1000A00026006F118C051911402ECDA007110800F4 +:1000B0001911802ECDA0071108001911C02ECDA056 +:1000C00007CD7F0730CF212C012201C021003B3E0C +:1000D000D0CD0E7B3E873210C176060221003BCD8B +:1000E000977A21BC2111000001C807CDF87A21BC04 +:1000F0002111000801C807CDF87A21BC2111001098 +:1001000001C807CDF87A2100383E20010003CDE96F +:100110007A117C20CD5A7A2100203E90010018CD22 +:10012000E97A210020CD6E01210028CD6E01210049 +:1001300030CD6E0121D22911001801E007CDF87AE7 +:10014000216601110C38010800CDF87A212D3811F3 +:1001500056C00606CDBD7A2133383E30CD0E7B0623 +:1001600002CD8D7A185648493D53434F5245E53EDE +:10017000D001C000CDE97A3E32014000CDEE7A3E9A +:10018000B0016800CDEE7A11BC29011000CDFC7AD7 +:100190003EF0016001CDEE7AE1010803093E200145 +:1001A0007800CDE97A010600CDFC7A3EB00112005C +:1001B000CDEE7A3E70010F00CDEE7AC90150C3CD6D +:1001C000467ACD7F07F5CDCF04F130F6C2CC0321BE +:1001D000B0042201C02164C07EFE01CA5F02FE029B +:1001E000CA6F023E017723773E053262C021B20218 +:1001F0002201C12127C03602210EC036012160C074 +:100200003618233601232336012166C00118003E2B +:1002100001CD507A1104002124C0060C36C01910FB +:10022000FB215FC03600210DC0CBF6CD860C21032B +:10023000C13A03C1C6803203C138422137150103D8 +:1002400000110638CDF87A1180C02125380606CD78 +:10025000BD7A2159C03600210DC0CBF6C3BE033E86 +:10026000027723773E043262C0211203C3F0013EBD +:10027000037723773262C0216E03C3F001213A1560 +:10028000010300110638CDF87A11A3C018BC3A1C3E +:10029000C02A01C1BE200F233A1DC0BE20092B0178 +:1002A0000400092201C123237E3209C0237E320AC1 +:1002B000C0C95E78000090C60002A8060008A60625 +:1002C00001004006000144060100544A0102764A3A +:1002D000000052E8010318E800001ED0010834D0E5 +:1002E000010046880108608800003888010052E853 +:1002F0000102A8E8000044E8010120B200092074CE +:100300000008222C0108302C0000182C01000000ED +:100310000108A878000014780101262E0108300891 +:10032000000814080100369401028094000014941F +:100330000101205E0108805E0000804600086C30EC +:100340000108A8300000A87A00025A7A010130E8BA +:10035000000314E8010024A8010858A8000070E078 +:1003600000024E3201085832000000000002606EA8 +:1003700000083C9001036A90000072B60102A8B622 +:100380000000A808000814080101244C01022E6E88 +:1003900000023E6E01004E5E00085C5E00006E16BC +:1003A0000108A888000214E8010324A60108664891 +:1003B0000008A8E800026AE8010000000008CD5A21 +:1003C00004CD7F0730F8C2C600C36C00F52100C021 +:1003D0000154003E00CD507A215AC0016603CD5031 +:1003E0007AF12159C0CBFEFE032802CBBECB862179 +:1003F00027C03602210DC03600210EC03601216013 +:10040000C036182336042336052336012A57C07D0B +:10041000B720032101012264C02100002257C0211E +:1004200066C00118003E01CD507A117EC0215BC02C +:10043000012300E5EDB0E111A1C0012300EDB021E1 +:1004400024C0110400060C36C01910FBCD860C31F7 +:10045000FFC3CD7C06CD5A0418F52159C01109C03F +:10046000CB462803110BC0CDB407CD0C16CDBE1D55 +:10047000212BC07EFE063E0620023E0D77110400B1 +:10048000212FC0060A7EFE092810FE00280CFE0659 +:100490003E0620023E08771910EB21FDC07EC68083 +:1004A00077380D211CC011003B013800CDF87AC906 +:1004B0002150C011003B060EC5010400E5D5CDF862 +:1004C0007AE1D101040009EBB7ED42C110EAC93A63 +:1004D0000AC0B7210DC02003CBAEC9CB6EC0CBEE96 +:1004E00021FEC034CB4F200135CB57C87EFE03C060 +:1004F000210DC0CB66CBE6C82157C036012336019B +:100500000602118539EBCDBD7A2109C07EB72807D7 +:10051000F1F13E01C3CC03237EB72007210DC0CBF0 +:100520008E18E63A0DC0CB4F20DFCBCF320DC0CBBB +:100530004E3A57C0201ACB5E28CFFE01280DD601B7 +:100540003257C02158C07ED60127772158C018B035 +:10055000FE3228F7C6013257C03A58C0C6012732CA +:1005600058C018E7036B05760581052C3908C8C902 +:10057000CACBCCCDCECF4C3908D0D1D2D3D4D5D65E +:10058000D76C3908D8D9DADBDCDDDEDF90909090CB +:10059000909090909090909090909090909090905B +:1005A000909090909090909090909090909090904B +:1005B0009090909090909090909090900203030370 +:1005C0001F0F030300001F0FC3E307060000E0F046 +:1005D0003030303000000000000000000000405FBC +:1005E0007F7F646E0000030347CFDCB80C0E0E0E55 +:1005F0000C1C1C1C00000000000000003F1F030337 +:100600000F0F0F1BEEFD1C180FDFFC1830F0E00081 +:10061000C7E3E160071E3CF8F0E0E079FF60607F2F +:10062000DF0F0FCEF0E0E0C080000000183C3E3746 +:10063000736361E100000000008080C01B1F3F3732 +:1006400071E0C000181C1FCFFC7F070060E0E0C114 +:1006500007FFFFFF383C7CFFFFF8C000FC3830C0CC +:10066000000000000001010303070E1CC0C08080D1 +:1006700000000000C0E06070383C1E0FFD7E00B737 +:1006800020192100C0CB4620F32A06C0232206C031 +:100690002104C07EFE0138F1AF77C9010001CD46CB +:1006A0007AFD350020F52100C0CB462804CB861802 +:1006B000D8CBC6CD9A7318C4110000AFCD7307B064 +:1006C00020713E01CD7307CB572802CBD3CB5F28D7 +:1006D00002CBCB3E02CD7307CB4F2802CBC3CB67F7 +:1006E0002802CBE23E03CD7307CB572802CBDBCBEE +:1006F000672802CBEA3E04CD7307CB6F2802CBCA32 +:100700003E05CD7307CB6F2802CBD2CB582802CB46 +:10071000EB3E06CD7307CB6F2802CBDACB772802EE +:10072000CBC2CB502802CBE33E07CD7307B02803E2 +:100730001100003E07CD73074FCB11CB10CB11CB6F +:1007400010E63F28015778B72801582109C072CD1B +:10075000530773E5AF47ED674F216307097EE12338 +:100760007723C90001040008090C080203060200EF +:10077000010400D3DEDBDD2FE60F47DBDC2FC9CD24 +:1007800089062109C07EB73E012013210BC07EB728 +:100790003E03200A2A01C02B2201C07CB5C037C904 +:1007A000EBCD237B0608C5010800D5CDFC7AD1C16D +:1007B00010F4EBC9210EC035C036012105C17E3DC4 +:1007C000200C3A10C0D60138033210C03E05772104 +:1007D0000DC0CB7EC27B0BCB46C25E0ACB4EC2F5B0 +:1007E00009CB76E5D5C48E02D1E11AB7C2D709CBC1 +:1007F0009613E5D5210DC0CB76C48E02D1E11ACB7C +:100800004FC27809CB5FC23A092A1CC02220C03AE5 +:100810001EC0C6043222C0211CC0EB1A67131A6F17 +:1008200011080819CD831F210100FE5D281CFE5B05 +:100830002818FE5E2813FE5C280F012000B7ED4249 +:10084000FE5F2806FE60C236092BB70120003A1C65 +:10085000C0D61838091804D60838030918F93A1D03 +:10086000C0D60838032318F9E5CD7D0FD119E5214D +:10087000603819EBE1D5E5D5010200CDF87AE10148 +:10088000200009EBE109010200CDF87ACD6F0FD10C +:10089000E50100007E23BB20047EBA2804230C1847 +:1008A000F32166C0097E3600FE02D1204FD5160125 +:1008B000CD880FFE01D1201034EBCB210600095E5C +:1008C000235621EC14CD9E0F215EC0343E20CD5F17 +:1008D000203E8F3210C106023A10C0B720103A5F96 +:1008E000C080FE1128123006325FC0CD0A1121608F +:1008F000C035CA7012C336093E1018ECE5D5C516CE +:1009000002CD880FC1D1E1FE02280BD51601CD889A +:100910000FFE01D1280E3E10CD5F203E8E3210C159 +:10092000060118B434EBCB210600095E235621ECF6 +:1009300014CD9E0F18E0CDF60FC921FFC0347EFE06 +:1009400004201336003E8C3210C1211EC07EFE20D2 +:100950003620200236A0D53A1CC0C608673A1DC012 +:10096000C6016FCD831FFE1BD1CA0908FE2ECA091E +:1009700008211DC03535183C2100C1347EFE0420FD +:100980001336003E8C3210C1211EC07EFE28362850 +:10099000200236A8D53A1CC0C608673A1DC0C60F4B +:1009A0006FCD831FFE1CD1CA0908FE2ECA0908217B +:1009B0001DC03434D53A1CC0C610673A1DC0C608E5 +:1009C0006FCD831FFE2ED1CA0908FE1ECA09082159 +:1009D0000DC0CBC6C30908CB56C2F107CBD6CBCED0 +:1009E0003E20320FC0211EC03670CD48203E8D32D1 +:1009F00010C1C30908E5D5CB76C48E02D1E11AB780 +:100A00002051CB96210FC035283F011EC03E500219 +:100A1000131ACB472045CB57280135CB4FF5C4607F +:100A20000BF1CB5FC41F0B211CC03535D53A1CC060 +:100A3000C602673A1DC0C6086FCD831FD1FE1928B4 +:100A400005FE2EC20908CD4820210DC0CB8ECBC695 +:100A5000C30908CB5620ADCBD618F13418BDE5D567 +:100A6000CB76C48E02D1E11AB7201DCB96210FC0E0 +:100A70003604211EC036582B2B3434131AF5CB47BD +:100A80002059CB572019181C210FC07EFE053802B3 +:100A90003E043D7728D7211EC03670131A18063E33 +:100AA00001320EC0F1CB4FF5C4230BF1CB5FC4DF95 +:100AB0000A3A1CC0C610673A1DC0C6086FCD831F16 +:100AC000FE2E2805FE1EC20908210DC0CB863E0A57 +:100AD000320EC0211EC03670C309083E0218C23E45 +:100AE00048321EC03A1CC0C604673A1DC06F0604D7 +:100AF000C5CD831FC1FE1BC8FE2EC81100041910EE +:100B0000EF7CD608677DC6106FCD831FFE1C280AB8 +:100B1000FE2E2806211DC03535C9CC482018F53ECB +:100B20003018BE3E40321EC03A1CC0C604673A1D93 +:100B3000C0C6106F0604C5CD831FC1FE1CC8FE2EA3 +:100B4000C81100041910EF7CD608677DD6106FCD50 +:100B5000831FFE1B280EFE2E280A211DC03434C917 +:100B60003E3818C1CD482018F1210DC0CBFE3E9073 +:100B70003210C1063CCD890610FBC93E60321EC052 +:100B8000C6043222C0211CC07EC602773220C0EBD0 +:100B9000C61067131AC6086FCD831FFE2E2803FEEA +:100BA0001EC0214CC036D03E68321EC0C604322260 +:100BB000C0211CC011003B013800CDF87A3E9132B3 +:100BC00010C1013C00CD89060B79B020F8210DC081 +:100BD000CBBE21003B3ED0CD0E7B2161C0352846E7 +:100BE0002166C006183E02BE2001352310F92159A6 +:100BF000C0CB7E282B117EC0CB46280311A1C0E5B7 +:100C0000215BC0012300EDB0E111A1C0CB46CBC6F2 +:100C10002805CB86117EC0EB115BC0012300EDB02F +:100C2000CD860CC34F04210DC0CB762033217A0C26 +:100C3000118A39010C00CDF87A017800CD89060BB4 +:100C400079B020F82159C0CB46117EC0280311A1EC +:100C5000C0215BC0010300EDB02159C0CB7E200351 +:100C6000C36C00CB4621A7C028032184C07EFE00B0 +:100C700028EE2159C0CBBEC3F50B2047414D45207E +:100C8000204F564552203A64C03DFE0A3804D60A29 +:100C900018F8113D15CD7120EB21C6C0EB7EEB7726 +:100CA000FE0F2807010400091318F1060221003B7A +:100CB000CD977A11F0143A62C03DCD712001D00475 +:100CC000113003E5CDF87A11300B01D004E1E5CD08 +:100CD000F87A11301301D004E1CDF87A11FA143A00 +:100CE00062C03DCD712001D004113023E5CDF87AEA +:100CF000E1E511302B01D004CDF87AE11130330158 +:100D0000D004CDF87A21C424018000118007CDF8E9 +:100D10007A3E20018000218027CDE97ACD7D0F1118 +:100D20006038018002CDF87A0101003E1821403878 +:100D3000CDE97A3E19011E00C5CDEE7A3E1A0101B9 +:100D400000C5CDEE7AC13E1D21E03ACDE97AC13E23 +:100D50001ECDEE7A0101003E1FCDEE7ACD6F0F1150 +:100D600066C00618C51AB7CA270FD55E235623E5F5 +:100D700021E814CD9E0FE1D113C110E81192313A50 +:100D800064C03DCD71207ED601D22C0F11013821D7 +:100D90000415011D00CDF87A112E3821211501020C +:100DA00000CDF87A212538115DC00606CDBD7A3E0A +:100DB00030212B38CD0E7B3E20010500213B38CD64 +:100DC000E97A2161C07EFE0638023E064F06000D1C +:100DD00028083E2D213B38CDE97ACD550F3A59C030 +:100DE000213715CB47010300280109110638CDF83A +:100DF0007A1165C0211B380602CDBD7A3E20010262 +:100E000000212C38CDE97A010200213238CDE97A6F +:100E10003A5FC0FE1020053E00325FC0CD0A1106C9 +:100E200002CD8D7A210DC0CB762054211B0F118D60 +:100E300039010600E5CDF87AE10106000911AD3966 +:100E4000CDF87A3E813210C1017800CD89060B7948 +:100E5000B020F8CD7D0F112D0119010600118D393B +:100E6000E5D5CDF87AE101200009EBE109010600A2 +:100E7000CDF87A116C39CDB10F117139CDB10F3A6E +:100E800064C006823D2808043D2804043D20F37810 +:100E90003210C176211CC0365E233678233670238B +:100EA00036042A1CC02220C02122C03674233606F4 +:100EB00021C4C036012110C0360021C5C036013A18 +:100EC00064C00605FE15380605FE2938010521F621 +:100ED000C07023360023360021C6C022EFC03EC0BA +:100EE000060C1104002124C0771910FC3A5CC021C3 +:100EF0005AC0773E00ED6721F9C03640FE0530024A +:100F000036003A5CC0215AC0773E00ED6F32FCC01B +:100F100021FAC03600210DC03601C9212223242523 +:100F2000262728292A2B2C2323C3780DF5234EAFFF +:100F300047235E235623E5BE3E2EEB2008CDE97AFB +:100F4000E1F1C3870DCD4A0F18F6CD0E7B112000BD +:100F5000190D20F6C93A63C0471100002123151965 +:100F600011040010FA111038010200CD9E0FC93A89 +:100F700064C02198361130003DC81918FB3A62C090 +:100F800021F83F11800218F006180C79FE18280786 +:100F9000237EBAC810F4C90E002166C018F30102FE +:100FA00000C5D5CDF87A012000E109EBC1CDF87A72 +:100FB000C93E03325AC0D5CD6F0FD1D506180E00E9 +:100FC000237E2BBA20097EBB281A13BB28161B23AD +:100FD000230C10ECD13A5AC03D325AC0C82120002F +:100FE00019EB18D206002166C0097EB728E621E871 +:100FF00014CD9E0F18DE060C2124C03A1CC0C60872 +:10100000BE3009232B1104001910F0C9D610BE30D0 +:10101000F4233A1DC0C608BE38EAD61030023E019D +:10102000BE30E1237EFED82877FEF42833FEDC3084 +:101030000DFEF03009FE78C8FE7CC8C3690BF53E92 +:10104000943210C1F12128C036C021FAC03600D632 +:10105000DC0EFF0CD60430FB7911CC11CD7120E9E8 +:101060003E943210C13EC02B2B771166FFB7ED5274 +:10107000CBFE2111C0347EFE06300E5F160021D754 +:1010800011197ECD5F20C3F60F21DF11FE07300A54 +:1010900021DD117EE5CD5F20E1237ECD682018E6BD +:1010A0003E883210C1763E053205C13E443210C042 +:1010B000AF3211C0237E0650FE0228470601FE040F +:1010C0002802060278E5CD6820E17E321FC03C325E +:1010D00023C0212EC0E51112C0060A7E121323235D +:1010E000232310F7E1060A3EF477233E09772323F2 +:1010F0002310F43EC03224C021F9C0CB86215FC04A +:101100003600C978E5CD5F2018BF3A5FC0B7282107 +:10111000FE09112000301B211238E5210D38C6EFE1 +:10112000CD0E7B19CD0E7BE1C608CD0E7B19CD0E01 +:101130007BC94F3EF7210D38CD0E7B19CD0E7B219B +:101140001238CD0E7B19CD0E7B211338E5210C38DA +:1011500079D60818C93E01CD68202163C034CD5529 +:101160000FC93E03CD68202161C0344E06000B2814 +:101170000F79FE0638020E053E2D213B38CDE97A67 +:10118000C93E05CD68202163C03605CD550FC93E47 +:1011900005CD68202164C035237E3D27772162C0BC +:1011A0007E3CFE0638023E0177215EC03600CD8BC4 +:1011B0007301B400CD89060B79B020F8C3F7133E54 +:1011C00005CD6820215EC03619C370125511621119 +:1011D000E0118F11BF1181111020305080200102C9 +:1011E0003E11215BC00603CD247A3E11215CC0066E +:1011F00002CD247A21003B3ED0CD0E7B2140380128 +:10120000C0023E20CDE97A219F15011400116638F5 +:10121000CDF87A21B31501180011E438CDF87A2100 +:10122000CB15011000112639CDF87A21DB150113F9 +:1012300000116639CDF87A21EE15010D0011A6399D +:10124000CDF87A21FB1501110011663ACDF87A0E1E +:101250000921E3383E2ECD4A0F0E0921FC383E2EDF +:10126000CD4A0F21033A3E2E011A00CDE97A180C1F +:10127000211CC011003B013800CDF87A210DC0CBF4 +:1012800076C26C003E863210C176012C01CD8906F3 +:101290000B79B020F821003B3ED0CD0E7B215EC003 +:1012A0007E3600D614DAF713F5218023CD2D1421D4 +:1012B000802BCD2D14218033CD2D14118003213CA2 +:1012C00029E5018000C5CDF87A11800BC1E1E5C5A3 +:1012D000CDF87A118013C1E1CDF87A3E2001C00229 +:1012E000214038CDE97A21A814010E00110939CD29 +:1012F000F87A21B614010A00114C39CDF87A21C0D0 +:1013000014010E0011A939CDF87A21CE14010A007A +:1013100011ED39CDF87A21A5383E70CD0E7B3E71A6 +:10132000011400CDEE7A21C6383E78CD0E7B3E7991 +:10133000011200CDEE7A0E0C3E7321C538CD4A0F56 +:101340003E75CD0E7B0114003E76CDEE7A0E0A215D +:10135000E6383E7BCD4A0F3E7DCD0E7B3E7E0112B0 +:1013600000CDEE7A21D9383E7ACD0E7B3E7C21F934 +:10137000380E0ACD4A0F3E7FCD0E7B21BA383E7221 +:10138000CD0E7B3E7421DA380E0CCD4A0F3E77CD60 +:101390000E7BF1FE05CA3E14F5C620215AC077EB3C +:1013A0002149390602CDBD7AF15F160021D8141902 +:1013B0007E215AC077EB21EB390602E5D5CDBD7A07 +:1013C00001B400CD89060B79B020F83E8E3210C1F1 +:1013D000D1E1EB7ED601381F2777EB0602E5D5CDAC +:1013E000BD7A3E013263C0CD6820010300CD89067D +:1013F0000B79B020F818D42165C07EC6012777216B +:1014000064C07E3CFE3320023E29772162C0352035 +:101410000236052166C0061836012310FB2163C081 +:1014200036012160C03618CD860CC34F043EBA0188 +:101430004000CDE97A3EFA014000CDEE7AC921DCC8 +:1014400014114A39010C00CDF87A21EC393E30CD27 +:101450000E7B215AC03610EB21EA390602E5D5CDC4 +:10146000BD7A01B400CD89060B79B020F83E8E32EA +:1014700010C1D1E1EB7ED601DAF7132777EB060234 +:10148000E5D5CDBD7A3E100602215CC0CD247A217F +:101490005DC0EB2125380606CDBD7A010300CD895C +:1014A000060B79B020F818C5594F553C56452020F9 +:1014B000474F5454454E4649524520424F4D4253A2 +:1014C0005350454349414C2020424F4E55533030F4 +:1014D0003020504F494E545310203050434C45411A +:1014E000522020434F494E205D5E5F605B5C5F6031 +:1014F000784C984E485208574859185E3860E8634F +:10150000A868E86A534944453D2020202020202037 +:101510002000012020202020524F554E443D202005 +:101520003D02030405060708090A0B0C0D0E0F10F7 +:10153000111213141516174F4E4554574F51155786 +:10154000155E1566156F1578157E1585158D159622 +:101550001580818181850F8082828282850F8083C0 +:1015600083838383850F80848484848485850F802E +:10157000858585858585850F80828284840F80811D +:10158000828384850F808282828484840F8081811B +:1015900081818585850F80808383838383830F5931 +:1015A0004F5520415245204C55434B5920504C41FA +:1015B0005945522E20524F554E442053454C4543D9 +:1015C00054204D455353414745202E5055542049F2 +:1015D0004E204A4F59535449434B3B524947485474 +:1015E0003D3D2054485245452054494D4553444FB4 +:1015F000574E3D3D3D2054574943454C45543C537F +:10160000205452592047414D45202020210DC0CB68 +:101610007EC021C4C035C0E53A64C0013200FE0B73 +:10162000380A016400FE1F38030196002AF7C0093A +:10163000300321000022F7C0E13AF6C0DE00FE02CE +:1016400030023E027732F6C03A10C0D60130652A29 +:10165000EFC03EFFBC200721C6C022EFC0C9E50194 +:101660000400097EFE0F20032100FF22EFC021C5E8 +:10167000C035E1CA4217CB7E20D5E51166FF19EBD4 +:10168000E1233520CAE5D51313131AFE0620033EC5 +:1016900001122BCB76C2C4176E26002911A8161989 +:1016A0005E2356EBD1E918A798189D19451A151B0A +:1016B000E11B7E1CB7206A3E04321FC03E06322367 +:1016C000C03E0132C5C0212EC01112C0060A1A77D1 +:1016D000132323232310F73E20210C38010200CDD1 +:1016E000E97A01200009C5010200CDE97A2112380A +:1016F000010200CDE97AC109010200CDE97A060AAA +:10170000212FC011040036061910FB3A64C006826E +:101710003D2808043D2804043D20F3783210C176AA +:10172000C9FE10D021F9C0CB7E2811CBBE3E0B06DE +:101730000A212FC0771104001910F9C9CBFE3E0011 +:1017400018ED21C6C07EFE0FCA4F16CB7E200611B3 +:1017500004001918F0CBBEFE80F53A64C087473EFE +:10176000FF9032C5C0F1282ECBF6E523360A23CBF5 +:10177000F6233630E11166FF193A06C01F013E1804 +:10178000380301AE1870237123367C2336063E8958 +:101790003210C1C34F161166FF193A06C01F361822 +:1017A000380236A8233A1DC0FE8001E80038030144 +:1017B000080471237023360EB7ED5236012B2B36F9 +:1017C00001C34F16D1E1360123CB76C24B18237EDD +:1017D000B72801352B3E0C13CDA81D1BE5D51A6F7C +:1017E0001B1A67CD831F444DD1E1FE1B2854FE2EEA +:1017F0002850E5D521100009CD831F444DD1E1FECD +:101800001C2843FE2E283FE5D578C6106779D608F8 +:101810006FCD831FD1E1FE2ECAA616CB56CB9620E4 +:1018200002CBD6237EB7202036302BCBF61AC60843 +:10183000CB562002D61012EB2336B03E8A3210C1AE +:101840001806CB961802CBD6C3A6162B360123EB6F +:101850007EC6087723237EFE7C20053E8A3210C197 +:1018600036B02B2BEBE5D51AC61067131AC6086FD6 +:10187000CD831FD1E1FE2E2002CBB6FE1E20C92350 +:1018800036012B2B360A2BCBB6EB2323367C2336A3 +:10189000063E8B3210C118B0E136022323352033C7 +:1018A00013132BEB36082B3A06C01F3815463A1D8A +:1018B000C0EB1BCB9ECBD6903802CB96233610C301 +:1018C000A6162B463A1CC0EBCBDECBCE9038EDCB28 +:1018D0008E18E92BE5D51AC60267131A6F0607CDD5 +:1018E000831FF5D9F1D1E1FE1BCA8919FE2ECA89E1 +:1018F00019E5D5D91100021910E5D91AC6026713E6 +:101900001AC6106F0607CD831FF5D9F1D1E1FE1C71 +:10191000287DFE2E2879E5D5D91100021910E7D9C6 +:101920001A67131AC6026F0607CD831FF5D9F1D1C6 +:10193000E1FE192860FE2E285CE5D5D911020019B8 +:1019400010E7D91AC60F67131AC6026F0607CD83B0 +:101950001FF5D9F1D1E1FE1E283FFE2E283BE5D52B +:10196000D91102001910E7D1E1CB5E2009133E0026 +:10197000CDA81DC3A616CB4EEB200A343423237EFC +:10198000C6807718EE353518F4CB96E5D51891CB8F +:10199000D6E5D5188BCB8E18D0CBCE18CCE136023D +:1019A00013231A473A1DC0B8CBD63802CB961BE595 +:1019B000D51AC60C67131A6FCD831FD1E1FE1B2801 +:1019C00056FE2E2852E5D51AC60C67131AC6106F9C +:1019D000CD831FD1E1FE1C2842FE2E283E133E146B +:1019E000CDA81D1B1B237EB720522B1A473A1CC0C3 +:1019F000EBB8382B3434EBE5D51AC61067131AC68A +:101A0000086FCD831FD1E1FE2E2804FE1E2005CBDA +:101A1000CE233605C3A616CB9618C2CBD618BE3534 +:101A200035EBE5D51A67131AC6086FCD831FD1E1D0 +:101A3000FE192804FE2E20DCCB8E18D5352BCB4E7C +:101A4000EB20DC18AFE1360123237EB7C2051B2B48 +:101A5000131A473A1DC0CB56EBC2FC1AC60690308B +:101A60007C3535EBCBD6E5D51A6F1B1AC60867CD8A +:101A7000831FD1E1FE1B286CFE2E2868E5D51AC60F +:101A80000F6F1B1AC60867CD831FD1E1FE1C285CAF +:101A9000FE2E28581BCB4EEB20563434EBE5D51ADE +:101AA000C60F67131A6FCD831FD1E1FE2E2845FEA6 +:101AB0001E2841E5D51A67131A6FCD831FD1E1FEA9 +:101AC0002E2835FE19283113133AF4C0C604FE0C33 +:101AD00020023E0032F4C0C6C012C3A6163434EB56 +:101AE000CB961882CB962336052B18A8CBD618F6A2 +:101AF000353518A8CBCE18CFCB8E18CBD60690DABA +:101B0000611AC3DD1A352B13CB56EB20053434EBA9 +:101B100018823518FAE1360123237EB7C2D11B2B78 +:101B20001A473A1CC0CB4EEBC2AC1BC60690DAB1CA +:101B30001B3434EBCB8EE5D51AC60F67131A6FCD65 +:101B4000831FD1E1FE2E2871FE1E286DE5D51A6790 +:101B5000131A6FCD831FD1E1FE2E2865FE1928616F +:101B600013CB56EB205F3434EBE5D51AC60F6F1B51 +:101B70001AC60867CD831FD1E1FE2E284CFE1C2813 +:101B800048E5D51A6F1B1AC60867CD831FD1E1FE41 +:101B90002E283AFE1B2836133AF5C0C604FE0C2048 +:101BA000023E0032F5C0C6B412C3A616D606903067 +:101BB000803535EBCBCEC3361BCBCE2336052B1869 +:101BC0009FCB8E18F63535189FCBD618CACB9618F2 +:101BD000C6352BCB4EEB20053434EB188335351846 +:101BE000F9E1360123CB4EEB20783434EBE5D51AFE +:101BF000C61067131AC6086FCD831FD1E1FE1E28D9 +:101C000065FE2E2861E5D51AD60167131AC6086F3E +:101C1000CD831FD1E1FE2E2851FE19284D13CB563E +:101C2000EB284B3535EBE5D51AC6026F1B1AC608F3 +:101C300067CD831FD1E1FE1B2838FE2E2834E5D561 +:101C40001AC60E6F1B1AC60867CD831FD1E1FE1C92 +:101C50002824FE2E2820131AFE1C281E3E1C12C308 +:101C6000A61635351886CBCE18B3CB8E18AF3434C4 +:101C700018B3CB9618E0CBD618DCC68018E0E13656 +:101C80000123233520732BEB3A1CC0477EE521F25C +:101C9000C03601B83045C6203806B830033418F6CF +:101CA000EBCB8EEBE1233A1DC0477EE521F1C03638 +:101CB00001B83036C6203806B830033418F6EBCBFE +:101CC000962336402BD1133AF3C0C604FE0C2002F3 +:101CD0003E0032F3C0C6CC12C3A616D6203806B8D2 +:101CE00038033418F6EBCBCE18B9D6203806B838FE +:101CF000033418F6EBCBD618C82B13E5D51AC61447 +:101D00006F1B1AC60867CD831FD1E1FE1CCA981D40 +:101D1000FE2ECA981DE5D51AD6046F1B1AC6086791 +:101D2000CD831FD1E1FE1B2873FE2E286FE5D51A47 +:101D3000C6086F1B1AC60C67CD831FD1E1FE1E2893 +:101D40005FFE2E285BE5D51AC6086F1B1A67CD8388 +:101D50001FD1E1FE2E284DFE1928491BCB4E3AF229 +:101D6000C0EB201E86FEAC38023EAC7723EBCB5690 +:101D70003AF1C0EB201786FEE838023EE877EBC365 +:101D8000C61C477E90FE1630E23E1618DE477E9057 +:101D9000FE0830E93E0818E5CBD61891CB96188D91 +:101DA000CBCE18B7CB8E18B3CB56EB20063434C647 +:101DB000041802353523BE2002C68077EBC9210DF9 +:101DC000C0CB7EC021FBC035C0360221F9C0CB4656 +:101DD000C2F81E3A5FC0FE10D2C31E3AFAC0B7C2A4 +:101DE0008C1F3EC03228C0CB7628773A5CC0215A7F +:101DF000C0773E00ED6F21FCC0BE2819773A5CC069 +:101E0000215AC0773E00ED6721F9C0CBB6FE0538F8 +:101E10007BCBF61877215BC03E77BE232836BE23E6 +:101E20002858BEC02B3E70BEC03EE4212AC0772396 +:101E3000360B21F9C0CBEE16B03A06C01F38041697 +:101E400040CBAE1E18ED5328C03EF032FAC03E9390 +:101E50003210C1C97E215AC0773E00ED67FE0728C7 +:101E6000C8C93A5CC0215AC0773E00ED6721F9C06D +:101E7000CBF6FE053016CBB6189B7E215AC0773EB6 +:101E800000ED67FE0728A2215CC018983A5CC021CB +:101E90005AC0773E00ED6F32FCC03A06C006ECFE39 +:101EA000FD301406E8FEFB300E06F0FEF9300806A1 +:101EB000E0FEEF300206DC3A63C0FE05CA151E786C +:101EC000C32B1ECB8ECB963A06C00601FE3F380EC2 +:101ED0000603FE7F38080605FEBF3802060778862F +:101EE00077EB2124C00178607023712336D8EB3E54 +:101EF000923210C176C3DB1D3A24C0D602CB4E20ED +:101F000002C6043224C03A25C0D602CB562002C6EF +:101F1000043225C02124C0EB1A67131AC6086FCDFE +:101F2000831FFE192841FE2E283D11001019CD8374 +:101F30001FFE1E2847FE2E28432124C0EB1AC60888 +:101F400067131A6FCD831FFE1B2823FE2E281F1137 +:101F5000100019CD831FFE1C281BFE2E2817CDF65E +:101F60000F21F9C0C3DB1D21F9C0CB8E18F021F978 +:101F7000C0CB9618E921F9C0CBD618E221F9C0CB25 +:101F8000CE18DBE5110038CDA07AE1C93D32FAC0A8 +:101F9000EB2128C03434EBCB66EB28103535237E9B +:101FA000D602EBCB6EEB2002C604772BD5EB1AC61C +:101FB0000867131AC6016FCD831FFE1B283DFE2E36 +:101FC0002839110E0019CD831FFE1C2826FE2E284D +:101FD000227CC608677DD60D6F0607CD831FFE1EC7 +:101FE0002824FE2E28207DC6026F10EFE1CBA6CD5F +:101FF000F60FC9EBE1CBEEE5EB18D6EBE1CBAEE5A6 +:10200000210E001918CBE1CBE618E4E5210DC0CB79 +:1020100076E1C0F53A63C04FF1E5C5F5CD247A30DD +:102020000A2154C0060336992310FBF1C1E10D20AB +:10203000E80603215DC01156C0CD2E7A0606115D5B +:10204000C0212538CDBD7AC93E01215BC00603CD34 +:102050000B202127C07E07FE1020023E0277C921F7 +:102060005BC00603CD0B20C9215CC00602CD0B204E +:10207000C92100006F29195E2356EBC9089920B4C5 +:1020800020CF20EA20052120213B2140215E21791B +:10209000215E2163217E219C21A4381820202082EA +:1020A0008384852020202020202020202020202004 +:1020B00086202020C438182020208788898A202064 +:1020C000202020202020202020208B8C202020E475 +:1020D00038182020208D8E8F902020202020202036 +:1020E0002020202020919220202004391820202018 +:1020F0009394959620202020202020202020209797 +:1021000098999A20202439182020209B9C9D9E205D +:10211000202020202020202020209FA020A120203F +:10212000E4391850555348203120504C4159205320 +:102130005441525420425554544F4E2F3A024F525C +:10214000643A1850555348203220504C415920537E +:102150005441525420425554544F4E544F4E4439DA +:10216000182020202020A2A32020202020A4A52069 +:1021700020202020A6A720202064391820202020FD +:1021800020A8A92020202020AAAA2020202020AB9F +:10219000AC2020202020202020202020E13A1D20DB +:1021A000202020202020202020202020202020202F +:1021B0002020202020202020202020200000303837 +:1021C0001C0E070300000C1C3870E0C003070E1C37 +:1021D00038300000C0E070381C0C0000000003071D +:1021E000070101010000C0C0C0C0C0C00101010161 +:1021F0001F1F0000C0C0C0C0F8F8000000000F1F83 +:102200001C1C00000000F8FC1C1C3CF803070F1EFF +:102210001F1F0000F0C00000FCFC000000000F1FAA +:102220001C00000F0000F8FC1C1C1CF80F00001C18 +:102230001F0F0000F81C1C1CFCF800000000000030 +:102240000103070E000078F8F8B838381C383F3F13 +:10225000000000003838FCFC3838000000001F1F68 +:102260001C1C1C1F0000FCFC000000F81F00001CD0 +:102270001F0F0000FC1C1C1CFCF80000FFFFFFFFF0 +:10228000FFF8F8F8FFFFFFFFFFFFFFFFFFFFFFFF73 +:10229000FF1F1F1FF8F8F8F8F8F8F8F81F1F1F1FA6 +:1022A0001F1F1F1FF8F8F8FFFFFFFFFFFFFFFFFFD3 +:1022B000FFFFFFFF1F1F1FFFFFFFFFFF00000000CA +:1022C0000000000000001F3F3030303F00009FDF63 +:1022D000C30303830000E7EF0D1D181800000787F4 +:1022E00086C6C6C70000F3FB181818F80000FCFCEF +:1022F000606060601F0000303F1F0000C3C3C3C3A5 +:10230000C3830000383F3F6060600000E7E6E636C8 +:1023100036360000F0301818181800006060606051 +:102320006060000038FEFE7CFEFE6C6CFFFFFFFF6D +:10233000FFFFFFFF00000000000000007CCECECEBB +:10234000CECE7C007838383838387C007CCECE1C35 +:102350003870FE007CCECE1CCECE7C000C1C3C6CBB +:10236000CCFE0C00FCC0FC0E0ECE7C007CC0FCCE73 +:10237000CECE7C00FEC6CE1C181818007CCECE7CBB +:10238000CECE7C007CCECECE7E0E7C000018180017 +:10239000001818000000001818000000303020401D +:1023A000000000000000007E7E0000000000000031 +:1023B0000000000000000000000000003C42BDA141 +:1023C000A1BD423C387CE6E6FEE6E600FCE6E6FC23 +:1023D000E6E6FC007CEEEEE0EEEE7C00FCE6E6E6F7 +:1023E000E6E6FC00FEE0E0FCE0E0FE00FEE0E0FCF3 +:1023F000E0E0E0007CE6E6E0EEE67C00E6E6E6FE15 +:10240000E6E6E60038383838383838000E0E0E0E5A +:10241000CECE7C00E0E6ECF8F8ECE600E0E0E0E0B0 +:10242000E0E0FE006CFED6D6D6D6D600C6E6F6FEB6 +:10243000EEE6E6007CE6E6E6E6E67C00FCE6E6E6BE +:10244000FCE0E0007CC6C6C6F6CE7E00FCE6E6E612 +:10245000FCE6E6007CE6E07C06E67C00FEFE383822 +:1024600038383800E6E6E6E6E6E67C00C6C6C6C6CC +:10247000EE7C3800D6D6D6D6D6FE6C00C6EE7C38BA +:102480007CEEC600C6C6FE7C38383800FEFE1C381E +:1024900070FEFE00FFFFC1C4C2C5C0C7FFFF03A39B +:1024A000835383E3FFFFC0C0C0C1C1C7FFFF03C3A5 +:1024B000C38383E3CFCFCFCFC7C0FFFFF3F3F3F3E3 +:1024C000E303FFFF01010101010101010303030314 +:1024D0000303030307070707070707070F0F0F0F7C +:1024E0000F0F0F0F1F1F1F1F1F1F1F1F3F3F3F3FBC +:1024F0003F3F3F3F7F7F7F7F7F7F7F7FFFFFFFFFEC +:10250000FFFFFFFF8080808080808080C0C0C0C0CF +:10251000C0C0C0C0E0E0E0E0E0E0E0E0F0F0F0F0FB +:10252000F0F0F0F0F8F8F8F8F8F8F8F8FCFCFCFC3B +:10253000FCFCFCFCFEFEFEFEFEFEFEFEFFFFFFFFBF +:10254000FFFFFFFF88CC1072FC38BA7500200A0527 +:1025500003010501009020C09000A00000E03010B1 +:102560001010608020110F00000000FE000000002D +:1025700000000101000000FFFFFFFFFF000000005E +:10258000000F0F1F0000000000F0F0F0000000033B +:102590000307070F000000FEFEFEFCFC000F3F3F9C +:1025A0007F7FFFFF00FFFFFFFFFFFFFF0080E0F8DE +:1025B000FCFCFEFE030307070F0F1F1CFFFFFFFFBE +:1025C000FFFF7FFFFFFFFFE1C0C0C08100000000F0 +:1025D0000000000F00406070707070FE000000008E +:1025E000FF7F3F0700000000F8FCFC1C00E0F0F853 +:1025F000F8F8F8F807030000001F0F07FFFF7070DE +:1026000070FFFFFF07070F0F0E3EBEFB1C1C1C1CBC +:102610001C1C1CFC010303030303030FF0E0E0E0B8 +:10262000E0E0C0C00000000303030303707070F01B +:10263000F0FCFEFF797870003F7F7F78FCF80000A7 +:10264000E0F0F0F00F0F0F0F1F1F1C1CE0F0F87CE4 +:102650003C3E3E0E0E0E0E0F3F3F3D7D707070F003 +:10266000F0F0FEFE707070787F7F3F00707070F049 +:10267000F0F0E00000000001010103037C7C70F039 +:10268000F0E0E0E00F0F070707010101000000C0C4 +:10269000C0C0F0F07CF0F0E0000000003F07070051 +:1026A00000000000F8FFFF1F0000000000E0F8FC41 +:1026B000FE000000030F1E3C3C00000080808000F4 +:1026C00000000000F8F8FE3F3F1F000001017F01FD +:1026D0001F0007068080FE80F800E060FF01FFC158 +:1026E000DDC1DDC1FF80FF83BB83BB83193160C8BF +:1026F0001B3360C0FCFC0000FFFF30302710FF18C8 +:102700007E12224EE408FF207E66667E187E183C0C +:102710007EDB99183030303030303030303030306F +:1027200030F07030FBF7F7EFDF3FFFFFE1E1C1C1B1 +:10273000C1818100E7C7C78F8F1F1C30FCFCF8F9EF +:10274000E18000007FFFFFFFFF000000FFFFFFFCB4 +:1027500080000000FFFCC0010303070F7FFFFFFFA5 +:10276000FFFFFFFFFFFFFFFFFEFEFCFD808000007C +:10277000000000FF000000000000008000000000DA +:102780000003070F0000003EFFFFFFFF00000303F0 +:1027900087C7E7F30000FEFEFCFCF8F8000007071F +:1027A0000F1F3F7F0000FEFCF8F0E0C000000101B9 +:1027B00001000000FFFFFFFFF8000000FFFFFCC06A +:1027C00000000000F0800000000000001F3F00003B +:1027D00000000000FFFF010103030707FFFFFFFFE9 +:1027E000FFFEFEFCFBFB87070F1F1F3FFFFFFFFFE6 +:1027F000F7F7D7E7C0C0E0E0F1F1FBFB1F3F7FFF39 +:10280000FFFFFFFFFFFFFFCF87870604FBF7EFDF28 +:10281000BF3F3F7FF0F1F3E7EFDFFFFFFFFFFEFC7D +:10282000F8F0E0C0800000000000000000000000A0 +:1028300000007F7F000000000000F8F80F0F1F1F4E +:102840003F7F7FFFFCF8F8F8F1F1E3E73F7BFCFC0A +:10285000FEFEE0F8E3C3C30200000103F7F7B76F21 +:10286000EFEFEFDFFEFEFCFCFCF8F8F800000000E4 +:10287000000101017F7FFFFFFFFFFFFFFFFFFEFC65 +:10288000F8F0E0F07F7F7F7F7F3F3F1FF8FCFCFF89 +:10289000FFFFFFFF0103071FFFFFFFFFC7CF8F9F52 +:1028A0003F3F7F7FF0F8F0E0C49C3DFF0001033321 +:1028B00079FDFEFFDFDFDFDFDFEFEFEFF0F0F0F0BD +:1028C000F0F0F9F903236367F7F7FBFBFFFFFFFF66 +:1028D000FBF9F1F0F0F8F8FCFCFEFEFF1F0F070318 +:1028E00001000000FFFFFFFFFF7F1F03FFFFFFFF4F +:1028F000FFFFFFF8FCFDF9F3E7C70F1FFFFFFFFF26 +:10290000C0808000FFFFFFFF0F070703F7F7FBFB07 +:10291000FDFDFEFFFFFFFFFFFFFFFF7CFBF7F7EF73 +:10292000DFBF7FFFF0E0E0E0C0C08080FF7F7F3F3F +:102930003F1F1F0F008080C0C0E0E0F0FFFFFFFAE4 +:10294000FFF4F9FEFFFFFFFFA8D50824FFFFFFFFFC +:10295000DFB79F57F4F0F5FAF4F9F4FC3F2F9F2FFF +:102960005FAF0F2FEAF9EDFBFFFFFFFF2410AB1560 +:10297000FFFFFFFF579FB7DFFFFFFFFFFFFFFFFFD7 +:10298000FF070707FFFFFFFFFFFFFFFFFFFFFFFF3F +:10299000FFE0E0E00707070707070707E0E0E0E0E0 +:1029A000E0E0E0E0070707FFFFFFFFFFFFFFFFFF9B +:1029B000FFFFFFFFE0E0E0FFFFFFFFFF70707070C0 +:1029C000909070707777777777777777B0B0DBDB39 +:1029D000DBDB3F1F2FF2FDDFDF8F07000000000071 +:1029E0000000E0C0B068E8ECDEDE87030100000014 +:1029F000000007030D1617377B7BE1C08000000045 +:102A00000000FCF8F44FBFFBFBF1E0000000000009 +:102A10000000000207050C091B1213110101000040 +:102A20000000002070D098C86C246444C0C080802E +:102A30000000070F09090F0E071E3E3E1F0E0C1D5A +:102A40003D3CF0F83838F8F83078F8F87818E8F8BD +:102A5000F0000F1F1C1C1F1F0C1E1F1F1E18171F0E +:102A60000F00E0F09090F070E0787C7CF87030B867 +:102A7000BC3C00000000000103043F4FA797CEFEBE +:102A8000FE7E08183858F8F0D0D0F0E0E000F6FFED +:102A9000FFF610181C121F0C0B0B0E0507006FFF22 +:102AA000FF6F000000000080C020FCF2E5E9737FAA +:102AB0007F7E000021311B0F070F08171615161B0C +:102AC0000C0761E3F6FCF8F8F8FC34D454D434EC89 +:102AD00018F003070B0B0B0F070000000000000CA1 +:102AE0001C00C8F8F0F0E0E0C020180C0E0F3630E3 +:102AF000100000000404040000030303070F0C008F +:102B0000000000000000000000C0E0F0B0C0C0C045 +:102B10000000131F0F0F07070304183070F06C0C30 +:102B20000800C0E0D0D0D0F0E0000000000000308D +:102B300038000000000000000003070F0D0303032E +:102B4000000000002020200000C0C0C0E0F03000E5 +:102B50000000070B0B0B070301010000000103013C +:102B60000300C8F8F0F0E08060F8FFFE7C38A48E27 +:102B7000060C00040434301C0E06030F0F06000080 +:102B8000000000000000004080000000804018109D +:102B90000000131F0F0F0701061FFF7F3E1C25714A +:102BA0006030E0D0D0D0E0C0808000000080C080E5 +:102BB000C00000000000000201000000010218082F +:102BC00000000020202C0C387060C0F0F060000085 +:102BD000000003071E0E0E070300001860201300FC +:102BE0000000E0F0F0BCB8B0E00000001000800091 +:102BF0000000000001010100041F7F671F1F0C0E71 +:102C00001E0000000040404000F0F8FCECF0781F8F +:102C10000E04070F0F3D1D0D070000000800010006 +:102C20000000C0E0787070E0C00000180604C80022 +:102C30000000000000020202000F1F3F370F1EF8C5 +:102C4000702000008080800020F8FEE6F8F83070E8 +:102C5000780003061E0E0707030000080C1C1C3E2C +:102C60000000E0B0BCB8F0F0E0000008181C1C3E0A +:102C700000000001013130181C0F07070303030196 +:102C8000010300404046060C1CF8F0F0E0E0E0C014 +:102C9000C0E003071F0E06662310000000000000BE +:102CA0000000E0F0FCB8B0B3E20400000000000057 +:102CB00000000000003131191C0F07070303030354 +:102CC000030700000046464C1CF8F0F0E0E06060AE +:102CD0006070000079393838181000070F0F1D3D5B +:102CE0000D0700003C383838301000C0E0E0707844 +:102CF00060C00E0606060707070F1F3870E0C20205 +:102D00000200E0C0C0C0C0C0C0E0F0381C0E868029 +:102D1000800000000000006130303000070F1F1FEE +:102D2000390F00000000000C18181800C0E0F0F087 +:102D300038E000001C0C181E0F0F0F3FF8E00000D9 +:102D400006000000706030F0E0E0E0F83E0E0000A9 +:102D5000C00003071E0E060703000000041C1C3CF5 +:102D60000000E0F0BCB8B0F0E0000000101C9C9E39 +:102D7000000000000101010000070F1F1B030303F7 +:102D8000030700004040400000F0F8FCECE0606009 +:102D90006070040004200824005600240A00240265 +:102DA00008008010840090A400650088A4084410E6 +:102DB0008000002011190F0F0F1FFF3F1F0F0F1F63 +:102DC0001920808084CCF8F8FFFCF8F8FCFFF0F0C4 +:102DD000988400003F5FEFF7DACD87000000000025 +:102DE00000000000E0D0A868D8DCBC1C0E06020081 +:102DF00000000000070B15161B3B3D3870604000BB +:102E000000000000FCFAF7EF5BB3E10000000000F7 +:102E10000000060F19103123624341010100000038 +:102E200000003078CC84C662236141C0C08080003D +:102E30000000070F09090F0E071E3E3E1E0F1F3C24 +:102E40003D01F0F83838F8F83078F8F8F87818E8F4 +:102E5000F8F00F1F1C1C1F1F0C1E1F1F1F1E181712 +:102E60001F0FE0F09090F070E0787C7C78F0F83CF8 +:102E7000BC8000000000000103043F4FA797CEFE76 +:102E8000FE7E08183858E830D0F070A0E000F6FF59 +:102E9000FFF610181C121F0C0B0B0E0507003F7FCE +:102EA0007F3F000000000080C020FCF2E9E5737F56 +:102EB0007F7E0010190D0707070F08171615161B40 +:102EC0000C0760E0F1F3FEFCF8FC34D454D434EC8D +:102ED00018F003070B0B0B0F0700000000000000A9 +:102EE0000307C8F8F0F0E0E0C040203030383C186C +:102EF000808000000404040000071F1D0303030377 +:102F000000000000000000000080C0C0C0C0808041 +:102F10000000131F0F0F07070302040C0C1C3C18C2 +:102F20000101C0E0D0D0D0F0E000000000000000BF +:102F3000C0E00000000000000001030303030101E2 +:102F4000000000002020200000E0F8B8C0C0C0C091 +:102F500000000F1F3F31313F1C0F3E3E3E19F7FB73 +:102F60007B3DE0F0F81818F870E0F8F8F830DEBEB5 +:102F7000BC7800071F3F3F7F7F7F7F7F7F3F3F1FE2 +:102F8000070000E0F8FCFCFEF2F6F6F2FEFCFCF8AE +:102F9000E00000071F3F3F7F7C7D7D7C7F3F3F1F20 +:102FA000070000E0F8FCFCFE3EBEBE3EFEFCFCF866 +:102FB000E00000071F3F3F7F4F6F6F4F7F3F3F1F76 +:102FC000070000E0F8FCFCFEFEFEFEFEFEFCFCF846 +:102FD000E00000071F372363777E7E7F7F3F3F1F20 +:102FE000070000E0F8FCFCFE7E3E3E6EC6C4ECF836 +:102FF000E00000071F3F3F7F776363777F3E3E1F00 +:10300000070000E0F8ECC4C6EEFEFEFE7E3C3C7815 +:10301000E00000071E3C3C7E7F7F7F776323371FE5 +:10302000070000E0F87C7CFEEEC6C6EEFEFCFCF875 +:10303000E0000000030F1F3F3F3F7FFF3F190000EC +:1030400000000000C0F0F8FCE4E4FEFFFC98000083 +:1030500000000000030F1F3F3C3C7FFF3F190000B2 +:1030600000000000C0F0F8FC3C3CFEFFFC980000B3 +:1030700000000000030F1F3F27277FFF3F190000BC +:1030800000000000C0F0F8FCFCFCFEFFFC98000013 +:10309000000000070F183766666666676636180F09 +:1030A000070000E0F018CC66666666C6060C18F0ED +:1030B000E00000070F183766666767666637180F07 +:1030C000070000E0F018CC6666C6C66666CC18F04D +:1030D000E00000070F183766666766666637180FE8 +:1030E000070000E0F018EC0606E6060606EC18F00D +:1030F000E00000070F183366666763606633180FD9 +:10310000070000E0F018CC6606C6E66666CC18F04C +:10311000E00000070F183766666667666636180FA8 +:10312000070000E0F018CC666666C666666C18F0AC +:10313000E00000070F183367666666666733180F8E +:10314000070000E0F018CCE666060666E6CC18F04C +:10315000E00000070F183766666760606633180F77 +:10316000070000E0F018EC0606C6666666CC18F0AC +:10317000E0000000070F1F3F3F3F3F3F3F1F0F078B +:1031800000000000E0F0F8FCFCFCFCFCFCF8F0E0C7 +:103190000000F6310B32243239324A324B3260327F +:1031A00079329A32BB32BC32D532EE32FF32303312 +:1031B0003133523363338C33A533A633B733D03333 +:1031C000E933FE33FF33143431344E346334643422 +:1031D0007D348E34A334B034B134DE34FF3404355E +:1031E00015355235733588359135BA35DF35F435B7 +:1031F00015363E367336050ACF3800040539000807 +:10320000CC390004233A000B923A0006070139003A +:103210000718390005A6390005B5390005493A00F7 +:1032200005523A000505E9380005F2380004CE39A8 +:103230000004233A0004393A000405E4380005F795 +:10324000380005443A0005573A00000505D138001A +:1032500008213900067639000496390111063A0032 +:103260000606CD3800066739000673390006C739EF +:103270000006D33900064D3A000803CA380103D5C9 +:103280003801072439000735390007043A000715CB +:103290003A00032A3A0103353A010808AA38000225 +:1032A000CD3801050D39000D6D390005CD39000F00 +:1032B000233A00024D3A01058D3A0000060CE6382B +:1032C0000004F638000A0639010A19390104463AA1 +:1032D000000C4E3A000605DA380005213900057A5F +:1032E000390005C13900051A3A0005413A000414B5 +:1032F000E638000806390108193901040E3A000CB5 +:1033000005A7380005B4380005E3380105FC38018D +:10331000040E3900044B39010454390105C3390145 +:1033200005DC3901040E3A0005893A0005923A009D +:10333000000809A9380004D1380107FC38010863E6 +:1033400039000783390109D43900040E3A010B8E84 +:103350003A00040ACB380008273901083839010A35 +:103360004B3A000A04C3380004CE380004D93800B0 +:10337000056839000573390004033A00040E3A0069 +:1033800004193A0005883A0005933A000607013906 +:10339000000718390005A6390005B5390005493A76 +:1033A0000005523A0000040CE538000C0539011103 +:1033B000C6390015853A000604A5380104BA38015B +:1033C000072B39010734390105053A01051A3A017D +:1033D000060BE438000BF138000A0E39010A1139E6 +:1033E00001044B3A0004513A000518E338000D0E71 +:1033F000390109833901099A390116043A00000597 +:1034000008C138000AD138000DF138010D653A00C5 +:1034100008773A000704E3380004F938000A06394F +:10342000010A19390105463A000AEB390005553AF7 +:1034300000070307390105083900030D390103129C +:10344000390105133900031839010A4B3A00050AFE +:10345000E338000AF33800080C3901081339010871 +:103460004C3A00000607C3380007CD380006D738AD +:10347000000DE938010DF338010DFC380104086F27 +:1034800038010D5239000DA139000AB03901051675 +:10349000E538000F053901021A39010CCF3900084F +:1034A000FA39010318E4380008093901081639010E +:1034B000000B06ED380003EC380103F33801072553 +:1034C000390007343900098539000893390006A509 +:1034D000390106AC390106B3390106BA39010806CB +:1034E000253A0106283A01062B3A01062E3A010632 +:1034F000313A0106343A0106373A01063A3A0101F7 +:103500000EC939000413E738000F073901081939CB +:10351000010D0D3A000F01A8380001CD380001E47B +:10352000380001F8380001123900013D39000183EB +:10353000390001AA390001B9390001D33900010667 +:103540003A00014F3A00015B3A0001A93A0001B587 +:103550003A000804B9380002D938010614390002CB +:103560003439010A6B3900048B390109033A00042C +:10357000233A010516E538000A0539010A1A39010E +:103580000A453A000A513A0002126A380112B53867 +:10359000010A08A5380105AC380105B3380108BA9D +:1035A000380106863900098C3901099339010694DE +:1035B000390006E5390106FA39010905AA3800057E +:1035C000B13800080C3900056A3900057139000866 +:1035D000CC3900052A3A0005313A00088C3A00053A +:1035E00006093901061639010EC9390006EC390100 +:1035F00006333A01081A033900072639010B31391D +:103600000105673900088B39010AD2390007853A6C +:10361000000C913A000A06E3380006ED380006F780 +:103620003800048139000887390008913900049B6B +:10363000390006433A00064D3A0006573A000D1984 +:10364000A3380003C3380103DB3801130639000334 +:10365000263901033839010D69390003893901031D +:1036600095390107CC390003EC390103F239010423 +:103670002F3A010909E5380106E6380009EC38015E +:1036800009F3380106F4380009FA380103453A0114 +:1036900014463A00035A3A01F138F438F738FA3848 +:1036A0003D397D39BD39FD3921396139A139E139DA +:1036B000633866386938583A553A523AAA3AA73ABE +:1036C000A43A7D387A387738123A153A183A72396E +:1036D0007539783997389A389D38F238EF38EC38A0 +:1036E00072386F386C388138843887386639693970 +:1036F0006C39063A093A0C3A8C394C390C39123982 +:1037000052399239F739FA39FD39B238B5387A3841 +:103710007D38AC38A93864386138A93AAC3AB23A45 +:10372000B53AE139E439E739B73ABA3ABD3A143A29 +:10373000173A1A3A0A3A073A043A77397A397D3908 +:10374000673964396139B738BA38BD38A738A43811 +:10375000A138A13AA43AA73ACB390B3A4B3AA4384C +:10376000E4382439C439043A443AD339133A533A41 +:10377000AB38EB382B39BA38FA383A39DA391A3AE1 +:103780005A3AB338F33833394739443941398139F2 +:10379000C139013A413A3D3AFD39BD397D393D39AA +:1037A0003A393739373A343A2A3A273A94389138FD +:1037B000643861387A387D389339963999392B3A9B +:1037C0006B3AAB3A8B3988398539853888388B38EC +:1037D000933896389938213A613AA13A3D3A7D3A80 +:1037E000BD3A333A733AB33AC739C439C139A83A02 +:1037F000683A283ACB380B394B396438A438E43866 +:103800007A38BA38FA38D33813395339B63A763A5F +:10381000363ADD39DA39D739343937393A39373A3E +:10382000773AB73ADD38DA38D7383D3A7D3ABD3A9B +:103830007A38773874382839E838A838A538E53820 +:103840002539E539E839EB39CF38D238D538D83889 +:103850001D395D399D39DD39013941398139C13928 +:10386000643867386A38583A553A523AAC3AA93A05 +:10387000A63A77387A387D38EB392B3A6B3A7A3872 +:10388000BA38FA383D3A7D3ABD3A6438A438E4385B +:10389000213A613AA13AB338F33833399739D739F5 +:1038A000173A0739473987399A39DA393A3A3D3A76 +:1038B0007D3ABD3AA73AA43AA13A77387A387D38AA +:1038C0003A393D39FD3832392F392C396138A13830 +:1038D000E13844398439E439D239923952394C3992 +:1038E0008C39CC39B238B538B838C138013941399A +:1038F0008439C439043AAC38A938A638DD381D39C2 +:103900005D399A39DA391A3AD239123A523A893942 +:1039100049390939DD399D395D397A387738743854 +:103920006A386738643841398139C13915395539B0 +:103930009539CC390C3A4C3ACB390B3A4B3AA4383E +:10394000E4382439C439043A443AD339133A533A5F +:10395000AB38EB382B39BA38FA383A39DA391A3AFF +:103960005A3AB338F3383339513A543A573A9D39C1 +:103970005D391D399738D73817391A395A399A3974 +:103980004F390F39CF380939063903398439C439E9 +:10399000043A073A473A873AA83968392839253925 +:1039A0006539A539E539253AB938EC38EF38F238B8 +:1039B000A53839397939B939F939393A92388F38DE +:1039C0008C3836397639B639533A563ABA3ABD3A1E +:1039D000A13AA43A483A4B3ADD39DA39D73987382F +:1039E00084388138C139C439C739363933399738C1 +:1039F0009A389D3828392B39123A153A183A7239C3 +:103A00007539783997389A389D38F238EF38EC386C +:103A100072386F386C38813884388738663969393C +:103A20006C39063A093A0C3A743A773A7A3A7D395F +:103A30003D39FD387738B738F738FA383A397A39B6 +:103A40002F39EF38AF38E838E538E238A539E539AD +:103A5000253A283A683AA83AB83AB53AB23AAC3A6E +:103A6000A93AA63A61392139E138E339233A633A70 +:103A7000E639E939EC39863946390639F539F2390A +:103A8000EF3909390C390F39AB3AA83AB63AB33A9B +:103A9000A9396939293935397539B53986388938B7 +:103AA0008C389238953898381B3A5B3A033A433A47 +:103AB0009D38DD388138C138AC3AAF3AB23A123964 +:103AC00052399239D239123A963999399C39AD38EE +:103AD0008239853988390C3ACC398C394C390C39D2 +:103AE000B138B73ABA3ABD3A793876387338693866 +:103AF00066386338013904390739C439C739CA39D6 +:103B0000263A293A2C3A2F3A323A353AD239D5392F +:103B1000D839153918391D399C389938963888386C +:103B20008538823802390539083913391639193977 +:103B3000393A363A333A283A253A223AA23AA53A5D +:103B4000A83AAC3AAF3AB23A2A3A273A243AA43AD7 +:103B5000A73AAA3AB53AB83ABB3A963999399C3954 +:103B6000983895389238AD39ED392D3A6A392A3975 +:103B7000EA38883885388238F138F438F738A1388F +:103B8000E1382139243A643AA43A6C3A6F3A723AED +:103B90006C386F387238BA3A7A3A3A3A3D39FD3869 +:103BA000BD38E738EA38ED38E639263A6C3A6F3AEC +:103BB000723A383AF839123A0F3A0C3AE339233A62 +:103BC000633A7B3A3B3AFB39B838953872386C38EF +:103BD0008938A6382839333971393139F138BB3849 +:103BE000B838B538F639B63976397B39BB39FB394F +:103BF000B23AAF3AAC3AE839A83968396339A339EF +:103C0000E339ED382D396D393D3A7D3ABD3A213AE7 +:103C1000613AA13A7D38BD38FD386138A138E138C4 +:103C2000B13AB43AB73A6D386A386738AD3AAA3A19 +:103C3000A73A713874387738103A0D3A2D3930393F +:103C40008D38903897389A389D38573A173AD7397F +:103C50009A395A391A39663A263AE6398339433954 +:103C60000339813884388738A438E4382439A938AE +:103C7000E9382939D539153A553ADB391B3A5B3AD7 +:103C8000E439E739EA39643A673A6A3A9438973856 +:103C90009A38143917391A39183915391239063939 +:103CA00046398639463A493A4C3A523A553A583AA0 +:103CB00072386F386C3841398139C139AC3AAF3A12 +:103CC000B23A1D3ADD399D39973957391739BD3820 +:103CD000BA38B738B238AF38AC38A738A438A138BA +:103CE00007394739873954399439D4390C390F3960 +:103CF0001239CA398A394A39D139CD3991398D3990 +:103D000051394D390C39AC38AF380F391239B23816 +:103D1000F5387538B538E9386938A9387D38A13AA9 +:103D20006138BD3A72386C384B3948394539AC3A4C +:103D3000AF3AB23A72386F386C38263AE639A6395B +:103D4000353AF539B539293AE939A939383AF839DE +:103D5000B839533956395939263A663AA63A383A73 +:103D6000783AB83A293A693AA93A353A753AB53AB9 +:103D70002C3A6C3AAC3A323A723AB23A2F3A6F3A3B +:103D8000AF3A6C3872386F38EF392F3A6F3A613A80 +:103D9000643A673AA439A739B739BA39773A7A3ADF +:103DA0007D3AD8381839D5381539C9380939C6385F +:103DB00006396C386F387238773874387138A738EC +:103DC000AA38AD38013A413A813AC5398539453981 +:103DD0000139C1388138FD383D397D39B43AB73AB7 +:103DE000BA3A08390B390E39283AE839A839A139D5 +:103DF000613921396138643867380B394B398B396F +:103E0000AC3AAF3AB23A773A7A3A7D3AFD38BD38B1 +:103E10007D38D638D338D03835393839DA38DD38C6 +:103E20007D387A3877387438D438D738013A413AFF +:103E3000813A243A273A2A3A29396939C939C6399F +:103E4000C3392C392F393239B23AB53AB83A3D39FB +:103E5000FD38BD3872386F386C38A138E1382139F7 +:103E6000A73AAA3AAD3AC639863946390C390F39DC +:103E7000123958399839D8390C3A0F3A123A683A07 +:103E8000653A623A623965396839A238A538A83886 +:103E900072386F386C38BC38B938B6387C397939F3 +:103EA00076397C3A793A763A7138B138F138743AE1 +:103EB000343AF439B739BA39BD39D838183958399C +:103EC0006D38AD38ED386A3A2A3AEA39A739A4395B +:103ED000A139C638063946392F39323994399139E2 +:103EE000F239EF39EC394A3A4D3AAC3AAF3AB23A94 +:103EF000543A513A72386F386C38CA38CD38D138A4 +:103F0000D4382C398A398D39F339F039ED394D3AB5 +:103F1000513AB13AAE3AAB3A273A243A213A2139EA +:103F200024392739373A3A3A3D3A37393A393D391F +:103F30000A3914390D391139AC39EC392C3AAB3A0C +:103F4000A83AA53A093AC93989395C3A593A563AF0 +:103F50009C3999399639D938D638D3386B3868387E +:103F600065382D392A39273911390E396B386838B7 +:103F700003390639A239633A663A6D3A703ABC3968 +:103F80007B3A783AB739B439B139AD39AA39A7395A +:103F9000733876381B3918399339F039ED398A3945 +:103FA000D938D638D338D038CD38CA38C738C438DD +:103FB000C1386D387038DC383639333930392D39FD +:103FC0002A39273985399839943954391439893936 +:103FD00049390939973957391739863946390639F0 +:103FE000663A693A6C3A6F3A723A753A783A693891 +:103FF0006C386F38723875381B666666666666663A +:104000006666666666666666666666666666666650 +:10401000666666666666661C1B66666666666666D5 +:104020006666666666666666666666666666666630 +:10403000666666666666661C1B66666666666666B5 +:104040006666666666666666666666666666666610 +:10405000666666666666661C1B6666666666666695 +:1040600066666666666666666666666666666666F0 +:10407000666666666666661C1B6666666666666675 +:1040800066666666666666666666666666666666D0 +:10409000666666666666661C1B6666666666666655 +:1040A00066666666666666666666666666666666B0 +:1040B000666666666666661C1B6666666666666635 +:1040C0006666666666666666666666666666666690 +:1040D000666666666666661C1B6666666666666615 +:1040E0006666666666666666666666666666666670 +:1040F000666666666666661C1B67686768676867EB +:104100006867696E677C677D7E7F807F81A27FA301 +:104110007FA37FA37FA37F1C1B6A6B6A6B6A6B6A9A +:104120006B6A6C6F6A6B82838485868788A48786B6 +:10413000878687868786871C1B6A6B6A6B6A696DB0 +:104140006A6E6A6A716A71898A8B878B87878187B1 +:10415000A5A287868786871C1B6A6B6A6B6D6A6B54 +:104160006C6F6A6B6A828C8D8E8F8587868788A438 +:104170008687A5868786871C1B6A696D6A6B6A6E4F +:10418000706A6B6A6A906A898A879187878687A630 +:1041900081878687A5A2871C1B6A6B6A6B6A6C6A1B +:1041A0006A6B6A8C828C6A8D8E878F858F878687F3 +:1041B00087A487868786871C1B6A6B6A6B6A706A0E +:1041C0006B6A716A926A6B898A868793878B878606 +:1041D00087A687868786871C1B72737472737472B6 +:1041E00073747273946A6B8D8E86879596A79A9670 +:1041F000A79A96A79A96A71C1B75767775767775FA +:1042000076777576979899749A9B9C9D9EA8A99E9F +:10421000A8A99EA8A99EA81C1B78797A78797A7893 +:10422000797A78797978797A9FA0A1A0A0A19FA0C6 +:10423000A19FA0A19FA0A11C1B7B7B7B7B7B7B7B89 +:104240007B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7BBE +:104250007B7B7B7B7B7B7B1C1B7B7B7B7B7B7B7B6D +:104260007B7B7B7B7B7B7B7B7B7B7B7B7B7B7B7B9E +:104270007B7B7B7B7B7B7B1C1B66666666666666E0 +:1042800066666666666666666666666666666666CE +:10429000666666666666661C1B6666666666666653 +:1042A00066666666666666666666666666666666AE +:1042B000666666666666661C1B6666666666666633 +:1042C000666666666666666666666666666666668E +:1042D000666666666666661C1B6666666666666613 +:1042E0006767676767666666666666666666666669 +:1042F000666666666666661C1B66666666666869EE +:104300006A6B6C6B86666666666666666666666619 +:1043100066A4A56666A6A71C1B6666666D696E6FB9 +:1043200070707070876666666666666666666666E4 +:1043300066A8A566A9AAAB1C1B666666716F6F6F3F +:1043400070707070876666666666666666666666C4 +:1043500066A8A566ACADAB1C1B666666716F6F6F19 +:1043600070707070876666666666666688AE66663A +:1043700066A8A566ACADAB1C1B666666716F6F6FF9 +:1043800070707070876666666666666689AF666618 +:1043900066A8A566ACADAB1C1B666666716F6F6FD9 +:1043A00070707070876666666666666689AFB0AE66 +:1043B000AEB1B2AEB3B4AB1C1B72727273746F6FDA +:1043C0007070707087668A8B8C8D8E8F89B5B6B74A +:1043D000B8B9BABBB7BCAB1C1B75757575766F6F7A +:1043E00070707070879091929394958F89BDB6BECE +:1043F000BFC0C1C2BEC3AB1C1B7778797A7B6F6F1D +:104400007070707087969797979798999AC4B6C569 +:10441000C6C7C8C9C5CAAB1C1B7C7C7C7C7D6F6FC2 +:104420007070707087969B9B9B9B969C9CCBB6CC28 +:10443000CDCECFD0CCD1AB1C1B7E7E7E7E7E7F804E +:10444000818181819D9E9FA0A1A29EA3A3D2D3D44E +:10445000D5D6D7D8D4D9DA1C1B82838485828384AD +:104460008582838485828384858283848582838414 +:1044700085DB83848582831C1B838485828384857A +:1044800082838485828384858283848582838485F4 +:10449000DB8384858283821C1B8283848582838460 +:1044A00085828384858283848582838485828384D4 +:1044B00085DB83848582831C1B838485828384853A +:1044C00082838485828384858283848582838485B4 +:1044D000DB8384858283821C1B8283848582838420 +:1044E0008582838485828384858283848582838494 +:1044F00085DB83848582831C1B7070707070707084 +:1045000070707070707070707070717070707070AA +:10451000707070707070701C1B7070707070707044 +:104520007070707070707070707072707070707089 +:10453000707070707070701C1B7070707070707024 +:10454000707070707073707070747570707070705F +:10455000707070707070701C1B7070707070707004 +:10456000707070707076777870797A7B7070707018 +:10457000707070707070701C1B70707070707070E4 +:10458000707070707C7D7E7F8081828370707070AF +:10459000707070707070701C1B70707070707070C4 +:1045A000707070748485868788898A8B707070704B +:1045B000707070707070701C1B70707070707070A4 +:1045C0007070708C8D8E8F909192939470707070CB +:1045D000707070707070701C1B7070707070707084 +:1045E00070707095969798999A9B9C9D9E7070702C +:1045F0007070707070F8F91C1B6768707070707064 +:104600007070709FA09798A1A29BA3A4A5707070D2 +:104610007070707070FAFB1C1B696A70707070703B +:104620007070709FA69798A7A8A9AAABAC7070707D +:10463000707070F8F96B6C1C1B6B6C676870707035 +:10464000707070ADAEAF98B0B0B1B2B3B4707070FE +:10465000707070FAFB6D6E1C1B6D6E696A6F667010 +:10466000707070B5B6B798B0B0B8B9B9BA707070AC +:1046700070F8F96B6C6B6C1C1B6B6C6B6C6B6C6708 +:10468000687070BBBCBD98B0B0B8B9B9BA70707082 +:1046900070FAFB6D6E6D6E1C1B6D6E6D6E6D6E69CE +:1046A0006A7070BEBFC0C1C2C3C1B9B9C4707070F6 +:1046B000FC6B6C6B6C6B6C1C1B6B6C6B6C6B6C6B52 +:1046C0006C6768C5C6C7C8C9CACBCCCDCE70F8F96F +:1046D0006C6D6E6D6E6D6E1C1B6D6E6D6E6D6E6DA8 +:1046E0006E696ACFD0D1D2D3D4D5D6D7D870FAFBE1 +:1046F0006E6B6C6B6C6B6C1C1B6B6C6B6C6B6C6BA0 +:104700006C6B6CD9DADBDCDDDEDFE0E1E2FD6C6BEB +:104710006C6D6E6D6E6D6E1C1B6D6E6D6E6D6E6D67 +:104720006E6D6E6BE3E4E5E6E7E8E9EAEB6B6E6D70 +:104730006E6B6C6B6C6B6C1C1B6B6C6B6C6B6C6B5F +:104740006C6B6C6B6CECEDEEEFF0F1F26B6C6B6B19 +:104750006C6D6E6D6E6D6E1C1B6D6E6D6E6D6E6D27 +:104760006E6D6E6D6E69F3F4F5F6F76B6D6E6D6DD3 +:104770006E6B6C6B6C6B6C1C1B6666666666666645 +:1047800066666666666666666666666666666666C9 +:10479000666666666666661C1B666666666666664E +:1047A00066666666666666666666666666666666A9 +:1047B000666666666666661C1B666666666666662E +:1047C0006666666666666666666666666666666689 +:1047D000666666666666661C1B666666666666660E +:1047E0006666666666666666666666666666666669 +:1047F000666666666666661C1B66666666666666EE +:104800006666666666666666666666666666666648 +:10481000666666666666661C1B66666666666666CD +:1048200066676880818283666666666666666666B7 +:10483000666666666666661C1B66666666666669AA +:104840006A6B6C8484848586878888886666669CA3 +:104850009D889E666666661C1B6666666666666DF5 +:104860006E6E6E6E6E6E6E898A8B8B8B8C9FA0A126 +:10487000A28BA3666666661C1B66666666666666CF +:104880006F706F6F6F6F6F6F8D8E8E8E8EA4A5A6FB +:10489000A7A7A8666666661C1B6666666666666689 +:1048A00071717171717171718F90909090A9A8AAB6 +:1048B0009090A8666666661C1B6666666666666697 +:1048C00071717171717171718F9090909090ABACAA +:1048D0009090A8666666661C1B727372737273741E +:1048E000757575757575759192939393939393936D +:1048F0009393AD727372731C1B76777677767776A7 +:10490000777677767776777677767776777677763F +:10491000777677767776771C1B78797879787978D7 +:1049200079787978797879787978797879787978FF +:10493000797879787978791C1B76777677767776B7 +:1049400077767776777677767776777A7B7A7B7AEB +:104950007B7A7B7A7B7A7B1C1B787978797879787B +:1049600079787978799495767778797E7F7E7F7E6D +:104970007F7E7F7E7F7E7F1C1B767776777677764D +:1049800077767776777677767776967C7D7C7D7C82 +:104990007D7C7D7C7D7C7D1C1B7A7B7A7B7A7B7A1F +:1049A0007B7A7B7A7B7A7B7A7B97987E7F7E7F7E11 +:1049B0007F7E7F7E7F7E7F1C1B7C7D7C7D7C7D7CE3 +:1049C0007D7C7D7C7D7C7D7C7D999A7C7D7C7D7CE5 +:1049D0007D7C7D7C7D7C7D1C1B7E7F7E7F7E7F7EC3 +:1049E0007F7E7F7E7F7E7F7E7F7E7F9B7F7E7F7EC2 +:1049F0007F7E7F7E7F7E7F1C1B70707070707070FA +:104A000070707070707070707070707070707070A6 +:104A1000707070707070701C1B707070707070703F +:104A20007070707070717270707070707070707083 +:104A3000707070707070701C1B707070707070701F +:104A40007070707073747576707070707070707054 +:104A5000707070707070701C1B70707070707070FF +:104A60007070707077787879707070707070707026 +:104A7000707070707070701C1B70707070707070DF +:104A80007070707A787878787B70707070707070F1 +:104A9000707070707070701C1B70707070707070BF +:104AA0007070677C787878787D7E707070707070C8 +:104AB000707070707070701C1B707070707070709F +:104AC0007070687F808182838485707070A9AAABC2 +:104AD000ACAD70707070701C1B7070707070707006 +:104AE00070696A6A6A6A6A6A6A6A867070AEAFB02A +:104AF000B1B2B3707070701C1B7070707070707099 +:104B00006B6C6A6A6A6A6A6A6A6A878889B4B5B6C7 +:104B1000B7B8B9707070701C1B7070707070707066 +:104B2000686A6A6A6A6A6A6A6A6A6A8A8BBABBBCB3 +:104B3000BDBEBF707070701C1B707070707070693B +:104B40006A6A6A6A6A6A6A6A6A6A6A6A8CC0C1C29E +:104B5000C3C0C4707070701C1B70707070706B6C10 +:104B60006A6A6A6A6A6A6A6A6A6A6A6A8DC5C6C76E +:104B7000C8C0C9707070701C1B7070707070686AEB +:104B80006A6A6A6A6A6A6A6A6A6A6A6A8ECACBCC3E +:104B9000C0C0CD707070701C1B70707070696A6AD4 +:104BA0006A6A6A6A6A6A6A6A6A6A6A6A8FCECFD011 +:104BB000C0C0C0D17070701C1B7070706B6C6A6A62 +:104BC0006A6A6A6A6A6A6A6A6A6A6A6A90D2D3D4E4 +:104BD000D5D6D7D87070701C1B707070686A6A6AFE +:104BE0006A6A6A6A6A6A6A6A6A6A919293D9DADB5D +:104BF000DCDDDEDF7070701C1B7070696A6A6A6AC7 +:104C00006A6A6A6A6A6A9495969798999AE0E1E264 +:104C1000E3E4E5E6E770701C1B706B6C6A6A6A6A15 +:104C20006A6A6A6A6A6A9B9C9D9E9FA0A1E8E9EAFB +:104C3000EBECEDEEEFF0701C1B6D6E6D6E6D6E6D3E +:104C40006E6D6E6D6E6DA2A3A4A5A6A7A8F1F2F37A +:104C5000F4F5F6F7F8F96D1C1B6F666F666F666FFB +:104C6000666F666F666F666F666F666F666FFAFB7C +:104C7000C0FCFDFEFF666F1CFFFFFFFFFFFFFFFF95 +:104C8000FF40144308401660FF811004200A401AB8 +:104C900018824448138C33C028FFC41986610C6203 +:104CA000C1184022980668090803FF44FF31030633 +:104CB000630C32C00412443006802420401903865D +:104CC0000C183066C09042180C983460C086200CD6 +:104CD0002D0CD819B03066601836337B1C6706C3BC +:104CE0000C38381866B1E3C03070F239E07E637377 +:104CF000CF197CE3E3900F0FFCE0F1C63EF8FF1EF6 +:104D00000CBB0DC3E001E31CFC92C346888C55DF4D +:104D1000F0C1F00844243A7E1AC334208F2559FB91 +:104D2000FFFFFFFFFFFFFFFFFF1044FFB03066E013 +:104D3000014109993125614980829099AC8486921C +:104D4000FF0228C210026806FF0822FF0D0C66074A +:104D5000600124040298C0610C8049011B431606BF +:104D6000C1C199811101610583839981888086A0E1 +:104D700030019280D8C2686083180244196016908E +:104D800014FF23986186304630180C6603094218D8 +:104D900041011101019901098280888080998090E8 +:104DA000B4301B980D0C6606D0C491843104816028 +:104DB000014521010119014180A2848080988082EF +:104DC0000B2389218C20810688265818B330044390 +:104DD00011649A18CD0C20C26C0C1998303660649E +:104DE000363098190C6C0626FFFFFFC0D0A0F4FCEB +:104DF000FFFFFF030B052F3F301C1C18668DC703F8 +:104E0000FC0EFECCC31CF03F1C36337B1C6706C374 +:104E10000CB8381866B1E3C00C0E4F9C077EC6CEA6 +:104E2000301D1C18668DC703386CCCDE38E660C3B5 +:104E30003F707F33C3380FFC3F078F637C1FFF78C1 +:104E400058C32C04F1A49ADF0F830F1022245C7E38 +:104E50003F49C3621131AAFB18412212C831CC0369 +:104E6000FF8108200450025810C0FF22FF8CC06050 +:104E7000C6304C032048220C30192C060361043044 +:104E8000186CCCDE38E660C3F3983EC7C709F0F073 +:104E900030DDB0C30780C738FFFFFFFFFFFFFFFF14 +:104EA000FFFFFFFFFFFFFFFFFFFFFFFF030F3FFFBE +:104EB000030F3FFFFCF3CF3FFFFFFFFFC0C0FFFF2B +:104EC000FFFFFFFFFFFFFFFFFFFFFFFF0C0CFFFFD8 +:104ED000FFFFFFFF03030303FCF3CF3FFCFCCFCF37 +:104EE000FCFCCFCFFCFCCFCFCCCCFFFFCCCCFFFF6A +:104EF0000303030303030303FFFFFFFFFFFFFF9908 +:104F00000303030303FFFF99FCFCCFCFFCFFFF99D2 +:104F1000FFFF8899FFFF8899FFFF8999FFFF899913 +:104F2000FFFF8899FFFF8899FFFF8898FF80889985 +:104F3000FFFF8888FFFF8899FFFF8889FFFF889916 +:104F4000FFFF8999FFFF8999FFFF8899FFFFFFFF06 +:104F5000FFFF8999FFFFFFFFFF03070707FFFFFF21 +:104F6000FCFCCFCFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:104F7000CCCCCCCCCCFFFFFF8E2846D10C5B873944 +:104F800034CB18A763DD99788639566B8C59B433C6 +:104F90009837B692635BDACDFFFFFFFF0303FFFF95 +:104FA000CFCFFFFFCFCFFFFFFFFFFFFFFFFF030FBD +:104FB0001F1F1F1F1F1F1F1FFFFFFFFF3F3F3F3F01 +:104FC000FFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFD +:104FD000FFFFFFFFFFFFFFFFFF030F3F3F3F3F3F8D +:104FE000FF81FF81FF81FF81FFFFFFFF07070707A9 +:104FF0003F3FFF03FFFFFF11FFFFFFFFFFFFFF1119 +:10500000FCFCFF18FFFFFF11FFFFFFFFFFFFFF1179 +:105010003F3F3F3F3F3F3F3F070707070707070760 +:1050200033333333FF1133333F3F3F3F0707070726 +:10503000FF81FF81FFFFFFFF1F1F1F1FFFFFFFFFFC +:105040003333FF1133333333FFFFFFFFFFFFFFFF26 +:10505000CFCFCFCFCFFFFFFF0707070707FFFFFF28 +:10506000FFFFFFFFFFFFFFFFFFFF60E0E0FFFFFF2D +:10507000FFFF060E0EFFFFFFFFFF030707FFFFFF07 +:10508000FFFFFFFFFFFFFFFFFF030F3FFCF3CC33EA +:10509000FFFFFFFFFFFFFFFFFFFFFFFF030F3FFFCC +:1050A000FFFFFFFFFFFFCCCCCC33CC33CC33CC3372 +:1050B000030F3FFEF3DFFEF2F9C9CF7FF9C94F7F3F +:1050C000CCFFCCCCCCFFCCCCD3DFFEF2D3DFFEF2D6 +:1050D000F9C94F7FF9C94F7FFFFFFFFFFFFFFFFFB8 +:1050E000FFFFFFFFFFFFFFFFFFFFFFFFFFFF3F0F80 +:1050F000CC33CC33CC33FFFFFFFFFFFFFFFFFFFFBD +:10510000D3DFFEF2D3DFFFFFF9C94F7FF9C9FFFFFD +:10511000FCF0C0C0C0C0C0C00F0F0F0F0F0F0F0FAB +:10512000181839FFFF181839C6C6CEFFFFC6C6CEFD +:10513000313173FFFF3131738C8C9CFFFF8C8C9C61 +:105140006363E7FFFF6363E7C7C7CFFFFFC7C7CF4F +:10515000C0C0C0C0C0C0C0C0FFFF181839FFFF18D2 +:10516000FFFFC6C6CEFFFFC6FFFF313173FFFF3121 +:10517000FFFF8C8C9CFFFF8CFFFF6363E7FFFF63E7 +:10518000FFFFC7C7CFFFFFC7C0C0C0C0FFFF0707F3 +:105190001839FFFF181839FFC6CEFFFFC6C6CEFF6D +:1051A0003173FFFF313173FF8C9CFFFF8C8C9CFFB0 +:1051B00063E7FFFF6363E7FFC7CFFFFFC7C7CFFF0B +:1051C000FFFF0707FFFF0707FF181839FFFF181831 +:1051D000FFC6C6CEFFFFC6C6FF313173FFFF3131B8 +:1051E000FF8C8C9CFFFF8C8CFF6363E7FFFF636386 +:1051F000FFC7C7CFFFFFC7C7FFFF0707FFFFFFFFBF +:105200000F0F0F0F0FFFFFFF39FFFF1839FFFFFFD1 +:10521000CEFFFFC6CEFFFFFF73FFFF3173FFFFFF1F +:105220009CFFFF8C9CFFFFFFE7FFFF63E7FFFFFF93 +:10523000CFFFFFC7CFFFFFFFCCFFCCCCCCFFFFFFE2 +:105240008E3846D10C5B8739FFFFFFFFFF8F03FECF +:105250001F03FCF0060330F6FFFFFF7F7F3F3F1F79 +:105260000FC166C01C7EE0FFF0F8F8FCFEE33110D1 +:10527000C0FF7CCF0160073FFF08387F821E78F0B7 +:1052800060C03803700C30E30F7EE0C0FFF07E1F7B +:10529000FFFFFFFFFFF17F0FFFFFFFFFFFFFFFFF9C +:1052A000FFFFFFFFFF1010381010101010103838DB +:1052B000FF04040404040E0EFFFFFFFFFFFFFF01C5 +:1052C000387C7C7CFEFEFEFF1F1F3F3F3F7F7F1030 +:1052D000FFFF808080C0C0E0FFFFFFFFFF020F3FA5 +:1052E0000101030303030303FFFEF8E0FF01FEFCDB +:1052F000FFFF808080808080FFFF09090909081C6A +:1053000020604040FFFCFFFFE0E3FFFFFFFFFFF0F6 +:10531000FFFFFFFFFFFCF8C0808080C0C03F1F0779 +:105320000303F00F0F0F0FF8F0FFFF7777FFFFFF7A +:1053300080803FC0C0C0C07F1C3E3E7F7F4040FE9B +:10534000FFFFFFFFFF7F1F60F0F0F0F0F0F0FFE0E5 +:10535000FFFFFFFFFFFF030703FFFFFFFFFFC0E0AB +:10536000FC031807FF1F1F1FFFFFFFFFFFFEFEFECE +:10537000FFFFFF7F3FC0C0C001030303FF01010126 +:10538000FEFCF8F0FE01FCFC7F7F7F7F7F7F7F7F4C +:10539000E0E0E0E1E7EEE1EF1C3BE7DF3EF2F39F08 +:1053A00038DCE7FB7C4FCFF91F0FFF87E77787FBE0 +:1053B000FEFEFFFEFEFCFCF9C08080C0C0E0E0F015 +:1053C000010101FF01010101FCFCF0FE01FFFFFFF3 +:1053D0004F4F4F7F7C7C7C7FEFEFEFEFEFEFEFEFF6 +:1053E0009FFFFFFFF08E9191F9FFFFFF0F718989F9 +:1053F000FBFBFBFBFBFBFBFBFBF3F6E6ECCCC8800B +:10540000F0F8F8FCFCFEFEFFFFFFFF181818183C30 +:105410000101010101010101FFEFC7C7C7C7FFFF7C +:105420009191917FFF7F7FFF898989FEFFFEFEFFBB +:105430008080C0BFBFBFBFDFFF0103FCFCFCF8E002 +:105440003C7E7E7E206040F8FFFFFFEFC783216037 +:1054500080C0FFFFFFFFFFFF0103FFFFFFFFFFFF14 +:10546000FBFBFBFBF8FBE3C3E0E0EF0F0FFF26269F +:105470000103E0FDFCFC646481FFFF7E813F3F3F50 +:1054800001030303030303034040FEF001FFFFFF9A +:105490007F7F7F7FBFBFBFBF33333333FFFFFFFF4C +:1054A00083830301FFFF5F4026FFFCFCFCFFFFFF3F +:1054B00064C0F8F8F8FFFFFF3F3F3F7FFF7F7F7F2B +:1054C00003033F7FFEFCF8F0FFFF8F070301FF207F +:1054D000BFBF0701FFFFFE7E5F405F405F405F4050 +:1054E000FFF7E3E3E3E3FFFF7F7F7F7F7F7F7F7F44 +:1054F000E0C08183868D80BF70D88C56DBDDFFFFD6 +:105500003E1E0E0E0E8E0EEEADADADBFADADA5B70F +:10551000B7B7B7FFB7B7B7FFEEEEEEEEEEEEEEEED3 +:10552000FFFFFFFFFFFFFFFFFFFFFFFFFFFF030383 +:10553000FFFFFFFFFFFFC0C07F7F7F7F7F6F6F6F29 +:10554000A3A381C19090B0208F0706FFFFFFFF7FCC +:10555000E0E03FFFFFFFFFFFFFFFFFFFFFFFFF0355 +:10556000030F0FF8F8F840C1C0F0F01F1F1F0283AF +:10557000FFFFFFFFFFFFFFC0FFFFFFFFFFFFFFFF7A +:10558000FFFFFFFFFFFFFFFE474793A3216141FF9E +:10559000FEFEF8C1C1FFFFFF7F7F7F80FF73FF8C9E +:1055A000FFFFFFFFFF9CFF630302021E1EF0F0F1EE +:1055B000C3070E1C3871E1C1C3E070381C8E8783AD +:1055C000C0404078780F0F8FFFFFFFFFFF39FFC605 +:1055D000FEFEFE0101CFFF31FEF8FF8383FFFFFFD8 +:1055E0001F030F7CFF7CE01FFFFFFF807F3F3F1FFB +:1055F000FFFFFFFFFFFFFF31F301030303030383FB +:1056000088949494949C8080112929292939010136 +:10561000CF80C0C0C0C0C0C1FFFFFFFFFFFFFF8C35 +:1056200001010101010101613F3F3FFEFEFCFCF869 +:10563000E0E03F0F0301FE077B4A4A4A4A7BFFFF37 +:10564000C343434343C30707FF242424FFFF808051 +:10565000FF929292FFFF0101C3C2C2C2C2C3E0E047 +:10566000DE52525252DEFFFFF191919191F101070A +:10567000F0F0F0C0FEFF0F387FC01F1F0F070303BD +:10568000F79797909090F101FF031F7FFFF0E0E004 +:10569000FFC0F8FEFF0F0707E3E2E2020202838089 +:1056A000DE5252525252DE010FC08080071E78FF38 +:1056B000010101013F0F1F1FE0E0E0E0E0E0E0E05A +:1056C00007070707070707078080808080FFFFFF25 +:1056D00003F0E0C0C08080FFFFFFFFFEFEFCFCF88F +:1056E000F8C03F0F60C00C6F0F1F1FFE80C78C08F3 +:1056F000F0836603387E07FFFEFEFCF8F0E07FF8DB +:10570000F8C0C0F8BC3CE007FFFFFFFFFFFFFFFF52 +:10571000FFFFFFFFFFFF0110FFFFFFFF1979E64FBB +:10572000FFFFFFFFFF010101FF01FE073FFFFF88B1 +:10573000EF9F7FFFFFFFFF889FFFFFFFFFFFFF88B7 +:105740000101010101010101888888FFFFFFAAAA68 +:105750007CFF7E7E7E7E7E7E7C7E7E7E7E7E7E7EEC +:105760007E7E7E7E7E7E7E7EFFFFFFFFFF1059FFE6 +:10577000FFFFFFFFFF099DFF01010103032707074B +:10578000FFFFFFFFFFFFFFFF7BEDDF7EF75BF5BF56 +:10579000EE775DE7BD7BDF7677DAF77DBEE7BAF7B8 +:1057A000EFFD37FDAFB5EEBB5CEE4A8C04FFBFA644 +:1057B000B25B32593010FBD3A604016163C5A7E484 +:1057C0009380FF0C9C96B5F76C7B3BB7D7C23C42ED +:1057D000FF5BB9BD3D1F0E68FF031FFFFFFFFFFF0B +:1057E000FFE0F0E3E7D7BBFFFFFFFF80E0F8FEFF3D +:1057F000FFFFFFFFFFFFFFC0FFFFFFFFFFFFFF886F +:10580000F0FCFFFFFFFFFF88FFFFFFC0F8FFFF88EE +:10581000FFFFFFFFFFFFFE88FFFFFFFFFFFFFF8887 +:10582000888888FFFFFFABAB8888888080805555CB +:10583000888888FFFFFF5555FFFFFFF8F80755558B +:105840007DFF787878787878FDFFF8F8F8F8F8F840 +:105850007878787878787878F8F8F8F8F8F8F8F8C8 +:10586000FEFEFEFFFFFFFFFFFFFFFFFFFFFF808049 +:10587000FFFFFFFFFFFFFFFF77DAF77DBEE7BA7B91 +:10588000EFFD37FDAFB5EEEEDFAFB0F0403F0E08F5 +:10589000976D9BA32FE0F727C1E377071F27F0C37E +:1058A0000604FFE703FF4296B89F3F1707B537C0CE +:1058B0007B6B2786C2C8D8B6FFFFFFFFFFFFFF0143 +:1058C000FFFFFFFFFFFFFFC8FFFFFFFFFFFFFFF826 +:1058D000CFC6FEFEF8FEFFFF3FFFFCFF7FFFFFFF8E +:1058E0000101010303030707C8C8C88080FF55559D +:1058F000F8F8F8F8F8F8F8F8F0FFFFFF38383878DB +:105900007CFFFFFFFFFFFF781F3FFFFFFEFEFEFE55 +:10591000FDF8F8F8F8F8F8F8F8F8F8F8F8F8F8F802 +:1059200078F8F8F8F8F8F8F8FEFEFEFEFEFCFCFC4D +:10593000F8F8F8F8F8F8F8F8F0F8F8F8F8F8F8F8EF +:10594000F8F8F8FCFCFEFFFFA57135482164A2FFC2 +:10595000FFFFFF01FE0101030307070F1F1F3F7F2A +:10596000FFFF01030307070FFFFFFFFFFFFFFFFF1D +:10597000FFFFFFFFFFFF01011F1F3F7F7FFFFFFFB3 +:10598000FFAF8C52BFF66F94FFAFB144EFBFAA4791 +:105990006552AB0D405020FFFFFFFFFFFFFFFFFFF1 +:1059A000FFFF03070F0F1F3FFFFFC0E0F0F0F8FC01 +:1059B000FFFFFFFF010303073F7FFFFFFFFFFFFF25 +:1059C000FCFEFFFFFFFFFFFFFFFFFFFF80C0C0E007 +:1059D0000F0F1F3F3F7FFFFFFFFFFFFFFFFFFFFF97 +:1059E000F0F0F8FCFCFEFFFF010303070F0F1F3F61 +:1059F00080C0C0E0F0F0F8FC3F7FFFFF0703C0FC71 +:105A0000FCFEFFFFFFFFFFF8FFFFFFFF80C0C01F8E +:105A100003FE03FCFEFFFFFFFFFFFFC70703FCFFC2 +:105A2000FFFFFFFFFF8FFF34FFFFF0F8E0071FFFCE +:105A3000FF01FF3FFFFFFFFFFCF00FFFFFFFFFFF36 +:105A40001FF0F0F8FCFCFEFEFFFF80C0C0E0E0F0BD +:105A5000F8F8FCFEFEFFFFFFFFFFFFFFFFFF808067 +:105A6000FFFFFEFEFCFCFCF8C0E0E0F0F8F8FCFEF6 +:105A7000F8F0F0F0E0E0E0E0C0C0C080808080801E +:105A80008080FFFF8080C0C0E0F0F8F8FCFE0101DC +:105A9000010101030303070FF00F0F1FE0C03E7E5B +:105AA000FFFFFFFFFF010F7FFF01071FF8FBE3CBA5 +:105AB000FEE0BFFFF0FC3F1FFFFFFFFFFFFF010104 +:105AC000FFFF070FE0C0F080FF3FFE8FFFE0073FC2 +:105AD000FFFC3FFDFEF0FFF3FCF7C7871FFFFC1B39 +:105AE000BBFFFFFEBF3F3FF0F38280FF02838B1FAF +:105AF00001FEFFFEFFFEFFFE3FF1FF787A3034200B +:105B00003F3F1D18FF0F3F7FF0E3E7FF7FFFFF8060 +:105B10001CBE0EFFFFF0FBD21C7FF8F3F0F0F0305C +:105B20003F7F7E7EC00E1EFEFEFED0BF7F7F7C7E4E +:105B3000033F3FFFFEFEFAFCF8F0C0FF10181E3FC7 +:105B4000C0FF39397D7DEF80E007076777F79090D8 +:105B500073C7CCC083BEBEBDFEBF2707233178FE0E +:105B6000FFFFFFFFFFFF0103FFFF010F3FF8883A30 +:105B7000033FCD9919090905C0F87F7D7D797B73B5 +:105B8000FFFFFFC0C0E0F0FCF8F0E0E0C0C08080A4 +:105B90001C0F63010301030FFFE7CDC0C0FEC1FF6F +:105BA000F3FBFBFFF7F783FCC1F1F8F8F8F00810FE +:105BB000FFFF7F7F7F7F3F3FFFFFFF050F19161E0F +:105BC000665CF8707C7C7F7F30C080FFFFFF01FE49 +:105BD00078FFFFFFFF60F0C002010101FFFFFFFF40 +:105BE0003F3F1F1F1F1F1F0F1F1A1D0C07FFFFFF27 +:105BF0005F4701FEF87F7FBFE0F8FE8F0301FF05DE +:105C0000E0F0F1D888FFF0DF70F8F0E040FFFFFF30 +:105C10000F0F0F0F0F070707FFFFFFFFFFFFFFFF2C +:105C2000BFD8476F672713FF03FCF87F3F0F03FFC1 +:105C30000E04FFFF80F0F0F00707030303030303E4 +:105C4000FFFFF8FFFF1F087CFFFFFFFFC4FE3E3E83 +:105C50003F10FFFFFFFFFFFFE0FFFFFFFFFFFFFF22 +:105C60000303FFFEF80103033E3C1E1E0E0F0F0749 +:105C70003F3F3F071F7F3F79FFFFFF808080C0C00D +:105C8000010101FFFFFFFFFF07878786C5CFCFCF49 +:105C9000F9F18307C7E7E307E0E0F0F8F8F8FCFC68 +:105CA000FFFFFF7F7F7F7F7FDFDFF8037FFF339F73 +:105CB0003F1F9FFF904060F0FE3FF380050F3F378E +:105CC000FFFF80C0F0F838FCFFFFFFFFFF0307076E +:105CD0007F387EFFFFC7FFF87F7F3F3F3F1F1F1FBB +:105CE000FF5DFEF9017EFEF9F0FBF90DBFDD03BF9C +:105CF0007F3EDFE1EEC0FFF8CF7F7F7C0F3FC67FA6 +:105D000008FCE0AFE0FEF8F8FFFFF0E0FFEB01BFBA +:105D10001FF00707FCFCFE34970F1EF8E31FFCFF83 +:105D2000FCFB0364FEFFFF031FE7FE3FBF0DFFCE3A +:105D30007F7FF680F3FFF980E0E1F9F9FBF810BD11 +:105D4000BFFDFAFE2403CFF2F8D0BF01B8FD39C978 +:105D5000FFFFFF7F80E0F8F8431FFFFFFFFFFF4DCD +:105D6000071FF8FF737F7FE0FEF0FF4DB30F0703BF +:105D700080FFFFC3873F3E3C18FFF103E49E32F0F3 +:105D80008F06E2E0F0F07078C0153FFF1CFD7D2823 +:105D9000E030F8F0F0F34303FFFFFF80C0C0C0C065 +:105DA000F2FFFFFEF9E3C707FFFFFF75391B808095 +:105DB0000101EFEFCF07FFFF3010038307C3FFFFA1 +:105DC000FCF8D8C08080017F383832767E7CF08045 +:105DD000FF3E7F796F3F3FFF27E7E777F7F7E1FF68 +:105DE0003F3F3F3F7F32097FC0F0FFFFFFFFFFFFD4 +:105DF000FFFFFFE0F8FEFEFF0FFFFFFFFFFFFFFFCB +:105E0000FF3F0F070301FFFF42FFFFFFBFFFFB7DC7 +:105E100011FBFDFEFFFFBFD755555555555555553F +:105E20001191D1919171B1711191B19191B1B1B1C2 +:105E300091D1B191B1B1B1B1B111B191B1D171B152 +:105E400091B1B1B191B1B19191D111B111B1B1B1E2 +:105E5000B1B1B1B191B17191D171919171B1B1B152 +:105E6000B1B1B1B1B1B1B191B1B1B1B1B1B1B19162 +:105E7000B1B1B1B1B1B1B1B131313121C3C23232FD +:105E8000313132C3C3C332323131C1C2C3C3C33271 +:105E9000C3C3C3C3323232C332C33232C3C333C3C8 +:105EA00032C3C33232323232C33232B2B3B2B3B39C +:105EB0003232C3B3B3B3B3B3C23232B3CBB3B3B37F +:105EC000BBBBBBBBBBBBBBBB1191D111B1B1B1B1B2 +:105ED000B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B2 +:105EE0001191D1919171B17111919111B1B1B1B182 +:105EF000D171919171B1B1B19191B1B1B1B1B1B172 +:105F0000B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B181 +:105F10009191B1B1B1B1B1B191B1B1B191B1B19111 +:105F2000B111B191B1D171B1B1B1B1B1B1B1B19161 +:105F3000B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B151 +:105F4000B1B1B1B1B1B1B1B1B1B1B1B1D1719171C1 +:105F5000B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B131 +:105F6000B1B1B1B1D171917171D1B1B1B1B1B191E1 +:105F700071D1B1B1B1B1B191B1B1B1B1B1B1B1B151 +:105F8000B1B1B1B1B1B1B1B1111111313131213171 +:105F90001111113131312131313132C3C3C33232A8 +:105FA000213231323232C3C331313121C3C23232B4 +:105FB000313132C3C3C332323131C1C2C3C3C33240 +:105FC000313132C3C3C3323231313121C3C23232F3 +:105FD000213231323232C3C332C33232C3C333C34C +:105FE000C23232B3CBB3B3B33232C3B3B3B3B3B34E +:105FF000C33232B2B3B2B3B391D1B191B1B1B1B195 +:106000001191B19191B1B1B191D111B111B1B1B1C0 +:10601000B1B1B1B191B17191B1B1B1B1B1B1B19110 +:1060200031313121C3C23232C3C3C3C3323232C36E +:1060300032C3C33232323232555555555555555506 +:1060400055555555555555FF55555555F5F5F5FFCC +:10605000F5F5F5FFF1E1E1E1FFFFFFFFF1FEFFFFE5 +:10606000FFFFFFFF11EEFFFFFFFFFFFFF1FEFFFF4E +:1060700055555555F5F5F5F5F1E1E1E1E4E4E4E4D4 +:10608000E4E4E4E4E4E4E4E4E4F4FFFFE4F4FFFF44 +:10609000F5F5F5F5F5F5F5F55555555555FFFFF5BC +:1060A000F5F5F5F5F5FFFFF5E4E4E4E4E4FFFFF4CE +:1060B000EEEEF1F1FFEEF1F1EEEEF1F1FFEEF1F1C6 +:1060C000FFEEF1F1FFEEF1F1FFEEF1F1FFFEF1F184 +:1060D000FFEEF1F1FFEEF1F1FFEEF1F1FFEEF1F184 +:1060E000FFEEF1F1FFEEF1F1FFEEF1F1FFEEFFFF58 +:1060F000FFEEF1F1FFEEFFFFEEE1E1E1E1EEEEEEAA +:10610000E4E4E4E4EEEEEEEEEEEEEEEEEEEEEEEED7 +:10611000E4F4F4F4F4EEEEEE74F4747474F4745481 +:10612000F47474F45474F47574F574F474757474CC +:106130007474F4747474F474FFFFFFFFF1FEFFFFD6 +:10614000E4F4FFFFE4F4FFFF555555555555E5E5DB +:10615000E5E5E5E5E5E5E5E555555522F2F2F2F22E +:1061600055555522FFFFFFFF55555522F2F2F2F229 +:10617000555555555555EEEE55E5E5E5E5E5E5E5AD +:10618000FFF4FFF4FFF4FFF455555555FEFEFEFEF7 +:10619000F2F222F5FFFFFFFEFFFF2255FFFFFFFE99 +:1061A000F2F222F5FFFFFFFEEEEEEEEEFFFFFFFE46 +:1061B000E5E5E5E5E5E5E5E5FEFEFEFEFEFEFEFEC7 +:1061C000F1F1F1F1FFFEF1F1E5E5E5E5FEFEFEFEA0 +:1061D000FFF4FFF4FFFF1111E5E5E5E5FFFF111105 +:1061E000F1F1FFFEF1F1F1F1FFFF1111FFFF1111CC +:1061F000E4F4F4F4F4EEEEEEFEFEFEFEFEEEEEEE61 +:10620000FFFFEE1111EEEEEEFFFFFEF1F1EEEEEE0E +:10621000FFFFFEF1F1EEEEEEFFFFFEF1F1EEEEEE2E +:10622000FFFF1111FFEEEEEE55E5E5E5E7E7E7E7E5 +:10623000FFEEFFEEFFEEFFEE55555555E5E5E5EEB9 +:1062400055555555FFFFFEF4E7E7E7E7E7E7E7E7D2 +:10625000E5E5E5E1E1E1E1E1E1E1E1E1E1E1E1E122 +:10626000F4FFFEF4F4FFFEF4E1E1E1E1E1E1E1E15C +:10627000E1E1E1E1E1E1E1E1555555555555FFFF1A +:10628000FFFFFFFFFFFFFFFF555555555555F5FE25 +:10629000E7E7E7E7E7E7FFFFFFEEFFEEFFEEFFFFD1 +:1062A000E1E1E1E1E1E1FFFFE1E1E1E1E1E1FFFF66 +:1062B000FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +:1062C000FEF4F1FFFFFEF4F1FEF4F1FFFFFEF4F146 +:1062D000FEF4F1FFFFFEF4F1FEF4F1FFFFFEF4F136 +:1062E000FEF4F1FFFFFEF4F1FEF4F1FFFFFEF4F126 +:1062F000FEFEFEFEFEFEFEFEFFFFFEF4F1FFFFFED1 +:10630000FFFFFEF4F1FFFFFEFFFFFEF4F1FFFFFED3 +:10631000FFFFFEF4F1FFFFFEFFFFFEF4F1FFFFFEC3 +:10632000FFFFFEF4F1FFFFFEFEFEFEFEFFFFF1F1B8 +:10633000F4F1FFFFFEF4F1FFF4F1FFFFFEF4F1FFD3 +:10634000F4F1FFFFFEF4F1FFF4F1FFFFFEF4F1FFC3 +:10635000F4F1FFFFFEF4F1FFF4F1FFFFFEF4F1FFB3 +:10636000FFFFF1F1FFFFF1F1FFFEF4F1FFFFFEF49B +:10637000FFFEF4F1FFFFFEF4FFFEF4F1FFFFFEF479 +:10638000FFFEF4F1FFFFFEF4FFFEF4F1FFFFFEF469 +:10639000FFFEF4F1FFFFFEF4FFFFF1F1FFEEEEEE82 +:1063A000FEFEFEFEFEEEEEEEF1FFFFFEF1EEEEEE85 +:1063B000F1FFFFFEF1EEEEEEF1FFFFFEF1EEEEEE8D +:1063C000F1FFFFFEF1EEEEEEF1FFFFFEF1EEEEEE7D +:1063D000F1FFFFFEF1EEEEEEF4FFFEF4F4EEEEEE72 +:1063E00074F4747474F4745455555555555352C51A +:1063F0005353C3C23232C2C25555555353535353EC +:10640000C2C33232C2C2C222C5C5C5C5253232326C +:10641000C222C2C2C23232322232323232C2C2C28C +:106420003232C2323232C2C23232323222C2C2C2FC +:10643000555555555552C5C2555555555555555532 +:1064400055555555558585858585858585858585EC +:10645000558585858585858555555555555555856C +:10646000858585858585858885858585858585F866 +:10647000555565656565656555555555556565653C +:10648000858585856565F5F58886868666E6FEFEE2 +:1064900055556565E5E5E5E555558585858585852C +:1064A000F8F8F8F8888666FF65656666666666E6EB +:1064B00066666666666464646565656565515151C6 +:1064C000F5F551E5F5F5F551FEEE11E1F1FFFF119E +:1064D000E5E551E5E5E5E5518585858585F8F886AD +:1064E000FFFFFFFFFFE4E4F4E6E4E4E4E4E444F463 +:1064F000444444444444F4F4511111111111F1F194 +:1065000051E551F111F1F1F111EE11FF11FEFEFE15 +:106510005555555151E5E5E58585858555F5F5F5E3 +:106520008686868664E4FEFEF4F4F4F4F4F4F4F46F +:10653000F4F4F4F4F4F4F4F1F4F4F4F4F4F4F4F41E +:10654000F1F1F1F1F1F1F1F1F1F111F1F1F1F1F11B +:10655000FEFE11FBFBFBFBFBE5B5B5B5B5B5B5B56F +:10656000F5F5F555F5F5F5F5FEFEFEE4F4FFFFFF54 +:10657000F4F4F4F4F4F4F4F4F1F1F1F1F1F1F1F1F3 +:10658000F4FFFFFFFEFEE4E5F1FFFFFFFEFEE4E5A2 +:10659000F1F1F1F1F1F1F1F1FBFBFBFBFBFBFBFB9B +:1065A000B5B5B5B5B5B5B5BB5555558585858585A5 +:1065B000F5F5F5F5F5F5F5F5FFF4F4F4F4F4FFFF72 +:1065C000E5E5E5FEEEFEFE11E5E5E5FEEEFEFE117B +:1065D000FAFAFAF1F1F1F1F1AAEAEAFEFEFEFEFEA4 +:1065E00085858585F8F8F886FFFFFFFBFBFBFBFB45 +:1065F000F1F1FFFFFFFFFFFFF1F1FFFFFFFFFFFFE3 +:10660000F1F1F1F1F1F1F1F1F1F1F1F1F1FFF1F16C +:106610004141FEF1F1FEF1F1F6FFFFE1F1FEFEFE78 +:10662000B5B5B5B5F5F5F5F5FBFBBABAFAFFFFFF61 +:10663000F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFEE +:10664000F1F171711144F4F4F1FF747474FFFFFF00 +:10665000F1FE414141FFFFFFFEFEF1F1FFFEFEFEB4 +:10666000F5F565656464F4F4FFFF6464646444F400 +:10667000F4F4F6F66666F4F4F4F4F4F4F4F4F4F4F2 +:10668000FFF4F4F4F4F4FFFFFEFEFEFEFEFEFEFE59 +:10669000F4F4F4F4F4F4F4F5F4F4F4F4F4F444FF5E +:1066A000F4F4F4F4F4F4F4F4F5F5F5F5F5F5F5F5A2 +:1066B000F4F4F4FFF4F4F4FFF4F4F4F4F4F4F4F484 +:1066C000EEEEEEEEEEEEEEEEEEEEEEEEEEEEFEFECA +:1066D000EEEEEEEEEEEEFEFEFEFEFEFEFEF5F5F555 +:1066E000F5F5F5F5F5F5F5F5F5F5F5FFFFFF66655B +:1066F000F4FEE5FFFFFF6666EEEEEEFFFFFF66F6D7 +:10670000FEFEFEF6F6F6F6F6FEFEFEF6F6F6F6F6F9 +:10671000EEEEEEFFFFFF66F6FFFF11FFFFFF66667E +:10672000FFFF11FFFFFF6665F5F5F5F5F5F5F5558A +:10673000545454E4FEFFFFFF646464E666F6FFFE13 +:106740006666666666F6FFFEF6F6F6F6F6F6F6E6B8 +:10675000F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6D9 +:10676000F6F6F6F6F6F6F6F66666666666F6FFFE88 +:10677000656564E6F6F6FFFE545444E4FEFFFFFF51 +:10678000FCFC3232223232C2EEEE113162626363BD +:10679000EEEE1111666666F6E6FEF1F1F6F6F6F635 +:1067A000F6F6F6F6F6F6F6F6F6F6F6F6F6F6F6F689 +:1067B000E6FEF1F1F6F6F6F6EEEE1111666666F615 +:1067C000FEFEF1F1F6F6F6F6F4F4F4F3F3F3F2F27A +:1067D000C6C662636362C2C2F6F6F6F6F6F666668F +:1067E000F6F6F6F6F6F6F6F6FFF6F6F6FFFFF4F432 +:1067F000FFF6F6F6FFFFF4F4F6F6F6F6F6F6F6F622 +:10680000F6F6F6F6F6F66666F6F6F6F6F6F6F6C678 +:10681000FCF2F3F33222323262C662636362626375 +:10682000F6F6F6F6F6F6F6F644F4F4F4FFF6FAF6B3 +:1068300044F4F4F4FFF6FAF6F6F6F6F6F6F6F6F6A3 +:10684000F6F6F6F6F6F6F6C6C66362623232322223 +:10685000F6F6F6F6F3F3FCFCFAF6FAF6FAF6FAF6C2 +:10686000FAF6FAF6FAF6FAF6F6F6F6F6F6FFFFFF9D +:10687000C662636362F2FCCC555555535353535370 +:106880005353C3C23232C2C2C5C5C5C552323232F9 +:10689000C2C33232C2C2C222535352535352C5C230 +:1068A0005353533232C2C23255555555555555552D +:1068B000555555555555B5B555555555B5B1B1B154 +:1068C0005555555555B5F5F555B551B5B5BBFFFA07 +:1068D000B1B1B1BBBBBBFFFAB1BBBBBBBBBBFFFA2A +:1068E000F5F5F5F5F5A5A5A5FAFAFAFFFFAABABAE6 +:1068F000B166B6B6B6B6B6B6B186B6B6B6B6B6B6C2 +:10690000B6B6B6B6B6B6B6B65555555555A5A5AA3A +:106910005555555555A5A5AAF5F5A5F5F5A5FAFAC8 +:10692000FFFFAAFFFFAAFFFFA6A6A6A6A6A6A6A6E9 +:10693000A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6F7 +:10694000A6A6A6A6A6A6A6A6A6636363633332324E +:10695000A6636363636332323232A2A2A2A2A2A20E +:10696000323222A2A2A2A2A2A2A3A3A3A3A3323242 +:10697000AAA3A3A3A3A3A23255B5B5BBBBBBBBBB04 +:1069800055B5B5B1B1B1B1BB555555B5B5B5B5BB3B +:1069900055555555555555B5BBBBBBBBBBBBFFFA94 +:1069A000B5B5BBBBBBBBFFFA555555B5B5BBFFFA7B +:1069B000555555555555F5FA55555555555555FA9D +:1069C000FAFAFAFFFFAABABAFAFAFAFEFEA6BABAB9 +:1069D000FAFAFAEEEE66BABABBBBBBEBEBB6BABAE2 +:1069E000A111A1A1A1A1A1A1A111A1A1A1A1A1A1B7 +:1069F000A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A187 +:106A0000FAFAA6FFFFAAFFFFAAAA66AAAA66FAFADE +:106A1000AAAA66AAAA66AAAAA6A6A6A6A6A6A6A67E +:106A2000A6A6A6A6A6A6A6A6A6A663A362A6A2A298 +:106A3000A6A6A6A6A662A3A3A2A2A2A2A2A2A2A260 +:106A4000A3A333323222A2A2A3A3A3A3A33232A2CE +:106A5000A3A3A3A3A3A2A3A255555555555555F5D8 +:106A600055555555555555FA55555555555555A5E1 +:106A7000B5B1B1B1B1B1BBBBB5BBB1BBB1BBBBBBB8 +:106A8000FBFBFBFBFBFBFBFBFAFAFAFEFE66BABA6A +:106A9000A5A5A5E5E565A5A5B5555555A5A5A5A546 +:106AA000B5555555555555A5B5515555515151519A +:106AB000A1A1A1A1A1A1A1A1A5A5A5A5A5A5A5A5A6 +:106AC000A5A5A5A1A1A1A1A151515151515151512A +:106AD000A5A5A1A1A1A1A1A1A1A1A1A1A1A1A1A19E +:106AE000A5A565A5A565AAAABABABABABABABAAA34 +:106AF000555555B551A5A5A5A5A5A5A5A5A5A5A57A +:106B00005555A5A5A5A5A5A5AAAAAAAAAAAAAAAAAD +:106B1000555555555555A5A5A5A5A5A5A5AAAAAAF6 +:106B2000FFFBFBFBBABABABAFFFBFBFBBABABABAB5 +:106B3000BABABABABABABAAA5555555555555555ED +:106B40005555B5B5B5B5B5B55555B5B5B5B5B5B575 +:106B500055555555B5B5B5B5B5B5BBBBBBBBBBBB41 +:106B6000B5B5BBBBBBBBBBBB55555555B5B5B5B531 +:106B7000B5B5B5B5B5B5BBBBBBBBBBBBBBBBBBBB89 +:106B8000B5B5B5B5B5B5BBBBB5B5B5B5B5B5B5B5A9 +:106B9000B5B5B5B5B5B5B5B5B5B5BBBBB1B1A1A1C9 +:106BA000B5B5BBBBBBBBBBB155555555B5B5B5515F +:106BB000BAA1BAA1A1AAAAAABBBBBBB1B1BAA1AAE8 +:106BC000BBBBBBBBBBB111A1BBBBB1B1B1A1A1AA46 +:106BD000BBB111A1AAAAAAAAB1B1A1AAAAAAAAAA9A +:106BE00051A5A5A5A5A5A5A55555A5A5A5A5A5A549 +:106BF000A5A5A5A5A5AAAAAA555555555555A5A516 +:106C00005555515151515151A5A5A5A5A5A5A5A5CC +:106C10005151515151515151515151A1A1A1A1A1D4 +:106C2000A1A1AABBA1A1A1A1A1A1A1A1A1A1FAFA7F +:106C3000FAFAFAFAFAFAFAFAA1BAFAFAA1A1BAFA3F +:106C4000AAAAAAAAAAFAFAFAAAFAFAFAF1F1F1B1E8 +:106C5000F1F1A1BBBAA1BABAAAAAAAAAAAAAFAFA37 +:106C6000AAAAFAFAA1FBBABAAAFAF1F1BBBABAFA1D +:106C7000FFFBB1B1B1FABBA1FBB1B1A1A1AAA1A126 +:106C8000B1AAAAA1A1B1F1FBB1B1A111B1B1B1B148 +:106C9000FAA1AAA1AAA1AAA1BAB1AAA1A1A1A1A13E +:106CA000F1B1B1B111A1A1F1B1B1B1AAB1BBFFFB79 +:106CB000A1B1FBFFAABAA1B1FBFBFAA1A1A1A1B1AD +:106CC000B1A1A1A1A1A1A1B1F1F1F1B1B1B1B1A164 +:106CD000FAFABABBB1B1A1A1FBA1A111A1A1A1A1D5 +:106CE000BA11A1A1A1A1A1A1A1A1A1A1A1A1BABAD9 +:106CF000B1A1A1A1A1A1A1A1B1F1B1B1B1B1A1A1D4 +:106D0000555555555555F5B55555F5F5F5FBFBFB61 +:106D1000F5F5FBFBFBFBFBFBF5B5B1B1B1B1B1B1D7 +:106D2000555555B5F5F5B5B55151515151515151D3 +:106D3000FBFBFBFBFBFBFBFBBBB1FBFBFBFBF11121 +:106D4000B1B1B1BBB1B1FBB1B1B1B1B1B1F1F1F11F +:106D50005555515151515151111111B1B1B1B1A10B +:106D6000B1B1B1F1F1F1FBFBB1B1B1111111B1FB55 +:106D7000B111111111B1B1B1B1B1B1B11111111103 +:106D80005151515151515151B1B1A1A1A111111103 +:106D9000FBFBFBB1B1B1B1B1FBFBFBF1FBFBBBFBFF +:106DA000B1B1B1F1F111FBF1B1B1B1B1B111111149 +:106DB00051515151515151511111111111111111C3 +:106DC000A1A1A1A1A1A1A111FBB1B1BABABABAAA5C +:106DD000B1B11111F1F1F1F15151515151515151E3 +:106DE0001111A1BBAAA1B1B111111111A1A1A1A1B0 +:106DF000A1A1111111111111A111111111111111D3 +:106E00005151BBA1A1515151B1B1B1B1B1B1B1B168 +:106E1000B1B1B1FBFBFBF1B1111111F1F1F1F1F1E4 +:106E20005151511111111111B1B1B1B1B1B1F1F112 +:106E3000B1B1B1F1F1F1F1FBF1F1F1F1F1F1F1F1F8 +:106E40005555555151515151B1B1FBB1A1AAA1A113 +:106E5000BAB1B1BBB1A1A1A1F1FBBABAA1B1F1F133 +:106E60001111B1B1B1B1B1F11111111111B1B1A142 +:106E7000B1B1B11111F1BBA1515151515151515108 +:106E8000AABAB1B1A1A1B1A1B1B1FBB1A1A1A1A116 +:106E9000B1FAB1B1B1A111B1BAB1B1B1B1A1BAB147 +:106EA000A1BABAB1BAA1A1B111AAA1A1AAA1A1A1E5 +:106EB00051A55151A5A5A5BAB1F1B1B1B1A1BAAAD7 +:106EC000FAF1B1B1A1AAAAFABAB1BAA1A1FAFFFB2B +:106ED000B1A1A1FAFAFFFBBAA1B1B1A1F1FBFBA1EB +:106EE000B1F1B1B1BAFABABABABAA1A1F1F1FBB132 +:106EF00055555551F5F5B5B1B1B1BBBBBBBBBBFBEE +:106F0000BABAA111F1B1B1BAB1A111F1FBFBFAFA10 +:106F1000B111FFB1B1B1A1A1A111F1FBB1B1B1BAF0 +:106F2000A1A1F1F1B1B1B1B1A1F1F1FFFBB1B1B1E9 +:106F3000A1A1FAFBFBB1A1A1555555B5B5B5A5A5C4 +:106F4000F1AAAAA1A1A1A1A1AAAAAAA1A1A1A1A1B4 +:106F5000FAFAA1A1A1A11111A1A1B1B1B1A111117F +:106F6000B1B1B1A1A1A1A1A1A1A1A1A1A1A1A1A1E1 +:106F700011A1A1A1A1A1A111A1A1A1A1A1A1A111B1 +:106F8000FAFABABABABABAA1A1A1AAAAAAAAAAAA8C +:106F9000111111A1A1A1A1AAA11111111111111178 +:106FA00011A1A1A1A1A11111A1AAAAAAA1AAA1A15D +:106FB000A1A1A1A1AAAAA1A1CD0170CDD56FDD216A +:106FC00014C10606C5DDCB007EC4F670112000DDBD +:106FD00019C110F0C90E0006032154C11120001977 +:106FE000CB7EC2F26FE5D5B7116000ED52CB96C3F0 +:106FF000FC6FE5D5B7116000ED52CBD6D1E110DFC3 +:10700000C93A10C1CB7FCA8B73FE95D28B73D680E1 +:10701000C83D4F060021297009094E23461127005B +:10702000197E23666F3A11C1E96974947450751C16 +:1070300076CD7607774A7705786D787B78A478B532 +:1070400078D278E878FE7821794B795E798379A4D3 +:1070500079797079707970797079707970797079DF +:1070600070897092708970A570A570AA70AA7079E5 +:1070700070797079708270B170CD8B731114C1C347 +:10708000CD70CDAF733E0F18131E0CBBD2F070AF96 +:10709000180A1E0CBBD2F070CDAF737B3211C11138 +:1070A00094C1C3CD701E09BB18161E0ABB28141844 +:1070B0000F1E0DBBCABA70D2F070CDAA73C3C670D2 +:1070C000D2F070CDAF737B3211C111B4C1C5E146AE +:1070D00023C5010900EDB03E2012133E011213AF8B +:1070E0001213121312E521120019EBE113C110E182 +:1070F0003E803210C1C9DD5E0CDD560D13DD730C10 +:10710000DD720DDD6E0ADD660BB7ED52CC0B72DD64 +:107110005E10DD56117BB22007DD36160FC3B67147 +:10712000DDCB006E2014DD7312DD7213C36F713D71 +:107130004F060009097E23666FC9D5DD6E14DD6632 +:1071400015B7ED52F57DF24B71ED4467DD5E0CCD68 +:107150004A74DD5E0ACD56745F1600F17BF26671EB +:10716000ED442802155FE119EBDD7312DD7213DDCA +:107170007E07B7200BDD7E082FE60FDD7716180B94 +:10718000CBBF21B479CD2F71CDD471DDCB0076206A +:1071900025DD7E01E60F4F060021C971094EDD7E17 +:1071A00012E60FB1CD8373DD7E12E6F0DDB6130F6C +:1071B0000F0F0FCD8373DD7E01E60F4F060021CD4B +:1071C00071097EDDB616C3837380A0C0C090B0D0B5 +:1071D000F0DD770EE5DD7E0ECB3FF54F060009F1C1 +:1071E0007EE138140F0F0F0FB728E6FE102005DDE3 +:1071F000350E18E0FE20280BDD340EF6F0DD860893 +:107200003C3801AF2FE60FDD7716C9DD5E03DD5692 +:10721000041A13FEE0D29F72DDCB005E2060B7F24D +:107220005A72D6802803DD860521B8734F060009FF +:10723000097EDD7710237EDD7711DDCB006E2858C7 +:107240001A13D680DD860521B8734F060009097E22 +:10725000DD7714237EDD77151A13D567DD5E02CD49 +:107260004A74D1DD750ADD740BAFDD770EDD770F63 +:10727000DD7303DD7204AFDD770CDD770DC9DD77DB +:10728000111A13DD7710DDCB006E28CC1A13DD77D1 +:10729000151A13DD771418C01AB7F2597218CA21DB +:1072A000B272E5E61F21B6724F060009097E236619 +:1072B0006FE913C31172DC72E1722073E672FD7222 +:1072C000027308730E7314731A732E7349735C730D +:1072D000D47224731ADD8605DD7705C91ADD7702BD +:1072E000C91ADD7708C91AF6E0F5CD8373F1F6FC0B +:1072F0003C2005DDCB00B6C9DDCB00F6C91ADD7731 +:1073000007C9EB5E23561BC9DDCB00EE1BC9DDCBE5 +:1073100000AE1BC9DDCB00DE1BC9DDCB009E1BC947 +:10732000AF3211C1AFDD7700CD7473E1E1C91A4FFF +:10733000131A47C5DDE5E1DD3509DD4E09DD350907 +:10734000060009722B73D11BC9DDE5E1DD4E09068C +:1073500000095E2356DD3409DD3409C91A13C61746 +:107360004F0600DDE5E1097EB720021A771335C22A +:10737000027313C9DD7E01E60F4F060021CD7109AE +:107380007EF60FDDCB0056C0D37FC9C52114C111D5 +:1073900015C101BF003600EDB0C1C521B4730E7F29 +:1073A0000604EDB3AF3211C1C1C93EDFD37FC93E80 +:1073B000FFD37FC99FBFDFFF0000FF03C703900318 +:1073C0005D032D03FF02D402AB02850261023F027E +:1073D0001E020002E301C801AF01960180016A01AB +:1073E0005601430130011F010F010001F200E400CA +:1073F000D700CB00C000B500AB00A1009800900002 +:1074000088008000790072006C00660060005B00FC +:10741000550051004C004800440040003C00390039 +:107420003600330030002D002B00280026002400F9 +:10743000220020001E001C001B001900180016006E +:107440001500140013001200110016006A06082926 +:1074500030011910FAC90608ED6A7C3803BB3803FD +:107460009367B710F37D172FC9028020047C740343 +:1074700001010E8021048C740301010EA002A3A758 +:107480009EA2A59DA0A39B9EA2A018E29406929105 +:107490008F8D18E203802003B0740601020D802155 +:1074A00003E8740601010A80220314750601020A2A +:1074B000EAD574A5A702A504A402A204A0EAD57483 +:1074C000A7A5A4A580E5B074A0049D029EEC0003CE +:1074D000C874A004EBEAC874A5EAC8749BEAC8742F +:1074E000A5A2020402A404EBEA04759B9D9B999853 +:1074F000EA04759E9D9B9980E5E874990496999499 +:10750000999699EBEAFB749BEAFB7494EAFB749BF3 +:10751000999699EBEA4675EC00031475A5020402EE +:10752000A704A9AA02A904A702A504B0EA4675EC1B +:1075300000032C75A5020402A780AA80A080A08069 +:10754000A08006E514759D04809D809D809DA0EB24 +:10755000038020046C750301050D802104A87503C8 +:1075600001010A802204E27503010109EA9775A26C +:107570000204A0029F9F04029D02809F80A580A418 +:1075800080EA9775A70204A902A7A5A4A2A0809FDC +:1075900080A08006E56C75A40204A202A002040289 +:1075A000A5030102A4A208EBEAD075A29D9FA2A2A6 +:1075B0009D9F9DA080A280A080A080EAD075A7A0FA +:1075C000A4A7A4A2A09F9D809B809D8006E5A8758E +:1075D000A0029B9DA0A09B9DA0A5A0A2A5A5A0A246 +:1075E000A5EBEA0A7696809480938093808D808FB5 +:1075F0008091808F80EA0A769B809980988096801F +:1076000099809680998006E5E2759802809680942C +:107610008093809980988096809480EB03802004EA +:1076200038760301060D8021046A76030101098082 +:1076300022049E7603010109EA5976A706A508806F +:1076400002EA59768002AA0202020480E538769E98 +:107650000280A2A580AA80A9EBEA4F76A7A580AEFA +:1076600080AEAF038001EA4F76EBEA8D769796976E +:107670009680969696EA8D768002A5A5A5A50480AB +:10768000E56A76960280969980978096EBEA8376F3 +:1076900097968099809699038001EA8376EBEAB603 +:1076A0007680029B98809B9804EAB676960296961E +:1076B000960480E59E76EAC57680029B998098962E +:1076C00098EAC576EB9902020202800AEB0280205A +:1076D00006E0760301010F802106F1760301010D1A +:1076E000A902A5A9A5A7A4A7A4A280A480A50480F7 +:1076F000E2E10DE4029D049D9B9BE10AE4059602F4 +:10770000809880990480E2028020031A77030106A2 +:107710000D8021033C770301010BE406A202A4A61D +:10772000A7A4A6A7A9A6A7A9ABA7A9ABACE10EE4FD +:1077300005A004E10DA2A4A5A980A5E2A208A4A623 +:10774000A79D049EA0A29D8099E2038020066677F3 +:10775000FD01020D802106B077FD01030A8022069B +:10776000CE7709010509A5020280AC04AA02A9A7E7 +:10777000A5AC80AA04A9A702A7A780AE04AC02AA60 +:10778000A9A7AEAC80AA04A902A7A9AC80B004A99D +:1077900002ACB0AAAE80B104AA02AEB1E401B3B3A8 +:1077A00080B680B5B3B1B3B3800CE402E56677E28E +:1077B000A020A220A410A510E401A002A0800CA08B +:1077C00002A080069D029EA0E403E5B077E28D0250 +:1077D000EC000DCE778A8C8D8F02EC000DD8778C63 +:1077E0008D8F91919191918D8F9192929292928F92 +:1077F00091928F8F8088808A8C8D8F8F80069102E6 +:107800009294E5CE770380200521780000050B8057 +:10781000210556780001030A8022055678070003E7 +:107820000AA50180A5A9AC02AEB3AEACA9A20180A5 +:10783000A2A6A902ACAEACA9A69E01809EA2A502FA +:10784000A9ACA9A5AEA00180A0A4A702A9ACA9A734 +:10785000B0A080ACA0E2990C800299A20C8002A298 +:107860009E0C80029EA0109902809999E201A021AD +:10787000067778FD01040EAABD04EE028021048E75 +:10788000780301040EA02204A0780301040EB501C0 +:10789000B1B5B1B0AEB0AEACAAACAAA9A7A9A7EEDB +:1078A000B1A510E201A02103AE780A01040E98945C +:1078B00001989B02EE01A02202BF781700080E99E2 +:1078C0009B019B9201808001929401948C018080A5 +:1078D00002E201802202DC780300040D9D019EE19A +:1078E0000FA502E6A5A608E201A02202F27809008F +:1078F000040FA9AD01ADA901EC0002F278E201A0EC +:10790000220208790300070E9FA201A29F01A2A5EF +:1079100001A5A201A2A501A5A201A6A901A9A601EE +:10792000E203A020043D790600010EA0211847794A +:107930000900080FA023184779FD00080AAEA50129 +:10794000AAAC02A7A504E2BAC108E201802202554E +:10795000790300070BA50199A79BA99DACE202A0A2 +:107960002008717900000A0B8021027D7900010452 +:107970000EB1B808B8B304B3B104E57179BD02BA69 +:10798000E57D79028821039D790300090F88220390 +:107990009D790301090F00200200180CEE0024025B +:1079A000001C0CE201882304AE790300090FE307F1 +:1079B000000806E2C879CE79D279D579DB79DF790A +:1079C000E979EB79037A137AFEDCBA987601FFDD68 +:1079D000CC02FFDD01EFFEDCBA9801FFFFEE02FFF3 +:1079E000DDFFCCEEBBAAAAEE01FA00CCCCDDDDEEC9 +:1079F000EEEEFFFFFFEEDDDDCCCCBBBBAAAA999972 +:107A0000887701FFFFEEEDDDCCCBAAA998887766D9 +:107A1000543202FFFFEEEEDDDDCCBBBBCCDDDDEE94 +:107A2000EEFFFF00B78E2777233E0010F8C9D5C5BB +:107A3000E51ABE20062B1B10F81807300548060073 +:107A4000EDB8E1C1D1C9E3E3E3E30B78B120F7C9B5 +:107A500077230B5778B17A20F7C91A47131A6F1397 +:107A60001A67D5C5CD6C7AC1D110F1C95E235623F2 +:107A70004E060023CDF87AC90E0746CDDE7A230DD7 +:107A8000F27A7AAF676F010040CDE97AC93EE00E25 +:107A900001B047CDDE7AC93ED0CD0E7B3EA018EFB7 +:107AA000D57C160062E6F8CB27CB12CB27CB125F32 +:107AB000CB3DCB3DCB3D19D119CD067BC9CD237B29 +:107AC000EBAFED6FF630CD157BE60F1003ED67C918 +:107AD000ED677EE60FF630CD157B2B10E4C978F309 +:107AE000D3BF79F680D3BFFBC9F5CD237BF1D3BEDD +:107AF000F50B79B020F7F1C9EBCD237B1AD3BE1378 +:107B00000B79B020F7C9CD187BE3E3DBBEC9F5CD17 +:107B1000237BE3E3F1D3BEC97DF3D3BF7CE63FD340 +:107B2000BFFBC97DF3D3BF7CE63FF640D3BFFBC9A3 +:107B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:107B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:107B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:107B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:107B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:107B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:107B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:107BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:107BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:107BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:107BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:107BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:107BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:107C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:107C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:107C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:107C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:107C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:107C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:107C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:107C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:107C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:107C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:107CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:107CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:107CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:107CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:107CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:107CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:107D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:107D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:107D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:107D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:107D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:107D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:107D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:107D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:107D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:107D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:107DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:107DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:107DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:107DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:107DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:107DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:107E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:107E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:107E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:107E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:107E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:107E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:107E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:107E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:107E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:107E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:107EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:107EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:107EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:107ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:107EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:107EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:107F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:107F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:107F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:107F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:107F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:107F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:107F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:107F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:107F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:107F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:107FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:107FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:107FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:107FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:107FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:107FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:00000001FF diff --git a/Sega - SG1000/rtl/roms/CastleThe(32).bin b/Sega - SG1000/rtl/roms/CastleThe(32).bin new file mode 100644 index 00000000..3b2e61e4 Binary files /dev/null and b/Sega - SG1000/rtl/roms/CastleThe(32).bin differ diff --git a/Sega - SG1000/rtl/roms/Space Invaders (16).bin b/Sega - SG1000/rtl/roms/Space Invaders (16).bin new file mode 100644 index 00000000..72614881 Binary files /dev/null and b/Sega - SG1000/rtl/roms/Space Invaders (16).bin differ diff --git a/Sega - SG1000/rtl/roms/Space Invaders (16).hex b/Sega - SG1000/rtl/roms/Space Invaders (16).hex new file mode 100644 index 00000000..6b0f80a1 --- /dev/null +++ b/Sega - SG1000/rtl/roms/Space Invaders (16).hex @@ -0,0 +1,1025 @@ +:10000000F33100C4ED56C38D000000000000000075 +:1000100000000000000000000000000000000000E0 +:1000200000000000000000000000000000000000D0 +:100030000000000000000000C357050000000000A1 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:10006000000000000000F53A41C0FE10381CAF321D +:1000700041C03A04C0CB6F3E00280C3A43C0B73EA3 +:100080000028043A42C02F3242C0F1ED45F3CDDBE7 +:100090003301FF032100C01101C03600EDB0CD4493 +:1000A00005CDD704CD9F04CDE604CD2305CD37057E +:1000B00021E241CDC504F3CDD807F3CD5A17210471 +:1000C000C0010000AF3200C2FBCB8ECDDE023A0F82 +:1000D000C0E630FE30204E0C200404C2C717CBCE41 +:1000E000CDDE023A0FC0E630FE3028DCCB8ECBD618 +:1000F000CBEEF3CDB503CDEF07CDF91B3E0332C2F6 +:10010000C0CDFE16CD6B06CD3917CD70072148C086 +:1001100011C3C0017B00EDB021A220113EC101C07E +:1001200000EDB01841F3CBEECDEF07F3CDB503CD25 +:10013000F91B3E0332C2C0CDFE16F3CD3917CD6B8D +:1001400006CD70071820FBAF3243C03200C2CDDEAF +:1001500002F33A04C0CB6F283F3A8AC0B7201A3A5C +:1001600084C0B7CCEA023E203210C0CD1A0DFBCDC0 +:10017000DE02F33A8AC0B72862F32104C0E5CB4E11 +:100180002008CDCA031106C01806CDCA03110BC042 +:10019000CD411DE1CB56200FFBAF3200C2CDDE02B8 +:1001A000F3CD9103C3BA00CB4E200ACB6620E9CB36 +:1001B000DECBCE1808CB5E20DFCBE6CB8EF3C3FBC5 +:1001C00002F33A49C0F53AC2C0F5CDA803F132C2F4 +:1001D000C0CDFE16F13249C0C33A012104C03AC273 +:1001E000C0B72895CB5628163A47C0B72810AF326B +:1001F00047C0CB4E2004CBCE18C3CB8E18BF3A8459 +:10020000C0B728BD3EA83220C0CD4D043A84C0C638 +:10021000043203C23E873200C23243C0FBCDDE024D +:100220003A42C0B720F62116C0343A04C0CB6F2042 +:1002300025F3CDA305FB3A0FC0CB67CA9801CB6F5E +:10024000CA98013A04C0CB4F2007CBCF3204C01864 +:10025000E0CB8F3204C0CD0808CDCA08CDE308CD6D +:100260009A093A17C0B720503A86C0B7F2A6023AA8 +:1002700084C0B7200D3200C23A30C0FEE0CA460149 +:100280001833CDC309CDDA09CDCE0A3A8AC0B728D2 +:1002900015CD6C043E823200C23E0132C2C03E7FA8 +:1002A0003217C0C31C023A84C0B72809CD260CCD32 +:1002B000350DCDCF0DCDF80FCD4B13CD950DCD8C8C +:1002C0000CCD2E10CD3914CD0415CD94163AC2C0E4 +:1002D000B7CA46013A47C0B7C24601C31C023A46F4 +:1002E000C0B728FA3E003246C0C9210000DDE5DD76 +:1002F000E1DDE5DDE12B7CB520F3C9CD520321C35F +:10030000C01148C0067B4E1AEB7112EB231310F696 +:10031000210013113EC106C0CD3E134F1AF5CDC5C5 +:1003200004F1D3BE7912231310EE013800210FC05F +:100330001110C03600EDB021403801C002CD2905B2 +:10034000CDF91BCD3917CD70073AC2C0CDFE16C30B +:10035000660121463A1E60CD5D0321663A0604C55A +:100360000603CD3E13BBC474031C2310F5232323C3 +:10037000C110ECC9E5D5C56B26002929291100104B +:10038000190608CDC504AFD3BEF5F110FAC1D1E10D +:10039000C93A04C0E6013204C001F9012105C011C7 +:1003A00006C03600EDB0180D01B400210FC01110C9 +:1003B000C03600EDB021403801C002CD2905210032 +:1003C0001311A220CD9A04C38804FBCD1A0DCDDEF3 +:1003D00002F3AF32C2C0CDFE1601030B21EB38CDC4 +:1003E0003304210C39161C0609CDC5047AD3BEF599 +:1003F000F11410F83A04C0CB572825CB4F2805112B +:10040000851C180311761C01030C214B39CD3304D4 +:10041000216C39CDC504060A1AD3BEF5F11310F8C4 +:10042000CDEA02CDEA02CDEA02CDEA02CDB503CD96 +:100430008804C9C5CD4204C10DC8D511200019D109 +:1004400018F1CDC504AFD3BEF5F110FAC9211817C4 +:1004500011BA2401E800CDB80421C23A16E3061D02 +:10046000CDC5047AD3BEF5F11410F8C921C02B16FE +:100470008006C0CD7B0421C03306C0F3CDC5047A0D +:10048000D3BEF5F110F9FBC921C02B11622901C0BF +:1004900000CDB80421C03311622901C00018191120 +:1004A000B0040180081AD3BF79D3BF130C10F6C96A +:1004B00002820EFF03760300CDC5041AD3BE130BD0 +:1004C00078B120F7C97DD3BF7CC640D3BFC91AD34A +:1004D000BEF5F11310F8C90602C501FFFF0B78B194 +:1004E00020FBC110F4C9210000CD1B05210008CD5F +:1004F0001B05210010CD1B0521002011A225CD1EBA +:100500000521002811A225CD1E0521003011A225AC +:10051000CD1E0521001811A22D180311A21D0100E6 +:100520000818952100380100031E00CDC5047BD3B7 +:10053000BE0B78B120F8C921003B0180001EE0CD40 +:10054000C50418EA3E92D3DF2104C0CBC6AFD3DE88 +:10055000DBDEB7C8CB86C9F3F5E5C5D5DDE5FDE53E +:10056000D9E5C5D508F5DBBF2141C07EFE103001BD +:1005700034237EB72805CDDB331813CDA305CDC7B3 +:1005800019CDFA0EF3CD260DCDCC1CCD7A303E011F +:100590003246C0F108D1C1E1D9FDE1DDE1D1C1E1CF +:1005A000F1FBC93A04C00F381D0F3808DBDCF6C078 +:1005B000320FC0C9DBDCE6C047DBDDE63F80070762 +:1005C000F6C0320FC0C90F38533E07D3DEDBDCF66E +:1005D000C0320FC04F3E04D3DEDBDCCB6F2002CB3A +:1005E000893E05D3DEDBDCCB6F2002CB913E06D308 +:1005F000DEDBDCCB6F2002CB99CB772002CB813EB8 +:1006000002D3DEDBDCCB672002CBA13E03D3DEDBF3 +:10061000DCCB672002CBA979320FC0C93E07D3DEFD +:10062000CDB4054F3E01D3DEDBDCCB572002CB91AE +:10063000CB5F2002CB893E02D3DEDBDCCB4F200236 +:10064000CB813E03D3DEDBDCCB572002CB993E05CA +:10065000D3DEDBDDCB5F2002CBA93E06D3DEDBDDC4 +:10066000CB572002CBA179320FC0C92149C0347EBB +:100670003D281B3D28263D28313D283C3D28393D5D +:1006800028443D284F3D285A3D28577718DDCD5343 +:1006900007010308CD4A072185381852CD530701B9 +:1006A0000307CD4A0721A5381844CD530701030697 +:1006B000CD4A0721C5381836CD5F07010205CD4563 +:1006C0000721E5381828CD5F07010204CD45072131 +:1006D0000539181ACD5307010304CD4A07210539FE +:1006E000180CCD5307010303CD4A072125391140CA +:1006F00000224AC0224CC019224EC0192250C019F3 +:100700002252C0192254C0218BC0226EC0110B008E +:10071000192270C0192272C0192274C0192276C021 +:10072000217EC00606360B2310FB363723361023F6 +:1007300036FF2336053E3B3203C23E013219C03E2E +:1007400000321AC0C93E013279C078327DC0793298 +:100750007AC0C9212230118BC0013700EDB0C92108 +:100760002230118BC0010E377E8112231310F9C97C +:100770002A54C0ED5B76C03A83C0B7C4B4072A528E +:10078000C0ED5B74C03A82C0B7C4B4072A50C0ED54 +:100790005B72C03A81C0B7C4B4072A4EC0ED5B702B +:1007A000C03A80C0B7C4B4072A4CC0ED5B6EC03AF3 +:1007B0007FC0B7C8060BCDC5040E021AFE2028085C +:1007C000D3BEF5F13C0D20F8C501000A0B78B1202D +:1007D000FB232313C110DFC9210338115930061A36 +:1007E000CDC5041AD3BE1310FA212D38CDF8072138 +:1007F0002438CDF807213638013006CDC50479D329 +:10080000BEDDE5DDE110F8C93A7FC0B7280C2A4CFF +:10081000C0ED5B6EC00E02CD5E083A80C0B7280CFA +:100820002A4EC0ED5B70C00E01CD5E083A81C0B7A4 +:10083000280C2A50C0ED5B72C00E01CD5E083A82D2 +:10084000C0B7280C2A52C0ED5B74C00E00CD5E0804 +:100850003A83C0B7C82A54C0ED5B76C00E00060BC1 +:10086000F37DD3BF7CD3BFF5F1DBBEFBFE903854E4 +:100870001AB72850AF12E52A6CC07CB52805C5CD43 +:10088000B309C1E1226CC03E0A3286C0E52184C0B2 +:10089000352103C2353A49C03D20123A48C03D20B7 +:1008A0000C79FE02200778FE0620020E07C5D53A15 +:1008B00004C0CB4F20051105C01803110AC0CD8F0D +:1008C0001CD1C1E11323231097C9217FC0118BC014 +:1008D0000E05060B36001AB72801341310F8230D45 +:1008E00020F0C9218BC03A89C05F1600193A7EC03A +:1008F0004F3A87C047110B00E57EB7201F1910F94A +:10090000E123E5217EC0352189C0343A79C0B7287A +:1009100005217AC03434E10D20DE1801E1218BC0BD +:100920003A88C05F3E0A935F1600193A7EC04F3A7C +:1009300087C047110B00E57EB7201F1910F9E12B86 +:10094000E5217EC0352188C0343A79C0B720052121 +:100950007AC03434E10D20DE1801E1218BC03A87E2 +:10096000C0FE0128084705110B001910FD3A89C087 +:100970005F1600193A7EC0473A87C04F11F5FFE570 +:100980007EB720142310F9E119E52187C035217DB8 +:10099000C03434E10D20E8C9E1C92186C07EFEFFE4 +:1009A000C835C0E5CDB009E135210000226CC0C9D1 +:1009B0002A6CC00602F3CDC5043E20D3BEF5F1106B +:1009C000F8FBC92178C07EB7C847117EC0C5131097 +:1009D000FDC11AB7C01B3510F9C93A85C03DC03AF0 +:1009E00078C0B7C0327CC03A79C0B72059217BC0EB +:1009F0007E2FE60177200B110100CDB70A0EFEC352 +:100A0000830A3A7AC0B7206A3A84C03D20183A7DFA +:100A1000C0FEFFCAA40AFE02200C2182C07E4F2322 +:100A20007E81B7C2AB0A3E013279C0327CC0217DE3 +:100A3000C07EB720063C328AC0185735CDBF0ACDDC +:100A4000B40A0E0C183D217BC07E2FE601770EFE06 +:100A500020313A7AC0B720143279C03C327CC021B0 +:100A60007DC07EB720143C328AC0182611FFFFCD0E +:100A7000B70A217AC0350E02180935CDBF0ACDB4A8 +:100A80000A0EF4218BC006377EB728028177231027 +:100A9000F7C9CDB40A218BC0018C377EB72801710C +:100AA0002310F8C93E01328AC018053EFF327DC0CE +:100AB000AF327BC01120002A4AC019224AC0C93A6D +:100AC0007EC05F3E0B93871E0583327AC0C92185A5 +:100AD000C035C02178C07EB720033E05773D287120 +:100AE0003D28543D28373D281A353A83C0B728138E +:100AF000CD660B2A4AC0110001192254C0ED5B7665 +:100B0000C01874353A82C0B72813CD660B2A4AC084 +:100B100011C000192252C0ED5B74C0185A353A81D9 +:100B2000C0B72813CD660B2A4AC011800019225085 +:100B3000C0ED5B72C01840353A80C0B72813CD664F +:100B40000B2A4AC011400019224EC0ED5B70C0183C +:100B500026353A7FC0B7C8CD660B2A4AC0224CC0A2 +:100B6000ED5B6EC018112185C087773A84C03DC007 +:100B70003A79C03DC835C93A7CC0B7206E3A7BC0CF +:100B8000B720683A79C0B72041D511130019D1E5D3 +:100B9000EB110A0019EBE1060BF3CDC5041AB728D7 +:100BA00022F53A84C03D200B3A78C0FE0338043E5B +:100BB000D018023E20D3BEF5F1F1CD040CE523CDD3 +:100BC0000F0CE11B2B2B10D1FBC9060B1AB72814F5 +:100BD000F3F5CDC504F1CD040C3E20D3BEF5F1E50F +:100BE000CD0F0CE113232310E3FBC9060BF3CDC596 +:100BF000041AB72808CD040CE5CD0F0CE11323230C +:100C000010EBFBC90E02D3BEF5F13C0D20F8C9D59F +:100C100011E0FF19D1F3CDC5043E200E02D3BEF57D +:100C2000F10D20F9FBC921B7C01156C00E0B060506 +:100C3000E57EB7281BE5D5114AC0131310FC1A6FC7 +:100C4000131A673E0B91280547232310FCD1180C7B +:100C5000D511F5FF19D110D9E5210000D57D12136A +:100C60007C12D1E11313E1230D20C3C9E0FF000D75 +:100C7000E0201007E0001C0FE000200FE000240F30 +:100C8000E000280FE0FF3807E0FF480F3A10C0FEF1 +:100C900020C03A1DC0FEFF20392112C07EFE05286B +:100CA000202BE57EFE30CCAF0CE134C02334C9F3F9 +:100CB0002160380620CDC504AFD3BEF5F110FAFB94 +:100CC000C93A84C0FE08D83E853200C2763E18324A +:100CD0001CC0DD211CC03A13C0B728112114C0CBA1 +:100CE0004E2803CB8EC934DD35012815C92114C027 +:100CF000CB4E2803CB8EC934DD34013EFFDDBE016F +:100D0000C03E863200C276DD3601FFDD3600E0AF40 +:100D1000DD77023212C03214C0C9111CC0216C0C24 +:100D2000012000EDB0C921003B111CC00620CDC53B +:100D300004CDCE04C9FD2124C0FD7E00FEE0C03AF2 +:100D400004C0CB6F280F3A0FC0E63047C8FE3020F2 +:100D500009323CC0C93A18C018EF3A3CC0B8C8784C +:100D6000323CC03E813200C23A21C0FD7701FD36DF +:100D700000A8FD36021C3A48C03CFE1820023E097D +:100D80003248C03A1DC0FEFFC03A48C0CB572001D0 +:100D9000AF3213C0C9FD2124C0FD7E02FE342810ED +:100DA000FD7E00FEE0C8FE102806D604FD7700C9CF +:100DB000FD7E02D61C2005FD360234C93A3DC03CFA +:100DC000323DC0FE10D8AF323DC0FD3600E0C9FD57 +:100DD0002128C01620CDED0DFD212CC01624CDED0F +:100DE0000D3A84C0FE08D8FD2130C0162CFD7E00CF +:100DF000FEE0C02115C0347EF53A84C0C69047F1AC +:100E0000B8D836003A21C021A002CB4728013DC600 +:100E100007E6F80F0F0FD55F1638190611CD2F13FF +:100E2000FE783804FE90384211E0FF1910EFD1D55A +:100E3000ED5FFE0B3804D60B18F83C470E0B21561D +:100E4000C07EB728041002180723230D20F318ECE6 +:100E50005F237E57EBCD2F13E603FE012806FE022B +:100E6000280618062B3D1802233CD1E603FE012874 +:100E7000BEFE0228BAF57CE60767CB15CB14CB156E +:100E8000CB14CB15CB14F1FE0328123A79C0B72846 +:100E9000073EFE850EFB18177D0EFE18123A79C02C +:100EA000B728073EFA850EBF18053EFC850EEF47B2 +:100EB0007AFE20782806FDBEFD2001C9FD7701CB12 +:100EC00004CB04CB047CC608F5FE903823FE993091 +:100ED0001FC5CD1813C1FE603816FE783012C50E3E +:100EE00000CD3B11C10608CD2F13A1CD0D1310FA73 +:100EF000F1C608FD7700FD7202C9FD2128C0162049 +:100F0000CD120FFD212CC01624CD120FFD2130C0B3 +:100F1000162CFD7E02FE342843FD7E00FEE0C8FE56 +:100F2000B230335F3E24BA7B20033C18093A16C026 +:100F3000CB477B28013C3CFD77007AFE202808FD4A +:100F4000CB00562802C604FD7702DD2124C0DD7ED9 +:100F500000FEA83829C9FD360234184D7AFE202833 +:100F600009FE24280A2140C01808213EC018032188 +:100F70003FC0347EFE10D8AF77FD3600E0C9FD9645 +:100F800000281AD0FD7E00DD9600FE08D0DD7E012F +:100F9000FDBE01C0DD360234FD360234C9DD7E01FE +:100FA000FDBE01C0DD360234C9FD7E00CD18130E32 +:100FB00000CD3B113E06856F78E607280CFE02281F +:100FC00015FE04281E3EEA181C3EFACDE50F110856 +:100FD00000193EBF180F3EAFCDE50F11F8FF193EC7 +:100FE000FE18023EABF5CD2F134FF1A1F5F3CDC5A1 +:100FF00004F1D3BEF5F1FBC93A17C0B7C0DD21201B +:10100000C03A04C0CB6F20053A18C018033A0FC08D +:10101000E60CC8CB57280DCB5FC0DD7E01FED8C8DB +:10102000DD3401C9DD7E01FE20C8DD3501C9FD21A9 +:1010300024C0FD7E00FEE0C8CD1813B7C8FE60D8FE +:10104000FE78D24B13CD3B1178E607CAD5103D2868 +:101050006F3D28573D28493D283B3D282D3D28150B +:10106000DD214D12CD4D11CAD911CDEA10C8DD21B7 +:101070005212C35711DD215612CD4D11CAEC11CDBC +:10108000FC10C8DD215B12C35711DD215F12CD4D6D +:1010900011CAFF11C9DD216412CD4D11CA0612C952 +:1010A000DD216912CD4D11CA0D12C9DD216E12CD9F +:1010B0004D11CA1412CD0B11C8DD217312C3571183 +:1010C000DD217712CD4D11CA2712CD1D11C8DD21AA +:1010D0007C12C35711DD218012CD4D11CA3A12CDB9 +:1010E0002C11C8DD218512C3571178FE3FC8FE6F51 +:1010F000C8FE9FC8FECFC823232323C978FE3EC85D +:10110000FE6EC8FE9EC8FECEC818EC78FE2AC8FE49 +:101110005AC8FE8AC8FEBAC811F4FF19C978FE2958 +:10112000C8FE59C8FE89C8FEB9C818EC78FE40C888 +:10113000FE70C8FEA0C8FED0C818BC6F26002929C2 +:101140002911001019CB51C811040019C9DD56002E +:10115000CD9211B7C8DD23CD2F13DDA600CD0D1321 +:10116000DDA601CD0D13DDA602CD0D13DDA603CD49 +:101170000D133E01B7C9DD5600CDBD11B7C8DD2343 +:1011800018D5DD5600CD2F134FA2B9C8FD36023455 +:1011900018CBFD7E00FE902002AFC9E5FE98200628 +:1011A000D511A8FF19D12BCD2F134FA2B92003E1E0 +:1011B000AFC9CD0D133E01E1FD360234C9E5C506C8 +:1011C00004CD2F134FA2B920072310F5C1E1AFC9F9 +:1011D000C1E1FD3602343E01C9DD218912CD76110F +:1011E000C8CDEA10C8DD218E12C35711DD2192123D +:1011F000CD7611C8CDFC10C8DD215B12C35711DDBF +:10120000219712C37611DD219C12C37611DD21A135 +:1012100012C37611DD21A612CD7611C8CD0B11C8EF +:10122000DD217312C35711DD21AB12CD7611C8CD6C +:101230001D11C8DD21B012C35711DD21B412CD76C6 +:1012400011C8CD2C11C8DD21B912C35711FAF0F81D +:10125000F0F87F3F7F3FEAF1E0F1E87FFF7FFFEAB0 +:10126000C1E0C1E0ABC583C5A3AB07830783AF175C +:101270000F178FFFFEFFFEAF1F0F1F0FFCFEFCFEC0 +:10128000FAFCF8FCFA5F3F5F3FFDF0F8F0F87F3FB3 +:101290007F3FFBF0E0F0E0F7C1E0C1E0EFC183C1C8 +:1012A00083DF07830783BF070F070F7F1F0F1F0F02 +:1012B000FCFEFCFEFEFCF8FCF81F3F1F3F47834787 +:1012C000ABD1E0D1EAF4F8F4FA7F3F7FBF1F0F1FE4 +:1012D000AFFDFEFDFE418241AAD0E0D0EA7FBF7F94 +:1012E000BFF4F8F4FA1F2F1FAF070B07ABFDFEFD8D +:1012F000FE01800180C0E0C0E07F3F7F3FF0F8F05A +:10130000F81F0F1F0F07030703FCFEFCFEF3F5CDCC +:10131000C504F1D3BE2318174FE6F86F260029291C +:10132000FD7E0147C607E6F80F0F0F5F163819F369 +:101330007DD3BF7CD3BFF5F1DBBEF5F1FBC97DD317 +:10134000BF7CD3BFF5F1DBBEF5F1C9FD2124C0FDA3 +:101350007E00FEE0C8CD1813B7C8FE78D8FE90D046 +:101360000E07CB4728012BCB4F2047119190FE81D0 +:101370002838FE8D2834FE80280FFE8C280BCB47A2 +:10138000201078A1FE01C8186D78A12869FE0330ED +:1013900065C9FE79280CFE85280878A1C8FE0338A7 +:1013A00055C978A1C8FE04384DC978A1C8FE0338D4 +:1013B00045C9119392FE822825FE8E2821FE83289E +:1013C00026FE8F2822CB472826FE7B280CFE872866 +:1013D0000878A1C8FE07C8181D78A1C8181878A1F8 +:1013E0002814FE072810C978A1C8FE07D01807786E +:1013F000A12803FE06D8F3CDC5047AD3BEF5F17B50 +:10140000D3BEF5F1FB3A84C0FE01280A3E833200C8 +:10141000C2FD3600E0C93E833200C2763244C0FDD0 +:101420007E00FE9830E63230C0FD7E013231C03E93 +:101430002C3232C0FD3600E0C9DD211CC03A10C09C +:10144000FE202027FD7E00FE18C0FD7E01D6074746 +:10145000DD7E0190D8FD7E01C607DD460190D83EB5 +:10146000843200C2763A48C03245C03A10C0CB4FF1 +:101470002006DD3602081804DD36020C3D280B324A +:1014800010C0FE1FC0FD3600E0C9216038DD7E01BE +:10149000E6F80F0F0F5FAF57193A45C0FE17282D1A +:1014A000FE0C281BFE0D281EFE102813FE11280F0F +:1014B000FE132812FE1628071130310E04181311DE +:1014C00035200E03180C1135310E05180511303377 +:1014D0000E06F3CDC5047AD3BEF5F17BD3BEF5F18C +:1014E0003E30D3BEF5F1FB3A04C0CB4F2808110AB9 +:1014F000C0CD8F1C18061105C0CD8F1C3E203210A8 +:10150000C0C3070DFD2128C0CD1915FD212CC0CD6C +:101510001915FD2130C0C3B215FD7E02FE34C8FD91 +:101520007E00FEE0C8CD1813FE60DA6016FE78D2A9 +:101530006016CD3B1178E607FE00281CFE02282C21 +:10154000FE06280ADD21BD12CD82112833C9DD2116 +:10155000C112CD82112830C9DD21C512CD821128DA +:101560002DCD2C11C8DD21C912C35711DD21CD129B +:10157000CD8211282BCD0B11C8DD21D112C35711FB +:10158000DD21A212C35711DD219812C35711DD21AD +:101590008A12CD5711CD2C11C8DD218E12C35711DF +:1015A000DD21AC12CD5711CD0B11C8DD21B012C316 +:1015B0005711FD7E02FE34C8FD7E00FEE0C8CD1846 +:1015C00013FE60DA6016FE78D26016CD3B1178E625 +:1015D00007FE002826FE022836FE06280ADD21D551 +:1015E00012CD8211283DC9DD21D912CD8211283AB0 +:1015F000CDFC10C8DD21DD12C35711DD21E112CD74 +:1016000082112838CD2C11C8DD21E512C35711DD18 +:1016100021E912CD82112836CD0B11C8DD21ED1242 +:10162000C35711DD21F112C35711DD21F512CD573A +:1016300011CDFC10C8DD21F912C35711DD21FD12B7 +:10164000CD5711CD2C11C8DD210113C35711DD2158 +:101650000513CD5711CD0B11C8DD210913C3571147 +:10166000FD7E00FEAAD8FEADD03A17C0B7C0FD7E01 +:1016700001D6073001AF473A21C0B8D847FD7E01F7 +:10168000C607B8D83E7F3217C0FD3600E03E823232 +:1016900000C276C93A17C0B7C8DD2120C03A17C0CA +:1016A000CB5F2806DD3602181804DD360214211738 +:1016B000C035C03AC2C03D32C2C0C83A04C0CB6FC8 +:1016C0002837CB57201C3A44C0B7C03AC2C0F3CD2C +:1016D000FE16FBDD360120DD3602103E873200C2E9 +:1016E00076C93A04C0CB4F2006CB6720D91804CB6B +:1016F0005F20D33E013247C0C9AF32C2C0C94721C3 +:10170000E23ACDC50478C630D3BE23230511CCCB35 +:10171000CDC50478FE053019B7280C7AD3BEF5F193 +:101720007BD3BEF5F110F4AFD3BEF5F1D3BEF5F126 +:10173000C90604CD271710FBC921463A1E60CD44C7 +:101740001721663A0604C5CDC50406037BD3BE1C2B +:1017500010FA01060009C110EDC9F3169421A7384B +:101760000605CDBA1721C7380605CDBA1721E838C6 +:10177000060FCDBA17210839060FCDBA172128391F +:10178000060FCDBA1711F21821A6390614CDAD17E0 +:1017900021EF390602CDAD1721263A0614CDAD173B +:1017A00021A23A061ACDAD1721C23A061DF3CDC5C6 +:1017B000041AD3BEF5F11310F8C9F3CDC5047AD3DA +:1017C000BEF5F11410F8C9F3CDBC19115319218ECF +:1017D000380604CDAD1721C938060ECDAD17212529 +:1017E000390617CDAD17218939060ECDAD1721C9A0 +:1017F00039060ECDAD1721093A060ECDAD17214998 +:101800003A060ECDAD17F321B4191134C00108000A +:10181000EDB02104C0CBF6FBCB8ECDDE023A0FC07B +:10182000E630FE30C29801E5F3CD4418FBE1CB76FB +:10183000CA2B01CBCECDDE023A0FC0E630FE3028F7 +:10184000D7C39801DD2134C0219138CD3E13FE2F3E +:101850002828FE2C280BDD7E06FE48283EFE4C285C +:101860005EDD7E013CFEFF2878DD7701CB57280541 +:10187000DD36023CC9DD360238C9DD3501DD7E01C9 +:10188000FE8820E8DD360240DD7705DD36042021C4 +:101890009138CDC504AFD3BEF5F1C9DD3401DD34D7 +:1018A00005DD7E05FEFF2009DD360244DD36064CEF +:1018B000C9CB572805DD360240C9DD360244C9DDF3 +:1018C0003501DD3505DD7E05FE8820E5219138CD29 +:1018D000C5043E2CD3BEF5F1DD3604E0DD36023C16 +:1018E000C9DD3600E0DD3604E03A04C0CBB732048F +:1018F000C0C9090ADA0B200C0920DA0D0EDD0D2013 +:101900000F0A0D0DDC10DCDD090ADA0B20E00920DE +:10191000DA0D0EDD0D200F0A0D0DDC1021242D1C1B +:101920002D141D15201C1D1E1FD93A20161D2D1605 +:10193000212017181918241F2724211C241D1E1EBE +:101940001F28201C1D1E1FD93A203B3C3D3E20175E +:1019500018252627151D2F29271D2A1F202D142263 +:101960001D281F24295F20D1D2D3D4D5205B5C5DF4 +:101970005B5ED2D520CD5BCECFD5205F3F402048E7 +:10198000204920414243444546428E8F20542052F4 +:10199000532055565758595A7E7F201320E0112066 +:1019A00009DC12100DDA8687202E20171A20272135 +:1019B0002D14162920FF3803E0FF4806F321403894 +:1019C000016002CD2905C93A04C0CB6FC03A43C0BB +:1019D000B7C82A19C07C2D2219C0201BF5AF573A71 +:1019E0001BC05F21FB19195E2356EB2219C03A1B5D +:1019F000C03C3C321BC0F13218C0C917FF29F703A5 +:101A0000D703DF02DB18FB05FF1EF701D703DF0357 +:101A1000DB18FB04FF0CF702FF15FB03FF21F701A6 +:101A2000D703DF04DB17FB05FF08F70FFF17F702EB +:101A3000D703DF02DB1CFB04FF05F704FF0FFB06E7 +:101A4000FF26F701D703DF03DB14FB04FF19F703BD +:101A5000D703DF23FF0EFB08DB11FB06FF1AF7019C +:101A6000FF02DF04DB11FB03FF19F701D704DF01DD +:101A7000DB28FB04FF24F709D71CF706FF0AFB133A +:101A8000FF1BFB09DB03FB11FF37F702DF05DB144C +:101A9000FB03FF17F703DF04DB0CFB03FF10F70169 +:101AA000D703DF05DB0EFB04FF12F704DF03DB0FB8 +:101AB000FB04FF13F703DF03DB66FB06FF0CF701F4 +:101AC000D703DF03DB15FB07FF05F706D701F72870 +:101AD000FF15F703FF05DF04D729F70AD723F7041B +:101AE000FF27FB08DB31FB06FF12F703D705DF0FEB +:101AF000FF3DFB0BDB0BFB0DFF28F702D704DF01DB +:101B0000DB12FB04FF11F704DF04DB0EFB04FF1301 +:101B1000F701D703DF03DB0EFB04FF14F703DF0439 +:101B2000DB0EFB04FF0DF707D718FF2CFB03DB04CC +:101B3000DF11F703FF11FB01DB04DF02D717F70307 +:101B4000FF16FB02DB04DF18F704FF12FB05DB02C4 +:101B5000DF01FF18F704FF13FB01DB04DF02D75698 +:101B6000F703D703DF01FF18FB05FF1CF701D703BD +:101B7000DF03DB10FB04FF16F703DF03DB16FB04B8 +:101B8000FF13F704D703DF02FF1BFB06FF26F70B4B +:101B9000D706F705FF0FFB0ADB14FB01FD25FF103D +:101BA000F704D703DF01DB1AFB03FF17F701FF037D +:101BB000DF03DB37FB0CFF0ADF28FF38F702FF03E8 +:101BC000DF05DB12FB04FF14F702FF03DF05DB0F69 +:101BD000FB05FF12F705DF02DB17FB05FF0EF70120 +:101BE000D705DF01DB13FB05FF12F708D708FF1647 +:101BF000FB06FF0EF706D70AFF3A04C0CB6FC811E9 +:101C0000711CCB4F280311801C210939CDC5040656 +:101C10000F1AD3BEF5F11310F80605C52124383A82 +:101C200004C0CB4F2803213638CDC50406063E201C +:101C3000D3BEF5F110FACD681C2108C01124383A42 +:101C400004C0CB4F2806210DC01136380606CD61E1 +:101C50001DCD681CC110C4210939CDC504060F3E35 +:101C600020D3BEF5F110FAC901FF600B78B120FB5B +:101C7000C909080EE22009080EE2DEDD20DF0CE1D2 +:101C800009080EE22009080EE2DEDD20DFE0E13A7D +:101C900004C0CB6FC83E01121321B41C7987814F59 +:101CA0000600091A86271223131A8E271223131AE5 +:101CB0008E2712C9100000200000300000500000E4 +:101CC0000001005001000003000015001105C01ABA +:101CD000B72834AF12132108C01124380606CD618D +:101CE0001D3A09C0B7C0212638CD3E13FE31C0DBF6 +:101CF000BEFE35D83209C03AC2C03C32C2C0CDFEA9 +:101D0000163E8B3200C2C9110AC01AB7C8AF1213EF +:101D1000210DC01136380606CD611D3A0EC0B7C080 +:101D2000213838CD3E13FE31C0DBBEFE35D8320E31 +:101D3000C03AC2C03C32C2C0CDFE163E8B3200C299 +:101D4000C92100C00603A7D51A9E231310FAD1D8C3 +:101D50002100C0EB010300EDB02102C0112D3806B7 +:101D600006AFEBCDC50408CB3830030418081A0FB2 +:101D70000F0F0FCD881D1ACD881D1B10F108C02B29 +:101D800008CDC50408AF180AE60FC54F08B1C12831 +:101D90000708C630D3BE23C908F53E20D3BE23F1C1 +:101DA000C97F0000000000000000000000000000EB +:101DB0000000000000000000000000000000000023 +:101DC0000000000000000000000000000000000013 +:101DD0000000000000000000000000000000000003 +:101DE0000000E0E0E0E0E0E0FE00FCE6E6E6FCE02B +:101DF000E000E6E6E6E6E6E67C00E6E6E6FEE6E6A7 +:101E0000E6003878383838387C00FE3838383838CA +:101E10003800387CEEC6FEC6C600FCE6E6FCE6E608 +:101E2000FC00C6E6F6DECEC6C6007CC6CED6E6C64A +:101E30007C00383838383838380000FCFC00FCFCAE +:101E40000000C6E6F6DECEC6C600E0E0E0E0E0E078 +:101E5000FE00FE383838383838001C3C1C1C1C1C6E +:101E60003E007CC6C67E06E67C00FE060C183838AE +:101E700038007CC6CED6E6C67C007CC6C60E3C705A +:101E8000FE007CE6E0EEE6E67C00387CEEC6FEC6B0 +:101E9000C600C6EEFEFED6C6C600FEE0E0FCE0E0F0 +:101EA000FE0000000000000000007CE6E6E6E6E63A +:101EB0007C00C6C6C6EE7C381000FEE0E0FCE0E028 +:101EC000FE00FCE6E6E6FCECE6007CC6C67CC6C688 +:101ED0007C00FEE0E0FC06C67C00FCE6E6E6FCE0FA +:101EE000E000F8E6E6E6E6E6F8007CE6E07C0ECE0A +:101EF0007C007CE6E0E0E6E67C00E0E0E0E0E0E0BC +:101F0000FE00E6E6E67C38383800383838383838AD +:101F1000380000FCFC00FCFC00003838387CCECED9 +:101F2000CE007CC6CED6E6C67C001C3C1C1C1C1C0D +:101F30003E007CC6C60E3C70FE007CC6061CC6C6B3 +:101F40007C001C3C5C9C9CFE1C00FEE0E0FC06C689 +:101F50007C007CE6E0FCE6E67C00FE060C183838E7 +:101F600038007CC6C67CC6C67C007CC6C67E06E63B +:101F70007C003C429DB1B19D423C7EFEE0FC7E0671 +:101F8000FEFC7EFEC0FCFCC0FE7E7EFEC0DEDEC629 +:101F9000FE7E18183C3C6E66DFDF071F3F6DFF7D3D +:101FA0003810E0F8FCB6FFBE1C08C6EEFEFED6C632 +:101FB000C600E6E6E67C383838007CE6E07C0ECEEB +:101FC0007C00FE38383838383800FEE0E0FCE0E0CD +:101FD000FE00FCE6E6E6FCECE600E6E6E67C3838E9 +:101FE000380000FCFC00FCFC00007CC6C61C383835 +:101FF0000038E6E6E6FEE6E6E600383838383838F7 +:102000003800000000FCFC0000007CE6E07C0ECE06 +:102010007C007CE6E0E0E6E67C007CE6E6E6E6E6E0 +:102020007C00FCE6E6E6FCECE600FEE0E0FCE0E03E +:10203000FE007CC6061CC6C67C007CC6CED6E6C6A4 +:102040007C0000FCFC00FCFC0000FCE6E6E6FCE09A +:10205000E0007CE6E6E6E6E67C00383838383838DA +:102060003800C6E6F6DECEC6C600FE383838383848 +:1020700038007CE6E07C0ECE7C00387CEEC6FEC6E6 +:10208000C600F8E6E6E6E6E6F800C6C6C6EE7C3828 +:102090001000C6E6F6DECEC6C60020A8702070A8E6 +:1020A00020000F1F3F7FFFFFFFFFFFFFFFFFFFFF2E +:1020B000FFFFF0F8FCFEFFFFFFFF0F1F3F7FFFFF5A +:1020C000FFFFFFFFFFFFFFFFFFFFF0F8FCFEFFFF3A +:1020D000FFFF0F1F3F7FFFFFFFFFFFFFFFFFFFFF20 +:1020E000FFFFF0F8FCFEFFFFFFFF0F1F3F7FFFFF2A +:1020F000FFFFFFFFFFFFFFFFFFFFF0F8FCFEFFFF0A +:10210000FFFFFFFFFFFFFEFCF8F8FFFFFFFF0000EF +:102110000000FFFFFFFF7F3F1F1FFFFFFFFFFEFCD1 +:10212000F8F8FFFFFFFF00000000FFFFFFFF7F3F09 +:102130001F1FFFFFFFFFFEFCF8F8FFFFFFFF00007F +:102140000000FFFFFFFF7F3F1F1FFFFFFFFFFEFCA1 +:10215000F8F8FFFFFFFF00000000FFFFFFFF7F3FD9 +:102160001F1F0F7FFFE6FF1936C000E0F070F08000 +:10217000C03000070F0E0F030603F0FEFF67FF9C41 +:10218000660C2091BFEEFF7F20408020A0E0E0C0E1 +:1021900080400201070E0F0F0A010810FCEEFEFE40 +:1021A0000AB0060F1F363F091629000080C0C00084 +:1021B0008040000001030301020160F0F86CFC683C +:1021C00004080F7FFFE6FF39663000E0F070F0C0D2 +:1021D00060C000070F0E0F01030CF0FEFF67FF98B1 +:1021E0006C0320117FEEFFFFA01B8000C0E0E0E049 +:1021F000A00002090B0E0F0702040812FAEEFEFC03 +:102200000804060F1F363F162010000080C0C08053 +:102210004080000001030300010260F0F86CFC90B4 +:10222000689408452010C0102548801020401840B0 +:102230002090010804021802040910A204080308EF +:10224000A412387CEEC6C6C0E078F0FCCEC6C6C686 +:10225000C6C6387CFEEEC6C6C6C6387CFEEEC6C60E +:10226000C0C0FEFEC0C0C0C0FCFC3C0E06C6C6EE30 +:102270007C38CEFCF8C0C0C0C0C0C6FEFEC6C6C614 +:10228000C6C6C0C0C6C6EEFE7C38FCC0C0C0C0C05A +:10229000FEFE007CFEFEFEFE7C7C00387CFEFEFF27 +:1022A000FFFF001C3E3E3E3E3EBE000070F8F8F8C8 +:1022B000F8F800001C3E3E3E3E3E000F3F7FFFFF11 +:1022C000FFFE00C0F0F8FCFEFE3E007FFFFFFCFCBE +:1022D000FCFC00E0F8FC7C3E1E0E007FFFFFFEFCD5 +:1022E000FCFC00FEFEFE00000000007FFFFFFCFC87 +:1022F000FCFC00F8FCFE3E1E1E1E003F7FFFFFFEA2 +:10230000FEFE00F8FCFE3E1E1E1E7C7C7C7C7C7C5F +:102310007C7CFFFFFFFFFFFFFFFFBEFEFEFEFEFE19 +:10232000FEFEF8F8F8F8F8F8F8F83E3E3E3E3E3E7D +:102330003E3EFCFCFCFCFCFCFFFF1E0E0E0E0E1EC7 +:10234000FEFEFCFCFCFCFCFCFCFC0E0E0E0E0E0E5D +:102350000E0EFCFEFFFFFFFFFEFC0000F0F8F8F0A1 +:102360000000FCFCFCFCFCFFFFFF1E1E1E1E3CF8D8 +:10237000E0F0FEFEFF7F3F1F00000C0000F8FCFEB7 +:102380003E1E7C7C7C7CFEFEFE7CFFFCFCFCFCFE9E +:10239000FE7EFEFE7E7E3E3E3E1EFCFEFF7F3F1F1B +:1023A0000F037EFEFEFCF8F0E0C0FFFCFCFCFCFE30 +:1023B000FEFEFE1E0E0E0E0E0E0EFCFCFCFCFCFFC6 +:1023C000FF7F0E1E1E3E7CFCF8E0FCFCFCFEFFFFC7 +:1023D000FF7F00000000FEFEFEFEFCFCFCFCFCFE9D +:1023E000FEFEF0F8F87C7E7E7E7E7CFEFEFEFFFF29 +:1023F0007F3F1E1E1E1E3EFEFCF80103033F7F7F33 +:102400007F7F008080F8FCFCFCFCFE3838383838D0 +:102410003800FCE6E6FCE6E6FC00E0E0E0E0E0E0B8 +:10242000FE00060C0C0C030603007CE6E07C0ECEDE +:102430007C007CE6E0E0E6E67C007CE6E6E6E6E6BC +:102440007C00FCE6E6E6FCECE600FEE0E0FCE0E01A +:10245000FE00060C1830180C06003878383838386A +:102460007C00C06030183060C000001818000018F0 +:1024700018007CE6E07C0ECE7C007CE6E0E0E6E640 +:102480007C007CE6E6E6E6E67C00FCE6E6E6FCECC4 +:10249000E600FEE0E0FCE0E0FE00060C1830180C60 +:1024A00006007CC6C60E3C70FE00C060301830606E +:1024B000C000E6E6E67C3838380000000000000086 +:1024C000FF00000000000000FF000000000000000E +:1024D000FF00000000000000FF00000000000000FE +:1024E000FF00000000000000FF00000000000000EE +:1024F000FF00000000000000FF00000000000000DE +:10250000FF00000000000000FF00000000000000CD +:10251000FF00000000000000FF00000000000000BD +:10252000FF00000000000000FF00000000000000AD +:10253000FF00000000000000FF000000000000009D +:10254000FF00000000000000FF000000000000008D +:10255000FF00000000000000FF000000000000007D +:10256000FF00000000000000FF000000000000006D +:10257000FF00000000000000FF000000000000005D +:10258000FF00000000000000FF000000000000004D +:10259000FF00000000000000FF000000000000003D +:1025A000FF0000000000000000000000000000002C +:1025B000000000000000000000000000000000001B +:1025C000000000000000000000000000000000000B +:1025D00000000000000000000000000000000000FB +:1025E0000000B0B0B0B0B0B0B0B0B0B0B0B0B0B04B +:1025F000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0DB +:10260000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0CA +:10261000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0BA +:10262000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0AA +:10263000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B09A +:10264000B0B080808080808080808080808080802A +:10265000808080808080808080808080808080807A +:10266000808080808080808080808080808080806A +:10267000808080808080808080808080808080805A +:10268000808080808080808080808080808080804A +:10269000808080808080808080808080808080803A +:1026A000808080808080808080808080808080802A +:1026B000808080808080808080808080808080801A +:1026C000808080808080808080808080808080800A +:1026D00080808080808080808080808080808080FA +:1026E00080808080808080808080808080808080EA +:1026F00080808080808080808080808080808080DA +:1027000080808080808080808080808080808080C9 +:1027100080808080808080808080808080808080B9 +:102720008080F0F0F0F0F0F0F0F0F0F0F0F0F0F089 +:10273000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F099 +:10274000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F089 +:10275000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F079 +:10276000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F069 +:10277000F0F0808080808080808080808080808079 +:102780008080808080808080808080808080808049 +:1027900080808080808080808080D0D0D0D0D0D059 +:1027A000D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D029 +:1027B000D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D019 +:1027C000D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D009 +:1027D000D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0F9 +:1027E000D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0E9 +:1027F000D0D04040404040404040404040404040B9 +:1028000040404040404040404040404040404040C8 +:1028100040404040404040404040404040404040B8 +:1028200040404040404040404040404040404040A8 +:102830004040303030303030303030303030303078 +:102840003030303030303030303030303030303088 +:102850003030303030303030303030303030303078 +:102860003030303030303030303030303030303068 +:1028700030303030303030303030707070707070D8 +:102880007070707070707070707070707070707048 +:102890007070707070707070707070707070707038 +:1028A0007070909090909090909090909090909068 +:1028B0009090909090909090909090909090909018 +:1028C0009090909090909090909090909090909008 +:1028D00090909090909090909090909090909090F8 +:1028E00090909090909090909090909090909090E8 +:1028F00090909090909090909090909090909090D8 +:1029000090909090909090909090909090909090C7 +:1029100090909090909090909090909090909090B7 +:1029200090909090909090909090909090909090A7 +:102930009090909090909090909090909090909097 +:102940009090909090909090909090909090909087 +:102950009090909090909090909090909090909077 +:102960009090808080808080808080808080808047 +:102970008080808080808080808080808080808057 +:102980008080A0A0A0A0A0A0A0A0A0A0A0A0A0A087 +:10299000A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A037 +:1029A000A0A0303030303030303030303030303047 +:1029B0003030303030303030303030303030303017 +:1029C00030308080808080808080808080808080A7 +:1029D00080808080808080808080808080808080F7 +:1029E0008080A0A0A0A0A0A0A0A0A0A0A0A0A0A027 +:1029F000A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0D7 +:102A0000A0A03030303030303030303030303030E6 +:102A100030303030303030303030303030303030B6 +:102A20003030F0F0F0F0F0F0F0F0F0F0F0F0F0F026 +:102A3000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F096 +:102A4000F0F08080808080808080808080808080A6 +:102A50008080808080808080808080808080808076 +:102A60008080808080808080808080808080808066 +:102A70008080808080808080808080808080808056 +:102A80008080808080808080808080808080808046 +:102A900080804040404040404040404040404040B6 +:102AA0004040404040404040404040404040404026 +:102AB0004040404040404040404040404040404016 +:102AC0004040404040404040404040404040404006 +:102AD00040404040404040404040404040404040F6 +:102AE00040404040404040404040404040404040E6 +:102AF00040404040404040404040404040404040D6 +:102B000040404040404040404040404040404040C5 +:102B100040404040404040404040404040404040B5 +:102B200040404040404040404040404040404040A5 +:102B30004040404040404040404040404040404095 +:102B40004040404040404040404040404040404085 +:102B50004040404040404040404040404040404075 +:102B60004040404040404040404040404040404065 +:102B70004040404040404040404040404040404055 +:102B80004040404040404040404040404040404045 +:102B90004040404040404040404040404040404035 +:102BA0004040404040404040404040404040404025 +:102BB0004040404040404040404040404040404015 +:102BC0004040404040404040404040404040404005 +:102BD00040404040404040404040404040404040F5 +:102BE00040404040404040404040404040404040E5 +:102BF00040404040404040404040707070707070B5 +:102C000070707070707070707070707070707070C4 +:102C100070707070707070707070707070707070B4 +:102C200070709090909090909090707070707070A4 +:102C30007070707070707070707070707070707094 +:102C40007070707070707070707070707070707084 +:102C50007070707070707070707070707070707074 +:102C60007070707070707070707080808080808004 +:102C70008080B0B0B0B0B0B0B0B0B0B0B0B0B0B0B4 +:102C8000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B044 +:102C9000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B034 +:102CA000B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B024 +:102CB000B0B0B0B0B0B0B0B0B0B080808080808034 +:102CC0008080808080808080808080808080808004 +:102CD00080808080808080808080808080808080F4 +:102CE00080808080808080808080808080808080E4 +:102CF00080808080808080808080808080808080D4 +:102D000080808080808080808080808080808080C3 +:102D100080808080808080808080808080808080B3 +:102D200080808080808080808080808080808080A3 +:102D30008080808080808080808080808080808093 +:102D40008080808080808080808080808080808083 +:102D50008080808080808080808080808080808073 +:102D60008080808080808080808080808080808063 +:102D70008080808080808080808080808080808053 +:102D80008080808080808080808080808080808043 +:102D90008080808080808080808080808080808033 +:102DA0008080071F3F6DFF7D38100000000000008D +:102DB0000000E0F8FCB6FFBE1C08000000000000A8 +:102DC0000000071F3F7FFF07030100000000000015 +:102DD0000000E0F8FCFEFFE0C08000000000000002 +:102DE00000002510A3070A2783210000000000002F +:102DF00000002902C89EC99C481100000000000084 +:102E000000004A0853072D0783110000000000004E +:102E10000000520198CF18CC1940000000000000BB +:102E200000000103033F7F7F7F7F00000000000060 +:102E30000000008080F8FCFCFCFC000000000000AA +:102E400000000012894081153F7F00000000000053 +:102E5000000000902204C28090D600000000000014 +:102E600000000009528043153F7F00000000000071 +:102E7000000000209402848090D600000000000032 +:102E8000000001010101010101000000000000003B +:102E90000000000000000000000000000000000032 +:102EA0000000030101010101010000000000000019 +:102EB0000000800000000000000000000000000092 +:102EC00000000103010301010100000000000000F7 +:102ED00000000000800080000000000000000000F2 +:102EE00000000101030103010100000000000000D7 +:102EF00000000080008000000000000000000000D2 +:102F000000000201000102010000000000000000BA +:102F100000000000800000008000000000000000B1 +:102F2000000000010201000102000000000000009A +:102F30000000800000008000000000000000000091 +:102F4000000005030703000000000000000000006F +:102F5000000040A0C0A00000000000000000000031 +:102F60000000000000000000000000000000000061 +:102F70000000183C7EDBFF5A814200000000000088 +:102F80000000000000000000000000000000000041 +:102F90000000183C7EDBFF245AA500000000000062 +:102FA0000000100804030000000000000000000002 +:102FB0000000183C7EDBFF5A814200000000000048 +:102FC00000001008040300000000000000000000E2 +:102FD0000000183C7EDBFF245AA500000000000022 +:102FE00000003838387CCECECE0000000000000053 +:102FF00000000000000000000000000000000000D1 +:103000000000E6E6E67C38383800000000000000EA +:1030100000000000000000000000000000000000B0 +:10302000000080808080808080808080807C7C7CAC +:103030007C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7CD0 +:103040007C7C7C78787878787878787878787878F4 +:10305000787878787878787878D1D2D3D4D5D6D76C +:10306000D8204A4B4C4D4E4F505120DADBDCDDDE90 +:10307000DFE0E1FFC37A30C3DB33CD9430DD2105DF +:10308000C20604C5DDCB007EC4BB31111800DD19BA +:10309000C110F0C93A00C2CB7FCACA33FE00CACA07 +:1030A00033FEFFCACA3321C030010800EDB9C02188 +:1030B000C13009097E23666FE98182838485868712 +:1030C0008BD130DA30F1300B311F3138315F317F45 +:1030D00031213334111DC2C396312105C236003E61 +:1030E0009FD37F2102C2CBC62162341135C2C39661 +:1030F000312102C2CB46C2B5312135C236003EFF76 +:10310000D37F217D34111DC2C396312101C2360106 +:10311000CD0834CDDB3321A034114DC2C39631210B +:1031200002C2CBCE2101C23601CD0834CDDB332122 +:103130001D35114DC2C396312102C2CB8E3E0132E4 +:1031400001C2CD1C34AF3201C2214DC236003E9FB8 +:10315000D37F2104C2CB46CAB5313600C35F3121CB +:103160004DC2CB7ECA6F312104C2CBC6C3B531AFCD +:103170003204C23202C22145351105C2C396312143 +:1031800002C2CB46C2B5312135C236003EFFD37FE5 +:10319000216C35111DC27E23666F4623C57E23E553 +:1031A000666F010E00EDB0AF12130609121310FC8A +:1031B000E123C110E73E803200C2C9DD5E03DD5667 +:1031C0000413DD7303DD7204DD6E05DD6606B7ED05 +:1031D00052CCCF323A03C22107C277DD5E11DD56F1 +:1031E000127BB22007DD36170FC37A32DDCB006EBB +:1031F0002008DD7313DD72141834D5DD6E15DD661D +:1032000016B7ED52F57DF20B32ED4467DD5E03CD6E +:10321000E933DD5E05CDF5335F1600F17BF2263232 +:10322000ED442802155FE119DD7513DD7414DD7EB0 +:103230000CB7200BDD7E0D2FE60FDD771718103D44 +:103240002197354F060009097E23666FCD9832DD40 +:10325000CB00762025DD7E01E60F4F0600218D3262 +:10326000094EDD7E13E60FB1CDC233DD7E13E6F0ED +:10327000DDB6140F0F0F0FCDC233DD7E01E60F4F09 +:103280000600219132097EDDB617C3C23380A0C08B +:10329000C090B0D0F0DD770FE5DD7E0FCB3FF54F6E +:1032A000060009F17EE138140F0F0F0FB728E6FE74 +:1032B000102005DD350F18E0FE20280BDD340FF659 +:1032C000F0DD860D3C3801AF2FE60FDD7717C9DD45 +:1032D0005E07DD56081A13B7FA1E33C30433D51A36 +:1032E00067DD5E02CDE933D1DD7505DD7406AFDD46 +:1032F000770FDD771013DD7307DD7208AFDD77031D +:10330000DD7704C9DD77121A13DD7711DDCB006E8E +:1033100028CC1A13DD77161A13DD771518C0213162 +:1033200033E5E60F2135334F060009097E23666F2A +:10333000E913C3D53249338A334E3365336A337068 +:103340003376337C33823394331ADD770DC91AF622 +:10335000E0F5CDC233F1F6FC3C2005DDCB00B6C96B +:10336000DDCB00F6C91ADD770CC9EB5E23561BC90D +:10337000DDCB00EE1BC9DDCB00AE1BC9CD1C34C3B9 +:103380008A333A02C2E6023202C2CDB333AFDD77EE +:1033900000E1E1C9CDB333AFDD7700E1E1CD1C340D +:1033A0003A02C2E6FD3202C22104C2CB46C8360050 +:1033B000C35F31DD7E01E60F4F0600219132097EA9 +:1033C000F60FDDCB0056C0D37FC9AF3202C2210554 +:1033D000C21106C2015F003600EDB021E5330E7F59 +:1033E0000604EDB3C99FBFDFFF16006A0608293047 +:1033F000011910FAC90608ED6A7C3803BB3803933B +:1034000067B710F37D172FC93A01C20604111800DF +:103410002105C20F3002CBD61910F8C93A01C206F5 +:10342000082105C21118000F3002CB961910F8C9F7 +:1034300006333437349735023C344A348021010056 +:103440000001005834001800010D80230100000124 +:10345000005C34001800010F002B1481820700016A +:10346000148166349735016934802302000001001D +:103470007734031800040F820700251B88813497D6 +:1034800035018434802101000001009234031800CA +:10349000030F85004000F80683020038007806819B +:1034A000A434973501A73480200100000100B53411 +:1034B000031800000D8500F800A00300A000B00371 +:1034C00000F8005003005000D00700F8005003003F +:1034D0005000D00700F8005003005000D00700F85B +:1034E000005003005000D00700F8005003005000C7 +:1034F000D007800B00F80050038009005000D0076F +:10350000800800F80050038007005000D0078006B4 +:1035100000F80050038004005000D007892135973F +:1035200035012435802001000001003235031800E8 +:10353000000C83018500C80040048300004000B0F7 +:103540000A8684323549359735014C358020120082 +:103550000001005A35031800050E000001035D014B +:1035600003900103C70103FF01845D357035973572 +:10357000017335802101000001008135031800012D +:103580000E01000300800200E40200720200CB0181 +:1035900000660100400481A135AA35B035B435D0AC +:1035A00035FFFFFFFEDCBAA99902DEFDB9753102D5 +:1035B000CDB97601FFFFFFFFEEEEEEDDDDDDCCCC19 +:1035C000CCBBAAAA999988777766555544332202CD +:1035D000DEFDA75302FFC0FFFFFFFFFFFFFFFFFF5E +:1035E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1035F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10360000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10361000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10362000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10363000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10364000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10365000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10366000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10367000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10368000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10369000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1036A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1036B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1036C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1036D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1036E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1036F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10370000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10371000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10372000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10373000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10374000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10375000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10376000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10377000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10378000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10379000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1037A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1037B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1037C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1037D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1037E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1037F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10380000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10381000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10382000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10383000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10384000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10385000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10386000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10387000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10388000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10389000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1038A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1038B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1038C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1038D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1038E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1038F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10390000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10391000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10392000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10393000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10394000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10395000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10396000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10397000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10398000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10399000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1039A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1039B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1039C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1039D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1039E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1039F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:103A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:103A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:103A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:103A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:103A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:103A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:103A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:103A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:103A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:103A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:103AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:103AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:103AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:103AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:103AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:103AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:103B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:103B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:103B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:103B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:103B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:103B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:103B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:103B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:103B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:103B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:103BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:103BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:103BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:103BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:103BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:103BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:103C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:103C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:103C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:103C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:103C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:103C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:103C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:103C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:103C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:103C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:103CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:103CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:103CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:103CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:103CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:103CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:103D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:103D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:103D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:103D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:103D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:103D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:103D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:103D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:103D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:103D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:103DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:103DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:103DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:103DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:103DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:103DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:103E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:103E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:103E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:103E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:103E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:103E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:103E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:103E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:103E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:103E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:103EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:103EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:103EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:103ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:103EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:103EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:103F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:103F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:103F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:103F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:103F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:103F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:103F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:103F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:103F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:103F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:103FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:103FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:103FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:103FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:103FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:103FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:00000001FF diff --git a/Sega - SG1000/rtl/roms/swap.exe b/Sega - SG1000/rtl/roms/swap.exe new file mode 100644 index 00000000..206d6afc Binary files /dev/null and b/Sega - SG1000/rtl/roms/swap.exe differ diff --git a/Sega - SG1000/rtl/scandoubler.v b/Sega - SG1000/rtl/scandoubler.v new file mode 100644 index 00000000..e85cba43 --- /dev/null +++ b/Sega - SG1000/rtl/scandoubler.v @@ -0,0 +1,183 @@ +// +// scandoubler.v +// +// Copyright (c) 2015 Till Harbaum +// Copyright (c) 2017 Sorgelig +// +// This source file is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published +// by the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This source file is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// TODO: Delay vsync one line + +module scandoubler #(parameter LENGTH, parameter HALF_DEPTH) +( + // system interface + input clk_sys, + input ce_pix, + input ce_pix_actual, + + input hq2x, + + // shifter video interface + input hs_in, + input vs_in, + input line_start, + + input [DWIDTH:0] r_in, + input [DWIDTH:0] g_in, + input [DWIDTH:0] b_in, + input mono, + + // output interface + output reg hs_out, + output vs_out, + output [DWIDTH:0] r_out, + output [DWIDTH:0] g_out, + output [DWIDTH:0] b_out +); + + +localparam DWIDTH = HALF_DEPTH ? 2 : 5; + +assign vs_out = vs_in; + +reg [2:0] phase; +reg [2:0] ce_div; +reg [7:0] pix_len = 0; +wire [7:0] pl = pix_len + 1'b1; + +reg ce_x1, ce_x4; +reg req_line_reset; +wire ls_in = hs_in | line_start; +always @(negedge clk_sys) begin + reg old_ce; + reg [2:0] ce_cnt; + + reg [7:0] pixsz2, pixsz4 = 0; + + old_ce <= ce_pix; + if(~&pix_len) pix_len <= pix_len + 1'd1; + + ce_x4 <= 0; + ce_x1 <= 0; + + // use such odd comparison to place c_x4 evenly if master clock isn't multiple 4. + if((pl == pixsz4) || (pl == pixsz2) || (pl == (pixsz2+pixsz4))) begin + phase <= phase + 1'd1; + ce_x4 <= 1; + end + + if(~old_ce & ce_pix) begin + pixsz2 <= {1'b0, pl[7:1]}; + pixsz4 <= {2'b00, pl[7:2]}; + ce_x1 <= 1; + ce_x4 <= 1; + pix_len <= 0; + phase <= phase + 1'd1; + + ce_cnt <= ce_cnt + 1'd1; + if(ce_pix_actual) begin + phase <= 0; + ce_div <= ce_cnt + 1'd1; + ce_cnt <= 0; + req_line_reset <= 0; + end + + if(ls_in) req_line_reset <= 1; + end +end + +reg ce_sd; +always @(*) begin + case(ce_div) + 2: ce_sd = !phase[0]; + 4: ce_sd = !phase[1:0]; + default: ce_sd <= 1; + endcase +end + +localparam AWIDTH = `BITS_TO_FIT(LENGTH); +Hq2x #(.LENGTH(LENGTH), .HALF_DEPTH(HALF_DEPTH)) Hq2x +( + .clk(clk_sys), + .ce_x4(ce_x4 & ce_sd), + .inputpixel({b_in,g_in,r_in}), + .mono(mono), + .disable_hq2x(~hq2x), + .reset_frame(vs_in), + .reset_line(req_line_reset), + .read_y(sd_line), + .read_x(sd_h_actual), + .outpixel({b_out,g_out,r_out}) +); + +reg [10:0] sd_h_actual; +always @(*) begin + case(ce_div) + 2: sd_h_actual = sd_h[10:1]; + 4: sd_h_actual = sd_h[10:2]; + default: sd_h_actual = sd_h; + endcase +end + +reg [10:0] sd_h; +reg [1:0] sd_line; +always @(posedge clk_sys) begin + + reg [11:0] hs_max,hs_rise,hs_ls; + reg [10:0] hcnt; + reg [11:0] sd_hcnt; + + reg hs, hs2, vs, ls; + + if(ce_x1) begin + hs <= hs_in; + ls <= ls_in; + + if(ls && !ls_in) hs_ls <= {hcnt,1'b1}; + + // falling edge of hsync indicates start of line + if(hs && !hs_in) begin + hs_max <= {hcnt,1'b1}; + hcnt <= 0; + if(ls && !ls_in) hs_ls <= {10'd0,1'b1}; + end else begin + hcnt <= hcnt + 1'd1; + end + + // save position of rising edge + if(!hs && hs_in) hs_rise <= {hcnt,1'b1}; + + vs <= vs_in; + if(vs && ~vs_in) sd_line <= 0; + end + + if(ce_x4) begin + hs2 <= hs_in; + + // output counter synchronous to input and at twice the rate + sd_hcnt <= sd_hcnt + 1'd1; + sd_h <= sd_h + 1'd1; + if(hs2 && !hs_in) sd_hcnt <= hs_max; + if(sd_hcnt == hs_max) sd_hcnt <= 0; + + // replicate horizontal sync at twice the speed + if(sd_hcnt == hs_max) hs_out <= 0; + if(sd_hcnt == hs_rise) hs_out <= 1; + + if(sd_hcnt == hs_ls) sd_h <= 0; + if(sd_hcnt == hs_ls) sd_line <= sd_line + 1'd1; + end +end + +endmodule diff --git a/Sega - SG1000/rtl/sg1000_top.sv b/Sega - SG1000/rtl/sg1000_top.sv index f15cb73e..35989402 100644 --- a/Sega - SG1000/rtl/sg1000_top.sv +++ b/Sega - SG1000/rtl/sg1000_top.sv @@ -1,16 +1,19 @@ module sg1000_top( input RESET_n, -input sys_clk, -input clk_vdp, +input sys_clk,//8 +input clk_vdp,//16 input pause, -input [7:0] Cart_In, -output [7:0] Cart_Out, -output [14:0] Cart_Addr, -output x, -output y, +//input [7:0] Cart_Out, +//output [7:0] Cart_In, +//output [14:0] Cart_Addr, +output [5:0] audio, output vblank, output hblank, -output [7:0] color, +output vga_hs, +output vga_vs, +output [1:0] vga_r, +output [1:0] vga_g, +output [1:0] vga_b, input [7:0] Joy_A, input [7:0] Joy_B ); @@ -18,7 +21,7 @@ input [7:0] Joy_B wire WAIT_n, MREQ_n, M1_n, IORQ_n, RFSH_n, INT_n; wire NMI_n = pause;//go to M1_n and generate CS_PSG_n wire RD_n, WR_n; -wire [7:0]D_in, D_out, RAM_D_out; +wire [7:0]D_in, D_out, RAM_D_out, Cart_ram_Out; wire [15:0]Addr; T80se #( @@ -53,25 +56,24 @@ MRAM ( .address(Addr[9:0]), .clock(sys_clk), .data(D_out), - .wren(WR_n), + .wren(~WR_n), .q(RAM_D_out) ); -assign Cart_Addr = Addr[14:0]; - -spram #( +//assign Cart_Addr = Addr[14:0]; +wire [7:0] Cart_Out, Cart_In; +wire [14:0] Cart_Addr = Addr[14:0]; + +sprom #( + .init_file("roms/32.hex"), .widthad_a(15), .width_a(8)) CART ( - .address(Cart_Addr), + .address(Addr[14:0]), .clock(sys_clk), - .data(Cart_In), - .wren(WR_n), .q(Cart_Out) ); -wire [5:0]audio; - psg PSG ( .clk(sys_clk), .WR_n(WR_n), @@ -80,7 +82,9 @@ psg PSG ( ); wire [7:0]vdp_D_out; - +wire [8:0]x; +wire [7:0]y; +wire [5:0] color; vdp vdp ( .cpu_clk(sys_clk), @@ -89,7 +93,7 @@ vdp vdp ( .WR_n(VDP_WR_n), .IRQ_n(IORQ_n), .A(Addr[7:0]), - .D_in(D_out), + .D_in(VDP_WR_n ? D_out : 8'b00000000), .D_out(vdp_D_out), .x(x), .y(y), @@ -97,6 +101,21 @@ vdp vdp ( .hblank(hblank), .color(color) ); + +vga_video vga_video ( + .clk16(clk_vdp), + .x(x), + .y(y), + .vblank(vblank), + .hblank(hblank), + .color(color), + .hsync(vga_hs), + .vsync(vga_vs), + .red(vga_r), + .green(vga_g), + .blue(vga_b) + ); + wire CS_WRAM_n = (~MREQ_n & Addr[15:14] == "11") ? 1'b0 : 1'b1; @@ -109,8 +128,12 @@ wire VDP_WR_n = (~IORQ_n & Addr[7:6] == "10") | WR_n ? 1'b0 : 1'b1; wire JOY_SEL_n = (~IORQ_n & Addr[7:6] == "11") | RD_n ? 1'b0 : 1'b1; wire KB_SEL_n = (~IORQ_n & Addr[7:6] == "11") ? 1'b0 : 1'b1; -assign D_in = ~CS_WRAM_n ? RAM_D_out : - ~VDP_RD_n ? vdp_D_out : - "00000000"; +assign D_in = CS_WRAM_n ? RAM_D_out : + VDP_RD_n ? vdp_D_out : + EXM1_n ? Cart_Out : + EXM2_n ? Cart_ram_Out : + 8'b00000000; + +endmodule + -endmodule \ No newline at end of file diff --git a/Sega - SG1000/rtl/vga_video.vhd b/Sega - SG1000/rtl/vga_video.vhd new file mode 100644 index 00000000..04e82973 --- /dev/null +++ b/Sega - SG1000/rtl/vga_video.vhd @@ -0,0 +1,93 @@ +---------------------------------------------------------------------------------- +-- Company: +-- Engineer: +-- +-- Create Date: 11:59:35 01/22/2012 +-- Design Name: +-- Module Name: vdp_vga_timing - Behavioral +-- Project Name: +-- Target Devices: +-- Tool versions: +-- Description: +-- +-- Dependencies: +-- +-- Revision: +-- Revision 0.01 - File Created +-- Additional Comments: +-- +---------------------------------------------------------------------------------- +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +use IEEE.NUMERIC_STD.ALL; + +entity vga_video is + port ( + clk16: in std_logic; + x: out unsigned(8 downto 0); + y: out unsigned(7 downto 0); + vblank: out std_logic; + hblank: out std_logic; + color: in std_logic_vector(5 downto 0); + hsync: out std_logic; + vsync: out std_logic; + red: out std_logic_vector(1 downto 0); + green: out std_logic_vector(1 downto 0); + blue: out std_logic_vector(1 downto 0)); +end vga_video; + +architecture Behavioral of vga_video is + + signal hcount: unsigned (8 downto 0) := (others=>'0'); + signal vcount: unsigned (9 downto 0) := (others=>'0'); + signal visible: boolean; + + signal y9: unsigned (8 downto 0); + +begin + + process (clk16) + begin + if rising_edge(clk16) then + if hcount=507 then + hcount <= (others => '0'); + if vcount=523 then + vcount <= (others=>'0'); + else + vcount <= vcount + 1; + end if; + else + hcount <= hcount + 1; + end if; + end if; + end process; + + x <= hcount-(91+75); + y9 <= vcount(9 downto 1)-(13+27); + y <= y9(7 downto 0); + hblank <= '1' when hcount=0 and vcount(0 downto 0)=0 else '0'; + vblank <= '1' when hcount=0 and vcount=0 else '0'; + + hsync <= '0' when hcount<61 else '1'; + vsync <= '0' when vcount<2 else '1'; + + visible <= vcount>=35 and vcount<35+480 and hcount>=91 and hcount<91+406; + + process (clk16) + variable pixel_n: std_logic_vector(1 downto 0); + begin + if rising_edge(clk16) then + if visible then + red <= color(1 downto 0); + green <= color(3 downto 2); + blue <= color(5 downto 4); + else + red <= (others=>'0'); + green <= (others=>'0'); + blue <= (others=>'0'); + end if; + end if; + end process; + +end Behavioral; + diff --git a/Sega - SG1000/rtl/video_mixer.sv b/Sega - SG1000/rtl/video_mixer.sv new file mode 100644 index 00000000..04cfd4ba --- /dev/null +++ b/Sega - SG1000/rtl/video_mixer.sv @@ -0,0 +1,242 @@ +// +// +// Copyright (c) 2017 Sorgelig +// +// This program is GPL Licensed. See COPYING for the full license. +// +// +//////////////////////////////////////////////////////////////////////////////////////////////////////// + +`timescale 1ns / 1ps + +// +// LINE_LENGTH: Length of display line in pixels +// Usually it's length from HSync to HSync. +// May be less if line_start is used. +// +// HALF_DEPTH: If =1 then color dept is 3 bits per component +// For half depth 6 bits monochrome is available with +// mono signal enabled and color = {G, R} + +module video_mixer +#( + parameter LINE_LENGTH = 768, + parameter HALF_DEPTH = 0, + + parameter OSD_COLOR = 3'd4, + parameter OSD_X_OFFSET = 10'd0, + parameter OSD_Y_OFFSET = 10'd0 +) +( + // master clock + // it should be multiple by (ce_pix*4). + input clk_sys, + + // Pixel clock or clock_enable (both are accepted). + input ce_pix, + + // Some systems have multiple resolutions. + // ce_pix_actual should match ce_pix where every second or fourth pulse is enabled, + // thus half or qurter resolutions can be used without brake video sync while switching resolutions. + // For fixed single resolution (or when video sync stability isn't required) ce_pix_actual = ce_pix. + input ce_pix_actual, + + // OSD SPI interface + input SPI_SCK, + input SPI_SS3, + input SPI_DI, + + // scanlines (00-none 01-25% 10-50% 11-75%) + input [1:0] scanlines, + + // 0 = HVSync 31KHz, 1 = CSync 15KHz + input scandoubler_disable, + + // High quality 2x scaling + input hq2x, + + // YPbPr always uses composite sync + input ypbpr, + + // 0 = 16-240 range. 1 = 0-255 range. (only for YPbPr color space) + input ypbpr_full, + + // color + input [DWIDTH:0] R, + input [DWIDTH:0] G, + input [DWIDTH:0] B, + + // Monochrome mode (for HALF_DEPTH only) + input mono, + + // interlace sync. Positive pulses. + input HSync, + input VSync, + + // Falling of this signal means start of informative part of line. + // It can be horizontal blank signal. + // This signal can be used to reduce amount of required FPGA RAM for HQ2x scan doubler + // If FPGA RAM is not an issue, then simply set it to 0 for whole line processing. + // Keep in mind: due to algo first and last pixels of line should be black to avoid side artefacts. + // Thus, if blank signal is used to reduce the line, make sure to feed at least one black (or paper) pixel + // before first informative pixel. + input line_start, + + // MiST video output signals + output [5:0] VGA_R, + output [5:0] VGA_G, + output [5:0] VGA_B, + output VGA_VS, + output VGA_HS +); + +localparam DWIDTH = HALF_DEPTH ? 2 : 5; + +wire [DWIDTH:0] R_sd; +wire [DWIDTH:0] G_sd; +wire [DWIDTH:0] B_sd; +wire hs_sd, vs_sd; + +scandoubler #(.LENGTH(LINE_LENGTH), .HALF_DEPTH(HALF_DEPTH)) scandoubler +( + .*, + .hs_in(HSync), + .vs_in(VSync), + .r_in(R), + .g_in(G), + .b_in(B), + + .hs_out(hs_sd), + .vs_out(vs_sd), + .r_out(R_sd), + .g_out(G_sd), + .b_out(B_sd) +); + +wire [DWIDTH:0] rt = (scandoubler_disable ? R : R_sd); +wire [DWIDTH:0] gt = (scandoubler_disable ? G : G_sd); +wire [DWIDTH:0] bt = (scandoubler_disable ? B : B_sd); + +generate + if(HALF_DEPTH) begin + wire [5:0] r = mono ? {gt,rt} : {rt,rt}; + wire [5:0] g = mono ? {gt,rt} : {gt,gt}; + wire [5:0] b = mono ? {gt,rt} : {bt,bt}; + end else begin + wire [5:0] r = rt; + wire [5:0] g = gt; + wire [5:0] b = bt; + end +endgenerate + +wire hs = (scandoubler_disable ? HSync : hs_sd); +wire vs = (scandoubler_disable ? VSync : vs_sd); + +reg scanline = 0; +always @(posedge clk_sys) begin + reg old_hs, old_vs; + + old_hs <= hs; + old_vs <= vs; + + if(old_hs && ~hs) scanline <= ~scanline; + if(old_vs && ~vs) scanline <= 0; +end + +wire [5:0] r_out, g_out, b_out; +always @(*) begin + case(scanlines & {scanline, scanline}) + 1: begin // reduce 25% = 1/2 + 1/4 + r_out = {1'b0, r[5:1]} + {2'b00, r[5:2]}; + g_out = {1'b0, g[5:1]} + {2'b00, g[5:2]}; + b_out = {1'b0, b[5:1]} + {2'b00, b[5:2]}; + end + + 2: begin // reduce 50% = 1/2 + r_out = {1'b0, r[5:1]}; + g_out = {1'b0, g[5:1]}; + b_out = {1'b0, b[5:1]}; + end + + 3: begin // reduce 75% = 1/4 + r_out = {2'b00, r[5:2]}; + g_out = {2'b00, g[5:2]}; + b_out = {2'b00, b[5:2]}; + end + + default: begin + r_out = r; + g_out = g; + b_out = b; + end + endcase +end + +wire [5:0] red, green, blue; +osd #(OSD_X_OFFSET, OSD_Y_OFFSET, OSD_COLOR) osd +( + .*, + + .R_in(r_out), + .G_in(g_out), + .B_in(b_out), + .HSync(hs), + .VSync(vs), + + .R_out(red), + .G_out(green), + .B_out(blue) +); + +wire [5:0] yuv_full[225] = '{ + 6'd0, 6'd0, 6'd0, 6'd0, 6'd1, 6'd1, 6'd1, 6'd1, + 6'd2, 6'd2, 6'd2, 6'd3, 6'd3, 6'd3, 6'd3, 6'd4, + 6'd4, 6'd4, 6'd5, 6'd5, 6'd5, 6'd5, 6'd6, 6'd6, + 6'd6, 6'd7, 6'd7, 6'd7, 6'd7, 6'd8, 6'd8, 6'd8, + 6'd9, 6'd9, 6'd9, 6'd9, 6'd10, 6'd10, 6'd10, 6'd11, + 6'd11, 6'd11, 6'd11, 6'd12, 6'd12, 6'd12, 6'd13, 6'd13, + 6'd13, 6'd13, 6'd14, 6'd14, 6'd14, 6'd15, 6'd15, 6'd15, + 6'd15, 6'd16, 6'd16, 6'd16, 6'd17, 6'd17, 6'd17, 6'd17, + 6'd18, 6'd18, 6'd18, 6'd19, 6'd19, 6'd19, 6'd19, 6'd20, + 6'd20, 6'd20, 6'd21, 6'd21, 6'd21, 6'd21, 6'd22, 6'd22, + 6'd22, 6'd23, 6'd23, 6'd23, 6'd23, 6'd24, 6'd24, 6'd24, + 6'd25, 6'd25, 6'd25, 6'd25, 6'd26, 6'd26, 6'd26, 6'd27, + 6'd27, 6'd27, 6'd27, 6'd28, 6'd28, 6'd28, 6'd29, 6'd29, + 6'd29, 6'd29, 6'd30, 6'd30, 6'd30, 6'd31, 6'd31, 6'd31, + 6'd31, 6'd32, 6'd32, 6'd32, 6'd33, 6'd33, 6'd33, 6'd33, + 6'd34, 6'd34, 6'd34, 6'd35, 6'd35, 6'd35, 6'd35, 6'd36, + 6'd36, 6'd36, 6'd36, 6'd37, 6'd37, 6'd37, 6'd38, 6'd38, + 6'd38, 6'd38, 6'd39, 6'd39, 6'd39, 6'd40, 6'd40, 6'd40, + 6'd40, 6'd41, 6'd41, 6'd41, 6'd42, 6'd42, 6'd42, 6'd42, + 6'd43, 6'd43, 6'd43, 6'd44, 6'd44, 6'd44, 6'd44, 6'd45, + 6'd45, 6'd45, 6'd46, 6'd46, 6'd46, 6'd46, 6'd47, 6'd47, + 6'd47, 6'd48, 6'd48, 6'd48, 6'd48, 6'd49, 6'd49, 6'd49, + 6'd50, 6'd50, 6'd50, 6'd50, 6'd51, 6'd51, 6'd51, 6'd52, + 6'd52, 6'd52, 6'd52, 6'd53, 6'd53, 6'd53, 6'd54, 6'd54, + 6'd54, 6'd54, 6'd55, 6'd55, 6'd55, 6'd56, 6'd56, 6'd56, + 6'd56, 6'd57, 6'd57, 6'd57, 6'd58, 6'd58, 6'd58, 6'd58, + 6'd59, 6'd59, 6'd59, 6'd60, 6'd60, 6'd60, 6'd60, 6'd61, + 6'd61, 6'd61, 6'd62, 6'd62, 6'd62, 6'd62, 6'd63, 6'd63, + 6'd63 +}; + +// http://marsee101.blog19.fc2.com/blog-entry-2311.html +// Y = 16 + 0.257*R + 0.504*G + 0.098*B (Y = 0.299*R + 0.587*G + 0.114*B) +// Pb = 128 - 0.148*R - 0.291*G + 0.439*B (Pb = -0.169*R - 0.331*G + 0.500*B) +// Pr = 128 + 0.439*R - 0.368*G - 0.071*B (Pr = 0.500*R - 0.419*G - 0.081*B) + +wire [18:0] y_8 = 19'd04096 + ({red, 8'd0} + {red, 3'd0}) + ({green, 9'd0} + {green, 2'd0}) + ({blue, 6'd0} + {blue, 5'd0} + {blue, 2'd0}); +wire [18:0] pb_8 = 19'd32768 - ({red, 7'd0} + {red, 4'd0} + {red, 3'd0}) - ({green, 8'd0} + {green, 5'd0} + {green, 3'd0}) + ({blue, 8'd0} + {blue, 7'd0} + {blue, 6'd0}); +wire [18:0] pr_8 = 19'd32768 + ({red, 8'd0} + {red, 7'd0} + {red, 6'd0}) - ({green, 8'd0} + {green, 6'd0} + {green, 5'd0} + {green, 4'd0} + {green, 3'd0}) - ({blue, 6'd0} + {blue , 3'd0}); + +wire [7:0] y = ( y_8[17:8] < 16) ? 8'd16 : ( y_8[17:8] > 235) ? 8'd235 : y_8[15:8]; +wire [7:0] pb = (pb_8[17:8] < 16) ? 8'd16 : (pb_8[17:8] > 240) ? 8'd240 : pb_8[15:8]; +wire [7:0] pr = (pr_8[17:8] < 16) ? 8'd16 : (pr_8[17:8] > 240) ? 8'd240 : pr_8[15:8]; + +assign VGA_R = ypbpr ? (ypbpr_full ? yuv_full[pr-8'd16] : pr[7:2]) : red; +assign VGA_G = ypbpr ? (ypbpr_full ? yuv_full[y -8'd16] : y[7:2]) : green; +assign VGA_B = ypbpr ? (ypbpr_full ? yuv_full[pb-8'd16] : pb[7:2]) : blue; +assign VGA_VS = (scandoubler_disable | ypbpr) ? 1'b1 : ~vs_sd; +assign VGA_HS = scandoubler_disable ? ~(HSync ^ VSync) : ypbpr ? ~(hs_sd ^ vs_sd) : ~hs_sd; + +endmodule diff --git a/Sega - SG1000/sg1000.qsf b/Sega - SG1000/sg1000.qsf index 7c9e75b6..35528ca0 100644 --- a/Sega - SG1000/sg1000.qsf +++ b/Sega - SG1000/sg1000.qsf @@ -18,7 +18,7 @@ # # Quartus II 64-Bit # Version 13.0.1 Build 232 06/12/2013 Service Pack 1 SJ Full Version -# Date created = 20:36:09 September 21, 2018 +# Date created = 20:12:16 September 22, 2018 # # -------------------------------------------------------------------------- # # @@ -36,25 +36,13 @@ # -------------------------------------------------------------------------- # -set_global_assignment -name FAMILY "Cyclone III" -set_global_assignment -name DEVICE EP3C25E144C8 -set_global_assignment -name TOP_LEVEL_ENTITY sg1000_top + +# Project-Wide Assignments +# ======================== set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1" set_global_assignment -name PROJECT_CREATION_TIME_DATE "20:36:09 SEPTEMBER 21, 2018" set_global_assignment -name LAST_QUARTUS_VERSION "13.0 SP1" set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files -set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 -set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 -set_global_assignment -name DEVICE_FILTER_PACKAGE TQFP -set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144 -set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 -set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 -set_global_assignment -name NOMINAL_CORE_SUPPLY_VOLTAGE 1.2V -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)" -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 set_global_assignment -name VHDL_FILE rtl/vdp/vdp_sprites.vhd set_global_assignment -name VHDL_FILE rtl/vdp/vdp_sprite_shifter.vhd set_global_assignment -name VHDL_FILE rtl/vdp/vdp_main.vhd @@ -72,5 +60,108 @@ set_global_assignment -name VHDL_FILE rtl/t80/T80_ALU.vhd set_global_assignment -name VHDL_FILE rtl/t80/T80.vhd set_global_assignment -name VHDL_FILE rtl/spram.vhd set_global_assignment -name SYSTEMVERILOG_FILE rtl/sg1000_top.sv +set_global_assignment -name SYSTEMVERILOG_FILE rtl/SG1000_MiST.sv set_global_assignment -name VHDL_FILE rtl/dpram.vhd +set_global_assignment -name VHDL_FILE rtl/vga_video.vhd +set_global_assignment -name SYSTEMVERILOG_FILE rtl/video_mixer.sv +set_global_assignment -name VERILOG_FILE rtl/scandoubler.v +set_global_assignment -name VERILOG_FILE rtl/pll.v +set_global_assignment -name VERILOG_FILE rtl/mist_io.v +set_global_assignment -name VERILOG_FILE rtl/osd.v +set_global_assignment -name SYSTEMVERILOG_FILE rtl/hq2x.sv +set_global_assignment -name VHDL_FILE rtl/dac.vhd + +# Classic Timing Assignments +# ========================== +set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 +set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 + +# Analysis & Synthesis Assignments +# ================================ +set_global_assignment -name FAMILY "Cyclone III" +set_global_assignment -name TOP_LEVEL_ENTITY SG1000_MiST +set_global_assignment -name DEVICE_FILTER_PACKAGE TQFP +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 ERROR_CHECK_FREQUENCY_DIVISOR 1 + +# 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)" + +# ------------------------- +# start ENTITY(SG1000_MiST) + + # start DESIGN_PARTITION(Top) + # --------------------------- + + # Incremental Compilation Assignments + # =================================== + + # end DESIGN_PARTITION(Top) + # ------------------------- + +# end ENTITY(SG1000_MiST) +# ----------------------- + +# ------------------------ +# start ENTITY(sg1000_top) +set_location_assignment PIN_7 -to LED +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 + +# end ENTITY(sg1000_top) +# ---------------------- +set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" +set_location_assignment PIN_54 -to CLOCK_27 +set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL" +set_global_assignment -name USE_CONFIGURATION_DEVICE OFF +set_global_assignment -name GENERATE_RBF_FILE ON +set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF +set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON +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" +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 +set_global_assignment -name VHDL_FILE rtl/sprom.vhd +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 set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/Sega - SG1000/sg1000.qws b/Sega - SG1000/sg1000.qws new file mode 100644 index 00000000..5beabdd7 Binary files /dev/null and b/Sega - SG1000/sg1000.qws differ diff --git a/Sega - SG1000/sg1000.srf b/Sega - SG1000/sg1000.srf new file mode 100644 index 00000000..b41fcc33 --- /dev/null +++ b/Sega - SG1000/sg1000.srf @@ -0,0 +1,7 @@ +{ "" "" "" "Verilog HDL macro warning at hq2x.sv(26): overriding existing definition for macro \"BITS_TO_FIT\", which was defined in \"rtl/scandoubler.v\", line 109" { } { } 0 10274 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "Output port \"Cart_In\" at sg1000_top.sv(8) has no driver" { } { } 0 10034 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "Verilog HDL warning at hq2x.sv(247): extended using \"x\" or \"z\"" { } { } 0 10273 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "Verilog HDL information at scandoubler.v(102): always construct contains both blocking and non-blocking assignments" { } { } 0 10268 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "Net \"Cart_ram_Out\" at sg1000_top.sv(25) has no driver or initial value, using a default initial value '0'" { } { } 0 10030 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "VHDL Process Statement warning at vdp_main.vhd(117): signal \"mask_column0\" is read inside the Process Statement but isn't in the Process Statement's sensitivity list" { } { } 0 10492 "" 0 0 "Quartus II" 0 -1 0 ""} +{ "" "" "" "*" { } { } 0 14284 "" 0 0 "Quartus II" 0 -1 0 ""} diff --git a/Sega - SG1000/sgcon.png b/Sega - SG1000/sgcon.png new file mode 100644 index 00000000..139213dd Binary files /dev/null and b/Sega - SG1000/sgcon.png differ