diff --git a/ossc.qsf b/ossc.qsf index 3b74e74..acd885a 100644 --- a/ossc.qsf +++ b/ossc.qsf @@ -41,7 +41,7 @@ set_global_assignment -name DEVICE EP4CE15E22C8 set_global_assignment -name TOP_LEVEL_ENTITY ossc set_global_assignment -name ORIGINAL_QUARTUS_VERSION 13.1 set_global_assignment -name PROJECT_CREATION_TIME_DATE "17:27:03 MAY 17, 2014" -set_global_assignment -name LAST_QUARTUS_VERSION "17.1.0 Lite Edition" +set_global_assignment -name LAST_QUARTUS_VERSION "17.1.1 Lite Edition" 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 @@ -223,11 +223,8 @@ set_global_assignment -name CYCLONEII_OPTIMIZATION_TECHNIQUE SPEED set_global_assignment -name ENABLE_SIGNALTAP OFF set_global_assignment -name USE_SIGNALTAP_FILE output_files/ossc_la.stp - set_global_assignment -name FITTER_EFFORT "AUTO FIT" -set_global_assignment -name SEED 20 - - +set_global_assignment -name SEED 16 set_global_assignment -name VERILOG_FILE rtl/videogen.v @@ -241,6 +238,9 @@ set_global_assignment -name VERILOG_FILE rtl/lat_tester.v set_global_assignment -name QIP_FILE rtl/linebuf.qip set_global_assignment -name QIP_FILE rtl/pll_2x.qip set_global_assignment -name QIP_FILE rtl/pll_3x.qip +set_global_assignment -name QIP_FILE rtl/lpm_mult_4_hybr_ref_pre.qip +set_global_assignment -name QIP_FILE rtl/lpm_mult_4_hybr_ref.qip +set_global_assignment -name QIP_FILE rtl/lpm_mult_4_sl.qip set_global_assignment -name QIP_FILE rtl/mux5.qip set_global_assignment -name CDF_FILE output_files/Chain1.cdf set_global_assignment -name SIGNALTAP_FILE output_files/ossc_la.stp diff --git a/rtl/lpm_mult_4_hybr_ref.qip b/rtl/lpm_mult_4_hybr_ref.qip new file mode 100644 index 0000000..12a44a4 --- /dev/null +++ b/rtl/lpm_mult_4_hybr_ref.qip @@ -0,0 +1,5 @@ +set_global_assignment -name IP_TOOL_NAME "LPM_MULT" +set_global_assignment -name IP_TOOL_VERSION "17.1" +set_global_assignment -name IP_GENERATED_DEVICE_FAMILY "{Cyclone IV E}" +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "lpm_mult_4_hybr_ref.v"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "lpm_mult_4_hybr_ref_bb.v"] diff --git a/rtl/lpm_mult_4_hybr_ref.v b/rtl/lpm_mult_4_hybr_ref.v new file mode 100644 index 0000000..118e639 --- /dev/null +++ b/rtl/lpm_mult_4_hybr_ref.v @@ -0,0 +1,116 @@ +// megafunction wizard: %LPM_MULT% +// GENERATION: STANDARD +// VERSION: WM1.0 +// MODULE: lpm_mult + +// ============================================================ +// File Name: lpm_mult_4_hybr_ref.v +// Megafunction Name(s): +// lpm_mult +// +// Simulation Library Files(s): +// lpm +// ============================================================ +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// +// 17.1.1 Internal Build 593 12/11/2017 SJ Lite Edition +// ************************************************************ + + +//Copyright (C) 2017 Intel Corporation. All rights reserved. +//Your use of Intel 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 Intel Program License +//Subscription Agreement, the Intel Quartus Prime License Agreement, +//the Intel FPGA IP License Agreement, or other applicable license +//agreement, including, without limitation, that your use is for +//the sole purpose of programming logic devices manufactured by +//Intel and sold by Intel 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 lpm_mult_4_hybr_ref ( + clock, + dataa, + datab, + result); + + input clock; + input [8:0] dataa; + input [7:0] datab; + output [8:0] result; + + wire [8:0] sub_wire0; + wire [8:0] result = sub_wire0[8:0]; + + lpm_mult lpm_mult_component ( + .clock (clock), + .dataa (dataa), + .datab (datab), + .result (sub_wire0), + .aclr (1'b0), + .clken (1'b1), + .sclr (1'b0), + .sum (1'b0)); + defparam + lpm_mult_component.lpm_hint = "MAXIMIZE_SPEED=9", + lpm_mult_component.lpm_pipeline = 1, + lpm_mult_component.lpm_representation = "UNSIGNED", + lpm_mult_component.lpm_type = "LPM_MULT", + lpm_mult_component.lpm_widtha = 9, + lpm_mult_component.lpm_widthb = 8, + lpm_mult_component.lpm_widthp = 9; + + +endmodule + +// ============================================================ +// CNX file retrieval info +// ============================================================ +// Retrieval info: PRIVATE: AutoSizeResult NUMERIC "0" +// Retrieval info: PRIVATE: B_isConstant NUMERIC "0" +// Retrieval info: PRIVATE: ConstantB NUMERIC "0" +// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone IV E" +// Retrieval info: PRIVATE: LPM_PIPELINE NUMERIC "1" +// Retrieval info: PRIVATE: Latency NUMERIC "1" +// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" +// Retrieval info: PRIVATE: SignedMult NUMERIC "0" +// Retrieval info: PRIVATE: USE_MULT NUMERIC "1" +// Retrieval info: PRIVATE: ValidConstant NUMERIC "0" +// Retrieval info: PRIVATE: WidthA NUMERIC "9" +// Retrieval info: PRIVATE: WidthB NUMERIC "8" +// Retrieval info: PRIVATE: WidthP NUMERIC "9" +// Retrieval info: PRIVATE: aclr NUMERIC "0" +// Retrieval info: PRIVATE: clken NUMERIC "0" +// Retrieval info: PRIVATE: new_diagram STRING "1" +// Retrieval info: PRIVATE: optimize NUMERIC "1" +// Retrieval info: LIBRARY: lpm lpm.lpm_components.all +// Retrieval info: CONSTANT: LPM_HINT STRING "MAXIMIZE_SPEED=9" +// Retrieval info: CONSTANT: LPM_PIPELINE NUMERIC "1" +// Retrieval info: CONSTANT: LPM_REPRESENTATION STRING "UNSIGNED" +// Retrieval info: CONSTANT: LPM_TYPE STRING "LPM_MULT" +// Retrieval info: CONSTANT: LPM_WIDTHA NUMERIC "9" +// Retrieval info: CONSTANT: LPM_WIDTHB NUMERIC "8" +// Retrieval info: CONSTANT: LPM_WIDTHP NUMERIC "9" +// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT NODEFVAL "clock" +// Retrieval info: USED_PORT: dataa 0 0 9 0 INPUT NODEFVAL "dataa[8..0]" +// Retrieval info: USED_PORT: datab 0 0 8 0 INPUT NODEFVAL "datab[7..0]" +// Retrieval info: USED_PORT: result 0 0 9 0 OUTPUT NODEFVAL "result[8..0]" +// Retrieval info: CONNECT: @clock 0 0 0 0 clock 0 0 0 0 +// Retrieval info: CONNECT: @dataa 0 0 9 0 dataa 0 0 9 0 +// Retrieval info: CONNECT: @datab 0 0 8 0 datab 0 0 8 0 +// Retrieval info: CONNECT: result 0 0 9 0 @result 0 0 9 0 +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_bb.v TRUE +// Retrieval info: LIB_FILE: lpm diff --git a/rtl/lpm_mult_4_hybr_ref_pre.qip b/rtl/lpm_mult_4_hybr_ref_pre.qip new file mode 100644 index 0000000..04f0083 --- /dev/null +++ b/rtl/lpm_mult_4_hybr_ref_pre.qip @@ -0,0 +1,5 @@ +set_global_assignment -name IP_TOOL_NAME "LPM_MULT" +set_global_assignment -name IP_TOOL_VERSION "17.1" +set_global_assignment -name IP_GENERATED_DEVICE_FAMILY "{Cyclone IV E}" +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "lpm_mult_4_hybr_ref_pre.v"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "lpm_mult_4_hybr_ref_pre_bb.v"] diff --git a/rtl/lpm_mult_4_hybr_ref_pre.v b/rtl/lpm_mult_4_hybr_ref_pre.v new file mode 100644 index 0000000..2bbca20 --- /dev/null +++ b/rtl/lpm_mult_4_hybr_ref_pre.v @@ -0,0 +1,116 @@ +// megafunction wizard: %LPM_MULT% +// GENERATION: STANDARD +// VERSION: WM1.0 +// MODULE: lpm_mult + +// ============================================================ +// File Name: lpm_mult_4_hybr_ref_pre.v +// Megafunction Name(s): +// lpm_mult +// +// Simulation Library Files(s): +// lpm +// ============================================================ +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// +// 17.1.1 Internal Build 593 12/11/2017 SJ Lite Edition +// ************************************************************ + + +//Copyright (C) 2017 Intel Corporation. All rights reserved. +//Your use of Intel 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 Intel Program License +//Subscription Agreement, the Intel Quartus Prime License Agreement, +//the Intel FPGA IP License Agreement, or other applicable license +//agreement, including, without limitation, that your use is for +//the sole purpose of programming logic devices manufactured by +//Intel and sold by Intel 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 lpm_mult_4_hybr_ref_pre ( + clock, + dataa, + datab, + result); + + input clock; + input [7:0] dataa; + input [4:0] datab; + output [8:0] result; + + wire [8:0] sub_wire0; + wire [8:0] result = sub_wire0[8:0]; + + lpm_mult lpm_mult_component ( + .clock (clock), + .dataa (dataa), + .datab (datab), + .result (sub_wire0), + .aclr (1'b0), + .clken (1'b1), + .sclr (1'b0), + .sum (1'b0)); + defparam + lpm_mult_component.lpm_hint = "DEDICATED_MULTIPLIER_CIRCUITRY=YES,MAXIMIZE_SPEED=9", + lpm_mult_component.lpm_pipeline = 1, + lpm_mult_component.lpm_representation = "UNSIGNED", + lpm_mult_component.lpm_type = "LPM_MULT", + lpm_mult_component.lpm_widtha = 8, + lpm_mult_component.lpm_widthb = 5, + lpm_mult_component.lpm_widthp = 9; + + +endmodule + +// ============================================================ +// CNX file retrieval info +// ============================================================ +// Retrieval info: PRIVATE: AutoSizeResult NUMERIC "0" +// Retrieval info: PRIVATE: B_isConstant NUMERIC "0" +// Retrieval info: PRIVATE: ConstantB NUMERIC "0" +// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone IV E" +// Retrieval info: PRIVATE: LPM_PIPELINE NUMERIC "1" +// Retrieval info: PRIVATE: Latency NUMERIC "1" +// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" +// Retrieval info: PRIVATE: SignedMult NUMERIC "0" +// Retrieval info: PRIVATE: USE_MULT NUMERIC "1" +// Retrieval info: PRIVATE: ValidConstant NUMERIC "0" +// Retrieval info: PRIVATE: WidthA NUMERIC "8" +// Retrieval info: PRIVATE: WidthB NUMERIC "5" +// Retrieval info: PRIVATE: WidthP NUMERIC "9" +// Retrieval info: PRIVATE: aclr NUMERIC "0" +// Retrieval info: PRIVATE: clken NUMERIC "0" +// Retrieval info: PRIVATE: new_diagram STRING "1" +// Retrieval info: PRIVATE: optimize NUMERIC "1" +// Retrieval info: LIBRARY: lpm lpm.lpm_components.all +// Retrieval info: CONSTANT: LPM_HINT STRING "DEDICATED_MULTIPLIER_CIRCUITRY=YES,MAXIMIZE_SPEED=9" +// Retrieval info: CONSTANT: LPM_PIPELINE NUMERIC "1" +// Retrieval info: CONSTANT: LPM_REPRESENTATION STRING "UNSIGNED" +// Retrieval info: CONSTANT: LPM_TYPE STRING "LPM_MULT" +// Retrieval info: CONSTANT: LPM_WIDTHA NUMERIC "8" +// Retrieval info: CONSTANT: LPM_WIDTHB NUMERIC "5" +// Retrieval info: CONSTANT: LPM_WIDTHP NUMERIC "9" +// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT NODEFVAL "clock" +// Retrieval info: USED_PORT: dataa 0 0 8 0 INPUT NODEFVAL "dataa[7..0]" +// Retrieval info: USED_PORT: datab 0 0 5 0 INPUT NODEFVAL "datab[4..0]" +// Retrieval info: USED_PORT: result 0 0 9 0 OUTPUT NODEFVAL "result[8..0]" +// Retrieval info: CONNECT: @clock 0 0 0 0 clock 0 0 0 0 +// Retrieval info: CONNECT: @dataa 0 0 8 0 dataa 0 0 8 0 +// Retrieval info: CONNECT: @datab 0 0 5 0 datab 0 0 5 0 +// Retrieval info: CONNECT: result 0 0 9 0 @result 0 0 9 0 +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_hybr_ref_pre_bb.v TRUE +// Retrieval info: LIB_FILE: lpm diff --git a/rtl/lpm_mult_4_sl.qip b/rtl/lpm_mult_4_sl.qip new file mode 100644 index 0000000..b659848 --- /dev/null +++ b/rtl/lpm_mult_4_sl.qip @@ -0,0 +1,5 @@ +set_global_assignment -name IP_TOOL_NAME "LPM_MULT" +set_global_assignment -name IP_TOOL_VERSION "17.1" +set_global_assignment -name IP_GENERATED_DEVICE_FAMILY "{Cyclone IV E}" +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "lpm_mult_4_sl.v"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "lpm_mult_4_sl_bb.v"] diff --git a/rtl/lpm_mult_4_sl.v b/rtl/lpm_mult_4_sl.v new file mode 100644 index 0000000..abff035 --- /dev/null +++ b/rtl/lpm_mult_4_sl.v @@ -0,0 +1,116 @@ +// megafunction wizard: %LPM_MULT% +// GENERATION: STANDARD +// VERSION: WM1.0 +// MODULE: lpm_mult + +// ============================================================ +// File Name: lpm_mult_4_sl.v +// Megafunction Name(s): +// lpm_mult +// +// Simulation Library Files(s): +// lpm +// ============================================================ +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// +// 17.1.1 Internal Build 593 12/11/2017 SJ Lite Edition +// ************************************************************ + + +//Copyright (C) 2017 Intel Corporation. All rights reserved. +//Your use of Intel 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 Intel Program License +//Subscription Agreement, the Intel Quartus Prime License Agreement, +//the Intel FPGA IP License Agreement, or other applicable license +//agreement, including, without limitation, that your use is for +//the sole purpose of programming logic devices manufactured by +//Intel and sold by Intel 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 lpm_mult_4_sl ( + clock, + dataa, + datab, + result); + + input clock; + input [7:0] dataa; + input [7:0] datab; + output [7:0] result; + + wire [7:0] sub_wire0; + wire [7:0] result = sub_wire0[7:0]; + + lpm_mult lpm_mult_component ( + .clock (clock), + .dataa (dataa), + .datab (datab), + .result (sub_wire0), + .aclr (1'b0), + .clken (1'b1), + .sclr (1'b0), + .sum (1'b0)); + defparam + lpm_mult_component.lpm_hint = "MAXIMIZE_SPEED=9", + lpm_mult_component.lpm_pipeline = 1, + lpm_mult_component.lpm_representation = "UNSIGNED", + lpm_mult_component.lpm_type = "LPM_MULT", + lpm_mult_component.lpm_widtha = 8, + lpm_mult_component.lpm_widthb = 8, + lpm_mult_component.lpm_widthp = 8; + + +endmodule + +// ============================================================ +// CNX file retrieval info +// ============================================================ +// Retrieval info: PRIVATE: AutoSizeResult NUMERIC "0" +// Retrieval info: PRIVATE: B_isConstant NUMERIC "0" +// Retrieval info: PRIVATE: ConstantB NUMERIC "0" +// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone IV E" +// Retrieval info: PRIVATE: LPM_PIPELINE NUMERIC "1" +// Retrieval info: PRIVATE: Latency NUMERIC "1" +// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" +// Retrieval info: PRIVATE: SignedMult NUMERIC "0" +// Retrieval info: PRIVATE: USE_MULT NUMERIC "1" +// Retrieval info: PRIVATE: ValidConstant NUMERIC "0" +// Retrieval info: PRIVATE: WidthA NUMERIC "8" +// Retrieval info: PRIVATE: WidthB NUMERIC "8" +// Retrieval info: PRIVATE: WidthP NUMERIC "8" +// Retrieval info: PRIVATE: aclr NUMERIC "0" +// Retrieval info: PRIVATE: clken NUMERIC "0" +// Retrieval info: PRIVATE: new_diagram STRING "1" +// Retrieval info: PRIVATE: optimize NUMERIC "1" +// Retrieval info: LIBRARY: lpm lpm.lpm_components.all +// Retrieval info: CONSTANT: LPM_HINT STRING "MAXIMIZE_SPEED=9" +// Retrieval info: CONSTANT: LPM_PIPELINE NUMERIC "1" +// Retrieval info: CONSTANT: LPM_REPRESENTATION STRING "UNSIGNED" +// Retrieval info: CONSTANT: LPM_TYPE STRING "LPM_MULT" +// Retrieval info: CONSTANT: LPM_WIDTHA NUMERIC "8" +// Retrieval info: CONSTANT: LPM_WIDTHB NUMERIC "8" +// Retrieval info: CONSTANT: LPM_WIDTHP NUMERIC "8" +// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT NODEFVAL "clock" +// Retrieval info: USED_PORT: dataa 0 0 8 0 INPUT NODEFVAL "dataa[7..0]" +// Retrieval info: USED_PORT: datab 0 0 8 0 INPUT NODEFVAL "datab[7..0]" +// Retrieval info: USED_PORT: result 0 0 8 0 OUTPUT NODEFVAL "result[7..0]" +// Retrieval info: CONNECT: @clock 0 0 0 0 clock 0 0 0 0 +// Retrieval info: CONNECT: @dataa 0 0 8 0 dataa 0 0 8 0 +// Retrieval info: CONNECT: @datab 0 0 8 0 datab 0 0 8 0 +// Retrieval info: CONNECT: result 0 0 8 0 @result 0 0 8 0 +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL lpm_mult_4_sl_bb.v TRUE +// Retrieval info: LIB_FILE: lpm diff --git a/rtl/ossc.v b/rtl/ossc.v index 6031f1f..b4a410b 100644 --- a/rtl/ossc.v +++ b/rtl/ossc.v @@ -54,6 +54,7 @@ module ossc ( inout [3:0] SD_DAT ); + wire [15:0] sys_ctrl; wire h_unstable; wire [1:0] pclk_lock; diff --git a/rtl/scanconverter.v b/rtl/scanconverter.v index 9a69441..ce5ec64 100644 --- a/rtl/scanconverter.v +++ b/rtl/scanconverter.v @@ -48,6 +48,10 @@ `define SCANLINES_V 2'h2 `define SCANLINES_ALT 2'h3 +`define SCANLINES_HYBR_CONTR_LOW 2'h1 +`define SCANLINES_HYBR_CONTR_MED 2'h2 +`define SCANLINES_HYBR_CONTR_HIGH 2'h3 + `define VSYNCGEN_LEN 6 `define VSYNCGEN_GENMID_BIT 0 `define VSYNCGEN_CHOPMID_BIT 1 @@ -62,6 +66,16 @@ `define HSYNC_LEADING_EDGE ((HSYNC_in_L == `HI) & (HSYNC_in == `LO)) `define VSYNC_LEADING_EDGE ((VSYNC_in_L == `HI) & (VSYNC_in == `LO)) +//`define PP_RLPF_PL_START_EARLY // set if start with 2 +`define PP_RLPF_PL_START 3 // minimum 2 +`define PP_RLPF_PL_LENGTH 3 // counted from aquisition +`define PP_SLGEN_PL_LENGTH 5 +`define PP_LT_BORDER_GEN_LENGTH 2 + +`define PP_RLPF_PL_END (`PP_RLPF_PL_START+`PP_RLPF_PL_LENGTH) +`define PP_SLGEN_PL_END (`PP_RLPF_PL_END+`PP_SLGEN_PL_LENGTH) +`define PP_PIPELINE_LENGTH (`PP_SLGEN_PL_END+`PP_LT_BORDER_GEN_LENGTH) + module scanconverter ( input reset_n, input [7:0] R_in, @@ -103,16 +117,13 @@ wire [2:0] pclk_mux_sel; wire [7:0] R_act, G_act, B_act; wire [7:0] R_lbuf, G_lbuf, B_lbuf; reg [7:0] R_in_L, G_in_L, B_in_L, R_in_LL, G_in_LL, B_in_LL, R_1x, G_1x, B_1x; -reg [7:0] R_pp3, G_pp3, B_pp3, R_pp4, G_pp4, B_pp4, R_pp5, G_pp5, B_pp5, R_pp6, G_pp6, B_pp6; -reg [7:0] R_prev_pp2, G_prev_pp2, B_prev_pp2, R_prev_pp3, G_prev_pp3, B_prev_pp3, R_prev_pp4, G_prev_pp4, B_prev_pp4; -reg signed [14:0] R_diff_pp3, G_diff_pp3, B_diff_pp3, R_diff_pp4, G_diff_pp4, B_diff_pp4; //H+V syncs + data enable signals®isters wire HSYNC_act, VSYNC_act, DE_act; reg HSYNC_in_L, VSYNC_in_L; -reg HSYNC_1x, HSYNC_2x, HSYNC_3x, HSYNC_4x, HSYNC_5x, HSYNC_pp1, HSYNC_pp2, HSYNC_pp3, HSYNC_pp4, HSYNC_pp5, HSYNC_pp6; -reg VSYNC_1x, VSYNC_2x, VSYNC_3x, VSYNC_4x, VSYNC_5x, VSYNC_pp1, VSYNC_pp2, VSYNC_pp3, VSYNC_pp4, VSYNC_pp5, VSYNC_pp6; -reg DE_1x, DE_2x, DE_3x, DE_4x, DE_5x, DE_pp1, DE_pp2, DE_pp3, DE_pp4, DE_pp5, DE_pp6, DE_3x_prev4x; +reg HSYNC_1x, HSYNC_2x, HSYNC_3x, HSYNC_4x, HSYNC_5x; +reg VSYNC_1x, VSYNC_2x, VSYNC_3x, VSYNC_4x, VSYNC_5x; +reg DE_1x, DE_2x, DE_3x, DE_4x, DE_5x, DE_3x_prev4x; //registers indicating line/frame change and field type reg FID_cur, FID_prev, FID_1x; @@ -124,20 +135,28 @@ wire [11:0] hcnt_act; reg [11:0] hcnt_1x, hcnt_2x, hcnt_3x, hcnt_4x, hcnt_5x, hcnt_4x_aspfix, hcnt_2x_opt, hcnt_3x_opt, hcnt_4x_opt, hcnt_5x_opt, hcnt_5x_hscomp; reg [2:0] hcnt_2x_opt_ctr, hcnt_3x_opt_ctr, hcnt_4x_opt_ctr, hcnt_5x_opt_ctr; wire [10:0] vcnt_act; -reg [10:0] vcnt_tvp, vcnt_1x, vcnt_2x, vcnt_3x, vcnt_4x, vcnt_5x; //max. 2047 +reg [10:0] vcnt_tvp, vcnt_1x, vcnt_2x, vcnt_3x, vcnt_4x, vcnt_5x; //max. 2047 //other counters wire [2:0] line_id_act, col_id_act; -reg [2:0] line_id_pp1, line_id_pp2, line_id_pp3, line_id_pp4, line_id_pp5, col_id_pp1, col_id_pp2, col_id_pp3, col_id_pp4, col_id_pp5; reg [11:0] hmax[0:1]; reg line_idx; reg [1:0] line_out_idx_2x, line_out_idx_3x, line_out_idx_4x; reg [2:0] line_out_idx_5x; reg [23:0] warn_h_unstable, warn_pll_lock_lost, warn_pll_lock_lost_3x; -reg border_enable_pp1, border_enable_pp2, border_enable_pp3, border_enable_pp4, border_enable_pp5, border_enable_pp6; -reg lt_box_enable_pp1, lt_box_enable_pp2, lt_box_enable_pp3, lt_box_enable_pp4, lt_box_enable_pp5, lt_box_enable_pp6; -wire rlpf_trigger_act; -reg rlpf_trigger_pp1; + +// post-processing pipeline +reg HSYNC_pp[1:`PP_PIPELINE_LENGTH-1] /* synthesis ramstyle = "logic" */; +reg VSYNC_pp[1:`PP_PIPELINE_LENGTH-1] /* synthesis ramstyle = "logic" */; +reg DE_pp[1:`PP_PIPELINE_LENGTH-1] /* synthesis ramstyle = "logic" */; +reg [7:0] R_pp[3:`PP_PIPELINE_LENGTH-1], G_pp[3:`PP_PIPELINE_LENGTH-1], B_pp[3:`PP_PIPELINE_LENGTH-1] /* synthesis ramstyle = "logic" */; +reg [11:0] hcnt_pp /* synthesis ramstyle = "logic" */; +reg [10:0] vcnt_pp /* synthesis ramstyle = "logic" */; +reg rlpf_trigger_r[1:`PP_RLPF_PL_START-1] /* synthesis ramstyle = "logic" */; +reg [7:0] R_prev_pp[`PP_RLPF_PL_START:`PP_RLPF_PL_END-1], G_prev_pp[`PP_RLPF_PL_START:`PP_RLPF_PL_END-1], B_prev_pp[`PP_RLPF_PL_START:`PP_RLPF_PL_END-1] /* synthesis ramstyle = "logic" */; +reg [2:0] line_id_pp[1:`PP_SLGEN_PL_END-2], col_id_pp[1:`PP_SLGEN_PL_END-2] /* synthesis ramstyle = "logic" */; +reg border_enable_pp[2:`PP_PIPELINE_LENGTH-2] /* synthesis ramstyle = "logic" */; +reg lt_box_enable_pp[2:`PP_PIPELINE_LENGTH-1] /* synthesis ramstyle = "logic" */; //helper registers for sampling at synchronized clock edges reg pclk_1x_prev3x; @@ -167,10 +186,31 @@ reg [2:0] H_OPT_SAMPLE_MULT; reg [2:0] H_OPT_SAMPLE_SEL; reg [9:0] H_L5BORDER; reg [3:0] X_MASK_BR; +reg X_SCANLINE_METHOD; +reg [4:0] X_SCANLINE_HYBRSTR; reg [7:0] X_SCANLINESTR; reg [5:0] X_REV_LPF_STR; reg X_REV_LPF_ENABLE; +// constants for each frame to be calculated off config-registers +reg CALC_CONSTS; +reg [11:0] H_AVIDSTOP; +reg [10:0] V_AVIDSTOP; +reg [10:0] H_AVIDMASK_START; +reg [11:0] H_AVIDMASK_STOP; +reg [7:0] V_AVIDMASK_START; +reg [10:0] V_AVIDMASK_STOP; + +reg [11:0] LT_POS_TOPLEFT_BOX_H_STOP; +reg [10:0] LT_POS_TOPLEFT_BOX_V_STOP; +reg [11:0] LT_POS_CENTER_BOX_H_START; +reg [11:0] LT_POS_CENTER_BOX_H_STOP; +reg [10:0] LT_POS_CENTER_BOX_V_START; +reg [10:0] LT_POS_CENTER_BOX_V_STOP; +reg [11:0] LT_POS_BOTTOMRIGHT_H_START; +reg [10:0] LT_POS_BOTTOMRIGHT_V_START; + + //clk27 related registers reg VSYNC_in_cc_L, VSYNC_in_cc_LL, VSYNC_in_cc_LLL; reg [21:0] clk27_ctr; // min. 6.5Hz @@ -181,87 +221,112 @@ assign pclk_1x = PCLK_in; assign PCLK_out = pclk_act; assign pclk_lock = {pclk_2x_lock, pclk_3x_lock}; + //Scanline generation -function [7:0] apply_scanlines; - input [1:0] mode; - input [7:0] data; - input [7:0] str; - input [4:0] mask; - input [2:0] line_id; - input [2:0] col_id; - input fid; - begin - if ((mode == `SCANLINES_H) && (mask & (5'h1< str) ? (data-str) : 8'h00; - else if ((mode == `SCANLINES_V) && (5'h0 == col_id)) - apply_scanlines = (data > str) ? (data-str) : 8'h00; - else if ((mode == `SCANLINES_ALT) && (mask & (5'h1<<(line_id^fid)))) - apply_scanlines = (data > str) ? (data-str) : 8'h00; - else - apply_scanlines = data; - end - endfunction +reg [8:0] Y_rb_tmp; +reg [9:0] Y; +wire [8:0] Y_sl_hybr_ref_pre, R_sl_hybr_ref_pre, G_sl_hybr_ref_pre, B_sl_hybr_ref_pre; +lpm_mult_4_hybr_ref_pre Y_sl_hybr_ref_pre_u +( + .clock(pclk_act), + .dataa(Y[9:2]), + .datab(X_SCANLINE_HYBRSTR), + .result(Y_sl_hybr_ref_pre) +); +lpm_mult_4_hybr_ref_pre R_sl_hybr_ref_pre_u +( + .clock(pclk_act), + .dataa(R_pp[`PP_RLPF_PL_END]), + .datab(X_SCANLINE_HYBRSTR), + .result(R_sl_hybr_ref_pre) +); +lpm_mult_4_hybr_ref_pre G_sl_hybr_ref_pre_u +( + .clock(pclk_act), + .dataa(G_pp[`PP_RLPF_PL_END]), + .datab(X_SCANLINE_HYBRSTR), + .result(G_sl_hybr_ref_pre) +); +lpm_mult_4_hybr_ref_pre B_sl_hybr_ref_pre_u +( + .clock(pclk_act), + .dataa(B_pp[`PP_RLPF_PL_END]), + .datab(X_SCANLINE_HYBRSTR), + .result(B_sl_hybr_ref_pre) +); -//LT box / border generation -function [7:0] apply_mask; - input lt_active; - input lt_box_enable; - input border_enable; - input [7:0] data; - input [3:0] brightness; - begin - if (lt_active) - apply_mask = lt_box_enable ? 8'hff : 8'h00; - else if (border_enable) - apply_mask = {brightness, 4'h0}; - else - apply_mask = data; - end - endfunction +wire [8:0] Y_sl_hybr_ref, R_sl_hybr_ref, G_sl_hybr_ref, B_sl_hybr_ref; +lpm_mult_4_hybr_ref Y_sl_hybr_ref_u +( + .clock(pclk_act), + .dataa(Y_sl_hybr_ref_pre), + .datab(X_SCANLINESTR), + .result(Y_sl_hybr_ref) +); +lpm_mult_4_hybr_ref R_sl_hybr_ref_u +( + .clock(pclk_act), + .dataa(R_sl_hybr_ref_pre), + .datab(X_SCANLINESTR), + .result(R_sl_hybr_ref) +); +lpm_mult_4_hybr_ref G_sl_hybr_ref_u +( + .clock(pclk_act), + .dataa(G_sl_hybr_ref_pre), + .datab(X_SCANLINESTR), + .result(G_sl_hybr_ref) +); +lpm_mult_4_hybr_ref B_sl_hybr_ref_u +( + .clock(pclk_act), + .dataa(B_sl_hybr_ref_pre), + .datab(X_SCANLINESTR), + .result(B_sl_hybr_ref) +); -//LT position select - function [7:0] apply_lt_box; - input [1:0] mode; - input [11:0] h_cnt; - input [10:0] v_cnt; - input [9:0] h_start; - input [6:0] v_start; - input [10:0] h_active; - input [10:0] v_active; - begin - case (mode) - default: begin - apply_lt_box = 0; - end - `LT_POS_TOPLEFT: begin - apply_lt_box = ((h_cnt < (h_start+(h_active/`LT_WIDTH_DIV))) && (v_cnt < (v_start+(v_active/`LT_HEIGHT_DIV)))) ? 1 : 0; - end - `LT_POS_CENTER: begin - apply_lt_box = ((h_cnt >= (h_start+(h_active/2)-(h_active/(`LT_WIDTH_DIV*2)))) && (h_cnt < (h_start+(h_active/2)+(h_active/(`LT_WIDTH_DIV*2)))) && (v_cnt >= (v_start+(v_active/2)-(v_active/(`LT_HEIGHT_DIV*2)))) && (v_cnt < (v_start+(v_active/2)+(v_active/(`LT_HEIGHT_DIV*2))))) ? 1 : 0; - end - `LT_POS_BOTTOMRIGHT: begin - apply_lt_box = ((h_cnt >= (h_start+h_active-(h_active/`LT_WIDTH_DIV))) && (v_cnt >= (v_start+v_active-(v_active/`LT_HEIGHT_DIV)))) ? 1 : 0; - end - endcase - end - endfunction +reg [7:0] Y_sl_str, R_sl_str, G_sl_str, B_sl_str; + +reg [7:0] R_sl_sub, G_sl_sub, B_sl_sub; +wire [7:0] R_sl_mult, G_sl_mult, B_sl_mult; +lpm_mult_4_sl R_sl_mult_u +( + .clock(pclk_act), + .dataa(R_pp[`PP_SLGEN_PL_END-2]), + .datab(~Y_sl_str), + .result(R_sl_mult) +); +lpm_mult_4_sl G_sl_mult_u +( + .clock(pclk_act), + .dataa(G_pp[`PP_SLGEN_PL_END-2]), + .datab(~Y_sl_str), + .result(G_sl_mult) +); +lpm_mult_4_sl B_sl_mult_u +( + .clock(pclk_act), + .dataa(B_pp[`PP_SLGEN_PL_END-2]), + .datab(~Y_sl_str), + .result(B_sl_mult) +); + +reg draw_sl; //Reverse LPF +wire rlpf_trigger_act; +reg signed [14:0] R_diff_s15_pre, G_diff_s15_pre, B_diff_s15_pre, R_diff_s15, G_diff_s15, B_diff_s15; +reg signed [10:0] R_rlpf_result, G_rlpf_result, B_rlpf_result; + function [7:0] apply_reverse_lpf; - input enable; - input [7:0] data; input [7:0] data_prev; input signed [14:0] diff; - reg signed [12:0] data_prev_x; reg signed [10:0] result; begin - data_prev_x = (data_prev << 4); - result = (data_prev_x - diff) >>> 4; - if (enable) - apply_reverse_lpf = (result < 0) ? 8'h00 : (result > 255) ? 8'hFF : result; - else - apply_reverse_lpf = data; +// result = ({3'b0,data_prev,4'b0} - diff) >>> 4; + result = {3'b0,data_prev} + ~diff[14:4]; // allow for a small error to reduce adder length + apply_reverse_lpf = result[10] ? 8'h00 : |result[9:8] ? 8'hFF : result[7:0]; end endfunction @@ -378,7 +443,7 @@ case (V_MULTMODE) HSYNC_act = HSYNC_5x; VSYNC_act = VSYNC_5x; DE_act = DE_5x; - line_id_act = {2'b00, line_out_idx_5x}; + line_id_act = line_out_idx_5x; hcnt_act = hcnt_5x; vcnt_act = vcnt_5x; pclk_mux_sel = `PCLK_MUX_5X; @@ -444,90 +509,162 @@ mux5 mux5_inst ( // line_id, col_id: 0 cycles // HSYNC, VSYNC, DE: 1 cycle // RGB: 2 cycles + +integer pp_idx; always @(posedge pclk_act) begin - line_id_pp1 <= line_id_act; - col_id_pp1 <= col_id_act; - border_enable_pp1 <= ((hcnt_act < H_AVIDSTART+H_MASK) | (hcnt_act >= H_AVIDSTART+H_ACTIVE-H_MASK) | (vcnt_act < V_AVIDSTART+V_MASK) | (vcnt_act >= V_AVIDSTART+V_ACTIVE-V_MASK)); - rlpf_trigger_pp1 <= rlpf_trigger_act; - lt_box_enable_pp1 <= apply_lt_box(lt_mode, hcnt_act, vcnt_act, H_AVIDSTART, V_AVIDSTART, H_ACTIVE, V_ACTIVE); - - HSYNC_pp2 <= HSYNC_act; - VSYNC_pp2 <= VSYNC_act; - DE_pp2 <= DE_act; - line_id_pp2 <= line_id_pp1; - col_id_pp2 <= col_id_pp1; - border_enable_pp2 <= border_enable_pp1; - lt_box_enable_pp2 <= lt_box_enable_pp1; - // Optimized modes repeat pixels. Save previous pixel only when linebuffer offset changes. - if (rlpf_trigger_pp1) begin - R_prev_pp2 <= R_act; - G_prev_pp2 <= G_act; - B_prev_pp2 <= B_act; + line_id_pp[1] <= line_id_act; + col_id_pp[1] <= col_id_act; + for(pp_idx = 2; pp_idx <= `PP_SLGEN_PL_END-2; pp_idx = pp_idx+1) begin + line_id_pp[pp_idx] <= line_id_pp[pp_idx-1]; + col_id_pp[pp_idx] <= col_id_pp[pp_idx-1]; end - R_pp3 <= R_act; - G_pp3 <= G_act; - B_pp3 <= B_act; - HSYNC_pp3 <= HSYNC_pp2; - VSYNC_pp3 <= VSYNC_pp2; - DE_pp3 <= DE_pp2; - line_id_pp3 <= line_id_pp2; - col_id_pp3 <= col_id_pp2; - border_enable_pp3 <= border_enable_pp2; - lt_box_enable_pp3 <= lt_box_enable_pp2; - R_prev_pp3 <= R_prev_pp2; - G_prev_pp3 <= G_prev_pp2; - B_prev_pp3 <= B_prev_pp2; - // Reverse LPF step1 - R_diff_pp3 <= (R_prev_pp2 - R_act); - G_diff_pp3 <= (G_prev_pp2 - G_act); - B_diff_pp3 <= (B_prev_pp2 - B_act); + hcnt_pp <= hcnt_act; + vcnt_pp <= vcnt_act; + border_enable_pp[2] <= ((hcnt_pp < H_AVIDMASK_START) | (hcnt_pp >= H_AVIDMASK_STOP) | (vcnt_pp < V_AVIDMASK_START) | (vcnt_pp >= V_AVIDMASK_STOP)); + for(pp_idx = 3; pp_idx <= `PP_PIPELINE_LENGTH-2; pp_idx = pp_idx+1) begin + border_enable_pp[pp_idx] <= border_enable_pp[pp_idx-1]; + end - R_pp4 <= R_pp3; - G_pp4 <= G_pp3; - B_pp4 <= B_pp3; - HSYNC_pp4 <= HSYNC_pp3; - VSYNC_pp4 <= VSYNC_pp3; - DE_pp4 <= DE_pp3; - line_id_pp4 <= line_id_pp3; - col_id_pp4 <= col_id_pp3; - border_enable_pp4 <= border_enable_pp3; - lt_box_enable_pp4 <= lt_box_enable_pp3; - R_prev_pp4 <= R_prev_pp3; - G_prev_pp4 <= G_prev_pp3; - B_prev_pp4 <= B_prev_pp3; - // Reverse LPF step2 - R_diff_pp4 <= (R_diff_pp3 * X_REV_LPF_STR); - G_diff_pp4 <= (G_diff_pp3 * X_REV_LPF_STR); - B_diff_pp4 <= (B_diff_pp3 * X_REV_LPF_STR); + case (lt_mode) + default: begin + lt_box_enable_pp[2] <= 0; + end + `LT_POS_TOPLEFT: begin + lt_box_enable_pp[2] <= ((hcnt_pp < LT_POS_TOPLEFT_BOX_H_STOP) && (vcnt_pp < LT_POS_TOPLEFT_BOX_V_STOP)) ? 1'b1 : 1'b0; + end + `LT_POS_CENTER: begin + lt_box_enable_pp[2] <= ((hcnt_pp >= LT_POS_CENTER_BOX_H_START) && (hcnt_pp < LT_POS_CENTER_BOX_H_STOP) && (vcnt_pp >= LT_POS_CENTER_BOX_V_START) && (vcnt_pp < LT_POS_CENTER_BOX_V_STOP)) ? 1'b1 : 1'b0; + end + `LT_POS_BOTTOMRIGHT: begin + lt_box_enable_pp[2] <= ((hcnt_pp >= LT_POS_BOTTOMRIGHT_H_START) && (vcnt_pp >= LT_POS_BOTTOMRIGHT_V_START)) ? 1'b1 : 1'b0; + end + endcase + for(pp_idx = 3; pp_idx <= `PP_PIPELINE_LENGTH-1; pp_idx = pp_idx+1) begin + lt_box_enable_pp[pp_idx] <= lt_box_enable_pp[pp_idx-1]; + end - R_pp5 <= apply_reverse_lpf(X_REV_LPF_ENABLE, R_pp4, R_prev_pp4, R_diff_pp4); - G_pp5 <= apply_reverse_lpf(X_REV_LPF_ENABLE, G_pp4, G_prev_pp4, G_diff_pp4); - B_pp5 <= apply_reverse_lpf(X_REV_LPF_ENABLE, B_pp4, B_prev_pp4, B_diff_pp4); - HSYNC_pp5 <= HSYNC_pp4; - VSYNC_pp5 <= VSYNC_pp4; - DE_pp5 <= DE_pp4; - line_id_pp5 <= line_id_pp4; - col_id_pp5 <= col_id_pp4; - border_enable_pp5 <= border_enable_pp4; - lt_box_enable_pp5 <= lt_box_enable_pp4; - R_pp6 <= apply_scanlines(V_SCANLINEMODE, R_pp5, X_SCANLINESTR, V_SCANLINEID, line_id_pp5, col_id_pp5, FID_1x); - G_pp6 <= apply_scanlines(V_SCANLINEMODE, G_pp5, X_SCANLINESTR, V_SCANLINEID, line_id_pp5, col_id_pp5, FID_1x); - B_pp6 <= apply_scanlines(V_SCANLINEMODE, B_pp5, X_SCANLINESTR, V_SCANLINEID, line_id_pp5, col_id_pp5, FID_1x); - HSYNC_pp6 <= HSYNC_pp5; - VSYNC_pp6 <= VSYNC_pp5; - DE_pp6 <= DE_pp5; - border_enable_pp6 <= border_enable_pp5; - lt_box_enable_pp6 <= lt_box_enable_pp5; + HSYNC_pp[2] <= HSYNC_act; + VSYNC_pp[2] <= VSYNC_act; + DE_pp[2] <= DE_act; + for(pp_idx = 3; pp_idx <= `PP_PIPELINE_LENGTH-1; pp_idx = pp_idx+1) begin + HSYNC_pp[pp_idx] <= HSYNC_pp[pp_idx-1]; + VSYNC_pp[pp_idx] <= VSYNC_pp[pp_idx-1]; + DE_pp[pp_idx] <= DE_pp[pp_idx-1]; + end + HSYNC_out <= HSYNC_pp[`PP_PIPELINE_LENGTH-1]; + VSYNC_out <= VSYNC_pp[`PP_PIPELINE_LENGTH-1]; + DE_out <= DE_pp[`PP_PIPELINE_LENGTH-1]; - R_out <= apply_mask(lt_active, lt_box_enable_pp6, border_enable_pp6, R_pp6, X_MASK_BR); - G_out <= apply_mask(lt_active, lt_box_enable_pp6, border_enable_pp6, G_pp6, X_MASK_BR); - B_out <= apply_mask(lt_active, lt_box_enable_pp6, border_enable_pp6, B_pp6, X_MASK_BR); - HSYNC_out <= HSYNC_pp6; - VSYNC_out <= VSYNC_pp6; - DE_out <= DE_pp6; + // get RGB and delay it + R_pp[3] <= R_act; + G_pp[3] <= G_act; + B_pp[3] <= B_act; + for(pp_idx = 4; pp_idx <= `PP_PIPELINE_LENGTH-1; pp_idx = pp_idx + 1) begin + R_pp[pp_idx] <= R_pp[pp_idx-1]; + G_pp[pp_idx] <= G_pp[pp_idx-1]; + B_pp[pp_idx] <= B_pp[pp_idx-1]; + end + R_out <= R_pp[`PP_PIPELINE_LENGTH-1]; + G_out <= G_pp[`PP_PIPELINE_LENGTH-1]; + B_out <= B_pp[`PP_PIPELINE_LENGTH-1]; + + // reverse LPF ... + rlpf_trigger_r[1] <= rlpf_trigger_act; + for(pp_idx = 2; pp_idx <= `PP_RLPF_PL_START-1; pp_idx = pp_idx + 1) + rlpf_trigger_r[`PP_RLPF_PL_START-1] <= rlpf_trigger_r[1]; + + // Optimized modes repeat pixels. Save previous pixel only when linebuffer offset changes. + if (rlpf_trigger_r[`PP_RLPF_PL_START-1]) begin +`ifdef PP_RLPF_PL_START_EARLY + R_prev_pp[`PP_RLPF_PL_START] <= R_act; + G_prev_pp[`PP_RLPF_PL_START] <= G_act; + B_prev_pp[`PP_RLPF_PL_START] <= B_act; +`else + R_prev_pp[`PP_RLPF_PL_START] <= R_pp[`PP_RLPF_PL_START]; + G_prev_pp[`PP_RLPF_PL_START] <= G_pp[`PP_RLPF_PL_START]; + B_prev_pp[`PP_RLPF_PL_START] <= B_pp[`PP_RLPF_PL_START]; +`endif + end + for(pp_idx = `PP_RLPF_PL_START+1; pp_idx <= `PP_RLPF_PL_END-1; pp_idx = pp_idx + 1) begin + R_prev_pp[pp_idx] <= R_prev_pp[pp_idx-1]; + G_prev_pp[pp_idx] <= G_prev_pp[pp_idx-1]; + B_prev_pp[pp_idx] <= B_prev_pp[pp_idx-1]; + end + + // ... step 1 +`ifdef PP_RLPF_PL_START_EARLY + R_diff_s15_pre <= (R_prev_pp[`PP_RLPF_PL_START] - R_act); + G_diff_s15_pre <= (G_prev_pp[`PP_RLPF_PL_START] - G_act); + B_diff_s15_pre <= (B_prev_pp[`PP_RLPF_PL_START] - B_act); +`else + R_diff_s15_pre <= (R_prev_pp[`PP_RLPF_PL_START] - R_pp[`PP_RLPF_PL_START]); + G_diff_s15_pre <= (G_prev_pp[`PP_RLPF_PL_START] - G_pp[`PP_RLPF_PL_START]); + B_diff_s15_pre <= (B_prev_pp[`PP_RLPF_PL_START] - B_pp[`PP_RLPF_PL_START]); +`endif + + + // ... step 2 + // R_diff_s15, G_diff_s15, B_diff_s15 are outputs of multiplier IPs 12 pp-stage delay) + R_diff_s15 <= (R_diff_s15_pre * X_REV_LPF_STR); + G_diff_s15 <= (G_diff_s15_pre * X_REV_LPF_STR); + B_diff_s15 <= (B_diff_s15_pre * X_REV_LPF_STR); + + // ... step 3 + if (X_REV_LPF_ENABLE) begin + R_pp[`PP_RLPF_PL_END] <= apply_reverse_lpf(R_prev_pp[`PP_RLPF_PL_END-1], R_diff_s15); + G_pp[`PP_RLPF_PL_END] <= apply_reverse_lpf(G_prev_pp[`PP_RLPF_PL_END-1], G_diff_s15); + B_pp[`PP_RLPF_PL_END] <= apply_reverse_lpf(B_prev_pp[`PP_RLPF_PL_END-1], B_diff_s15); + end + + // calculate Y (based on non-reverseLPF values to keep pipeline length a bit lower) + Y_rb_tmp <= {1'b0,R_pp[`PP_RLPF_PL_END-2]} + {1'b0,B_pp[`PP_RLPF_PL_END-2]}; + Y <= {1'b0,Y_rb_tmp} + {1'b0,G_pp[`PP_RLPF_PL_END-1],1'b0}; + + // modify scanline strength (3 pp-stages) + // ... step 1/3 + // Y_sl_hybr_ref_tmp, R_sl_hybr_ref_tmp, G_sl_hybr_ref_tmp, B_sl_hybr_ref_tmp are outputs of multiplier IPs (1 pp-stage delay) + + // ... step 2/3 + // Y_sl_hybr_ref,R_sl_hybr_ref,G_sl_hybr_ref,B_sl_hybr_ref are outputs of multiplier IPs (1 pp-stage delay) + + // ... step 3/3 + Y_sl_str <= {1'b0,X_SCANLINESTR} < Y_sl_hybr_ref ? 8'h0 : X_SCANLINESTR - Y_sl_hybr_ref[7:0]; + R_sl_str <= {1'b0,X_SCANLINESTR} < R_sl_hybr_ref ? 8'h0 : X_SCANLINESTR - R_sl_hybr_ref[7:0]; + G_sl_str <= {1'b0,X_SCANLINESTR} < G_sl_hybr_ref ? 8'h0 : X_SCANLINESTR - G_sl_hybr_ref[7:0]; + B_sl_str <= {1'b0,X_SCANLINESTR} < B_sl_hybr_ref ? 8'h0 : X_SCANLINESTR - B_sl_hybr_ref[7:0]; + + // perform scanline generation (1 pp-stage) + // R_sl_mult, G_sl_mult and B_sl_mult are registered outputs of IP blocks (1 pp-stage delay) + R_sl_sub <= (R_pp[`PP_SLGEN_PL_END-2] > R_sl_str) ? (R_pp[`PP_SLGEN_PL_END-2]-R_sl_str) : 8'h00; + G_sl_sub <= (G_pp[`PP_SLGEN_PL_END-2] > G_sl_str) ? (G_pp[`PP_SLGEN_PL_END-2]-G_sl_str) : 8'h00; + B_sl_sub <= (B_pp[`PP_SLGEN_PL_END-2] > B_sl_str) ? (B_pp[`PP_SLGEN_PL_END-2]-B_sl_str) : 8'h00; + draw_sl <= |{(V_SCANLINEMODE == `SCANLINES_H) && (V_SCANLINEID & (5'h1<>1)) && (hcnt_1x == (hmax[~line_idx]>>1))) begin //VSM=1 FID_cur <= 1'b1; - vcnt_1x <= -1; + vcnt_1x <= 11'h7ff; // -1 for 11 bit word frame_change <= 1'b1; vmax <= vcnt_1x; end else @@ -690,20 +831,47 @@ begin `V_MULTMODE_5X: V_SCANLINEID <= (5'b00011 << {2{v_info[26]}}); endcase - H_L5BORDER <= h_info[29] ? (11'd1920-h_info[10:0])/2 : (11'd1600-h_info[10:0])/2; +// H_L5BORDER <= h_info[29] ? (11'd1920-h_info[10:0])/2 : (11'd1600-h_info[10:0])/2; + H_L5BORDER <= h_info[29] ? H_L5BORDER_1920_tmp[10:1] : H_L5BORDER_1600_tmp[10:1]; H_OPT_SCALE <= h_info2[18:16]; H_OPT_SAMPLE_SEL <= h_info2[15:13]; H_OPT_SAMPLE_MULT <= h_info2[12:10]; H_OPT_STARTOFF <= h_info2[9:0]; - X_REV_LPF_ENABLE <= (extra_info[12:8] != 5'b00000); - X_REV_LPF_STR <= (extra_info[12:8] + 6'd16); + X_REV_LPF_ENABLE <= (extra_info[18:14] != 5'b00000); + X_REV_LPF_STR <= (extra_info[18:14] + 6'd16); - X_MASK_BR <= extra_info[7:4]; - X_SCANLINESTR <= ((extra_info[3:0]+8'h01)<<4)-1'b1; + X_MASK_BR <= extra_info[13:10]; + + X_SCANLINE_METHOD <= extra_info[9]; + X_SCANLINE_HYBRSTR <= extra_info[8:4]; + X_SCANLINESTR <= ((extra_info[3:0]+8'h01)<<4)-1'b1; + + CALC_CONSTS <= 1'b1; end - + + if (CALC_CONSTS) begin + H_AVIDSTOP <= H_AVIDSTART+H_ACTIVE; + V_AVIDSTOP <= V_AVIDSTART+V_ACTIVE; + + H_AVIDMASK_START <= H_AVIDSTART+H_MASK; + H_AVIDMASK_STOP <= H_AVIDSTART+H_ACTIVE-H_MASK; + V_AVIDMASK_START <= V_AVIDSTART+V_MASK; + V_AVIDMASK_STOP <= V_AVIDSTART+V_ACTIVE-V_MASK; + + LT_POS_TOPLEFT_BOX_H_STOP <= H_AVIDSTART+(H_ACTIVE/`LT_WIDTH_DIV); + LT_POS_TOPLEFT_BOX_V_STOP <= V_AVIDSTART+(V_ACTIVE/`LT_HEIGHT_DIV); + LT_POS_CENTER_BOX_H_START <= H_AVIDSTART+(H_ACTIVE/2)-(H_ACTIVE/(`LT_WIDTH_DIV*2)); + LT_POS_CENTER_BOX_H_STOP <= H_AVIDSTART+(H_ACTIVE/2)+(H_ACTIVE/(`LT_WIDTH_DIV*2)); + LT_POS_CENTER_BOX_V_START <= V_AVIDSTART+(V_ACTIVE/2)-(V_ACTIVE/(`LT_HEIGHT_DIV*2)); + LT_POS_CENTER_BOX_V_STOP <= V_AVIDSTART+(V_ACTIVE/2)+(V_ACTIVE/(`LT_HEIGHT_DIV*2)); + LT_POS_BOTTOMRIGHT_H_START <= H_AVIDSTART+H_ACTIVE-(H_ACTIVE/`LT_WIDTH_DIV); + LT_POS_BOTTOMRIGHT_V_START <= V_AVIDSTART+V_ACTIVE-(V_ACTIVE/`LT_HEIGHT_DIV); + + CALC_CONSTS <= 1'b0; + end + R_in_L <= R_in; G_in_L <= G_in; B_in_L <= B_in; @@ -723,7 +891,7 @@ begin VSYNC_1x <= (vcnt_1x < V_SYNCLEN) ? `VSYNC_POL : ~`VSYNC_POL; else VSYNC_1x <= (((vcnt_1x+1'b1) < V_SYNCLEN) | ((vcnt_1x+1'b1 == V_SYNCLEN) & (hcnt_1x <= (hmax[~line_idx]>>1)))) ? `VSYNC_POL : ~`VSYNC_POL; - DE_1x <= ((hcnt_1x >= H_AVIDSTART) & (hcnt_1x < H_AVIDSTART+H_ACTIVE)) & ((vcnt_1x >= V_AVIDSTART) & (vcnt_1x < V_AVIDSTART+V_ACTIVE)); + DE_1x <= ((hcnt_1x >= H_AVIDSTART) & (hcnt_1x < H_AVIDSTOP)) & ((vcnt_1x >= V_AVIDSTART) & (vcnt_1x < V_AVIDSTOP)); FID_1x <= FID_cur; end end @@ -742,7 +910,7 @@ begin hcnt_2x_opt_ctr <= 0; line_out_idx_2x <= 0; if (frame_change) - vcnt_2x <= -1; + vcnt_2x <= 11'h7ff; // -1 for 11 bit word else if (line_change & (FID_cur == `FID_EVEN)) vcnt_2x <= vcnt_2x + 1'b1; end else if (hcnt_2x == hmax[~line_idx]) begin @@ -765,7 +933,7 @@ begin HSYNC_2x <= (hcnt_2x < H_SYNCLEN) ? `HSYNC_POL : ~`HSYNC_POL; VSYNC_2x <= (vcnt_2x < V_SYNCLEN) ? `VSYNC_POL : ~`VSYNC_POL; - DE_2x <= ((hcnt_2x >= H_AVIDSTART) & (hcnt_2x < H_AVIDSTART+H_ACTIVE)) & ((vcnt_2x >= V_AVIDSTART) & (vcnt_2x < V_AVIDSTART+V_ACTIVE)); + DE_2x <= ((hcnt_2x >= H_AVIDSTART) & (hcnt_2x < H_AVIDSTOP)) & ((vcnt_2x >= V_AVIDSTART) & (vcnt_2x < V_AVIDSTOP)); end end @@ -821,7 +989,7 @@ begin VSYNC_3x <= ~`VSYNC_POL; end - DE_3x <= ((hcnt_3x >= H_AVIDSTART) & (hcnt_3x < H_AVIDSTART+H_ACTIVE)) & ((vcnt_3x >= V_AVIDSTART) & (vcnt_3x < V_AVIDSTART+V_ACTIVE)); + DE_3x <= ((hcnt_3x >= H_AVIDSTART) & (hcnt_3x < H_AVIDSTOP)) & ((vcnt_3x >= V_AVIDSTART) & (vcnt_3x < V_AVIDSTOP)); end end @@ -835,7 +1003,7 @@ begin // TODO: better implementation if ((DE_3x == 1) & (DE_3x_prev4x == 0)) - hcnt_4x_aspfix <= hcnt_3x - 160; + hcnt_4x_aspfix <= hcnt_3x - 12'd160; else hcnt_4x_aspfix <= hcnt_4x_aspfix + 1'b1; @@ -847,7 +1015,7 @@ begin hcnt_4x_opt_ctr <= 0; line_out_idx_4x <= 0; if (frame_change) - vcnt_4x <= -1; + vcnt_4x <= 11'h7ff; // -1 for 11 bit word else if (line_change & (FID_cur == `FID_EVEN)) vcnt_4x <= vcnt_4x + 1'b1; end else if (hcnt_4x == hmax[~line_idx]) begin @@ -878,7 +1046,7 @@ begin HSYNC_4x <= (hcnt_4x < H_SYNCLEN) ? `HSYNC_POL : ~`HSYNC_POL; VSYNC_4x <= (vcnt_4x < V_SYNCLEN) ? `VSYNC_POL : ~`VSYNC_POL; - DE_4x <= ((hcnt_4x >= H_AVIDSTART) & (hcnt_4x < H_AVIDSTART+H_ACTIVE)) & ((vcnt_4x >= V_AVIDSTART) & (vcnt_4x < V_AVIDSTART+V_ACTIVE)); + DE_4x <= ((hcnt_4x >= H_AVIDSTART) & (hcnt_4x < H_AVIDSTOP)) & ((vcnt_4x >= V_AVIDSTART) & (vcnt_4x < V_AVIDSTOP)); end end @@ -895,7 +1063,7 @@ begin hcnt_5x_opt_ctr <= 0; line_out_idx_5x <= 0; if (frame_change) - vcnt_5x <= -1; + vcnt_5x <= 11'h7ff; // -1 for 11 bit word else if (line_change) vcnt_5x <= vcnt_5x + 1'b1; end else if (hcnt_5x == hmax[~line_idx]) begin @@ -927,7 +1095,7 @@ begin HSYNC_5x <= (hcnt_5x < H_SYNCLEN) ? `HSYNC_POL : ~`HSYNC_POL; VSYNC_5x <= (vcnt_5x < V_SYNCLEN) ? `VSYNC_POL : ~`VSYNC_POL; - DE_5x <= ((hcnt_5x >= H_AVIDSTART-H_L5BORDER) & (hcnt_5x < H_AVIDSTART+H_ACTIVE+H_L5BORDER)) & ((vcnt_5x >= V_AVIDSTART) & (vcnt_5x < V_AVIDSTART+V_ACTIVE)); + DE_5x <= ((hcnt_5x >= H_AVIDSTART-H_L5BORDER) & (hcnt_5x < H_AVIDSTOP+H_L5BORDER)) & ((vcnt_5x >= V_AVIDSTART) & (vcnt_5x < V_AVIDSTOP)); end end diff --git a/rtl/videogen.v b/rtl/videogen.v index 1673164..b63b822 100644 --- a/rtl/videogen.v +++ b/rtl/videogen.v @@ -34,27 +34,27 @@ module videogen ( ); //Parameters for 720x480@59.94Hz (858px x 525lines, pclk 27MHz -> 59.94Hz) -parameter H_SYNCLEN = 62; -parameter H_BACKPORCH = 60; -parameter H_ACTIVE = 720; -parameter H_FRONTPORCH = 16; -parameter H_TOTAL = 858; +parameter H_SYNCLEN = 10'd62; +parameter H_BACKPORCH = 10'd60; +parameter H_ACTIVE = 10'd720; +parameter H_FRONTPORCH = 10'd16; +parameter H_TOTAL = 10'd858; -parameter V_SYNCLEN = 6; -parameter V_BACKPORCH = 30; -parameter V_ACTIVE = 480; -parameter V_FRONTPORCH = 9; -parameter V_TOTAL = 525; +parameter V_SYNCLEN = 10'd6; +parameter V_BACKPORCH = 10'd30; +parameter V_ACTIVE = 10'd480; +parameter V_FRONTPORCH = 10'd9; +parameter V_TOTAL = 10'd525; -parameter H_OVERSCAN = 40; //at both sides -parameter V_OVERSCAN = 16; //top and bottom -parameter H_AREA = 640; -parameter V_AREA = 448; -parameter H_GRADIENT = 512; -parameter V_GRADIENT = 256; -parameter V_GRAYRAMP = 84; -parameter H_BORDER = (H_AREA-H_GRADIENT)/2; -parameter V_BORDER = (V_AREA-V_GRADIENT)/2; +parameter H_OVERSCAN = 10'd40; //at both sides +parameter V_OVERSCAN = 10'd16; //top and bottom +parameter H_AREA = 10'd640; +parameter V_AREA = 10'd448; +parameter H_GRADIENT = 10'd512; +parameter V_GRADIENT = 10'd256; +parameter V_GRAYRAMP = 10'd84; +parameter H_BORDER = ((H_AREA-H_GRADIENT)>>1); +parameter V_BORDER = ((V_AREA-V_GRADIENT)>>1); parameter X_START = H_SYNCLEN + H_BACKPORCH; parameter Y_START = V_SYNCLEN + V_BACKPORCH; diff --git a/software/sys_controller/mem_init/sys_onchip_memory2_0.hex b/software/sys_controller/mem_init/sys_onchip_memory2_0.hex index ed10b2c..8cb651b 100644 --- a/software/sys_controller/mem_init/sys_onchip_memory2_0.hex +++ b/software/sys_controller/mem_init/sys_onchip_memory2_0.hex @@ -1,7 +1,7 @@ :020000020000FC :2000000000402074084008140800683A0000000000000000000000000000000000000000FE -:2000080006C02074DEE80014068020B4D6830A140080207410A5671400C0207418E67F14AA -:2000100010C00326100000151080010410FFFD360816AD800816BB80003FFF06DEFFFB0417 +:2000080006C02074DEE80014068020B4D682DD140080207410A53D1400C0207418E64E1433 +:2000100010C00326100000151080010410FFFD360816A2800816B080003FFF06DEFFFB042D :2000180000BFE084D880000500800084D880004500800344D880008500800484DFC0041543 :20002000D88000C531803FCCD8C005173000022600BFE004000001060080100439C03FCC99 :20002800380E91FAD900018518C000CC39C0021410800214D80B883A01000044D8800105E7 @@ -13,20 +13,20 @@ :200058001085883A1884B03AD8800105D88001C3D80B883A01000044108001CCD80001858C :20006000D88001C508108680DFC00417DEC00504F800283ADEFFFC04DC000015040020B4E3 :2000680084041804DC80021504801304DC400115900B883A2023883A000D883A8009883A18 -:20007000DFC003150817324089403FCC8009883A000D883A0817388004400044900B883A7E -:200078008009883A880D883A08173240880B883A8009883ADFC00317DC800217DC40011733 -:20008000DC000017DEC00404081735C1DEFFFC04DC000015040020B484041804DC800215F5 -:20008800DC4001152025883A2823883A8009883A000D883A01401304DFC003150817324058 -:2000900091403FCC8009883A000D883A081738800180004489403FCC8009883ADFC00317E6 -:20009800DC800217DC400117DC000017DEC0040408173881DEFFFF0421003FCCDFC000156E +:20007000DFC003150817274089403FCC8009883A000D883A08172D8004400044900B883A94 +:200078008009883A880D883A08172740880B883A8009883ADFC00317DC800217DC4001173E +:20008000DC000017DEC0040408172AC1DEFFFC04DC000015040020B484041804DC80021500 +:20008800DC4001152025883A2823883A8009883A000D883A01401304DFC003150817274063 +:2000900091403FCC8009883A000D883A08172D800180004489403FCC8009883ADFC00317F1 +:20009800DC800217DC400117DC000017DEC0040408172D81DEFFFF0421003FCCDFC0001579 :2000A00008101940DFC00017DEC00104F800283ADEFFFF0429403FCC21003FCCDFC00015E8 :2000A800081020C00005883ADFC00017DEC00104F800283ADEFFFB04DCC00315DC800215C3 :2000B000DC400115DC000015DFC004152825883A3027883A2023883A2821883A8485C83A12 :2000B80014C0060E8140000389003FCC84000044081020C08C400044003FF8060005883A14 :2000C000DFC00417DCC00317DC800217DC400117DC000017DEC00504F800283ADEFFFF0433 -:2000C8000140FA04DFC00015081620C01009883ADFC00017DEC001040816BE41DEFFFF04F6 +:2000C8000140FA04DFC00015081615C01009883ADFC00017DEC001040816B341DEFFFF040C :2000D000000B883A010003C4DFC0001508102900000B883A01001844DFC00017DEC0010403 -:2000D80008102901DEFFFD04DC000015040020B484257D048140008301000144DFC00215B5 +:2000D80008102901DEFFFD04DC000015040020B4842553048140008301000144DFC00215DF :2000E000DC40011508102900808000838100030300FFFEC41004D1FA20C6703A044001040A :2000E8001085883A1085883A1884B03A01400F448809883A8080030508102900010000444F :2000F000081031C08809883A014007440810290001400C04010018440810290001402C84E7 @@ -36,11 +36,11 @@ :200110000100334408102900000B883A0100338408102900000B883A010033C4081029004A :20011800000B883A01003404081029008140010301003844DFC00217DC400117DC0000175F :20012000DEC0030408102901DEFFF904DCC003152827883A0140FA04DD400515DD000415CD -:20012800DC400115DC000015DFC00615DC800215202B883A3023883A9CC03FCC08161500AB +:20012800DC400115DC000015DFC00615DC800215202B883A3023883A9CC03FCC08160A00B6 :20013000050000441021883A9D00021E0486000400000106048C000401400044010003C440 :2001380008102900000B883A01000CC408102900900AD23A01000D04048020B40810290036 :20014000000B883A01000D440810290081403FCC01000C0408102900800AD23A01000C443A -:2001480094A57D0429403FCC08102900800AD43A01000C8408102900000B883A010003C429 +:2001480094A5530429403FCC08102900800AD43A01000C8408102900000B883A010003C453 :2001500008102900000B883A0100314408102900954002159D000226040002840000010688 :200158000400008400800044940001C5908001058C403FCC050000448D0002260005883A2F :2001600000000106008003C401003804908001450140300408102900047FFF040100164407 @@ -76,7 +76,7 @@ :20025000DC40011508102900044030448809883A0810274084003FCC800AC03A10803F8C23 :200258008809883A114AB03A08102900014000C401003184DFC00217DC400117DC00001713 :20026000DEC0030408102901DEFFF904DCC00315DC800215DC4001152025883A2823883A50 -:20026800010001040140074404C020B49CE57D04DD000415DC000015DFC006153821883A8E +:20026800010001040140074404C020B49CE55304DD000415DC000015DFC006153821883AB8 :20027000DD4005153029883A0810290098C0030381C0004C00BFFF441884703A39CF883ADE :2002780011CEB03A99C00305988003171080008C10000226010000440810928001001C0426 :200280009C0000C308102740108000CC8D4000CC00C00044100B883AA8C0052600C00084D3 @@ -95,967 +95,967 @@ :2002E80001000104081029000400190401000384081027401080040C1000321E0100004442 :2002F000081031C080BFFFC41021883A10BFFFCC103FF61E00002B06053FE8048C400C0CAE :2002F800008008048880081E018000C4D16000C401001CC408102B40014020B40180048470 -:20030000296110840000090600800C0488800B1E018000C4D16000C401001CC408102B4051 -:20030800014020B4018004842961078401001D8408102B4004000084003FA3060080040485 -:200310008880081E018000C4D160000401001CC408102B40014020B4018004842961030412 -:20031800003FF206018000C4D160000401001CC408102B40014020B40180048429610C04F8 +:200300002960E0840000090600800C0488800B1E018000C4D16000C401001CC408102B4082 +:20030800014020B4018004842960D78401001D8408102B4004000084003FA30600800404B6 +:200310008880081E018000C4D160000401001CC408102B40014020B4018004842960D30443 +:20031800003FF206018000C4D160000401001CC408102B40014020B4018004842960DC0429 :20032000003FEA06000B883A01000304081029000140100401000344081029000140004415 :200328000100038408102900000B883A0100038408102900081033C000800044DFC00617CB :20033000DD400517DD000417DCC00317DC800217DC400117DC000017DEC00704F800283A27 :20033800DEFFFD04DC400115DC0000152823883A2021883A000B883A010003C4DFC0021549 :200340000810290001001644081027408C403FCC10800BCC8800051E81403FCC280A91BA50 :2003480029400414114AB03A00000106100B883A29403FCC01001644DFC00217DC40011730 -:20035000DC000017DEC0030408102901008020B410A2D30410C03217D0A25E151800052695 +:20035000DC000017DEC0030408102901008020B410A2A60410C03217D0A2611518000526BF :2003580010C03517008040041880021E0005883AF800283A00BFCE04F800283ADEFFFD0403 -:20036000DC400115280F883A2823883A200B883AD1225E17DC000015DFC002153021883A36 -:200368000817080010000B1E800D883A8463883A34400626308000031005C2721005D63A5C +:20036000DC400115280F883A2823883A200B883AD1226117DC000015DFC002153021883A33 +:200368000816FD0010000B1E800D883A8463883A34400626308000031005C2721005D63A68 :200370003180004430BFFFC5003FF9060005883A0000010600BFCDC4DFC00217DC4001177D :20037800DC000017DEC00304F800283ADEFFFB04DC800315DC400215DC000115DFC0041546 :2003800030803FCC2023883A2825883A3021883A100003268805883A8C89883A0000060610 -:20038800300A923AD1225E170816D740103FF92600BFCD84000010061100062610C000030E -:200390001807C2721807D63A1080004410FFFFC5003FF906800AD23A800C923AD1225E1790 -:20039800280A943ADC800015880F883A0816E0801000012600BFCD44DFC00417DC800317C6 +:20038800300A923AD12261170816CC40103FF92600BFCD84000010061100062610C0000316 +:200390001807C2721807D63A1080004410FFFFC5003FF906800AD23A800C923AD12261178D +:20039800280A943ADC800015880F883A0816D5801000012600BFCD44DFC00417DC800317D1 :2003A000DC400217DC000117DEC00504F800283ADEFFF904DD400515DD000415DCC0031558 :2003A800DC800215DC000015DFC00615DC4001152825883A3029883A3827883A0021883AB7 :2003B0000005883A0540400484800E2E9423C83AAC40012E04404004980D883A880B883A85 -:2003B8008009883A0810D7C010000A1E800D003A880B883A9809883A081723C084004004AA +:2003B8008009883A0810D7C010000A1E800D003A880B883A9809883A081718C084004004B5 :2003C000003FF1061500021E0005883A0000010600BFCD04DFC00617DD400517DD00041767 :2003C800DCC00317DC800217DC400117DC000017DEC00704F800283ADEFFFD04DC000115F0 -:2003D0002021883A010020B421258104DFC002150815BFC010803FCC1000091E0080800442 -:2003D800010020B4D8800015000F883A000D883A800B883A212581040815E18010803FCCF2 -:2003E000DFC00217DC000117DEC00304F800283A014020B4010020B429658F042125840479 -:2003E80008146341014020B4010020B42965A5042125884408146341DEFFFB04DFC00415AE +:2003D0002021883A010020B421255704DFC002150815B4C010803FCC1000091E0080800477 +:2003D800010020B4D8800015000F883A000D883A800B883A212557040815D68010803FCC27 +:2003E000DFC00217DC000117DEC00304F800283A014020B4010020B42965650421255A04CD +:2003E80008145841014020B4010020B429657B0421255E4408145841DEFFFB04DFC0041518 :2003F000DC000015DCC003152021883ADC800215DC40011508107080000B883A0009883A00 -:2003F80084003FCC0810868080002B1E040020B4842594048140011701006734213F30044D -:200400000816150081000287014006841023883A081620C000C020B418E5C58410C5883A70 -:200408001140000B8809883A044020B4081620C0814004031009883A8C65A944081620C090 -:20041000814003031009883A29400044081620C0810003838CC009438C800903100B883AEB -:2004180021000044081620C0980D883A900B883A1009883A0810488089000903DFC0041793 +:2003F80084003FCC0810868080002B1E040020B484256A048140011701006734213F300477 +:2004000008160A0081000287014006841023883A081615C000C020B418E59B8410C5883AB0 +:200408001140000B8809883A044020B4081615C0814004031009883A8C657F44081615C0D0 +:20041000814003031009883A29400044081615C0810003838CC009838C800943100B883A76 +:2004180021000044081615C0980D883A900B883A1009883A0810488089000943DFC004175E :20042000DCC00317DC800217DC400117DC000017DEC0050408100F81DFC00417DCC00317AB :20042800DC800217DC400117DC000017DEC00504F800283ADEFFFB04DC0001152021883A46 :2004300001000044DFC00415DC800315DC4002150810928008106C80000B883A0009883A42 :20043800081073C084003FCC800F003A000D883A000B883A010000440810988080000D1E45 -:20044000044020B48C659404048020B4888003C394A5A94491C00503D8800015000D883A1A +:20044000044020B48C656A04048020B4888003C394A57F4491C00503D8800015000D883A6E :20044800000B883A0009883A081005C09080050388800AC58009883A0810FB800009883A87 :20045000DFC00417DC800317DC400217DC000117DEC0050408109281DEFFFD04DFC00215CD -:20045800DC400115DC00001521003FCC2000271ED0A2610300C0020410C01D2600C0040459 -:2004600010C0062600C0010410C01C1E0009883A0814F4800100004400002E06040020B405 -:20046800842594048140011701006734213F30040816150081000287014006841023883A2D -:20047000081620C000C020B418E5C58410C5883A1140000B8809883A081620C000C072B46A -:2004780018F0DFC418800236010003C4000001060009883A0814F480000015060009883AD9 -:200480000814F4800009883A00001206008020B410A5A94410C00783044000841021883ADE -:200488001C4002260009883A00000106010003C40814F4808100078320803FCC8880042EB6 +:20045800DC400115DC00001521003FCC2000271ED0A2640300C0020410C01D2600C0040456 +:2004600010C0062600C0010410C01C1E0009883A0814E9800100004400002E06040020B410 +:2004680084256A048140011701006734213F300408160A0081000287014006841023883A62 +:20047000081615C000C020B418E59B8410C5883A1140000B8809883A081615C000C072B4AA +:2004780018F0DFC418800236010003C4000001060009883A0814E980000015060009883AE4 +:200480000814E9800009883A00001206008020B410A57F4410C00783044000841021883A13 +:200488001C4002260009883A00000106010003C40814E9808100078320803FCC8880042EC1 :20049000008001441109C83A21003FCC00000106010000C4DFC00217DC400117DC00001794 -:20049800DEC0030408149241DEFFF50400C020B4DFC00A15DF000915DDC00815DD80071558 +:20049800DEC0030408148741DEFFF50400C020B4DFC00A15DF000915DDC00815DD80071563 :2004A000DD400615DD000515DCC00415DC800315DC400215DC0001150089C40418C434045A :2004A80019800037054020B4AD4434043000020E10BFFFC4103FFA1E29403FCC21003FCC49 -:2004B000040020B40815418084259404102D883A808002C310000426AC4000378823D43A5B -:2004B8008C4000CC000001060023883A01000DC40814A0C001000E041027883A0814A0C0CA +:2004B000040020B40815368084256A04102D883A808002C310000426AC4000378823D43A90 +:2004B8008C4000CC000001060023883A01000DC4081495C001000E041027883A081495C0E0 :2004C0001025883A108003CC1004923A01000E4414E6B03A9004D1BA1080004C808002456D -:2004C8000814A0C001000E841029883A0814A0C0A8C00037010000848C403FCC89000E26D6 -:2004D000010020B421259404210002C32000021E010063C424C0082E010000448900041E01 +:2004C800081495C001000E841029883A081495C0A8C00037010000848C403FCC89000E26EC +:2004D000010020B421256A04210002C32000021E010063C424C0082E010000448900041E2B :2004D8001827D4BA9CC1FFCC9927883A000005069480080C9000032698C032280540004466 -:2004E0000000020698C06428002B883A814002C3048020B4B1003FCC94A5A9442800131E0A -:2004E8002000212618002026D0E25F030140008419003FCC2100201C213FE0042900070E53 -:2004F00000C020B40100004418E59404D0225F05190002C5044001040000160618C00044C7 -:2004F800D0E25F050023883A000012062000012618000D1ED1225F03017FFF0421803FCCC3 -:200500003180201C31BFE0043140040ED0225F05800002C50440010400000506213FFFC483 -:20050800D1225F0500000106D0225F050023883A18008726108003CC1004923A80C00017DF -:200510001528B03A19000044008020B410A5940424C007369900004420C0053610C00117A5 -:20051800A0C0031E10C00203A8803FCC18800226D02264C500000C06D0E264C300800044B0 -:2005200019003FCC208008261887883AD0E264C518C03FCC1880041E88803FCC00C0008499 -:2005280010C0012E1823883A9140028380800843010020B400C020B42125A94418E59404E5 +:2004E0000000020698C06428002B883A814002C3048020B4B1003FCC94A57F442800131E34 +:2004E8002000212618002026D0E262030140008419003FCC2100201C213FE0042900070E50 +:2004F00000C020B40100004418E56A04D0226205190002C5044001040000160618C00044EE +:2004F800D0E262050023883A000012062000012618000D1ED1226203017FFF0421803FCCBD +:200500003180201C31BFE0043140040ED0226205800002C50440010400000506213FFFC480 +:20050800D122620500000106D02262050023883A18008726108003CC1004923A80C00017D9 +:200510001528B03A19000044008020B410A56A0424C007369900004420C0053610C00117CF +:20051800A0C0031E10C00203A8803FCC18800226D02267C500000C06D0E267C300800044AA +:2005200019003FCC208008261887883AD0E267C518C03FCC1880041E88803FCC00C0008496 +:2005280010C0012E1823883A9140028380800843010020B400C020B421257F4418E56A0439 :200530002880281E214002C3188008832880251E21400303188008C32880221E2140034330 :200538001880090328801F1E214003831880094328801C1E21400143188007032880191E47 :2005400021400183188007432880161E214001C3188007832880131E21400203188007C310 :200548002880101E210002431880080320800D1E914005C381000B8300C020B4008020B459 -:2005500018E5A94410A594042900061E1940060311000BC32900031E18C0088310800E4338 +:2005500018E57F4410A56A042900061E1940060311000BC32900031E18C0088310800E438C :200558001880042688803FCC00C0008410C0012E1823883A90C0054380800B0318800F26FB -:20056000008020B410A594041100028701400684081620C000C020B418E5C60410C5883A85 -:2005680010C0000B008083441880041E88803FCC00C0008410C0012E1823883AD0A265C3AA -:200570001000202685C0028701400684058020B4B809883A081620C0B5A5C20487000403F4 -:20057800B085883A1140038BE009883A081620C0173FFFCC80800B83A0FFFFCC10000A268B -:2005800001400684B809883AD8C00015081620C0B085883A1180060BD8C00017300CD07A94 -:200588003180004C00000106000D883A180B883AE009883A0814C7C088803FCC1000011E0B +:20056000008020B410A56A041100028701400684081615C000C020B418E59C0410C5883AE4 +:2005680010C0000B008083441880041E88803FCC00C0008410C0012E1823883AD0A268C3A7 +:200570001000202685C0028701400684058020B4B809883A081615C0B5A598048700040329 +:20057800B085883A1140038BE009883A081615C0173FFFCC80800B83A0FFFFCC10000A2696 +:2005800001400684B809883AD8C00015081615C0B085883A1180060BD8C00017300CD07A9F +:200588003180004C00000106000D883A180B883AE009883A0814BCC088803FCC1000011E16 :200590000440004484C00015850001158540020591400003810005C300C020B4008020B4FE -:2005980018E5A94410A594042900181E19400043110006032900151E194000831100064365 -:2005A0002900121E194000C31100068329000F1E19400403110009C329000C1E19400443A6 -:2005A80011000A032900091E1940048311000A432900061E194003C3110009832900031E34 -:2005B00018C008C310800E831880032688803FCC1000011E044000449100058380800B4375 -:2005B80004C020B49CE5940420800626994004030814FE409880044588803FCC1000011EC9 -:2005C000044000449100068380800C432080012608150F40910006C380800C832080012647 -:2005C8000814C0009100070380800CC3208001260814C0C0910007C380800D832080071EBA -:2005D000008020B410A5A94410C00803008020B410A5940410800DC318800226914008039D -:2005D8000814BCC09100064380800C032080062601400604081620C0010020B42120300423 -:2005E0002089883A0814E3009100078380800D4320800126081115809100074380800D03C6 -:2005E800208001260814F900014020B4010020B4018001842965A3842125B30408162340F4 -:2005F0001000031E010020B42125A3840814C18090C0090380800EC31880071E008020B4DD -:2005F80010A5A94410C00943008020B410A5940410800F0318800226910004C30810FB8037 -:20060000D0A26603100009269100098380800F4320C03FCC18800526213FFD0421003FCC16 -:200608002100201C213FE004081445C0014020B4010020B401800B442965A944212599C438 -:20061000081626408805883AD02265C5DFC00A17DF000917DDC00817DD800717DD400617AB -:20061800DD000517DCC00417DC800317DC400217DC000117DEC00B04F800283ADEFFF0049B -:20062000DC400715044020B48C6594048A40028701400684DF000E154809883ADD400B1571 -:20062800DD000A15DCC00915DA400215DFC00F15DDC00D15DD800C15DC800815DC0006155B -:20063000081620C0054020B488C005C3AD65C204A885883A010000848F00040312C00503C7 -:200638001500030B14C004C3DA4002171900031E8C8006039480004400000E0601000044B1 -:2006400019000B1E10C0060B1906703A890003031800032620000626048000C4000005063F -:2006480020000326148005C394800118000001060025883A88C0050B008020B4010200041F -:2006500010A5940419001B2620C00D360100080419001A2620C003360080040418801526E6 -:200658000000310601004004190019260100800419002D1E10800983040001040000160684 -:20066000010800041900162620C00536010400041900251E108009830400014400000E061F -:200668000110000419001326012000141900162600001D060400010400001E061400098391 -:20067000008000C41421C83A8421883A00001906040000C40000170680A1C83A0000150646 -:20067800108008031000101EA53FFA049CC0030400000D061080080310000D1EA53FFA0479 -:200680009CC0030400000A0610C00983108008030400018480E1C83A1000061EA53FFA04EE -:200688009CC0030400000306E021883A0000010604000144D0E26103008002041880011E80 -:200690005AD7883A81803FCCE5C03FCCB985C83A4809883A01400684D9800515DA400215D9 -:20069800DAC00115D8800015081620C0A885883A1280028BD9000017500B883ADA8003159A -:2006A000081620C0102CD7FA890009C381403FCCB085883A102DD07A081620C0DA4002175F -:2006A800DAC00117B08F883A4809883A01400684D9C004155C3FFFCC081620C0A885883A9C -:2006B00012C00483D940001782C9883ADAC00115081620C0B085883AB80B883A113FFFCC4F -:2006B80008160580E1003FCC100B883A081620C088C00803DAC00117B809883A1A4000587E -:2006C0004812977A580B883AD8800115DA400215081620C0DA8003178F000343B809883A21 -:2006C800500B883A10807FCCE03897BA102C92FA081620C01081FFCC800B883AB809883ABF -:2006D0001738B03A081620C088C00483DA400217B72CB03A10C5C83A10803FCC1004953AAF -:2006D800B086B03A008020B41A46B03A1084300410C0003588800443D9800517D9C00417FF -:2006E0001006937A88800403300C943A380E94FA100492BADA0001171884B03A118CB03A8B -:2006E80031CCB03A423FFFCC008020B4320CB03A10842C041180003588C0030388800683DA -:2006F000890002871806977A100496BA014006841886B03A88800A031004953A18A0B03A58 -:2006F800081620C0A885883A108005431004947A8086B03A900496FA18A4B03AA0BFFFCC17 -:2007000090A4B03A98BFFFCC100492FA90A4B03A008020B4108428041480003588800E8365 -:200708001006923A88800A431004913A1884B03A88C0064310C4B03A00C020B418C424044E -:2007100018800035DFC00F17DF000E17DDC00D17DD800C17DD400B17DD000A17DCC00917F9 -:20071800DC800817DC400717DC000617DEC01004F800283ADEFFF304DC000415040020B466 -:2007200084259404DC4005158440011700800044DFC00C15DDC00B15DD800A15DD4009156E -:20072800DD000815DCC00715DC800615D0A264C58800162684C00017980014260100673460 -:20073000880B883A213F3004081615001025883A8080020301283BF4980B883A212EC004C1 -:200738001000042608161500880B883A1009883A0000030608161500880B883A1089883A18 -:20074000081615001023883A000002060445DC04048F550401000EC40814A0C001000F04F1 -:200748001027883A0814A0C08080058300C0207418DD97041085883A1085883A1885883AA3 -:2007500011C000178080020380C000171000021E00801A440000010600801C04018020747B -:20075800010020B4D8C00015319D4F040140044421258844D8800115081628C00140190471 -:200760008809883A081615000140FA049009883A1029883A08161500014019048809883A7A -:20076800102B883A08161B400140FA049009883AD8800215DD00011508161B4001400284BF -:200770001009883A0816150001802074010020B4D8800015A80F883A319D510401400444DF -:200778002125A504081628C0D0A26B831000011E0810FA4081000017D1E265838140020392 -:20078000A00D883A044020B40815488011003FCC2100201C213FE00400FFFFC48C659404E5 -:2007880020C0011E00800104888002858480028301400684054020B4D4A2600594803FCCD7 -:200790009480201C94BFE0049009883A081620C0AD65C204A885883AD0E26583144005832C -:20079800858004038500011788E2703AD462610515C0038BB1403FCC9CC03FCCB93FFFCC5F -:2007A000081620C09809883A100B883A081620C0A00B883A1009883A08161500B1003FCCC6 -:2007A800B80B883A1027883A081620C015BFFFCC80800B838C403FCCA53FFFCC10000826C4 -:2007B000014006849009883A081620C0A885883A11C0060B380ED07A39C0004C0000010658 -:2007B800000F883A80800CC39CC03FCCA00D883AD880031580800DC3B00B883A8809883A9B -:2007C000D880021580800D83DCC00015D880011508151BC081000D430811158081000B43B5 -:2007C800814004030814FE4080800445081187C080800A83810003831000051E008020B42B -:2007D00010A59404114003C3290B003A00000106000B883A0810CE0080C00E03008020B4D8 -:2007D80010A5940481000A8318000B26DFC00C17DDC00B17DD800A17DD400917DD00081725 -:2007E000DCC00717DC800617DC400517DC000417DEC00D0408110B412000061E11C00AC3A1 -:2007E800108003C3000D883A000B883AD8800015081005C0DFC00C17DDC00B17DD800A17B6 -:2007F000DD400917DD000817DCC00717DC800617DC400517DC000417DEC00D04F800283A45 -:2007F800D0A26443DEFFFE04DFC00115DC00001510000426008020B410A594041080058350 -:20080000000001060005883AD122640300C020B418E58C841885883A1100000521003FCC6E -:2008080008140F401021883A1000021E010003C40813F2C08005883ADFC00117DC000017BC -:20081000DEC00204F800283AD0A26443DEFFFE04DFC00115DC00001510000426008020B49E -:2008180010A5940410800583000001060005883AD122640300C020B418E58C841885883A33 -:200820001100000521003FCC0813F2C01021883A1000021E010003C40813F2C08005883AAA -:20082800DFC00117DC000017DEC00204F800283ADEFFFD04DC000015D4226003DC400115AE -:2008300001400684D422648584003FCC8009883A044020B4DFC002158C65C204081620C0A1 -:200838008885883A10C0038B014006848009883AD0E2638D10C00503D0E2668D10C00483E7 -:20084000D0E25F8D10C0028BD0E2630D10C00543D0E2618D108004C3D0A2650D081620C08A -:200848008885883A1080030BD0A2628DDFC00217DC400117DC000017DEC00304F800283AE4 -:20085000DEFFFA04008020B4DD000415DCC00315DC800215DC400115DC000015DFC0051560 -:2008580010A5940410C002C3040020B42029883AD46264838425C204D4E25F8BD4A2650BA9 -:20086000180021261080028714401F1E8809883A01400684081620C08085883A1100038BED -:20086800D0E2638B20C0161E11000503D0E2668B20C0131E1100048398C03FCC20C0101EE6 -:200870001100028BD0E2630B20C00D1E11000543D0E2618B20C00A1E10C004C390803FCCEE -:200878001880071E014006848809883A081620C08085883A10C0030BD0A2628B18800226C3 -:2008800000800044D0A265C58809883A01400684081620C0D0E2638B8085883A8809883A22 -:2008880010C0038DD0E2668B14C004850140068410C00505D0E2630B10C0028DD0E2618B2E -:20089000148004C510C00545081620C0D0E2628B01802074010020B48085883AA1FFFFCC18 -:20089800319E85040140044421258F0410C0030DDFC00517DD000417DCC00317DC800217C8 -:2008A000DC400117DC000017DEC00604081628C1DEFFFE04DC000015040020B4DFC0011505 -:2008A80084043C04008004448080003580000035008020B41084300410000035008020B401 -:2008B00010842804100000350109C4040816BE4000803444D0A2620D00803444808000352F -:2008B800010000F4210350040816BE40018001B401406734010020B43186A004297F300479 -:2008C0002104180408172B00081454C008148AC0100026260009883A0814A0C000C03FC491 -:2008C80010C0242608150640010000840810274010803FCC00C004C410C0201E08103640D0 -:2008D000081449401000022600800044D0A266050810D4C01021883A10001A1E0812B5C014 -:2008D80001402074010020B401800D84295E05842125B48408162640010003C408140F40FF -:2008E000D122640308140F40008020B41084380410800037108000AC1000011E0812BAC049 -:2008E8000009883A08110B4000000706043FFF8400000506043FFF4400000306043FFF040E -:2008F00000000106043FFFC48005883ADFC00117DC000017DEC00204F800283AD0A26043D7 -:2008F80000E00004DEFFF1041080004410803FCC1008933AD0A2620BDC000515040020B429 -:2009000010C4B03A2084B03AD0A2620DDFC00E15DF000D15DDC00C15DD800B15DD400A1570 -:20090800DD000915DCC00815DC800715DC400615D900030D10BFFFCC84043C0480800035EC -:2009100001802074010020B4319D57040140044421258F04081628C00810F900054020B422 -:2009180004C020B4058020B405C020B400800044AD4438049CE5B484B5A58F04BDC42004F9 -:20092000AC4000378C7FFFCC1000611E8800602698C0058BD0A2620B88C0551E00F3FFC4E9 -:200928001884703AD0A2620D10BFFFCC80800035B00000050810F900010001B42106A00472 -:200930000816BE40D0A2620BD8C0030B1090001410C4B03AD0A2620D10BFFFCC80800035E4 -:200938000100FA040815FF4007000044081603001700021EBC800037903FFC0E0816050032 -:2009400090BFFFC410BFFFCC00FFFF541880072E01802074010020B4319D5A04014004442D -:2009480021258F04081628C000002F069038D43A953FFFCC0083FFC4E703FFCC01401904AD -:20095000A009883AE0800F1E08161500A009883A01401904173FFFCC08161B4010BFFFCC5F -:2009580001802074010020B4D8800015E00F883A319D5C040140044421258F04081628C0E1 -:20096000000019060816150011FFFFCC01401904E009883AD9C0041508161B4010BFFFCC7C -:2009680001401904E009883AD88002150816150010BFFFCC01401904A009883AD8800115F3 -:2009700008161B40D9C0041710BFFFCC01802074010020B4D8800015319D5F04014004448F -:2009780021258F04081628C00810F9000000020698C0060B88C00A26D0E2620B00AFFFC4F5 -:200980001884703AD0A2620D10BFFFCC808000350109C4040816BE408805883A003F980647 -:200988001083FFCCD0A2620D808000350005883ADFC00E17DF000D17DDC00C17DD800B170E -:20099000DD400A17DD000917DCC00817DC800717DC400617DC000517DEC00F04F800283A9B -:20099800DEFFFF04DFC000150811C7400814B800008020B410A5A944110004C3DFC0001733 -:2009A000DEC0010408110B41DEFFF504DFC00A15DF000915DDC00815DD800715DD40061533 -:2009A800DD000515DCC00415DC800315DC400215DC00011508122900100020160080144489 -:2009B00001802074010020B4000F883A319D64040140044421258844D8800015081628C028 -:2009B80001402074010020B401800444295D70042125A504081626400810FA4001000234B6 -:2009C0002128480405C020B4050020B405802074054020B40816BE400021883A0027883AF6 -:2009C8000023883A0025883ABDC43804A5259404B59D9704AD65A94400003A0601802074E3 -:2009D000010020B4100F883A319D69040140044421258844081628C001402074010020B4CB -:2009D80001800444295E94042125A50408163A400810FA40003FFF0610FFFF8418C03FCC85 -:2009E000010000C420C0302ED0E2680310C02E260812D540D0A26B83100002260009883A21 -:2009E8000813A6C0D0A260C3A1000583070020B410C03FCCE725940420C0251EA8C004C304 -:2009F000E0800A8318800B26000F883A000D883A000B883A0009883AD8000015081005C02F -:2009F800A90004C308110B40A88004C3A0000115A0800A85008020B410A5A944108004C36A -:200A000010009726E08005831000A11ED0A26A1701004B04D0A26715D0A26B03D0A2680562 -:200A08000816BE40B880003710FFFFCCD0E269150086303A1004D63A18C000ECD0E26A1530 -:200A1000D0A26B05103FCC1ED0226915003FD00610BFFFC410803FCC0100020420804036DC -:200A1800100490BA01002074210A1E041105883A108000171000683A0081289C008128ACB3 -:200A2000008128C8008128DC008128F0008129080081291C0081292C00812948008003C4A0 -:200A2800D0A265850021883A00000306008003C4D0A265850400008404C000C4044000442B -:200A30000025883A00002606008003C4040000C4D0A265858027883A003FF806008003C43B -:200A3800D0A26585040000C404C0008400000406008003C404000084D0A265858027883A94 -:200A40000023883A003FEE060080040404000044D0A265858027883A00000F06008003C48D -:200A4800D0A265850021883A00000A0604000084008003C4D0A2658504C000448023883AA7 -:200A50008025883A00000606008003C4D0A26585040000C404C00044044000848825883A69 -:200A5800D0A2644310000926008020B410A58C8410C7883A18800003D0E2640311003FCCA4 -:200A600020C00226D0A2640508140F40D0A260C3E1400D43E00002C5E080058500C000448D -:200A680028803FCC89003FCC1880042E00800144114BC83A29403FCC00000106014000C4BA -:200A7000081499000814AF4008107080D0A266031000022699003FCC081441C081403FCCFE -:200A780091003FCC08152E00E0800583010020B4018004441085883A1085883AB085883A4C -:200A80001140001721258844E000011508163A4001402074010020B401800444295D6D04E4 -:200A88002125A50408163A40D0A26B831000011E0810FA40D0E260830080028418BF5F1EF7 -:200A9000D0A269171000031ED0A26A171080006C103F5A26010003C40813F2C0003F570634 -:200A9800A9C00503E0800AC338BF6626A08003C3000D883A000B883AD88000150009883A63 -:200AA000081005C0A8800503A0800AC5003F5D0681403FCC91003FCC0811268010803FCCD6 -:200AA80000C0008410C0252600C0010410C0032600C0004410FF551E00002406A08002C37C -:200AB00010000926D0A2620B00C020B418C43C0410800094D0A2620D10BFFFCC18800035EC -:200AB80008126600003F4906A00001150814AF40A0800583010020B4018004441085883AB2 -:200AC0001085883AB085883A114000172125884408163A4001402074010020B40180044443 -:200AC800295D6D042125A50408163A40D0A26B83103F361E0810FA40003F3406A08002C3DD -:200AD000103F32260811C740003F3006A08002C3103F2E26081187C0003F2C06014020749C -:200AD800010020B4DEFFFF0401800B44295DA2042125A944DFC0001508162640014020B4CD -:200AE000010020B40180BC8429603C042125C2040816264000800044D0A265C50005883AE0 -:200AE800DFC00017DEC00104F800283ADEFFF804DD000415DCC00315DC80021505002074AC -:200AF000048020B404C020B4DD800615DC000015DFC00715DD400515DC400115002D883A7A -:200AF8000021883AA51E1304948438049CE5B48401402074010020B401800444295DAE0469 -:200B00002125840408163A408405883A1085883AA085883A11400017010020B401800444E0 -:200B080021258F0408163A400810F9000023883A054000849080003710BFFFCCD0A26915CC -:200B100090C0003700C6303A18C000ECD0E26A1510001A26B08019268407883A98C7883AEC -:200B180088000A1E01402074010020B401800444295DB004212584041880000D08163A4055 -:200B20000810F9000440004400000C0618C0000B10C0092601402074010020B401800444B5 -:200B2800295DB2042125840408163A400810F9000023883A0000010604400084D0A2671756 -:200B300010000F1ED0E26A170080007418800C1E8000091E01402074010020B401800D841C -:200B3800295E05842125B4840816264004400084040006C400000206843FFF8404400084DF -:200B4000D0A26A17D5A26917D0A267158D4003260109C4040816BE40003FC6068400004406 -:200B480000800684143FB20E010003C4DFC00717DD800617DD400517DD000417DCC003178A -:200B5000DC800217DC400117DC000017DEC008040813F2C1DEFFEF04D88009C4D88001150E -:200B5800008020B410A5ABC410C00044D8C003150140207410C00084D8800215D8C00415F8 -:200B6000018001C410C000C4295E03C410800104D9000804DFC01015DD400F15DD000E15CE -:200B6800DCC00D15DC800C15DC400B15DC000A15D80009C5D8C00515D8C00615D88007157C -:200B700008162640D1226917014020B40005883A2965B484018006841087883A1947883A46 -:200B780018C0000B044020B48C65B484190003261181122610800044003FF70600C00684D3 -:200B800018810E36100490BA00C0207418CB870410C5883A108000171000683A00812E8831 -:200B880000812EA400812EB400812E9000812EAC00812EBC00812E9C0081323C00812EC4E5 -:200B900000812ECC00812ED40081323C0081323C0081323C0081323C0081323C0081323CAD -:200B980000812EF800812F7400812F9400812FC00081300C00812FEC00813038008131D0FA -:200BA000008131F800813148008000440000010600800084D0A260C50000E806008000C4F9 -:200BA800003FFC0600800104003FFA0600800144003FF80600800184003FF606008001C4A1 -:200BB000003FF40600800204003FF20600800244003FF006D0A26B831007003AD0E26B85E1 -:200BB8001000031E010000440813A6C00000D3060810FA400000D106008020B410A5940483 -:200BC0001100028701400684081620C001C020B439E5C20401802074010020B4388F883AC6 -:200BC800319DB6040140044421258404081628C0008020B41084340411C000371080003739 -:200BD000018020741005D43A39C1FFCC010020B4108000CC39C00044319DB9040140044486 -:200BD80021258F04D8800015081628C00810F9000000B206D0A2620B00C020B418C43C0459 -:200BE0001080041CD0A2620D10BFFFCC188000350000AA0600C020B418E5A9441880000334 -:200BE8000140004411003FCC290002361145883A000001060005883A1880000500009F06C3 -:200BF00000C020B418E5A944188000430140004411003FCC290002361145883A000001066B -:200BF8000005883A1880004500009406008020B410A5A94410C0008319003FCC20000126EB -:200C000018FFFFC410C0008500008C0600C020B418E5A944188000830140038411003FCC96 -:200C0800290002361080004400000106008003C4188000850000810601402074010020B4FB -:200C100001800444295DBD042125840408163A4001402074010020B401800444295DC10490 -:200C180021258F0408163A40048020B4050020B4054020B40810F9009484380404C006C40E -:200C2000A525C204AD659404908000370021883A10BFFFCC8407883A1C47883A18C0000B61 -:200C280010C002268400004484FFFA1EA900028701400684081620C0A085883A108005C317 -:200C300000C0014418803F3600C001041C001916D90008042087883A18C000031C07D83A24 -:200C380018C0004C180007261085883A1085883AD8C001041885883A1080001714000005C9 -:200C40000000300601802074010020B481C00044319DC4040140044421258F04081628C0F1 -:200C48000810F90001000234212848040816BE400000240600800304808022260109C404C8 -:200C50000816BE40003FD00601402074010020B401800444295DC8042125840408163A4028 -:200C580001402074010020B401800444295DCC0421258F0408163A40040020B40810F90059 -:200C600084043804048006C404C0024405000304808000370009883A10BFFFCC2107883AC6 -:200C68001C47883A18C0000B10C01D1E99001F16014002842100004408160DC0D0A2640599 -:200C70000811FE000810FA40D0226B8500001B0600C020B418E5A94418800583014007848E -:200C780011003FCC290002361080004400000A060005883A0000080600C020B418E5A944A8 -:200C80001880058311003FCC2000022610BFFFC400000106008007C41880058500000706BD -:200C88002100004424BFDD1E00000106253FE5260109C4040816BE40003FD506D0A267179B -:200C90001000191ED0E26A171880006C10000A26008020B410A59404108005830100024486 -:200C980011403FCC29000226108000440000010600800044D0A260C518C000AC18000A268D -:200CA00000C020B418E5A944188000030140004411003FCC290002361145883A00000106FA -:200CA8000005883A18800005DFC01017DD400F17DD000E17DCC00D17DC800C17DC400B1740 -:200CB000DC000A17DEC01104F800283ADEFF6B04D9000304DC008C15DFC09415DDC09315E4 -:200CB800DD809215DD409115DD009015DCC08F15DC808E15DC408D150810F3801021883A58 -:200CC0000815F9C08000641E01800104D9400304D900830408163A40014020740180010443 -:200CC800295E5B04D90083040816344010002D1ED8800403DCC08484D9400484D880840554 -:200CD000D8800443018002049809883AD880844508163A40D880068BD8008645D8808B0D46 -:200CD800D880070BD8808B8DD9408B17280BC232D880078BD9408715D8808B0DD880080B46 -:200CE000D8808B8DD8808B171005C232D8808815D880088BD8808B0DD880090BD8808B8DD5 -:200CE800D8808B171005C232D8808915D8808217D8808B151005C232D8808A1500C078844E -:200CF00028BFF9841880093601800044D9000304081723C0D8C08A1710C00626040019842C -:200CF80000002D060400190400002B06040019440000290601802074010020B4319E5D04AD -:200D00000140044421258404081628C0D9C0881701802074010020B4319E61040140044497 -:200D080021258F04081628C00810F900DD008817DD8089170023883A0005883A05C080046D -:200D10008D00132EA465C83ABC80012E048080048D408004A80CD27A010020B4DC800015E0 -:200D1800000F883AD9400304212581040815E18014003FCC8000081E880D003A900B883A90 -:200D2000D9000304081723C0A823883A003FEC06B080761E00000206048000C400004906B0 -:200D2800D8808487D9C08403D8C084431000C82600802074109DF70401802074010020B425 -:200D3000D8C00015319E64040140044421258404DCC00215D8800115081628C0014020746C -:200D3800010020B401800444295E7A0421258F0408162640044020B4040020B40810F9009A -:200D40008C4438048425B4848880003780C0000B10BFFFCC10C0B11E0814AF40D0A2620BF9 -:200D480000C020B418C43C0410800094D0A2620D10BFFFCC188000350109C4040816BE4081 -:200D500001402074010020B401800444295E67042125840408163A40048000C4014020749B -:200D5800010020B401800444295E6A0421258F0408163A400810F9000027883A0580800474 -:200D600005004004DC4088179C406E2E8CE3C83AB440012E044080049D408004A80DD27A39 -:200D6800010020B4DC400015000F883AD9400304212581040815E18010803FCC10004E260C -:200D700000A1C83A0815F9C0008000448080362614000F1600BFCD4480802D26140005163F -:200D780000BFCD0480802D1E01402074295E540400002F0600BFCD848080222600BFCDC4EF -:200D80008080261E01402074295E4804000028060080198480801226140007160080190416 -:200D880080800C260080194480801C1E01402074295E360400001E06008019C480800D26B8 -:200D900000801A048080151E01402074295E43040000170601402074295E32040000140606 -:200D980001402074295E3A04000011060815F9C0048000C401402074040019C4295E3E04ED -:200DA00000000B0601402074295E4C040000080601402074295E50040000050601402074D8 -:200DA800295E59040000020601402074295E2E04010020B421258F040180044408163A40A2 -:200DB0000810F900010003F4211090040816BE4080004A0E9000492601802074010020B478 -:200DB800319E76040140044421258404081628C094BFFFC4003F99069827D23A880B883A61 -:200DC000A440012E01404004980D883AD90003040810DEC01021883A103FAA1EA440023658 -:200DC800A827883A003F970699800044897FC004D90043040810DEC01021883A103FF8263F -:200DD000003FA00601402074010020B401800444295E6E042125840408163A400140207477 -:200DD800010020B401800444295E6A0421258F0408163A400810F900D9808917D940881735 -:200DE000D9C003040009883A0810E9001021883A103F8C1E0815F9C001402074010020B41B -:200DE80001800444295E7F04212584040816264001402074010020B401800444295E720456 -:200DF00021258F0408163A400810F900003FFF0600802074109E9404003F370680C0008B7C -:200DF80010C003260109C4040816BE40003F4606048000C404001A04003F720600BFFFC4C6 -:200E0000DFC09417DDC09317DD809217DD409117DD009017DCC08F17DC808E17DC408D17EF -:200E0800DC008C17DEC09504F800283A21C03FCC01802074010020B4319E84040140044404 -:200E100021258F04081628C1DEFFFF040141194421003FCCDFC00015081620C00140190427 -:200E18001009883A0816058001802074010020B4100F883A319E86040140044421258F04B6 -:200E2000DFC00017DEC00104081628C121C03FCC01802074010020B4319E88040140044498 -:200E280021258F04081628C1014003F4DEFFFC042950900421003FCCDFC00315DC40021592 -:200E3000DC000115081620C0014018F4294BA8041009883A1021883A081615008009883AF9 -:200E3800014659041023883A081615000140FA041009883A08161B40014002841009883A99 -:200E40000816150001802074010020B4D8800015880F883A319E8B040140044421258F04EF -:200E4800081628C0DFC00317DC400217DC000117DEC00404F800283ADEFFFF04014119C4A3 -:200E500021003FCCDFC00015081620C0014019041009883A0816058001802074010020B4DE -:200E5800100F883A319E8E040140044421258F04DFC00017DEC00104081628C121C03FCC8A -:200E600001802074010020B4319E90040140044421258F04081628C121003FCCDEFFFF04B0 -:200E680001409C4421000044DFC00015081620C0014019041009883A081605800180207441 -:200E7000010020B4100F883A319E93040140044421258F04DFC00017DEC00104081628C184 -:200E780021003FCC2100201C213FE00421FFFD0401802074010020B4319E95040140044491 -:200E800021258F04081628C1DEFFFF040140068421003FCCDFC00015081620C0014020B4D4 -:200E88002965C204010020B401800444288B883A21258F04DFC00017DEC0010408163A4118 -:200E900021003FCC2109883A008020B410A02A042109883A1109883A21400017010020B4E3 -:200E98000180044421258F0408163A41D0A26917DEFFF70401C020B4DFC00815DDC007152B -:200EA000DD800615DD400515DD000415DCC00315DC800215DC400115DC00001500C002C4BD -:200EA80039E5B4840180044418CB883A29CB883A2940000B2880041E21003FCC1827883A45 -:200EB0002000051E0000030618C0004419BFF61E0001080610010A26D5226B43040020B401 -:200EB80084211504A5C03FCCB82290FA014005048445883A148001031580001795403FCC8F -:200EC000A809883A081620C0B0C00117993FFD0421003FCC1885883A00C00104180B883A0B -:200EC80019002836200890BA00C0207418CECF0420C9883A20C000171800683A00813B8478 -:200ED00000813B5000813B6800813C6800813C68A800011EB480000394BFFFC48461883ACD -:200ED8008480010500008A06B14000038461883AA90000448400010408160DC0808000055F -:200EE00000008306B8000326A53FFFC4D5226B4500007F06D0226B85DFC00817DDC007175A -:200EE800DD800617DD400517DD000417DCC00317DC800217DC400117DC000017DEC0090442 -:200EF0000810FA4111000103014000C42140062620C06F1E1080021704000044103EE83A1A -:200EF8001023883A00006C061080041710000126103EE83AD4E26B43014005049C403FCC8C -:200F00008C800044882290FA902490FA8445883A154000171100010384AD883AAD0001174B -:200F0800081620C0B0C00017A085883A1080021718800126B000010584A5883A8461883AAD -:200F100081000103AC40011701400504081620C08885883A108002179CC00044D4E26B4572 -:200F18009080001500004A0610C0010328C04836180690BA01002074210F22041907883AD5 -:200F200018C000171800683A00813C9C00813C9C00813D0400813D4400813D4411C00217A6 -:200F280098C03FCC020003C4114003031100034339800003108003831A00081E20C03FCCD2 -:200F300032003FCC1A00022E30BFFFC400000B0629403FCC2800091E0000070610C03FCCAC -:200F380032003FCC40C0022E308000440000030629403FCC280001262005883A38800005C8 -:200F400000002306110002179CC03FCC014003C420C0000B9940051E1080030B197FFFCCE7 -:200F48001140062E18FFFFC4000004061080038B197FFFCC2880012E18C0004420C0000DBF -:200F50000000130611400317290000172800102698C03FCC018003C4208000031980041E56 -:200F580010C03FCC1800092610BFFFC40000070628C0010311803FCC19403FCC3140022E2B -:200F600010800044000001061805883A208000050023883A0021883AD0A26B4300C020B496 -:200F680018E11504100490FA014005041885883A1100010314C00017081620C01025883A1B -:200F700098800117010020B4212584041485883A114000170180044408163A40988001173A -:200F7800010001041485883A10C0010320C03636180690BA01002074210F82041907883A43 -:200F800018C000171800683A00813E1C00813E4C00813E5800813EA000813E6810C002173C -:200F8800110004170180044418C0000318C5883A1085883A2085883A11400017010020B4DF -:200F900021258F0408163A4000001F0610C002171080041700001A0610C002171080041763 -:200F98001900000B0000170680000D268800032601C0207439DE99040000020601C020742E -:200FA00039DE970401802074010020B4319E9B040140044421258F04081628C000000A06AF -:200FA800108003171000041E008020B410A58F04100000050000040610C000171080021702 -:200FB00019000003103EE83ADFC00817DDC00717DD800617DD400517DD000417DCC00317BB -:200FB800DC800217DC400117DC000017DEC009040810F90121003FCC203FA51E103FA41E61 -:200FC000DFC00817DDC00717DD800617DD400517DD000417DCC00317DC800217DC4001178E -:200FC800DC000017DEC00904F800283A21003FCC008003C411006336009114B4DEFFB80402 -:200FD0001094D544D88000150080107410951044DC404115D8800115244002B0008014440C -:200FD800DCC04315DC400285DFC04715DD804615DD404515DD004415DC804215DC0040151E -:200FE000D8000205D88002458C403FCC24C0040488001C1E014020B4008010C4018002847E -:200FE80029658C84D9000344D88002C5D800030508162640008020B410A5940410800583EF -:200FF000014020B401800D84D8800605D0A260832965B484D9000684D8800645D0A264431D -:200FF800D88005C508162640980C923A01401404D809883A0810DEC01004C03A0085C83A7C -:201000000000320600BFFC84014020B401800B44D88003452965A94400800084D90003C4B5 -:20100800D98002C5D8000305D880038508162640014020B49826923A018031042965C204BB -:20101000D9000F0408162640980D883A01404004D809883A04004004054020B40810DEC0AA -:201018000480310405008B84AD65C204802D883A917FFFCC800D883AA94B883AD809883A21 -:201020000816264089803FCC800B883A84A5883AA421C83A34CD883AD809883A8029883A48 -:20102800843FFFCC0810DEC08C40004480000326B43FEF2E04004004003FED060005883A5A -:201030000000020600BFFFC4F800283ADFC04717DD804617DD404517DD004417DCC043175E -:20103800DC804217DC404117DC004017DEC04804F800283ADEFFB704DFC04815DDC047156B -:20104000DD804615DD404515DD004415DCC04315DC804215DC404115DC00401521003FCCB5 -:20104800008003C41100022E047FFFC400007706240004048008943AD80D883A014040048F -:201050000810D7C0103FF81E014020B40180020429602D04D809883A081634401023883AEC -:201058001000671ED88002031000671ED8C00243008014441880641ED8800283100003260C -:2010600000C0004410C02A2600006006D8800303D8C002C31004923A10C4B03A00C010C4F9 -:2010680010C05A1E01C020B4D8C003440005883A0180024439E58C8401400284190000030D -:2010700022003FCC3200023611D1883A410000051080004418C00044117FF81ED8800643A8 -:2010780000C00244D0A2608511003FCC1900032ED880060311003FCC19000136D0A260C531 -:20108000D88005C3010020B401800D84D0A26445008020B410A58C8410800003D9400684DF -:201088002125B484D0A264050816264000003706D8800317D8C002C311803FCC300C923ABB -:2010900030CCB03A00C00B4430C0301E1004D23A00C0BC841025883A10BFFFCC10C02B1E43 -:20109800010020B48020923AD94003C42125A94405C020B4081626400027883A002D883AEF -:2010A00005400F0405004004BDE5C204A97FFFCCA14DC83A90BFFFCCB13FFFCCD94B883A89 -:2010A80011800F16B909883A08162640990000442027883A21003FCC2409883A2008923A75 -:2010B000A56BC83AD80D883A01404004ADAD883A94BFC0040810D7C0002B883A003FEB06E3 -:2010B800100D883A008020B410A5C2041109883A0816264000800044D0A265C500000306A1 -:2010C0000440004400000106044000848805883ADFC04817DDC04717DD804617DD4045173E -:2010C800DD004417DCC04317DC804217DC404117DC004017DEC04904F800283ADEFFFC045C -:2010D000DC000015040020B484041804DC80021504801284DC400115900B883A2023883A72 -:2010D800000D883A8009883ADFC003150817324089403FCC8009883A000D883A08173880D1 -:2010E00004400044900B883A8009883A880D883A08173240880B883A8009883ADFC003177F -:2010E800DC800217DC400117DC000017DEC00404081735C1DEFFFC04DC000015040020B4EB -:2010F00084041804DC800215DC4001152025883A2823883A8009883A000D883A0140128492 -:2010F800DFC003150817324091403FCC8009883A000D883A081738800180004489403FCC2A -:201100008009883ADFC00317DC800217DC400117DC000017DEC0040408173881DEFFFE04D2 -:201108000080004421003FCCDC0000151120983A01000184DFC0011584003FCC800B883ACC -:2011100008143B40800B883A010001C4DFC00117DC000017DEC0020408143B41DEFFFE0450 -:201118002109883ADC00001524003FCC800B883A01000044DFC0011508143B40800B883A80 -:2011200001000084DFC00117DC000017DEC0020408143B41DEFFFF0401000144DFC000156A -:20112800081433C000C0218410C0141E014024040100080408143B40000B883A010008440A -:2011300008143B40000B883A0100088408143B40014000C4010008C408143B40000B883AE1 -:2011380001000A0408143B4001400C0401001C4408143B4000800044000001060005883A16 -:20114000DFC00017DEC00104F800283ADEFFFD04D9000005010020B4DC0001150180004494 -:201148002821883A21041804D80B883ADFC0021508174040813FFFCC0816BE40DFC00217E2 -:20115000DC000117DEC00304F800283AD0E2620BDEFFFC0400BFE7C41884703ADC400115AE -:20115800044020B4D0A2620DDFC00315DC800215DC00001510BFFFCC8C443C04888000357C -:20116000040005048009883A0816BE40800B883A01000E04081450C0800B883A01000E44CF -:20116800081450C0800B883A8009883A081450C0800B883A01001C44081450C0800B883A50 -:2011700001001784081450C0800B883A01001B44081450C0800B883A01000304081450C03D -:201178000480C804900B883A01000044081450C0800B883A01000184081450C0900B883ADD -:2011800001000084081450C0D0A2620B10801014D0A2620D10BFFFCC88800035DFC003179A -:20118800DC800217DC400117DC000017DEC00404F800283AD0E2620BDEFFFA0400BFE7C447 -:201190001884703ADC000015040020B4DC800215DC400115D0A2620DDFC00515DD000415FB -:20119800DCC003152025883A2823883A10BFFFCC84043C04808000350140C8040100004486 -:2011A000081450C0D0A2620B10800814D0A2620D10BFFFCC80800035014004049009883A24 -:2011A80008163F801029883A10803FCC1000091E014020B49009883A0180044429602F0488 -:2011B00008163A409100000301400504081450C0000009060027883AA5003FCC94C5883ABA -:2011B80011000003014005049CC00044081450C098803FCC153FF936D0E2620B00BFF7C4AE -:2011C0001884703AD0A2620D10BFFFCC808000350140050401003004081450C0D0A2620B8F -:2011C80010800814D0A2620D10BFFFCC80800035014004048809883A08163F801027883A39 -:2011D00010803FCC1000091E014020B48809883A0180044429602F0408163A40890000031C -:2011D80001400504081450C0000009060025883A9CC03FCC8C85883A1100000301400504F3 -:2011E00094800044081450C090803FCC14FFF936D0A2620B10801014D0A2620D10BFFFCC00 -:2011E80080800035DFC00517DD000417DCC00317DC800217DC400117DC000017DEC0060405 -:2011F000F800283ADEFFFB04DC000015040020B484041804DC80021504800B04DCC0031582 -:2011F800900B883A2027883A000D883A8009883ADFC00415DC400115081732400440004454 -:20120000880D883A99403FCC8009883A08173880900B883A8009883A880D883A08173240E1 -:20120800880B883A8009883ADFC00417DCC00317DC800217DC400117DC000017DEC0050473 -:20121000081735C1DEFFFC04DC000015040020B484041804DC800215DC4001152025883AB3 -:201218002823883A8009883A000D883A01400B04DFC003150817324091403FCC8009883AD0 -:20122000000D883A081738800180004489403FCC8009883ADFC00317DC800217DC400117C2 -:20122800DC000017DEC0040408173881010020B4DEFFFD04000D883A000B883A21041804A5 -:20123000DFC00215DC400115DC00001508173880010002840816BE400400060404400044B5 -:20123800800B883A8809883A08148440800B883A0100008408148440800B883A010000C452 -:20124000081484408809883A08147C401405003ADFC00217DC400117DC000017DEC00304AC -:20124800F800283ADEFFFD04DC400115DC000015044000442021883A84003FCC8809883ABE -:20125000DFC00215802090FA08147C4000FFF9C410C4703A80A0B03A84003FCC800B883AA6 -:201258008809883A08148440800B883A0100008408148440800B883A010000C4DFC00217C7 -:20126000DC400117DC000017DEC0030408148441DEFFFD04DC4001152023883A0100004467 -:20126800DC000015DFC00215043FF60408147C401420703A89003FCC008000842080021E74 -:2012700084000054000003062008917A2080011480A0B03A84003FCC800B883A010000446A -:2012780008148440800B883A0100008408148440800B883A010000C4DFC00217DC400117C6 -:20128000DC000017DEC0030408148441DEFFFB04DC000015040020B484041804DC80021519 -:2012880004801704DCC00315900B883A2027883A000D883A8009883ADFC00415DC40011589 -:201290000817324004400044880D883A99403FCC8009883A08173880900B883A8009883A20 -:20129800880D883A08173240880B883A8009883ADFC00417DCC00317DC800217DC40011795 -:2012A000DC000017DEC00504081735C1DEFFFC04DC000015040020B484041804DC800215C2 -:2012A800DC4001152025883A2823883A8009883A000D883A01401704DFC003150817324022 -:2012B00091403FCC8009883A000D883A081738800180004489403FCC8009883ADFC00317B4 -:2012B800DC800217DC400117DC000017DEC0040408173881DEFFFC04DC000015040008849E -:2012C0008009883ADFC00315DC800215DC4001150814A0C0014004C4010005841023883A63 -:2012C8000489C4040814A8C09009883A0816BE40014000C4010005C40814A8C09009883A08 -:2012D0000816BE40017FE004894AB03A29403FCC8009883A0814A8C00100FA040816BE4063 -:2012D80089401FCC8009883ADFC00317DC800217DC400117DC000017DEC004040814A8C177 -:2012E000DEFFFE04DC0000150409C4048009883ADFC001150816BE4001400444010005841A -:2012E8000814A8C08009883A0816BE4001400084010005C40814A8C08009883ADFC00117E6 -:2012F000DC000017DEC002040816BE41DEFFFE04DC0000152821883A21403FCC010004845A -:2012F800DFC001150814A8C081403FCC010004C4DFC00117DC000017DEC002040814A8C135 -:2013000021403FCC01000F440814A8C121403FCC010004440814A8C1DEFFFE04DFC00115BA -:20130800DC000015214000C32021883A010002840814A8C081400103010002440814A8C012 -:2013100081400143010002040814A8C081400003010003440814A8C0814000430100030491 -:201318000814A8C081400083010002C4DFC00117DC000017DEC002040814A8C1DEFFFB0477 -:20132000DC400115DC0000152023883A2021883A01000104DCC00315DC8002153027883A3C -:201328002825883ADFC004150814A0C0017FFE049CC03FCC1144703A9800092680FFFFCC69 -:201330000101FFC420C006361140005429403FCC010001040814A8C08423883A00000306A7 -:2013380011403FCC010001040814A8C08C7FFFCC880AD13A0100004429403FCC0814A8C0FF -:20134000880A913A0100008429403C0C0814A8C001006734917FFFCC213F30040816150038 -:20134800880B883A1009883A081620C00140FA041009883A0816150000E327D41880092E5D -:2013500000C0007418C45BC41880082E00C000B418C3D5C41885403A00C000C41885C83A5E -:20135800000003060005883A000001060080004414003FCCD0A026041405883A1100000332 -:2013600001400A04081620C08808D07A880B883A1109883A08160580100B883A00C001C410 -:2013680010803FCC1880012E180B883A29403FCC800491BA280A90FA010000C4288AB03ABE -:2013700029403FCCDFC00417DCC00317DC800217DC400117DC000017DEC005040814A8C1B1 -:20137800DEFFFE04DC0000152021883A01000684DFC001150814A0C0017FFE8484003FCC35 -:2013800000C000441144703A80C0021E10800094000001061080029411403FCC01000684B2 -:20138800DFC00117DC000017DEC002040814A8C12140028BDEFFFE04DC000015280AD23A76 -:201390002021883A010012C4DFC001150814A8C081400283010012840814A8C08140030BFA -:2013980001001344280AD23A0814A8C081400303010013040814A8C08140038B010013C491 -:2013A000280AD23A0814A8C081400383010013840814A8C08140010B01001444280AD23AA4 -:2013A8000814A8C081400103010014040814A8C08140018B010014C4280AD23A0814A8C057 -:2013B00081400183010014840814A8C08140020B01001544280AD23A0814A8C0814002030B -:2013B800010015040814A8C08140040B010015C4280AD23A0814A8C08140040301001584A9 -:2013C0000814A8C08140048B01001644280AD23A0814A8C081400483010016040814A8C035 -:2013C8008140050B010016C4280AD23A0814A8C08140050301001684DFC00117DC00001789 -:2013D000DEC002040814A8C1DEFFFD04DC00001504000FC4DC4001152023883A8009883AAC -:2013D800DFC002150814A0C000FFFC0410C4703A888AB03A29403FCC8009883ADFC00217D3 -:2013E000DC400117DC000017DEC003040814A8C1DEFFFD04DC40011504400684DC000015CD -:2013E8002021883A8809883ADFC002150814A0C080C03FCC014000C428C7C83A180691BAB3 -:2013F00010800FCC8809883A188AB03A29403FCCDFC00217DC400117DC000017DEC003049B -:2013F8000814A8C1DEFFFB04DCC0031504C00104DC4001152023883A9809883ADFC00415A5 -:20140000DC800215DC0000152825883A0814A0C0900B883A8809883A1021883A081620C03C -:20140800108007CC100A90FA840001CC9809883A2C0AB03A0814A8C091403FCC89003FCCF5 -:20141000081620C01004D17ADFC00417DCC00317DC800217DC400117DC000017DEC00504AC -:20141800F800283ADEFFFE04DFC00115DC0000150814AF400009883A0814DE0004000044BD -:20142000800B883A01000D440814A8C0010020B4212030040814E300800B883A01000404EA -:201428000814FE400009883A0814F4800009883A0814F900010001840814C000014000C4A8 -:2014300001000D040814A8C0010011040814C0C001402204010006C40814A8C00140020457 -:2014380001000704DFC00117DC000017DEC002040814A8C1DEFFFD04DC0000152021883AE3 -:20144000DC40011584003FCC044004048809883A802090FADFC002150814A0C0108001CC73 -:20144800808AB03A29403FCC8809883ADFC00217DC400117DC000017DEC003040814A8C1C0 -:2014500021003FCC20001A26DEFFFD04DC400115010009842823883A01402004DC000015EF -:20145800DFC002153021883A0814A8C089403FCC0080004428800426008002042880041E6D -:20146000814016840000030681400244000001068140060429403FCC01000C44DFC00217B2 -:20146800DC400117DC000017DEC0030400000206000B883A010009840814A8C1DEFFF704D8 -:20147000DCC003152827883AD9400917DDC00715DD800615DD400515DD000415DC8002158D -:20147800DC400115DC000015DFC0081524003FCC008000443029883A382B883ADC400A1705 -:20148000DC800B17DD800C172DC03FCC808008260080020480800D1E29400C8429403FCC0A -:20148800010001440814A8C00140080400000C062940008429403FCC010001440814A8C0F0 -:20149000014001842809883A000006062940018429403FCC010001440814A8C00140040402 -:20149800010001840814A8C0B80D883A800B883A0100004408151400B1003FCC0814C0C088 -:2014A000008004048080021E014003040000010601400204010008840814A8C0A17FFFCCF2 -:2014A800993FFFCCA9803FCC0814C7C091403FCC89003FCCDFC00817DDC00717DD80061747 -:2014B000DD400517DD000417DCC00317DC800217DC400117DC000017DEC009040814BCC155 -:2014B800DEFFFD0429BFFF84DC400115DC000015DFC0021531803FCC0080004424403FCC03 -:2014C0002C003FCC11800436008000848880071E8805883A000008068800061E8005003A11 -:2014C80000C000841885C83A000003060005883A0000010600800084880A913A8C47883A54 -:2014D00010803FCC100491BA18C7883A28CAB03A214AB03A288AB03A29403FCC01000644D5 -:2014D8000814A8C0008000C48080041E01401744010004040814A8C000001206014016046E -:2014E000010004040814A8C00080008488800D1E0080004414000B368080021E0140148416 -:2014E80000000106014014C4010003840814A8C00100FA040816BE40010005040814A0C017 -:2014F00000000B06014016C4010003840814A8C00100FA040816BE40010005040814A0C003 -:2014F800008000C48080021E0140040400000106000B883A010006040814A8C0000B883AF7 -:2015000001000D84DFC00217DC400117DC000017DEC003040814A8C1DEFFFD04DC40011520 -:201508002023883A01000504DC000015DFC002152821883A0814A0C08C403FCC00C000846B -:2015100088C00A1E81403FCC00C0004428C0031E1080240C10802420000006062800031E89 -:201518001080220C10802220000002061004D07A1080004CDFC00217DC400117DC00001702 -:20152000DEC00304F800283ADEFFEC04DC400B15044020B48C65940400800104D880060D12 -:201528008880070302400204020010044884983A01810004028800041244B03AD880068D56 -:201530008880074300C020B4DFC013154084983ADDC01115DD801015D880070D8880078315 -:20153800DD400F15DD000E153084983ADF001215DCC00D15D880078D888007C3DC800C15CD -:20154000DC000A155084983AD800088518E5C604D880080DD8800884D880001588800844AC -:20154800D880011588800884D8800215888008C4D880031588800904D880041588800944F3 -:20155000D880051588800B030029883A02C04004D8800905030400040382000403C08004C1 -:201558000340040407C02004054008040580010405C083441CC001C301800144A021883AED -:201560009C803FCC188001833480EB36900C90BA0280207452956904328D883A31800017BA -:201568003000683A008156140081561400815614008155BC008155D0008156140180100418 -:20157000D980070D01810004D980078D000011061980000B35C00F1E1F3FFB43028000C4BC -:20157800D9800903E280051E3000021E01BFFBC40000040602800084000005063000031E2E -:2015800001BFFEC43084703A00000206028000443280C92611C4703A10803FCC1000C626E6 -:201588009485883A1085883AD885883A108000171980020B108000031085883AD885883A9C -:201590001280060B5194703A50BFFFCC1000BA263180004C2F003FCC3180005CE180B61EC6 -:201598001980000B318007843100B33607000044018020B488000385880003C58F000405A1 -:2015A000880004858A80050D31A5940412C0762658800E3613405D26688003361580202634 -:2015A80012402E260000A40612005C2617C069261540A11E008000448880030500800084ED -:2015B0008880034500800184000072061300822660800936028100041280702613806826A4 -:2015B80013C0951E00800084888003058880034500800144000067060710000417007C2623 -:2015C00001A00014118083260288000412808A1E0080010488800305880003450000830666 -:2015C80030000305300003459CC03F4C008000449880871E89000BC300C020B418E594046B -:2015D0002000032601000084190004050000010618800385888003C500007D0600800044CD -:2015D8008880030588800E43054020B4AD6594041000101E01400684A009883A081620C055 -:2015E00000C020B418E5C58410C5883A1080000B00C15DC4188007369CFFFFC49CC03FCC63 -:2015E8000080008414C00336A8800345A880040500000106880003450080008490800D2613 -:2015F0000080010490800B26008001449080601E01400684A009883A081620C000C020B4FA -:2015F80018E5C58410C5883A1080000B00C12BC41880573688C00BC3008020B410A59404CF -:20160000180032261000034500002D06008000443080030500800084000015060080008430 -:20160800308003053000034500C000C490C0481E89000BC300C020B418E594042000022690 -:201610001880040500004206008000441880038500003F06008000848880030500800044D0 -:201618008880034500003A06008000843080030530800345008001043080040500003406F6 -:20162000008000C4888003050080008488800345008001048880040500002D06008000C4F5 -:201628003080030530000345008000C49080281E88C00BC3008020B410A5940418000326E0 -:2016300000C0008410C004050000210600C0004410C0038500001E06008000C430800305DA -:20163800008000843080034500800144003FE2060080010430800305008000843080034571 -:20164000008001443080040500801E043080048500000F0600800104888003050080008483 -:2016480088800345008001848880040500801E048880048500000606A50000440080074429 -:2016500018C00684A0BF0B1E00BFFFC4000001068005883ADFC01317DF001217DDC011172A -:20165800DD801017DD400F17DD000E17DCC00D17DC800C17DC400B17DC000A17DEC0140479 -:20166000F800283A20803FCCDEFFF9041080201CDC400415DFC00615DC800515DC00031566 -:2016680010BFE0042823883A10000A0E2025883A000B883A01001DC408159840D8800285F0 -:2016700010C03FCC0100004420C02E3694001FCC000001062021883A0815F9C00140010451 -:201678000009883A0815F6000815F7808804D63ADC000005DC400105D88000458804D43A0A -:2016800084003FCCD88000858804D23AD88000C50080100480800426008012048080041EB3 -:2016880000BFE1C40000030600BFE544000001060080004401400184D809883AD88001451B -:201690000815F4C0010001440815FF401021883A0440004401400044D90002840815F60055 -:20169800D8800287100003168000051E081605000000030608160300147FF626003FFA064A -:2016A000D8800283DFC00617DC800517DC400417DC000317DEC00704F800283ADEFFF60412 -:2016A800DC000515000B883A2021883A01001244DFC00915DCC00815DC800715DC400615E0 -:2016B0000815984010803FCC100002260005883A00004306010001440815FF401023883AAB -:2016B8000480004404C03FC401400044D90004840815F600D880048314C003268800051E03 -:2016C00008160500000003060816030014BFF626003FFA06D8C0048300803F8418BFEB1E4D -:2016C80001400484D809883A0815F6008080010310C0008C18001326D8800183D8C001C39A -:2016D000D9400143108000CC1004923A294003CC10C8B03AD88002031006D1BA2105883A81 -:2016D8001085883AD900028310C4B03AD8C002432008D1FA18C000CC18C7883A20C8B03A98 -:2016E000000010061080010C10000B26D88001C3D9000203000B883A10800FCC1004923AE4 -:2016E8001104B03A1006923AD8800243010004441884B03A00000306000B883A0009883AF4 -:2016F0000005883A10BFFFCC10C0004421003FCC28803FCC2085883A10BFFE441884983AA0 -:2016F800DFC00917DCC00817DC800717DC400617DC000517DEC00A04F800283ADEFFF604D0 -:20170000014020B4DCC00715018002842027883A2960F884D809883ADD000815DC40051514 -:20170800DFC00915DC800615DC000415050000C408162640044000440815F3000815F9C0DD -:201710000815FD8001400284D809883A0815F4C0000B883A98000015010010040815984060 -:2017180010803FCC1440511E01406A84010012040815984010803FCC1440271E014001049E -:20172000D90002840815F600D88003031440471ED8C0034300802A841880441E0100FA041B -:201728000815FF4008160300144003260816030014400C1E000006060150003401003A44F8 -:201730000815984010803FCC103FF61E003FF706000B883A01001E840815984010803FCC6A -:20173800100002260021883A0000090601400104D90002840815F600D88002831080100C26 -:201740001000021E0400010400000106040003040816050000002606000B883A01003A44A3 -:201748000815984010803FCC8880032E0400004404801044000002060400008404BFFA4407 -:2017500001003E840815FF4094803FCC0816030014400426081603001000081E0021883A62 -:2017580000000606000B883A9009883A0815984010803FCC103FF51E003FF60608160500ED -:20176000000B883A01001EC40815984010803FCC100001260021883A014080040100140431 -:201768000815984010803FCC100001260021883AA0BFFFC41029883A10803FCC84803FCCF0 -:2017700010000A26903F9C26008000449C000105988000159809883A0815A9C010BFFFC47A -:20177800988002150815FBC000000106903FF61E0815F7409005003ADFC00917DD00081782 -:20178000DCC00717DC800617DC400517DC000417DEC00A04F800283A20800217DEFFF8044F -:20178800DC000115DFC00715DD400615DD000515DCC00415DC800315DC400215DC0008170E -:201790001180313684BFFFCC90002F26208001032827883A3823883A1080020C300B883AE1 -:201798001000011E300A927A010014440815984010803FCC100002260400008400001F06EE -:2017A000010019040815FF400500004405403FC401400044D809883A0815F600D880000388 -:2017A8001540052608160500D8C0000300803F8418BFF11E0000030608160300153FF42622 -:2017B000003FF806008080841445C83A897FFFCC1421C83A280002260009883A0815F600C5 -:2017B800900B883A9809883A0815F600817FFFCC0009883A0815F6000021883A0815F7405E -:2017C0008005883A00000106008000C4DFC00717DD400617DD000517DCC00417DC8003175A -:2017C800DC400217DC000117DEC00804F800283A018001B401406734010020B43186A00492 -:2017D000297F30042104100408172B01280D883A200B883A010020B4210410040817404107 -:2017D800280D883A200B883A010020B42104100408173C41F800283AD0E2620B00BFDFC488 -:2017E0001884703A00C020B4D0A2620D18C43C0410BFFFCC18800035F800283AD0A2620B72 -:2017E80000C020B418C43C0410802014D0A2620D10BFFFCC18800035F800283A01800A74CC -:2017F00001406734010020B4318CB804297F30042104100408172B01018001B4014067343D -:2017F800010020B43186A004297F30042104100408172B01D0A26C1710000B1EDEFFFF0433 -:20180000015A5E04213FFFCCDFC00015081620C0D0A26C150816C2C00005883ADFC000171E -:20180800DEC00104F800283A00800044F800283ADEFFFF04DFC000150816C680D0E26C1778 -:2018100010C5803ADFC00017DEC00104F800283AD0226C15F800283A20001B16000F883A87 -:2018180028001616200D883A29001A2E0080080400C000440000010610000D26294B883AEC -:2018200010BFFFC418C7883A293FFB360005883A180007260005883A31400236314DC83AE0 -:2018280010C4B03A1806D07A280AD07A183FFA1E380001260085C83AF800283A014BC83A01 -:2018300039C0005C003FE7060109C83A01C00044003FE30600C00044003FEE06200017165A -:20183800000F883A2005883A280012162900162E0180080400C000440000010630000A2623 -:20184000294B883A31BFFFC418C7883A293FFB36180005261806D07A114001361145C83ADA -:20184800280AD07A183FFB1E380001260085C83AF800283A014BC83A003FEC060109C83AC9 -:2018500001C00044003FE70600C00044003FF106200D883A2900152E2800141600800804D4 -:2018580000C000440000020610000E2628000516294B883A10BFFFC418C7883A293FFA36DC -:20186000180008260005883A31400236314DC83A10C4B03A1806D07A280AD07A183FFA1E21 -:20186800F800283A0005883AF800283A00C00044003FF4062005883A2900122E2800111609 -:201870000180080400C000440000020630000C2628000516294B883A31BFFFC418C7883A90 -:20187800293FFA36180006261806D07A114001361145C83A280AD07A183FFB1EF800283AE6 -:20188000F800283A00C00044003FF7060005883A2000072620C0004C2008D07A18000126BD -:201888001145883A294B883A203FFA1EF800283AF800283A218D883A2180082620800003E5 -:2018900028C0000310C0022610C5C83AF800283A2100004429400044003FF7060005883A0F -:20189800F800283A2005883A2007883A218D883A198005262900000318C0004429400044DD -:2018A000193FFFC5003FFA06F800283ADEFFF504DFC00915DC400815DC000715D9C00A15F7 -:2018A800008020B410A33104144000172800040E008022C48880001500BFFFC400001C0618 -:2018B00000C08204D8C0000DD9000415D90002152800022628FFFFC4000001060007883A41 -:2018B800D8C00515D8C003151100001700FFFFC4D8C0008D00C0207418DA6D042821883ADD -:2018C000D9C00A04D80B883AD8C00115D80006150816488000FFFFC410C0020E00C022C4ED -:2018C80088C0001580000226D8C0041718000005DFC00917DC400817DC000717DEC00B048A -:2018D000F800283A3000152631BFFFC4218D883A2080000328C0000311C03FCC1A003FCC81 -:2018D80039C0201C4200201C39FFE004423FE0043A00061E218004263800032621000044CD -:2018E00029400044003FF2061007883A18C03FCC10803FCC10C5C83AF800283A0005883AB5 -:2018E800F800283A2005883A200F883A30000C262A00000338C0004431BFFFC43A000005F1 -:2018F00042003FCC4200201C423FE00429400044180F883A403FF51E198D883A0000010611 -:2018F800F800283A30C003261800000518C00044003FFC06F800283A214B883A2005883A74 -:201900001140021E1105C83AF800283A10C00007183FFC2610800044003FF906DEFFFB04A6 -:20190800DC800315DC400215DC000115DFC004152025883A2823883AD98000053821883AE1 -:2019100004000A0E8880011701C00044D80D883A880B883A9009883A103EE83A843FFFC429 -:20191800103FF72600BFFFC4000001060005883ADFC00417DC800317DC400217DC0001179A -:20192000DEC00504F800283ADEFFE504D8C00804DDC01815DD801715DD401615DD0015159A -:20192800DCC01415DC801315DC401215DC001115DFC01A15DF0019152029883A2823883A1E -:20193000382D883AD9800F150021883AD8000E15D8000A15002B883A0027883A0025883A61 -:20193800D8000C15D8000B15002F883AD8C00915D8C00F171900000320803FCC1080201CA6 -:2019400010BFE00410011E2600C00044B8C014261DC00216B800062600011506014000840F -:20194800B9401D26014000C4B9402B2600011006014009441140FC2688800117D9000005DE -:2019500001C00044D80D883A880B883AA009883A103EE83A1000D81E8400004400010406C2 -:2019580001400C041140FA260140094411400A1ED880000588800117B80F883AD80D883AF9 -:20196000880B883AA009883A103EE83A1000CA1E840000440000F50625FFF404BDC03FCCD8 -:2019680000C002441DC0093600BFFFC490800426014002849009883A081620C0000001065A -:201970000005883AB8A5883A0000E20601400B841140E42605C00084213FF40427003FCC8B -:2019780000C002441F00093600BFFFC498800426014002849809883A081620C000000106F8 -:201980000005883AE0A7883A0000D90600C01B0410C0D226013FFFC499000226D8000B15F5 -:201988000000010604C0004401001A441100162620800916010018C411008826010019040B -:2019900011001126010016041100C81E00C00044D8C00E150000150601001CC41100982653 -:201998002080041601001BC41100C01E0540020400000F0601001D4411000D2601001E047D -:2019A00011000A260000B906D8C00A17B700010418000726DF000D15B5C00017B800080E12 -:2019A80005EFC83A024000440000060605400404B0C00104D8C00D15B5C00017D8000A1598 -:2019B0000013883AD839883AB8001726A80B883AB809883ADA40101508161500A80B883A9B -:2019B8001009883A102D883A081620C0B885C83A00C00244DA4010171880021610800C0461 -:2019C00000000506D8C00E171800022610800DC400000106108015C4E0800005B02F883A28 -:2019C800E7000044003FE806E6EFC83A9DC5C83A0080090EE085883A01400C04D8C00917A5 -:2019D000E009883AE0C0032EE700004421400005E0BFFA1EE6EFC83AD8C00B174DD1883AC2 -:2019D800922DC83A1800162648000A2600800B44D88008058880011701C00044D9800804A4 -:2019E000880B883AA009883A103EE83A10004A1E840000440580070EB00F883A01800C04CB -:2019E800880B883AA009883A081641C01000421E85A1883AE02D883ABF2FC83A00002006C3 -:2019F0000580090EB00F883A01800804880B883AA009883ADA401015081641C0DA401017CE -:2019F8001000351E85A1883A483FF22600800B44D88008058880011701C00044D980080427 -:201A0000880B883AA009883A103EE83A10002A1E84000044003FE706B5BFFFC4B0800003E0 -:201A080001C00044D9800804D880080588800117880B883AA009883A103EE83A10001E1E53 -:201A10008585C83AB5C9883AE085883A013FF2161021883ADD800D17000044060080004479 -:201A18001480080E95FFFFC4B80F883A01800804880B883AA009883A081641C010000E1E7C -:201A200085E1883AB080001701C00044D80D883AD880000588800117880B883AA009883A4E -:201A2800B5C00104103EE83A1000031E84000044B82D883A00002D0600BFFFC40000310628 -:201A3000B5C00017B7000104B809883A0816ABC09091C83A102D883A0200090E400F883AF6 -:201A380001800804880B883AA009883ADA001015081641C0DA001017103FEF1E8221883A61 -:201A400088800117B00F883AB80D883A880B883AA009883A103EE83A103FE71E85A1883AF2 -:201A4800E02D883A0000110600C0004404FFFFC4D8000E15D8C00A15054002849825883AD2 -:201A5000D8000C15D8000B15182F883A00000806DDC00B1505C000840000050600C0004459 -:201A5800D8C00C1505C000C400000106002F883AD8C00F1718C00044D8C00F15003EDC067E -:201A60008005883ADFC01A17DF001917DDC01817DD801717DD401617DD001517DCC01417CF -:201A6800DC801317DC401217DC001117DEC01B04F800283A2880000B10C0020C1800202689 -:201A700028C0008FDEFFFD04DC000015DFC00215DC4001152821883A1800150E10C0800C86 -:201A7800180013262C40051789C0030E10C0200C1800032600000E063C40010E3823883A22 -:201A800081000417300B883A880D883A0816A5C0808005171445C83A808005158080041727 -:201A88001463883A844004150005883A00000606108010148080000D00BFFFC4000002060A -:201A900000BFFFC4F800283ADFC00217DC400117DC000017DEC00304F800283A2005883A95 -:201A9800218F883A290002361007883A00000C062987883A20FFFC2E380B883A30CDC83AB1 -:201AA0001989883A2000052618FFFFC419000003297FFFC429000005003FF906F800283A50 -:201AA80019C005262900000318C0004429400044193FFFC5003FFA06F800283A2005883A89 -:201AB00010C000071800022610800044003FFC061105C83AF800283ADEFFFF04010020B4C3 -:201AB800014020B4DFC0001521210304296335042140061E0100207401402074210008041B -:201AC000294008042140121E00000B0600C020B418E335041907C83A0005883A10FFF52614 -:201AC800114F883A39C00017110D883A1080010431C00015003FF9060100207401402074A9 -:201AD000211D4F04295D4F042140101E00000B0600C0207418C008041907C83A0005883ACB -:201AD80010FFF526114F883A39C00017110D883A1080010431C00015003FF90608174C006E -:201AE000DFC00017DEC001040817530100C020B418E103041907C83A0005883A18BFF726A9 -:201AE800114F883A39C00017110D883A1080010431C00015003FF906DEFFFF040009883A48 -:201AF000DFC000150816BE800816C080D1A26D17D1626E17D1226F17DFC00017DEC00104E7 -:201AF8000812688108174401DEFFFF04DFC0001508175340008000441001703ADFC00017EC -:201B0000DEC00104F800283A008020B410840004D0A27115010020B40080673410BF3004F1 -:201B08002122D304D0A2701508170D01D0E27017D0A2711718000A2610C001040100020428 -:201B100019000035013FFFD4110002351100033500800104188000350005883AF800283A50 -:201B180000BFFFC4F800283AD0A2701710000926D0E27117188004041000003510800037B3 -:201B200018C005371806943A10BFFFCC1884303AF800283A00BFFFC4F800283AD0A27017D6 -:201B2800F800283A20001D262804923A20C03017DEFFFD04DC400115DC000015DFC002150A -:201B30002823883A2021883A108000D41880033580C03017188000371080004C10000326E6 -:201B38000100004408174400003FF906198000373007D0BA3009D0FA18C001CC2100020C3F -:201B40001908B03A3007D07A18C0040C1906B03A88C0042600BFF4840000020600BFFA841A -:201B4800F800283ADFC00217DC400117DC000017DEC00304F800283A20000A26280009269E -:201B50003000082620800C173080001520800C171000062621000D04290000150005883A59 -:201B5800F800283A00BFFA84F800283A00BFFEC4F800283A2005883A20001D262809883A64 -:201B600028001B1610C0311728C0192E1140341728FFFFC41906703A1800151EDEFFFE044C -:201B6800DC000015DFC001151021883A081615001004923A00C0403418FFC00410C4703A24 -:201B700080C03017108000941880033580C0301718C00404188000371080004C100006268C -:201B7800008000441880003500BFFEC40000020600BFFA84F800283ADFC00117DC000017F2 -:201B8000DEC00204F800283ADEFFF504DC000115DFC00A15DF000915DDC00815DD80071591 -:201B8800DD400615DD000515DCC00415DC800315DC400215DC000B1728003A163023883A27 -:201B9000300038162027883A20003626382B883A38003426208031173080322E2880312E7C -:201B9800208034173147C83A10C7C83A1C002D3680002C1610BFFFC4114A703A2800291EA8 -:201BA0000029883A05BFFFC405C000C40700010480002226DD800015890000CC2000062643 -:201BA800E105C83A8025883A1400012E1025883A8923C83A00000406BC0002368025883A81 -:201BB0000000010604800104AD0B883A900D883AD909883A0816264098802E17D8C0001778 -:201BB800A4A9883A84A1C83A8885883A10C00035988030171080040410C0003718C0008CA1 -:201BC0001800042600C0008410C0003500BFFEC4000005068C400104003FDD060005883A34 -:201BC8000000010600BFFA84DFC00A17DF000917DDC00817DD800717DD400617DD00051790 -:201BD000DCC00417DC800317DC400217DC000117DEC00B04F800283A20001626DEFFF60465 -:201BD800DD000515DFC00915DDC00815DD800715DD400615DCC00415DC800315DC40021572 -:201BE000DC0001153029883A30000C262021883A20802E1780C02F172823883A2885883A8C -:201BE800382B883A3889883A10C0042E20C005360000020600BFFA84F800283A00BFFA843C -:201BF00000002406814034178809883A002D883A08161500102F883A80803317B8801C2E5D -:201BF800A8001B2684C0341704E7C83A9C66703A8CC002268CE5C83A000001060025883AE7 -:201C0000980B883A8009883A0816D7401000111E8080341714A5C83AAC80012EA825883AB0 -:201C0800DC800015A58F883A880D883A980B883A8009883A0816E0801000061EACABC83A43 -:201C1000B4AD883A8CA3883ABDC00044003FE2060005883ADFC00917DDC00817DD800717FB -:201C1800DD400617DD000517DCC00417DC800317DC400217DC000117DEC00A04F800283A1D -:201C2000200008263007883A3000062620802E17288B883A20802F17394D883A2880012EA2 -:201C28003080023600BFFA84F800283ADEFFFF04380D883A1809883ADFC00015081626401B -:201C30000005883ADFC00017DEC00104F800283A20004E262080301710004E2620C03217F2 -:201C3800DEFFFB04DFC00415DCC00315DC800215DC400115DC00001518001E1E148002378D -:201C400000C0030494803FCC90BFFAC418804336100490BA00C0207418DC4A0410C5883AF5 -:201C4800108000171000683A00817194008171A4008171AC0081719C0081715C0081721C7E -:201C50000081721C0081721C0081721C0081721C0081721C008171640081716C04408004AD -:201C58000000130604410004000011060442000400000F06148001370080058494803FCCA0 -:201C600090800A260080060490800426008005049080221E044008040000050604404004A4 -:201C68000000030604401004000001060440200424C034172021883A8809883A980B883AA2 -:201C7000081620C080C0311710C0021E80C0331788C0022680000C150000100600C0004429 -:201C78008480361580C00C1580000D1580800E1584400F1584C01015D16029048009883ADD -:201C800008174C400005883A0000050600BFFA84F800283A00BFFB44F800283A00BFFB44DA -:201C8800DFC00417DCC00317DC800217DC400117DC000017DEC00504F800283A30000126D8 -:201C90000005C03200FFFF042005883A28C6703A110DC83A30C0042E11800017300DC0F2E3 -:201C980010800104003FFA06294000CC00C000C428C0041E10C0000B1807C0B21080008316 -:201CA0000000080600C0008428C0031E1080000B1005C0B20000040600C0004428C0021E91 -:201CA800108000031005C0720005C132F800283ADEFFFD04DC400115DC0000152823883AE2 -:201CB0002021883A014001443009883ADFC00215081620C0100B883A8809883A0816150079 -:201CB80010BFFFC480C0020418000035010000448100043511003FCC810000351004D23AF6 -:201CC00010803FCC808001350080200418800035DFC00217DC400117DC000017DEC003043E -:201CC800F800283A3180004C294B883A298B883A21400335210004040080240420800035BA -:201CD000208000371080008C103FFD1E208000371004D1FA1080004CF800283A20C00404C3 -:201CD8002800022600801A04000001060080080418800035188000371080008C103FFD1E49 -:201CE00020800337F800283A29403FCC214003352100040430000226008014040000010683 -:201CE8000080040420800035208000371080008C103FFD1E208000371004D1FA1080004C90 -:201CF000F800283A21C004042805883A02000B04210003041147C83A1980090E3A000035F0 -:201CF80038C0003718C0008C183FFD1E2800022620C0003710C0000510800044003FF5067D -:201D0000F800283A21C003042805883A21000404020007041147C83A1980080E10C0000380 -:201D080038C000352200003520C0003718C0008C183FFD1E10800044003FF606F800283AE1 -:201D1000014AAAF4DEFFFE04296AAA84DC000015DFC001152021883A0816150010000F2609 -:201D180001600034013555740007883A297FFFC421155584297FFFC4283FFE1E18C00044CA -:201D20008121883A18BFFB168405883A1421883A843FFFC4803FFE1E000004068405883A5F -:201D28001421883A843FFFC4043FFE160005883ADFC00117DC000017DEC00204F800283A58 -:201D3000F800283A20000226208002171000101ED0A0281710000926DEFFFF04DFC0001578 -:201D3800103EE83A00C0058410C0001500BFFA84DFC00017DEC00104F800283AD0A2720415 -:201D400000C0058410C0001500BFFA84F800283A2880001721400115208000152880001714 -:201D480011000115290000150005883AF800283AF800283A000170FAF800283A25207325F9 -:201D500000632575252E75256B75322E25207A482E252E757A4875320000000074204B4FB5 -:201D58006E69206F00007469656D69540074756F252E75256D75322E00000073252E7525B2 -:201D60006D75322E75252F73322E252E00736D754353534F776620207525202E322E252EED -:201D68000000617574696E49727265202020726F000064252020202053204F4E00434E5964 -:201D7000343130323130322D6D202037737172610000000074736554746170206E72657473 -:201D7800000000003A31564142475220000000533A31564173475220000000423A31564189 -:201D800062505920000072503A32564162505920000072503A3256417347522000000042F5 -:201D88003A33564142475220000056483A33564142475220000000533A335641734752201C -:201D9000000000423A33564162505920000072507473614C6573752000000064008175D4D1 -:201D9800008175E4008175F0008175FC0081760800817614008176200081762C0081763806 -:201DA00000817644008176500000000000010000010100000001000100000000011000008B -:201DA800060B00000100034400000000800C00011A1A80800000001A7365725000000073DA -:201DB000666E6F43006D72696D73694D686374616572202C00797274646F4D567325203A25 -:201DB80000000000203A434C56207525203A4D5300007525656E694C746C756D646F6D20D4 -:201DC00000003A65736572702D312073000000352078752575736E75726F70700064657489 -:201DC800666F725020656C6964616F6C0000003A736572702D30207300000039000000311C -:201DD000000000320000003300000034000000360000003700000038554E454D0000000080 -:201DD80000004B4F4B43414200000000000050554E574F44000000005446454C0000000038 -:201DE00048474952000000544F464E49000000005F44434C4B4341424847494C000000547E -:201DE8004E414353454E494C444F4D5F000000454E414353454E494C5059545F000000451C -:201DF0004E414353454E494C544E495F0000002B4E414353454E494C544E495F0000002D4D -:201DF800454E494C544C554D444F4D5F000000455341485000002B455341485000002D45A3 -:201E0000464F52505F454C494B544F4801005945030F031F3E2903033E693EA93E193EE9D0 -:201E08003E593E993E393ED93E4D3EC93EED3E1D3ECD3E2D3E6D3EAD3E013E651C181C4820 -:201E10001CD01C505E581CC83EB95ED80081773C0081774000817744008177480081770CA7 -:201E18000081774C00817750008177540081773800817F9C00817758008177600081776402 -:201E20000081776C0081777000817778008177800081778800817790008177A0008177B0A6 -:201E2800008177C0008177D0008177E0008177F0008177F80081780053206F4E6163204419 -:201E300064206472002E746561766E492064696C67616D690000006561766E492064696C60 -:201E3800646165680000726561766E492064696C207264680043524361766E492064696C1D -:201E4000617461644352432000000000616470556320657465636E6164656C6C00000000D2 -:201E480073616C4665722068652064610000727273616C46726520682065736100727265E0 -:201E500073616C4672772068206574690072726573616C4665762068206669726C696166EA -:201E5800000000006F727245000000724353534F00000000696C6156697461646420676EA1 -:201E600000617461622075257365747900000000252E75252575322E0073257361647055CF -:201E6800676E69740057462061656C70772065732E74696100002E2E697265566E697966C6 -:201E70006C6620670068736161656C7072206573617473650000747272746552676E6979CA -:201E7800647075200065746161647055203F65742C593D314E3D3220000000006D72694687 -:201E8000657261776470752064657461000000002020202000007525642064250000676599 -:201E88006C20752573656E6900000000252E75252075322E000073756D206425000000562F -:201E9000702075256C6578690000007325257525000000006420642500000042656E6F442A -:201E9800000000006C6961460000646500007325656469566E69206F6F7270203E2020630D -:201EA00000000000706D6153676E696C74706F203E20202E00000000636E795374706F20B8 -:201EA8002020202E3E202020000000007074754F6F207475202E74703E20202000000000FE -:201EB00074736F506F72702D20202E633E20202000000000706D6F436269746174696C699E -:201EB8003E2020790000000069647541706F206F6E6F69743E2020730000000074746553D7 -:201EC00073676E6974706F203E20202000000000616F4C3C727020646C69666F003E206515 -:201EC8007661533C727020656C69666F003E20657365523C73207465697474653E73676EB2 -:201ED0000000000074696E49206C616975706E69000000746B6E694C706E6920702F74755B -:201ED80000666F722E77463C64707520206574613E202020000000006E776F446D61732D15 -:201EE0006E696C70000000677061775366656C2069722F74007468672D65725020434441D9 -:201EE8006E696167000000006C6C75462058542075746573000000702033564165746E69F1 -:201EF00063616C7278696665000000006E616353656E696C000000736E616353656E696CB7 -:201EF800727473200000002E6E616353656E696C70797420000000656E616353656E696CE7 -:201F0000696C61202E6D6E670000000069726F48746E6F7A6D206C61006B73617472655664 -:201F08006C61636973616D200000006B6B73614D697262206E7468670073736565766552DD -:201F1000206573720046504C5949443C74616C206574202E003E7473703034323838322FBF -:201F1800727020700000636F703438336F72702000000063693038343637352F7270206941 -:201F20000000636F703038343637352F727020700000636F693036393830312F70206930B5 -:201F280000636F72656E694C6D2078320065646F656E694C6D2078330065646F656E694CDE -:201F30006D2078340065646F656E694C6D2078350065646F656E694C66207835616D726FBC -:201F380000000074783635322030343265707361000074636D2058540065646F494D444837 -:201F400043544920000000006C616E417320676F20636E790046504C6C616E417320676F6B -:201F480020636E79006874566E7973486F7420636172656C0065636E6E79735668742063EC -:201F50006873657200646C6F4C502D487250204C6F432D65007473614C502D486F50204C79 -:201F5800432D74737473616F00000000706D6153676E696C616870200000657370303834E3 -:201F6000206E6920706D61730072656C6F6C6C41565420775048205078324C4C0000000043 -:201F68006F6C6C4170752077706D61737832656C000000007664413C6974202E676E696DFC -:201F70003E2020200000000065646956504C206F00000046506250596E6920726C6F4320B8 -:201F78000061705372502F5266666F200074657320592F477366666F0000746562502F42A2 -:201F800066666F200074657372502F52696167200000006E20592F476E696167000000000A -:201F880062502F42696167200000006E73202E486C706D61746172650000006573202E488A -:201F90006C636E7900006E6562202E48706B63616863726F0000000061202E4876697463B8 -:201F98000000006573202E566C636E7900006E6562202E56706B63616863726F00000000D3 -:201FA00061202E5676697463000000652D706F547466656C00000000746E65430000726595 -:201FA80074746F42722D6D6F74686769000000002066664F207366283639203D297A486BDB -:201FB0000000000020207832207366283834203D297A486B0000000000706F5474746F421B -:201FB80000006D6F69726F48746E6F7A00006C61747265566C6163690000000065746C4143 -:201FC00074616E7200676E690066664F6F74754100000000756E614D00006C61494D4448DA -:201FC800000000000049564400373A38737361507572687400000000656E694C2820783299 -:201FD00029626F6200000000656E694C00007832656E694C282078336563616C00002964C6 -:201FD800656E694C2820783429626F6200000000656E694C00007833656E694C00007834AA -:201FE000656E694C000078353032393138303178000000303030363130323178000000309D -:201FE800303239313032317800000030656E65472063697200333A34783032332030343291 -:201FF0006974706F00002E6D78363532203034326974706F00002E6D656E6547206369727B -:201FF800393A363100000000484D33336D28207A00296E69484D30316D28207A00296465AE -:202000004D352E3228207A482978616D00000000205654447030383400000000415345561C -:202008003034362030383478003036402E63655231303620000000002E636552393037203D -:2020100000000000484D35394828207A2056544400294949484D35334828207A20565444C5 -:2020180000002949484D36314528207A29565444000000007A484D39445328200029565422 -:2020200000006E4F008195A90000000200813A40008195B8000000090081382C008195A8AD -:202028000000001C00813A0800817E8C00817E9800817EA0445253550041544100000020C4 -:202030000081802C0000200020002CE5E926F4FD38BC2000000000000081803800002000A5 -:202038002000323EF113FA043B6120000000000036333531303432780600000007FE00F062 -:202040000FEA01060112039632312002327830380000303400F005000106061803480FAABB -:2020480004420112783036390030343203C00000049200F00F800106011203363233008260 -:20205000343278300000003000F00140010601AA031F0E31491001127836353200303432D7 -:2020580001000000015500F00E2701060112031934329220000070300000000000F002D03C -:202060000106035A033E0F39000E011236333531303432780600004C07FE00F029EA0138E2 -:2020680001120396323120023278303800003838012005000138061803480FAA04420112CB -:20207000783036390038383203C00000049201200F80013801120336323300823432783014 -:2020780000424C3000F00140013801AA031F293149100112783635324C3034320100004253 -:20208000015500F02927013801120319383292200000703800000000012002D001380360EF -:20208800033F1345000E0112703438330000000001F00000028001801D3201A70204033E3C -:202090003436000E30347830000000300190028001C1032002602430000C0210783034369E -:202098000034383302800000032001803F3001EC021002603834000E000069300000000080 -:2020A00000F002D0020D035A033E0F39044F0312703038340000000002D00000035A01E0E5 -:2020A8001E3C020D0414063E3436000C383478300000003001E00280020D03200260213051 -:2020B000000C0414783034360032313502800000032002001C300238041402603735000C23 -:2020B8000000693600000000012002D002710360033F1345044F031270363735000000008C -:2020C00002D000000360024027440271040405403038000C3036783000000030025803202F -:2020C800027404200480175800040010703032370000000005000000067202D014DC02EE1F -:2020D00000180528303100043778343200003836030004000326054006881DA000040010EF -:2020D8003038323132303178050000340698040026F8042A001003703436000436397830E3 -:2020E0000000693001E00280041A032002602130000D051430383031000000690780000011 -:2020E8000898021C109404650518052C3031000D00703038000000000438078004650898AD -:2020F000052C249400040018303036313032317806400030087004B02EFF04E2001003F140 -:2020F800FFFF0004FFFFFFFFFFFFFFFF7665642F6370652F6F635F716F72746E72656C6CE5 -:20210000615F305F6D5F6C7600006D650000000000000000000000000000000000000000F0 +:2005980018E57F4410A56A0429001B1E19400043110006032900181E1940008311000643B3 +:2005A0002900151E194000C3110006832900121E19400403110009C329000F1E194004439D +:2005A80011000A0329000C1E1940048311000A432900091E194003C3110009832900061E2B +:2005B000194008C311000E832900031E18C0090310800EC31880032688803FCC1000011ED3 +:2005B800044000449100058380800B4304C020B49CE56A0420800626994004030814F340B2 +:2005C0009880044588803FCC1000011E044000449100068380800C4320800126081504405F +:2005C800910006C380800C83208001260814B5009100070380800CC3208001260814B5C0D0 +:2005D000910007C380800D832080071E008020B410A57F4410C00803008020B410A56A043D +:2005D80010800DC318800226914008030814B1C09100064380800C0320800626014006047A +:2005E000081615C0010020B4212006042089883A0814D8009100078380800D432080012657 +:2005E800081115809100074380800D03208001260814EE00014020B4010020B40180018499 +:2005F0002965798421258904081618401000031E010020B4212579840814B68090C00943E0 +:2005F80080800F031880071E008020B410A57F4410C00983008020B410A56A0410800F4393 +:2006000018800226910004C30810FB80014020B4010020B401800B4429657F4421256FC4AB +:2006080008161B408805883AD02268C5DFC00A17DF000917DDC00817DD800717DD400617BB +:20061000DD000517DCC00417DC800317DC400217DC000117DEC00B04F800283ADEFFF004A3 +:20061800DC400715044020B48C656A048A40028701400684DF000E154809883ADD400B15A3 +:20062000DD000A15DCC00915DA400215DFC00F15DDC00D15DD800C15DC800815DC00061563 +:20062800081615C0054020B488C005C3AD659804A885883A010000848F00040312C0050304 +:200630001500030B14C004C3DA4002171900031E8C8006039480004400000E0601000044B9 +:2006380019000B1E10C0060B1906703A890003031800032620000626048000C40000050647 +:2006400020000326148005C394800118000001060025883A88C0050B008020B40102000427 +:2006480010A56A0419001B2620C00D360100080419001A2620C00336008004041880152618 +:200650000000310601004004190019260100800419002D1E1080098304000104000016068C +:20065800010800041900162620C00536010400041900251E108009830400014400000E0627 +:200660000110000419001326012000141900162600001D060400010400001E061400098399 +:20066800008000C41421C83A8421883A00001906040000C40000170680A1C83A000015064E +:20067000108008031000101EA53FFA049CC0030400000D061080080310000D1EA53FFA0481 +:200678009CC0030400000A0610C00983108008030400018480E1C83A1000061EA53FFA04F6 +:200680009CC0030400000306E021883A0000010604000144D0E26403008002041880011E85 +:200688005AD7883A81803FCCE5C03FCCB985C83A4809883A01400684D9800515DA400215E1 +:20069000DAC00115D8800015081615C0A885883A1280028BD9000017500B883ADA800315AD +:20069800081615C0102CD7FA890009C381403FCCB085883A102DD07A081615C0DA4002177D +:2006A000DAC00117B08F883A4809883A01400684D9C004155C3FFFCC081615C0A885883AAF +:2006A80012C00483D940001782C9883ADAC00115081615C0B085883AB80B883A113FFFCC62 +:2006B0000815FA80E1003FCC100B883A081615C088C00803DAC00117B809883A1A4000589D +:2006B8004812977A580B883AD8800115DA400215081615C0DA8003178F000343B809883A34 +:2006C000500B883A10807FCCE03897BA102C92FA081615C01081FFCC800B883AB809883AD2 +:2006C8001738B03A081615C088C00483DA400217B72CB03A10C5C83A10803FCC1004953AC2 +:2006D000B086B03A008020B41A46B03A1084300410C0003588800443D9800517D9C0041707 +:2006D8001006937A88800403300C943A380E94FA100492BADA0001171884B03A118CB03A93 +:2006E00031CCB03A423FFFCC008020B4320CB03A10842C041180003588C0030388800683E2 +:2006E800890002871806977A100496BA014006841886B03A88800A031004953A18A0B03A60 +:2006F000081615C0A885883A108005431004947A8086B03A900496FA18A4B03AA0BFFFCC2A +:2006F80090A4B03A98BFFFCC100492FA90A4B03A008020B4108428041480003588800EC32E +:200700001006937A88800E831004923A1884B03A88C0064310C6B03A88800A431004913A32 +:200708001884B03A00C020B418C4240418800035DFC00F17DF000E17DDC00D17DD800C17DC +:20071000DD400B17DD000A17DCC00917DC800817DC400717DC000617DEC01004F800283A16 +:20071800DEFFF304DC000415040020B484256A04DC4005158440011700800044DFC00C1573 +:20072000DDC00B15DD800A15DD400915DD000815DCC00715DC800615D0A267C588001626BA +:2007280084C000179800142601006734880B883A213F300408160A001025883A80800203DB +:2007300001283BF4980B883A212EC0041000042608160A00880B883A1009883A000003063E +:2007380008160A00880B883A1089883A08160A001023883A000002060445DC04048F55048F +:2007400001000EC4081495C001000F041027883A081495C08080058300C0207418DD6B0497 +:200748001085883A1085883A1885883A11C000178080020380C000171000021E00801A4432 +:200750000000010600801C0401802074010020B4D8C00015319D23040140044421255E44E5 +:20075800D880011508161DC0014019048809883A08160A000140FA049009883A1029883AAA +:2007600008160A00014019048809883A102B883A081610400140FA049009883AD88002152C +:20076800DD00011508161040014002841009883A08160A0001802074010020B4D8800015EF +:20077000A80F883A319D25040140044421257B0408161DC0D0A26E831000011E0810FA40CC +:2007780081000017D1E2688381400203A00D883A044020B408153D8011003FCC2100201C8B +:20078000213FE00400FFFFC48C656A0420C0011E008001048880028584800283014006848D +:20078800054020B4D4A2630594803FCC9480201C94BFE0049009883A081615C0AD659804B8 +:20079000A885883AD0E2688314400583858004038500011788E2703AD462640515C0038B22 +:20079800B1403FCC9CC03FCCB93FFFCC081615C09809883A100B883A081615C0A00B883A88 +:2007A0001009883A08160A00B1003FCCB80B883A1027883A081615C015BFFFCC80800B83DC +:2007A8008C403FCCA53FFFCC10000826014006849009883A081615C0A885883A11C0060B83 +:2007B000380ED07A39C0004C00000106000F883A80800CC39CC03FCCA00D883AD880031567 +:2007B80080800DC3B00B883A8809883AD880021580800D83DCC00015D8800115081510C076 +:2007C00081000D430811158081000B43814004030814F34080800445081185C080800A8380 +:2007C800810003831000051E008020B410A56A04114003C3290B003A00000106000B883A07 +:2007D0000810CE0080C00E03008020B410A56A0481000A8318000B26DFC00C17DDC00B1783 +:2007D800DD800A17DD400917DD000817DCC00717DC800617DC400517DC000417DEC00D0439 +:2007E00008110B412000061E11C00AC3108003C3000D883A000B883AD8800015081005C076 +:2007E800DFC00C17DDC00B17DD800A17DD400917DD000817DCC00717DC800617DC4005174E +:2007F000DC000417DEC00D04F800283AD0A26743DEFFFE04DFC00115DC000015100004260E +:2007F800008020B410A56A0410800583000001060005883AD122670300C020B418E56284B0 +:200800001885883A1100000521003FCC08140B801021883A1000021E010003C40813EF009B +:200808008005883ADFC00117DC000017DEC00204F800283AD0A26743DEFFFE04DFC0011531 +:20081000DC00001510000426008020B410A56A0410800583000001060005883AD1226703E3 +:2008180000C020B418E562841885883A1100000521003FCC0813EF001021883A1000021E7B +:20082000010003C40813EF008005883ADFC00117DC000017DEC00204F800283ADEFFFD0419 +:20082800DC000015D4226303DC40011501400684D422678584003FCC8009883A044020B492 +:20083000DFC002158C659804081615C08885883A10C0038B014006848009883AD0E2668D8A +:2008380010C00503D0E2698D10C00483D0E2628D10C0028BD0E2660D10C00543D0E2648DEB +:20084000108004C3D0A2680D081615C08885883A1080030BD0A2658DDFC00217DC400117AA +:20084800DC000017DEC00304F800283ADEFFFA04008020B4DD000415DCC00315DC80021552 +:20085000DC400115DC000015DFC0051510A56A0410C002C3040020B42029883AD4626783F1 +:2008580084259804D4E2628BD4A2680B180021261080028714401F1E8809883A0140068488 +:20086000081615C08085883A1100038BD0E2668B20C0161E11000503D0E2698B20C0131E98 +:200868001100048398C03FCC20C0101E1100028BD0E2660B20C00D1E11000543D0E2648BA1 +:2008700020C00A1E10C004C390803FCC1880071E014006848809883A081615C08085883A19 +:2008780010C0030BD0A2658B1880022600800044D0A268C58809883A01400684081615C0EC +:20088000D0E2668B8085883A8809883A10C0038DD0E2698B14C004850140068410C0050593 +:20088800D0E2660B10C0028DD0E2648B148004C510C00545081615C0D0E2658B018020740C +:20089000010020B48085883AA1FFFFCC319E5904014004442125650410C0030DDFC0051742 +:20089800DD000417DCC00317DC800217DC400117DC000017DEC0060408161DC1DEFFFE0473 +:2008A000DC000015040020B4DFC0011584043C04008004448080003580000035008020B4EC +:2008A8001084300410000035008020B410842804100000350109C4040816B34000803444EF +:2008B000D0A2650D0080344480800035010000F4210350040816B340018001B40140673487 +:2008B800010020B43186A004297F30042104180408172000081449C008147FC010002626B8 +:2008C0000009883A081495C000C03FC410C024260814FB40010000840810274010803FCC09 +:2008C80000C004C410C0201E08103640081442001000022600800044D0A269050810D4C006 +:2008D0001021883A10001A1E0812B48001402074010020B401800D84295DD98421258A848C +:2008D80008161B40010003C408140B80D122670308140B80008020B4108438041080003729 +:2008E000108000AC1000011E0812B9800009883A08110B4000000706043FFF84000005062D +:2008E800043FFF4400000306043FFF0400000106043FFFC48005883ADFC00117DC0000171D +:2008F000DEC00204F800283AD0A2634300E00004DEFFF1041080004410803FCC1008933AC8 +:2008F800D0A2650BDC000515040020B410C4B03A2084B03AD0A2650DDFC00E15DF000D153D +:20090000DDC00C15DD800B15DD400A15DD000915DCC00815DC800715DC400615D900030D14 +:2009080010BFFFCC84043C048080003501802074010020B4319D2B04014004442125650419 +:2009100008161DC00810F900054020B404C020B4058020B405C020B400800044AD44380427 +:200918009CE58A84B5A56504BDC42004AC4000378C7FFFCC1000611E8800602698C0058B4A +:20092000D0A2650B88C0551E00F3FFC41884703AD0A2650D10BFFFCC80800035B0000005B6 +:200928000810F900010001B42106A0040816B340D0A2650BD8C0030B1090001410C4B03A12 +:20093000D0A2650D10BFFFCC808000350100FA040815F440070000440815F8001700021E0D +:20093800BC800037903FFC0E0815FA0090BFFFC410BFFFCC00FFFF541880072E018020745C +:20094000010020B4319D2E04014004442125650408161DC000002F069038D43A953FFFCCE5 +:200948000083FFC4E703FFCC01401904A009883AE0800F1E08160A00A009883A014019044D +:20095000173FFFCC0816104010BFFFCC01802074010020B4D8800015E00F883A319D300454 +:20095800014004442125650408161DC00000190608160A0011FFFFCC01401904E009883A21 +:20096000D9C004150816104010BFFFCC01401904E009883AD880021508160A0010BFFFCC83 +:2009680001401904A009883AD880011508161040D9C0041710BFFFCC01802074010020B492 +:20097000D8800015319D3304014004442125650408161DC00810F9000000020698C0060B40 +:2009780088C00A26D0E2650B00AFFFC41884703AD0A2650D10BFFFCC808000350109C40488 +:200980000816B3408805883A003F98061083FFCCD0A2650D808000350005883ADFC00E1718 +:20098800DF000D17DDC00C17DD800B17DD400A17DD000917DCC00817DC800717DC40061764 +:20099000DC000517DEC00F04F800283ADEFFFF04DFC000150811C6000814AD00008020B4B4 +:2009980010A57F44110004C3DFC00017DEC0010408110B41DEFFF504DFC00A15DF000915A0 +:2009A000DDC00815DD800715DD400615DD000515DCC00415DC800315DC400215DC00011587 +:2009A800081227C0100020160080140401802074010020B4000F883A319D38040140044402 +:2009B00021255E44D880001508161DC001402074010020B401800444295D440421257B04D1 +:2009B80008161B400810FA40010002342128480405C020B4050020B405802074054020B4E4 +:2009C0000816B3400021883A0027883A0023883A0025883ABDC43804A5256A04B59D6B04B8 +:2009C800AD657F4400003A0601802074010020B4100F883A319D3D040140044421255E44AF +:2009D00008161DC001402074010020B401800444295E680421257B0408162F400810FA4002 +:2009D800003FFF0610FFFF8418C03FCC010000C420C0302ED0E26B0310C02E260812D40011 +:2009E000D0A26E83100002260009883A0813A300D0A263C3A1000583070020B410C03FCC5C +:2009E800E7256A0420C0251EA8C004C3E0800A8318800B26000F883A000D883A000B883A00 +:2009F0000009883AD8000015081005C0A90004C308110B40A88004C3A0000115A0800A852A +:2009F800008020B410A57F44108004C310009726E08005831000A11ED0A26D1701004B04F2 +:200A0000D0A26A15D0A26E03D0A26B050816B340B880003710FFFFCCD0E26C150086303AA3 +:200A08001004D63A18C000ECD0E26D15D0A26E05103FCC1ED0226C15003FD00610BFFFC47A +:200A100010803FCC0100020420804036100490BA01002074210A19041105883A1080001754 +:200A18001000683A0081288800812898008128B4008128C8008128DC008128F400812908F8 +:200A20000081291800812934008003C4D0A268850021883A00000306008003C4D0A26885DE +:200A28000400008404C000C4044000440025883A00002606008003C4040000C4D0A2688595 +:200A30008027883A003FF806008003C4D0A26885040000C404C0008400000406008003C4F9 +:200A380004000084D0A268858027883A0023883A003FEE060080040404000044D0A2688507 +:200A40008027883A00000F06008003C4D0A268850021883A00000A0604000084008003C4B0 +:200A4800D0A2688504C000448023883A8025883A00000606008003C4D0A26885040000C4E1 +:200A500004C00044044000848825883AD0A2674310000926008020B410A5628410C7883A64 +:200A580018800003D0E2670311003FCC20C00226D0A2670508140B80D0A263C3E1400D4315 +:200A6000E00002C5E080058500C0004428803FCC89003FCC1880042E00800144114BC83AAD +:200A680029403FCC00000106014000C408148E000814A44008107080D0A269031000022626 +:200A700099003FCC08143E0081403FCC91003FCC08152300E0800583010020B4018004443A +:200A78001085883A1085883AB085883A1140001721255E44E000011508162F400140207411 +:200A8000010020B401800444295D410421257B0408162F40D0A26E831000011E0810FA40B7 +:200A8800D0E263830080028418BF5F1ED0A26C171000031ED0A26D171080006C103F5A2675 +:200A9000010003C40813EF00003F5706A9C00503E0800AC338BF6626A08003C3000D883A02 +:200A9800000B883AD88000150009883A081005C0A8800503A0800AC5003F5D0681403FCCCF +:200AA00091003FCC0811268010803FCC00C0008410C0252600C0010410C0032600C000441F +:200AA80010FF551E00002406A08002C310000926D0A2650B00C020B418C43C0410800094A8 +:200AB000D0A2650D10BFFFCC18800035081264C0003F4906A00001150814A440A0800583B1 +:200AB800010020B4018004441085883A1085883AB085883A1140001721255E4408162F40FE +:200AC00001402074010020B401800444295D410421257B0408162F40D0A26E83103F361E80 +:200AC8000810FA40003F3406A08002C3103F32260811C600003F3006A08002C3103F2E26DB +:200AD000081185C0003F2C0601402074010020B4DEFFFF0401800B44295D760421257F44D4 +:200AD800DFC0001508161B40014020B4010020B40180B604296012042125980408161B40B2 +:200AE00000800044D0A268C50005883ADFC00017DEC00104F800283ADEFFF804DD0004154A +:200AE800DCC00315DC80021505002074048020B404C020B4DD800615DC000015DFC007151A +:200AF000DD400515DC400115002D883A0021883AA51DE704948438049CE58A840140207446 +:200AF800010020B401800444295D820421255A0408162F408405883A1085883AA085883A7A +:200B000011400017010020B4018004442125650408162F400810F9000023883A05400084D4 +:200B08009080003710BFFFCCD0A26C1590C0003700C6303A18C000ECD0E26D1510001A26FA +:200B1000B08019268407883A98C7883A88000A1E01402074010020B401800444295D8404B7 +:200B180021255A041880000D08162F400810F9000440004400000C0618C0000B10C009265A +:200B200001402074010020B401800444295D860421255A0408162F400810F9000023883A0B +:200B28000000010604400084D0A26A1710000F1ED0E26D170080007418800C1E8000091E1B +:200B300001402074010020B401800D84295DD98421258A8408161B4004400084040006C4A3 +:200B380000000206843FFF8404400084D0A26D17D5A26C17D0A26A158D4003260109C404DE +:200B40000816B340003FC6068400004400800684143FB20E010003C4DFC00717DD80061795 +:200B4800DD400517DD000417DCC00317DC800217DC400117DC000017DEC008040813EF0155 +:200B5000DEFFEF04D88009C4D8800115008020B410A581C410C00044D8C00315014020743B +:200B580010C00084D8800215D8C00415018001C410C000C4295DD7C410800104D900080494 +:200B6000DFC01015DD400F15DD000E15DCC00D15DC800C15DC400B15DC000A15D80009C558 +:200B6800D8C00515D8C00615D880071508161B40D1226C17014020B40005883A29658A842D +:200B7000018006841087883A1947883A18C0000B044020B48C658A841900032611811226D9 +:200B780010800044003FF70600C0068418810E36100490BA00C0207418CB820410C5883A74 +:200B8000108000171000683A00812E7400812E9000812EA000812E7C00812E9800812EA882 +:200B880000812E880081322800812EB000812EB800812EC000813228008132280081322875 +:200B900000813228008132280081322800812EE400812F6000812F8000812FAC00812FF8DD +:200B980000812FD800813024008131BC008131E40081313400800044000001060080008427 +:200BA000D0A263C50000E806008000C4003FFC0600800104003FFA0600800144003FF80662 +:200BA80000800184003FF606008001C4003FF40600800204003FF20600800244003FF006B7 +:200BB000D0A26E831007003AD0E26E851000031E010000440813A3000000D3060810FA406D +:200BB8000000D106008020B410A56A041100028701400684081615C001C020B439E5980428 +:200BC00001802074010020B4388F883A319D8A040140044421255A0408161DC0008020B4CA +:200BC8001084340411C0003710800037018020741005D43A39C1FFCC010020B4108000CC44 +:200BD00039C00044319D8D040140044421256504D880001508161DC00810F9000000B20600 +:200BD800D0A2650B00C020B418C43C041080041CD0A2650D10BFFFCC188000350000AA06C0 +:200BE00000C020B418E57F44188000030140004411003FCC290002361145883A00000106E5 +:200BE8000005883A1880000500009F0600C020B418E57F44188000430140004411003FCC14 +:200BF000290002361145883A000001060005883A1880004500009406008020B410A57F445B +:200BF80010C0008319003FCC2000012618FFFFC410C0008500008C0600C020B418E57F440A +:200C0000188000830140038411003FCC290002361080004400000106008003C41880008535 +:200C08000000810601402074010020B401800444295D910421255A0408162F4001402074B1 +:200C1000010020B401800444295D95042125650408162F40048020B4050020B4054020B481 +:200C18000810F9009484380404C006C4A5259804AD656A04908000370021883A10BFFFCC1F +:200C20008407883A1C47883A18C0000B10C002268400004484FFFA1EA90002870140068407 +:200C2800081615C0A085883A108005C300C0014418803F3600C001041C001916D900080473 +:200C30002087883A18C000031C07D83A18C0004C180007261085883A1085883AD8C0010477 +:200C38001885883A10800017140000050000300601802074010020B481C00044319D98046E +:200C4000014004442125650408161DC00810F90001000234212848040816B3400000240649 +:200C480000800304808022260109C4040816B340003FD00601402074010020B40180044452 +:200C5000295D9C0421255A0408162F4001402074010020B401800444295DA00421256504E1 +:200C580008162F40040020B40810F90084043804048006C404C002440500030480800037A7 +:200C60000009883A10BFFFCC2107883A1C47883A18C0000B10C01D1E99001F16014002847D +:200C680021000044081602C0D0A267050811FCC00810FA40D0226E8500001B0600C020B488 +:200C700018E57F44188005830140078411003FCC290002361080004400000A060005883A90 +:200C78000000080600C020B418E57F441880058311003FCC2000022610BFFFC400000106DD +:200C8000008007C418800585000007062100004424BFDD1E00000106253FE5260109C4044F +:200C88000816B340003FD506D0A26A171000191ED0E26D171880006C10000A26008020B419 +:200C900010A56A04108005830100024411403FCC2900022610800044000001060080004476 +:200C9800D0A263C518C000AC18000A2600C020B418E57F44188000030140004411003FCC46 +:200CA000290002361145883A000001060005883A18800005DFC01017DD400F17DD000E1745 +:200CA800DCC00D17DC800C17DC400B17DC000A17DEC01104F800283ADEFF6B04D900030479 +:200CB000DC008C15DFC09415DDC09315DD809215DD409115DD009015DCC08F15DC808E1592 +:200CB800DC408D150810F3801021883A0815EEC08000641E01800104D9400304D90083040D +:200CC00008162F400140207401800104295E2F04D90083040816294010002D1ED8800403D1 +:200CC800DCC08484D9400484D8808405D8800443018002049809883AD880844508162F40AF +:200CD000D880068BD8008645D8808B0DD880070BD8808B8DD9408B17280BC232D880078BE2 +:200CD800D9408715D8808B0DD880080BD8808B8DD8808B171005C232D8808815D880088B99 +:200CE000D8808B0DD880090BD8808B8DD8808B171005C232D8808915D8808217D8808B1546 +:200CE8001005C232D8808A1500C0788428BFF9841880093601800044D9000304081718C059 +:200CF000D8C08A1710C006260400198400002D060400190400002B060400194400002906F9 +:200CF80001802074010020B4319E31040140044421255A0408161DC0D9C088170180207479 +:200D0000010020B4319E3504014004442125650408161DC00810F900DD008817DD80891739 +:200D08000023883A0005883A05C080048D00132EA465C83ABC80012E048080048D40800439 +:200D1000A80CD27A010020B4DC800015000F883AD9400304212557040815D68014003FCC59 +:200D18008000081E880D003A900B883AD9000304081718C0A823883A003FEC06B080761E90 +:200D200000000206048000C400004906D8808487D9C08403D8C084431000C8260080207420 +:200D2800109DCB0401802074010020B4D8C00015319E38040140044421255A04DCC00215AD +:200D3000D880011508161DC001402074010020B401800444295E4E042125650408161B40C6 +:200D3800044020B4040020B40810F9008C44380484258A848880003780C0000B10BFFFCCB3 +:200D400010C0B11E0814A440D0A2650B00C020B418C43C0410800094D0A2650D10BFFFCCC0 +:200D4800188000350109C4040816B34001402074010020B401800444295E3B0421255A04FE +:200D500008162F40048000C401402074010020B401800444295E3E042125650408162F4036 +:200D58000810F9000027883A0580800405004004DC4088179C406E2E8CE3C83AB440012E68 +:200D6000044080049D408004A80DD27A010020B4DC400015000F883AD940030421255704B1 +:200D68000815D68010803FCC10004E2600A1C83A0815EEC0008000448080362614000F1612 +:200D700000BFCD4480802D261400051600BFCD0480802D1E01402074295E280400002F0679 +:200D780000BFCD848080222600BFCDC48080261E01402074295E1C040000280600801984A8 +:200D800080801226140007160080190480800C260080194480801C1E01402074295E0A049A +:200D880000001E06008019C480800D2600801A048080151E01402074295E17040000170632 +:200D900001402074295E06040000140601402074295E0E04000011060815EEC0048000C42B +:200D980001402074040019C4295E120400000B0601402074295E2004000008060140207474 +:200DA000295E24040000050601402074295E2D040000020601402074295E0204010020B4AD +:200DA800212565040180044408162F400810F900010003F4211090040816B34080004A0E6F +:200DB0009000492601802074010020B4319E4A040140044421255A0408161DC094BFFFC4DF +:200DB800003F99069827D23A880B883AA440012E01404004980D883AD90003040810DEC088 +:200DC0001021883A103FAA1EA4400236A827883A003F970699800044897FC004D900430437 +:200DC8000810DEC01021883A103FF826003FA00601402074010020B401800444295E4204D0 +:200DD00021255A0408162F4001402074010020B401800444295E3E042125650408162F405A +:200DD8000810F900D9808917D9408817D9C003040009883A0810E9001021883A103F8C1EE1 +:200DE0000815EEC001402074010020B401800444295E530421255A0408161B4001402074E5 +:200DE800010020B401800444295E46042125650408162F400810F900003FFF0600802074D7 +:200DF000109E6804003F370680C0008B10C003260109C4040816B340003F4606048000C4D3 +:200DF80004001A04003F720600BFFFC4DFC09417DDC09317DD809217DD409117DD009017A0 +:200E0000DCC08F17DC808E17DC408D17DC008C17DEC09504F800283A21C03FCC01802074BE +:200E0800010020B4319E5804014004442125650408161DC1DEFFFF040141194421003FCCEB +:200E1000DFC00015081615C0014019041009883A0815FA8001802074010020B4100F883A80 +:200E1800319E5A040140044421256504DFC00017DEC0010408161DC121C03FCC01802074FF +:200E2000010020B4319E5C04014004442125650408161DC1014003F4DEFFFC042950900458 +:200E280021003FCCDFC00315DC400215DC000115081615C0014018F4294BA8041009883A67 +:200E30001021883A08160A008009883A014659041023883A08160A000140FA041009883A61 +:200E380008161040014002841009883A08160A0001802074010020B4D8800015880F883AB2 +:200E4000319E5F04014004442125650408161DC0DFC00317DC400217DC000117DEC00404A5 +:200E4800F800283ADEFFFF04014119C421003FCCDFC00015081615C0014019041009883A25 +:200E50000815FA8001802074010020B4100F883A319E62040140044421256504DFC00017FD +:200E5800DEC0010408161DC121C03FCC01802074010020B4319E6404014004442125650496 +:200E600008161DC121003FCCDEFFFF0401409C4421000044DFC00015081615C001401904DF +:200E68001009883A0815FA8001802074010020B4100F883A319E67040140044421256504BB +:200E7000DFC00017DEC0010408161DC1DEFFFF040140068421003FCCDFC00015081615C08F +:200E7800014020B429659804010020B401800444288B883A21256504DFC00017DEC0010400 +:200E800008162F4121003FCC2109883A008020B410A000042109883A1109883A2140001764 +:200E8800010020B4018004442125650408162F41D0A26C17DEFFF70401C020B4DFC0081551 +:200E9000DDC00715DD800615DD400515DD000415DCC00315DC800215DC400115DC0000159A +:200E980000C002C439E58A840180044418CB883A29CB883A2940000B2880041E21003FCCFA +:200EA0001827883A2000051E0000030618C0004419BFF61E0001080610010A26D5226E43E5 +:200EA800040020B48420E504A5C03FCCB82290FA014005048445883A1480010315800017D8 +:200EB00095403FCCA809883A081615C0B0C00117993FFD0421003FCC1885883A00C001042B +:200EB800180B883A19002836200890BA00C0207418CEC00420C9883A20C000171800683AF2 +:200EC00000813B4800813B1400813B2C00813C2C00813C2CA800011EB480000394BFFFC470 +:200EC8008461883A8480010500008A06B14000038461883AA900004484000104081602C0D8 +:200ED0008080000500008306B8000326A53FFFC4D5226E4500007F06D0226E85DFC008171A +:200ED800DDC00717DD800617DD400517DD000417DCC00317DC800217DC400117DC00001742 +:200EE000DEC009040810FA4111000103014000C42140062620C06F1E1080021704000044EF +:200EE800103EE83A1023883A00006C061080041710000126103EE83AD4E26E430140050410 +:200EF0009C403FCC8C800044882290FA902490FA8445883A154000171100010384AD883A3A +:200EF800AD000117081615C0B0C00017A085883A1080021718800126B000010584A5883AAB +:200F00008461883A81000103AC40011701400504081615C08885883A108002179CC000444C +:200F0800D4E26E459080001500004A0610C0010328C04836180690BA01002074210F13046D +:200F10001907883A18C000171800683A00813C6000813C6000813CC800813D0800813D08EB +:200F180011C0021798C03FCC020003C4114003031100034339800003108003831A00081EE3 +:200F200020C03FCC32003FCC1A00022E30BFFFC400000B0629403FCC2800091E00000706AC +:200F280010C03FCC32003FCC40C0022E308000440000030629403FCC280001262005883ABA +:200F30003880000500002306110002179CC03FCC014003C420C0000B9940051E1080030B9D +:200F3800197FFFCC1140062E18FFFFC4000004061080038B197FFFCC2880012E18C0004459 +:200F400020C0000D0000130611400317290000172800102698C03FCC018003C42080000334 +:200F48001980041E10C03FCC1800092610BFFFC40000070628C0010311803FCC19403FCC21 +:200F50003140022E10800044000001061805883A208000050023883A0021883AD0A26E4396 +:200F580000C020B418E0E504100490FA014005041885883A1100010314C00017081615C0CA +:200F60001025883A98800117010020B421255A041485883A114000170180044408162F40B8 +:200F680098800117010001041485883A10C0010320C03636180690BA01002074210F730414 +:200F70001907883A18C000171800683A00813DE000813E1000813E1C00813E6400813E2C80 +:200F780010C00217110004170180044418C0000318C5883A1085883A2085883A11400017DB +:200F8000010020B42125650408162F4000001F0610C002171080041700001A0610C002177E +:200F8800108004171900000B0000170680000D268800032601C0207439DE6B040000020616 +:200F900001C0207439DE690401802074010020B4319E6D04014004442125650408161DC00B +:200F980000000A06108003171000041E008020B410A56504100000050000040610C00017D5 +:200FA0001080021719000003103EE83ADFC00817DDC00717DD800617DD400517DD000417D8 +:200FA800DCC00317DC800217DC400117DC000017DEC009040810F90121003FCC203FA51ECC +:200FB000103FA41EDFC00817DDC00717DD800617DD400517DD000417DCC00317DC800217C1 +:200FB800DC400117DC000017DEC00904F800283A21003FCC008003C411006336009114B477 +:200FC000DEFFB8041094D544D88000150080107410951044DC404115D8800115244002B05B +:200FC80000801404DCC04315DC400285DFC04715DD804615DD404515DD004415DC804215C7 +:200FD000DC004015D8000205D88002458C403FCC24C0040488001C1E014020B4008010C464 +:200FD8000180028429656284D9000344D88002C5D800030508161B40008020B410A56A046F +:200FE00010800583014020B401800D84D8800605D0A2638329658A84D9000684D880064555 +:200FE800D0A26743D88005C508161B40980C923A01401404D809883A0810DEC01004C03A02 +:200FF0000085C83A0000320600BFF604014020B401800B44D880034529657F44008000848F +:200FF800D90003C4D98002C5D8000305D880038508161B40014020B49826923A018031048B +:2010000029659804D9000F0408161B40980D883A01404004D809883A04004004054020B451 +:201008000810DEC00480310405008504AD659804802D883A917FFFCC800D883AA94B883ACE +:20101000D809883A08161B4089803FCC800B883A84A5883AA421C83A34CD883AD809883A2B +:201018008029883A843FFFCC0810DEC08C40004480000326B43FEF2E04004004003FED06C6 +:201020000005883A0000020600BFFFC4F800283ADFC04717DD804617DD404517DD0044179D +:20102800DCC04317DC804217DC404117DC004017DEC04804F800283ADEFFB704DFC048157E +:20103000DDC04715DD804615DD404515DD004415DCC04315DC804215DC404115DC004015F8 +:2010380021003FCC008003C41100022E047FFFC400007706240004048008943AD80D883AF8 +:20104000014040040810D7C0103FF81E014020B40180020429600304D809883A08162940A1 +:201048001023883A1000671ED88002031000671ED8C00243008014041880641ED8800283A0 +:201050001000032600C0004410C02A2600006006D8800303D8C002C31004923A10C4B03A64 +:2010580000C010C410C05A1E01C020B4D8C003440005883A0180024439E5628401400284CF +:201060001900000322003FCC3200023611D1883A410000051080004418C00044117FF81E3D +:20106800D880064300C00244D0A2638511003FCC1900032ED880060311003FCC1900013634 +:20107000D0A263C5D88005C3010020B401800D84D0A26745008020B410A56284108000031F +:20107800D940068421258A84D0A2670508161B4000003706D8800317D8C002C311803FCC62 +:20108000300C923A30CCB03A00C00B4430C0301E1004D23A00C0B6041025883A10BFFFCCEA +:2010880010C02B1E010020B48020923AD94003C421257F4405C020B408161B400027883A0A +:20109000002D883A05400F0405004004BDE59804A97FFFCCA14DC83A90BFFFCCB13FFFCCBA +:20109800D94B883A11800F16B909883A08161B40990000442027883A21003FCC2409883A9E +:2010A0002008923AA56BC83AD80D883A01404004ADAD883A94BFC0040810D7C0002B883A2F +:2010A800003FEB06100D883A008020B410A598041109883A08161B4000800044D0A268C5BC +:2010B000000003060440004400000106044000848805883ADFC04817DDC04717DD804617BE +:2010B800DD404517DD004417DCC04317DC804217DC404117DC004017DEC04904F800283AD0 +:2010C000DEFFFC04DC000015040020B484041804DC80021504801284DC400115900B883AAA +:2010C8002023883A000D883A8009883ADFC003150817274089403FCC8009883A000D883ABE +:2010D00008172D8004400044900B883A8009883A880D883A08172740880B883A8009883A87 +:2010D800DFC00317DC800217DC400117DC000017DEC0040408172AC1DEFFFC04DC00001525 +:2010E000040020B484041804DC800215DC4001152025883A2823883A8009883A000D883AA1 +:2010E80001401284DFC003150817274091403FCC8009883A000D883A08172D80018000444D +:2010F00089403FCC8009883ADFC00317DC800217DC400117DC000017DEC0040408172D81F9 +:2010F800DEFFFE040080004421003FCCDC0000151120983A01000184DFC0011584003FCC4B +:20110000800B883A08143780800B883A010001C4DFC00117DC000017DEC00204081437817A +:20110800DEFFFF0401000144DFC000150814300000C0218410C0051E0140240401000804D3 +:201110000814378000800044000001060005883ADFC00017DEC00104F800283ADEFFFD04C9 +:20111800D9000005010020B4DC000115018000442821883A21041804D80B883ADFC00215A6 +:2011200008173540813FFFCC0816B340DFC00217DC000117DEC00304F800283AD0E2650BB2 +:20112800DEFFFC0400BFE7C41884703ADC400115044020B4D0A2650DDFC00315DC800215C2 +:20113000DC00001510BFFFCC8C443C0488800035040005048009883A0816B340800B883A11 +:2011380001000E04081445C0800B883A01000E44081445C0800B883A8009883A081445C0E9 +:20114000800B883A01001C44081445C0800B883A01001784081445C0800B883A01001B4409 +:20114800081445C0800B883A01000304081445C00480C804900B883A01000044081445C0DD +:20115000800B883A01000184081445C0900B883A01000084081445C0D0A2650B10801014F2 +:20115800D0A2650D10BFFFCC88800035DFC00317DC800217DC400117DC000017DEC00404C1 +:20116000F800283AD0E2650BDEFFFA0400BFE7C41884703ADC000015040020B4DC8002152C +:20116800DC400115D0A2650DDFC00515DD000415DCC003152025883A2823883A10BFFFCC40 +:2011700084043C04808000350140C80401000044081445C0D0A2650B10800814D0A2650D7D +:2011780010BFFFCC80800035014004049009883A081634801029883A10803FCC1000091E45 +:20118000014020B49009883A018004442960050408162F409100000301400504081445C0F8 +:20118800000009060027883AA5003FCC94C5883A11000003014005049CC00044081445C065 +:2011900098803FCC153FF936D0E2650B00BFF7C41884703AD0A2650D10BFFFCC8080003504 +:201198000140050401003004081445C0D0A2650B10800814D0A2650D10BFFFCC8080003556 +:2011A000014004048809883A081634801027883A10803FCC1000091E014020B48809883A8E +:2011A800018004442960050408162F408900000301400504081445C0000009060025883A52 +:2011B0009CC03FCC8C85883A110000030140050494800044081445C090803FCC14FFF936B1 +:2011B800D0A2650B10801014D0A2650D10BFFFCC80800035DFC00517DD000417DCC0031765 +:2011C000DC800217DC400117DC000017DEC00604F800283ADEFFFB04DC000015040020B4CC +:2011C80084041804DC80021504800B04DCC00315900B883A2027883A000D883A8009883A29 +:2011D000DFC00415DC4001150817274004400044880D883A99403FCC8009883A08172D80B5 +:2011D800900B883A8009883A880D883A08172740880B883A8009883ADFC00417DCC0031762 +:2011E000DC800217DC400117DC000017DEC0050408172AC1DEFFFC04DC000015040020B4FC +:2011E80084041804DC800215DC4001152025883A2823883A8009883A000D883A01400B0420 +:2011F000DFC003150817274091403FCC8009883A000D883A08172D800180004489403FCC47 +:2011F8008009883ADFC00317DC800217DC400117DC000017DEC0040408172D81010020B4EF +:20120000DEFFFD04000D883A000B883A21041804DFC00215DC400115DC00001508172D806E +:20120800010002840816B3400400060404400044800B883A8809883A08147940800B883AD6 +:201210000100008408147940800B883A010000C4081479408809883A081471401405003A0A +:20121800DFC00217DC400117DC000017DEC00304F800283ADEFFFD04DC400115DC000015D7 +:20122000044000442021883A84003FCC8809883ADFC00215802090FA0814714000FFF9C4D8 +:2012280010C4703A80A0B03A84003FCC800B883A8809883A08147940800B883A0100008448 +:2012300008147940800B883A010000C4DFC00217DC400117DC000017DEC00304081479415D +:20123800DEFFFD04DC4001152023883A01000044DC000015DFC00215043FF604081471408B +:201240001420703A89003FCC008000842080021E84000054000003062008917A208001148F +:2012480080A0B03A84003FCC800B883A0100004408147940800B883A0100008408147940DF +:20125000800B883A010000C4DFC00217DC400117DC000017DEC0030408147941DEFFFB0436 +:20125800DC000015040020B484041804DC80021504801704DCC00315900B883A2027883ADD +:20126000000D883A8009883ADFC00415DC4001150817274004400044880D883A99403FCC21 +:201268008009883A08172D80900B883A8009883A880D883A08172740880B883A8009883A2A +:20127000DFC00417DCC00317DC800217DC400117DC000017DEC0050408172AC1DEFFFC04C4 +:20127800DC000015040020B484041804DC800215DC4001152025883A2823883A8009883AE5 +:20128000000D883A01401704DFC003150817274091403FCC8009883A000D883A08172D8024 +:201288000180004489403FCC8009883ADFC00317DC800217DC400117DC000017DEC0040467 +:2012900008172D81DEFFFC04DC000015040008848009883ADFC00315DC800215DC4001156C +:20129800081495C0014004C4010005841023883A0489C40408149DC09009883A0816B34003 +:2012A000014000C4010005C408149DC09009883A0816B340017FE004894AB03A29403FCCE5 +:2012A8008009883A08149DC00100FA040816B34089401FCC8009883ADFC00317DC80021725 +:2012B000DC400117DC000017DEC0040408149DC1DEFFFE04DC0000150409C4048009883AE7 +:2012B800DFC001150816B340014004440100058408149DC08009883A0816B34001400084A3 +:2012C000010005C408149DC08009883ADFC00117DC000017DEC002040816B341DEFFFE0441 +:2012C800DC0000152821883A21403FCC01000484DFC0011508149DC081403FCC010004C452 +:2012D000DFC00117DC000017DEC0020408149DC121403FCC01000F4408149DC121403FCC90 +:2012D8000100044408149DC1DEFFFE04DFC00115DC000015214000C32021883A0100028400 +:2012E00008149DC0814001030100024408149DC0814001430100020408149DC081400003A7 +:2012E8000100034408149DC0814000430100030408149DC081400083010002C4DFC00117DE +:2012F000DC000017DEC0020408149DC1DEFFFB04DC400115DC0000152023883A2021883AC6 +:2012F80001000104DCC00315DC8002153027883A2825883ADFC00415081495C0017FFE04D6 +:201300009CC03FCC1144703A9800092680FFFFCC0101FFC420C006361140005429403FCC5C +:201308000100010408149DC08423883A0000030611403FCC0100010408149DC08C7FFFCC23 +:20131000880AD13A0100004429403FCC08149DC0880A913A0100008429403C0C08149DC0E2 +:2013180001006734917FFFCC213F300408160A00880B883A1009883A081615C00140FA0420 +:201320001009883A08160A0000E327D41880092E00C0007418C45BC41880082E00C000B48C +:2013280018C3D5C41885403A00C000C41885C83A000003060005883A00000106008000445C +:2013300014003FCCD0A026041405883A1100000301400A04081615C08808D07A880B883A84 +:201338001109883A0815FA80100B883A00C001C410803FCC1880012E180B883A29403FCC05 +:20134000800491BA280A90FA010000C4288AB03A29403FCCDFC00417DCC00317DC80021748 +:20134800DC400117DC000017DEC0050408149DC1DEFFFE04DC0000152021883A01000684DF +:20135000DFC00115081495C0017FFE8484003FCC00C000441144703A80C0021E108000943F +:20135800000001061080029411403FCC01000684DFC00117DC000017DEC0020408149DC199 +:201360002140028BDEFFFE04DC000015280AD23A2021883A010012C4DFC0011508149DC069 +:20136800814002830100128408149DC08140030B01001344280AD23A08149DC0814003036A +:201370000100130408149DC08140038B010013C4280AD23A08149DC081400383010013840F +:2013780008149DC08140010B01001444280AD23A08149DC0814001030100140408149DC0A8 +:201380008140018B010014C4280AD23A08149DC0814001830100148408149DC08140020B4B +:2013880001001544280AD23A08149DC0814002030100150408149DC08140040B010015C431 +:20139000280AD23A08149DC0814004030100158408149DC08140048B01001644280AD23AC2 +:2013980008149DC0814004830100160408149DC08140050B010016C4280AD23A08149DC07D +:2013A0008140050301001684DFC00117DC000017DEC0020408149DC1DEFFFD04DC00001532 +:2013A80004000FC4DC4001152023883A8009883ADFC00215081495C000FFFC0410C4703A28 +:2013B000888AB03A29403FCC8009883ADFC00217DC400117DC000017DEC0030408149DC164 +:2013B800DEFFFD04DC40011504400684DC0000152021883A8809883ADFC00215081495C0C9 +:2013C00080C03FCC014000C428C7C83A180691BA10800FCC8809883A188AB03A29403FCCA5 +:2013C800DFC00217DC400117DC000017DEC0030408149DC1DEFFFB04DCC0031504C00104AE +:2013D000DC4001152023883A9809883ADFC00415DC800215DC0000152825883A081495C0C7 +:2013D800900B883A8809883A1021883A081615C0108007CC100A90FA840001CC9809883AA4 +:2013E0002C0AB03A08149DC091403FCC89003FCC081615C01004D17ADFC00417DCC0031722 +:2013E800DC800217DC400117DC000017DEC00504F800283ADEFFFE04DFC00115DC000015C3 +:2013F0000814A4400009883A0814D30004000044800B883A01000D4408149DC0010020B4EE +:2013F800212006040814D800800B883A010004040814F3400009883A0814E9800009883AD6 +:201400000814EE00010001840814B500014000C401000D0408149DC0010011040814B5C034 +:2014080001402204010006C408149DC00140020401000704DFC00117DC000017DEC0020478 +:2014100008149DC1DEFFFD04DC0000152021883ADC40011584003FCC044004048809883A10 +:20141800802090FADFC00215081495C0108001CC808AB03A29403FCC8809883ADFC0021793 +:20142000DC400117DC000017DEC0030408149DC121003FCC20001A26DEFFFD04DC400115CA +:20142800010009842823883A01402004DC000015DFC002153021883A08149DC089403FCC9D +:201430000080004428800426008002042880041E8140168400000306814002440000010644 +:201438008140060429403FCC01000C44DFC00217DC400117DC000017DEC003040000020678 +:20144000000B883A0100098408149DC1DEFFF704DCC003152827883AD9400917DDC0071528 +:20144800DD800615DD400515DD000415DC800215DC400115DC000015DFC0081524003FCC5E +:20145000008000443029883A382B883ADC400A17DC800B17DD800C172DC03FCC8080082617 +:201458000080020480800D1E29400C8429403FCC0100014408149DC00140080400000C0638 +:201460002940008429403FCC0100014408149DC0014001842809883A000006062940018499 +:2014680029403FCC0100014408149DC0014004040100018408149DC0B80D883A800B883A15 +:201470000100004408150900B1003FCC0814B5C0008004048080021E0140030400000106AD +:20147800014002040100088408149DC0A17FFFCC993FFFCCA9803FCC0814BCC091403FCCD1 +:2014800089003FCCDFC00817DDC00717DD800617DD400517DD000417DCC00317DC80021769 +:20148800DC400117DC000017DEC009040814B1C1DEFFFD0429BFFF84DC400115DC00001578 +:20149000DFC0021531803FCC0080004424403FCC2C003FCC11800436008000848880071E64 +:201498008805883A000008068800061E8005003A00C000841885C83A000003060005883AB9 +:2014A0000000010600800084880A913A8C47883A10803FCC100491BA18C7883A28CAB03AB8 +:2014A800214AB03A288AB03A29403FCC0100064408149DC0008000C48080041E01401744F9 +:2014B0000100040408149DC000001206014016040100040408149DC00080008488800D1E6E +:2014B8000080004414000B368080021E0140148400000106014014C40100038408149DC0E1 +:2014C0000100FA040816B34001000504081495C000000B06014016C40100038408149DC054 +:2014C8000100FA040816B34001000504081495C0008000C48080021E0140040400000106C5 +:2014D000000B883A0100060408149DC0000B883A01000D84DFC00217DC400117DC0000176D +:2014D800DEC0030408149DC1DEFFFD04DC4001152023883A01000504DC000015DFC002150F +:2014E0002821883A081495C08C403FCC00C0008488C00A1E81403FCC00C0004428C0031E0C +:2014E8001080240C10802420000006062800031E1080220C10802220000002061004D07A05 +:2014F0001080004CDFC00217DC400117DC000017DEC00304F800283ADEFFEC04DC400B1519 +:2014F800044020B48C656A0400800104D880060D8880070302400204020010044884983A5F +:2015000001810004028800041244B03AD880068D8880074300C020B4DFC013154084983A49 +:20150800DDC01115DD801015D880070D88800783DD400F15DD000E153084983ADF001215B3 +:20151000DCC00D15D880078D888007C3DC800C15DC000A155084983AD800088518E59C041F +:20151800D880080DD8800884D880001588800844D880011588800884D8800215888008C45C +:20152000D880031588800904D880041588800944D880051588800B030029883A02C04004E7 +:20152800D8800905030400040382000403C080040340040407C02004054008040580010451 +:2015300005C083441CC001C301800144A021883A9C803FCC188001833480EB36900C90BA28 +:201538000280207452953D04328D883A318000173000683A0081556400815564008155648C +:201540000081550C008155200081556401801004D980070D01810004D980078D00001106ED +:201548001980000B35C00F1E1F3FFB43028000C4D9800903E280051E3000021E01BFFBC422 +:201550000000040602800084000005063000031E01BFFEC43084703A000002060280004461 +:201558003280C92611C4703A10803FCC1000C6269485883A1085883AD885883A10800017C4 +:201560001980020B108000031085883AD885883A1280060B5194703A50BFFFCC1000BA26C0 +:201568003180004C2F003FCC3180005CE180B61E1980000B318007843100B33607000044A5 +:20157000018020B488000385880003C58F000405880004858A80050D31A56A0412C076262F +:2015780058800E3613405D26688003361580202612402E260000A40612005C2617C069261B +:201580001540A11E00800044888003050080008488800345008001840000720613008226D7 +:201588006080093602810004128070261380682613C0951E0080008488800305888003456A +:2015900000800144000067060710000417007C2601A00014118083260288000412808A1E7E +:201598000080010488800305880003450000830630000305300003459CC03F4C00800044EA +:2015A0009880871E89000BC300C020B418E56A042000032601000084190004050000010621 +:2015A80018800385888003C500007D06008000448880030588800E43054020B4AD656A04EA +:2015B0001000101E01400684A009883A081615C000C020B418E59B8410C5883A1080000BD2 +:2015B80000C15DC4188007369CFFFFC49CC03FCC0080008414C00336A8800345A8800405E5 +:2015C00000000106880003450080008490800D260080010490800B26008001449080601ED4 +:2015C80001400684A009883A081615C000C020B418E59B8410C5883A1080000B00C12BC448 +:2015D0001880573688C00BC3008020B410A56A04180032261000034500002D06008000448A +:2015D80030800305008000840000150600800084308003053000034500C000C490C0481EAE +:2015E00089000BC300C020B418E56A04200002261880040500004206008000441880038580 +:2015E80000003F060080008488800305008000448880034500003A0600800084308003057A +:2015F00030800345008001043080040500003406008000C4888003050080008488800345C3 +:2015F800008001048880040500002D06008000C43080030530000345008000C49080281EFC +:2016000088C00BC3008020B410A56A041800032600C0008410C004050000210600C00044B4 +:2016080010C0038500001E06008000C430800305008000843080034500800144003FE20662 +:2016100000800104308003050080008430800345008001443080040500801E043080048528 +:2016180000000F0600800104888003050080008488800345008001848880040500801E04FC +:201620008880048500000606A50000440080070418C00684A0BF0B1E00BFFFC40000010626 +:201628008005883ADFC01317DF001217DDC01117DD801017DD400F17DD000E17DCC00D173C +:20163000DC800C17DC400B17DC000A17DEC01404F800283A20803FCCDEFFF9041080201C7F +:20163800DC400415DFC00615DC800515DC00031510BFE0042823883A10000A0E2025883A4A +:20164000000B883A01001DC408158D40D880028510C03FCC0100004420C02E3694001FCC2F +:20164800000001062021883A0815EEC0014001040009883A0815EB000815EC808804D63A6F +:20165000DC000005DC400105D88000458804D43A84003FCCD88000858804D23AD88000C51F +:201658000080100480800426008012048080041E00BFE1C40000030600BFE54400000106A0 +:201660000080004401400184D809883AD88001450815E9C0010001440815F4401021883A4F +:201668000440004401400044D90002840815EB00D8800287100003168000051E0815FA002A +:20167000000003060815F800147FF626003FFA06D8800283DFC00617DC800517DC40041706 +:20167800DC000317DEC00704F800283ADEFFF604DC000515000B883A2021883A0100124465 +:20168000DFC00915DCC00815DC800715DC40061508158D4010803FCC100002260005883AA1 +:2016880000004306010001440815F4401023883A0480004404C03FC401400044D9000484F8 +:201690000815EB00D880048314C003268800051E0815FA00000003060815F80014BFF62687 +:20169800003FFA06D8C0048300803F8418BFEB1E01400484D809883A0815EB008080010339 +:2016A00010C0008C18001326D8800183D8C001C3D9400143108000CC1004923A294003CC74 +:2016A80010C8B03AD88002031006D1BA2105883A1085883AD900028310C4B03AD8C002432A +:2016B0002008D1FA18C000CC18C7883A20C8B03A000010061080010C10000B26D88001C300 +:2016B800D9000203000B883A10800FCC1004923A1104B03A1006923AD88002430100044455 +:2016C0001884B03A00000306000B883A0009883A0005883A10BFFFCC10C0004421003FCC42 +:2016C80028803FCC2085883A10BFFE441884983ADFC00917DCC00817DC800717DC4006173C +:2016D000DC000517DEC00A04F800283ADEFFF604014020B4DCC00715018002842027883A48 +:2016D8002960C804D809883ADD000815DC400515DFC00915DC800615DC000415050000C4D8 +:2016E00008161B40044000440815E8000815EEC00815F28001400284D809883A0815E9C05A +:2016E800000B883A980000150100100408158D4010803FCC1440511E01406A8401001204C5 +:2016F00008158D4010803FCC1440271E01400104D90002840815EB00D88003031440471EF8 +:2016F800D8C0034300802A841880441E0100FA040815F4400815F800144003260815F800D5 +:2017000014400C1E000006060150003401003A4408158D4010803FCC103FF61E003FF70617 +:20170800000B883A01001E8408158D4010803FCC100002260021883A00000906014001045C +:20171000D90002840815EB00D88002831080100C1000021E0400010400000106040003047E +:201718000815FA0000002606000B883A01003A4408158D4010803FCC8880032E040000441C +:2017200004801044000002060400008404BFFA4401003E840815F44094803FCC0815F800F8 +:20172800144004260815F8001000081E0021883A00000606000B883A9009883A08158D40D7 +:2017300010803FCC103FF51E003FF6060815FA00000B883A01001EC408158D4010803FCC15 +:20173800100001260021883A014080040100140408158D4010803FCC100001260021883AFA +:20174000A0BFFFC41029883A10803FCC84803FCC10000A26903F9C26008000449C0001058B +:20174800988000159809883A08159EC010BFFFC4988002150815F0C000000106903FF61EFE +:201750000815EC409005003ADFC00917DD000817DCC00717DC800617DC400517DC00041744 +:20175800DEC00A04F800283A20800217DEFFF804DC000115DFC00715DD400615DD000515FD +:20176000DCC00415DC800315DC400215DC0008171180313684BFFFCC90002F262080010383 +:201768002827883A3823883A1080020C300B883A1000011E300A927A0100144408158D40E0 +:2017700010803FCC100002260400008400001F06010019040815F4400500004405403FC4D9 +:2017780001400044D809883A0815EB00D8800003154005260815FA00D8C0000300803F8451 +:2017800018BFF11E000003060815F800153FF426003FF806008080841445C83A897FFFCCE8 +:201788001421C83A280002260009883A0815EB00900B883A9809883A0815EB00817FFFCC54 +:201790000009883A0815EB000021883A0815EC408005883A00000106008000C4DFC00717EB +:20179800DD400617DD000517DCC00417DC800317DC400217DC000117DEC00804F800283AA4 +:2017A000018001B401406734010020B43186A004297F30042104100408172001280D883A9B +:2017A800200B883A010020B42104100408173541280D883A200B883A010020B4210410049F +:2017B00008173141F800283AD0E2650B00BFDFC41884703A00C020B4D0A2650D18C43C04D0 +:2017B80010BFFFCC18800035F800283AD0A2650B00C020B418C43C0410802014D0A2650D16 +:2017C00010BFFFCC18800035F800283A01800A7401406734010020B4318CB804297F300443 +:2017C8002104100408172001018001B401406734010020B43186A004297F30042104100431 +:2017D00008172001D0A26F1710000B1EDEFFFF04015A5E04213FFFCCDFC00015081615C019 +:2017D800D0A26F150816B7C00005883ADFC00017DEC00104F800283A00800044F800283ACE +:2017E000DEFFFF04DFC000150816BB80D0E26F1710C5803ADFC00017DEC00104F800283A82 +:2017E800D0226F15F800283A20001B16000F883A28001616200D883A29001A2E00800804AF +:2017F00000C000440000010610000D26294B883A10BFFFC418C7883A293FFB360005883AC2 +:2017F800180007260005883A31400236314DC83A10C4B03A1806D07A280AD07A183FFA1E8B +:20180000380001260085C83AF800283A014BC83A39C0005C003FE7060109C83A01C00044A8 +:20180800003FE30600C00044003FEE0620001716000F883A2005883A280012162900162E9F +:201810000180080400C000440000010630000A26294B883A31BFFFC418C7883A293FFB369D +:20181800180005261806D07A114001361145C83A280AD07A183FFB1E380001260085C83A53 +:20182000F800283A014BC83A003FEC060109C83A01C00044003FE70600C00044003FF10658 +:20182800200D883A2900152E280014160080080400C000440000020610000E2628000516D4 +:20183000294B883A10BFFFC418C7883A293FFA36180008260005883A31400236314DC83A61 +:2018380010C4B03A1806D07A280AD07A183FFA1EF800283A0005883AF800283A00C0004400 +:20184000003FF4062005883A2900122E280011160180080400C000440000020630000C26B5 +:2018480028000516294B883A31BFFFC418C7883A293FFA36180006261806D07A11400136E7 +:201850001145C83A280AD07A183FFB1EF800283AF800283A00C00044003FF7060005883A79 +:201858002000072620C0004C2008D07A180001261145883A294B883A203FFA1EF800283A27 +:20186000F800283A218D883A218008262080000328C0000310C0022610C5C83AF800283A18 +:201868002100004429400044003FF7060005883AF800283A2005883A2007883A218D883AB1 +:20187000198005262900000318C0004429400044193FFFC5003FFA06F800283ADEFFF50414 +:20187800DFC00915DC400815DC000715D9C00A15008020B410A30404144000172800040EF6 +:20188000008022C48880001500BFFFC400001C0600C08204D8C0000DD9000415D900021554 +:201888002800022628FFFFC4000001060007883AD8C00515D8C003151100001700FFFFC4EA +:20189000D8C0008D00C0207418DA41042821883AD9C00A04D80B883AD8C00115D800061590 +:2018980008163D8000FFFFC410C0020E00C022C488C0001580000226D8C004171800000538 +:2018A000DFC00917DC400817DC000717DEC00B04F800283A3000152631BFFFC4218D883A9F +:2018A8002080000328C0000311C03FCC1A003FCC39C0201C4200201C39FFE004423FE0045D +:2018B0003A00061E21800426380003262100004429400044003FF2061007883A18C03FCC89 +:2018B80010803FCC10C5C83AF800283A0005883AF800283A2005883A200F883A30000C26E9 +:2018C0002A00000338C0004431BFFFC43A00000542003FCC4200201C423FE00429400044D0 +:2018C800180F883A403FF51E198D883A00000106F800283A30C003261800000518C000446A +:2018D000003FFC06F800283A214B883A2005883A1140021E1105C83AF800283A10C000078E +:2018D800183FFC2610800044003FF906DEFFFB04DC800315DC400215DC000115DFC0041538 +:2018E0002025883A2823883AD98000053821883A04000A0E8880011701C00044D80D883A73 +:2018E800880B883A9009883A103EE83A843FFFC4103FF72600BFFFC4000001060005883A7E +:2018F000DFC00417DC800317DC400217DC000117DEC00504F800283ADEFFE504D8C0080414 +:2018F800DDC01815DD801715DD401615DD001515DCC01415DC801315DC401215DC001115A0 +:20190000DFC01A15DF0019152029883A2823883A382D883AD9800F150021883AD8000E1552 +:20190800D8000A15002B883A0027883A0025883AD8000C15D8000B15002F883AD8C0091573 +:20191000D8C00F171900000320803FCC1080201C10BFE00410011E2600C00044B8C01426A8 +:201918001DC00216B80006260001150601400084B9401D26014000C4B9402B260001100653 +:20192000014009441140FC2688800117D900000501C00044D80D883A880B883AA009883A3C +:20192800103EE83A1000D81E840000440001040601400C041140FA260140094411400A1E8D +:20193000D880000588800117B80F883AD80D883A880B883AA009883A103EE83A1000CA1EC2 +:20193800840000440000F50625FFF404BDC03FCC00C002441DC0093600BFFFC4908004264A +:20194000014002849009883A081615C0000001060005883AB8A5883A0000E20601400B84CD +:201948001140E42605C00084213FF40427003FCC00C002441F00093600BFFFC49880042629 +:20195000014002849809883A081615C0000001060005883AE0A7883A0000D90600C01B0485 +:2019580010C0D226013FFFC499000226D8000B150000010604C0004401001A441100162630 +:2019600020800916010018C4110088260100190411001126010016041100C81E00C0004490 +:20196800D8C00E150000150601001CC4110098262080041601001BC41100C01E0540020405 +:2019700000000F0601001D4411000D2601001E0411000A260000B906D8C00A17B700010404 +:2019780018000726DF000D15B5C00017B800080E05EFC83A024000440000060605400404DA +:20198000B0C00104D8C00D15B5C00017D8000A150013883AD839883AB8001726A80B883A83 +:20198800B809883ADA40101508160A00A80B883A1009883A102D883A081615C0B885C83AD4 +:2019900000C00244DA4010171880021610800C0400000506D8C00E171800022610800DC437 +:2019980000000106108015C4E0800005B02F883AE7000044003FE806E6EFC83A9DC5C83A26 +:2019A0000080090EE085883A01400C04D8C00917E009883AE0C0032EE70000442140000553 +:2019A800E0BFFA1EE6EFC83AD8C00B174DD1883A922DC83A1800162648000A2600800B449B +:2019B000D88008058880011701C00044D9800804880B883AA009883A103EE83A10004A1E80 +:2019B800840000440580070EB00F883A01800C04880B883AA009883A081636C01000421E57 +:2019C00085A1883AE02D883ABF2FC83A000020060580090EB00F883A01800804880B883A3B +:2019C800A009883ADA401015081636C0DA4010171000351E85A1883A483FF22600800B4447 +:2019D000D88008058880011701C00044D9800804880B883AA009883A103EE83A10002A1E80 +:2019D80084000044003FE706B5BFFFC4B080000301C00044D9800804D880080588800117A2 +:2019E000880B883AA009883A103EE83A10001E1E8585C83AB5C9883AE085883A013FF216B0 +:2019E8001021883ADD800D1700004406008000441480080E95FFFFC4B80F883A0180080446 +:2019F000880B883AA009883A081636C010000E1E85E1883AB080001701C00044D80D883AAC +:2019F800D880000588800117880B883AA009883AB5C00104103EE83A1000031E84000044AF +:201A0000B82D883A00002D0600BFFFC400003106B5C00017B7000104B809883A0816A0C0EA +:201A08009091C83A102D883A0200090E400F883A01800804880B883AA009883ADA00101526 +:201A1000081636C0DA001017103FEF1E8221883A88800117B00F883AB80D883A880B883A63 +:201A1800A009883A103EE83A103FE71E85A1883AE02D883A0000110600C0004404FFFFC4E7 +:201A2000D8000E15D8C00A15054002849825883AD8000C15D8000B15182F883A00000806A2 +:201A2800DDC00B1505C000840000050600C00044D8C00C1505C000C400000106002F883A4F +:201A3000D8C00F1718C00044D8C00F15003EDC068005883ADFC01A17DF001917DDC01817EE +:201A3800DD801717DD401617DD001517DCC01417DC801317DC401217DC001117DEC01B045D +:201A4000F800283A2880000B10C0020C1800202628C0008FDEFFFD04DC000015DFC0021541 +:201A4800DC4001152821883A1800150E10C0800C180013262C40051789C0030E10C0200C7B +:201A50001800032600000E063C40010E3823883A81000417300B883A880D883A08169AC011 +:201A5800808005171445C83A80800515808004171463883A844004150005883A00000606D9 +:201A6000108010148080000D00BFFFC40000020600BFFFC4F800283ADFC00217DC40011753 +:201A6800DC000017DEC00304F800283A2005883A218F883A290002361007883A00000C06C7 +:201A70002987883A20FFFC2E380B883A30CDC83A1989883A2000052618FFFFC419000003F2 +:201A7800297FFFC429000005003FF906F800283A19C005262900000318C000442940004424 +:201A8000193FFFC5003FFA06F800283A2005883A10C000071800022610800044003FFC067E +:201A88001105C83AF800283ADEFFFF04010020B4014020B4DFC000152120D304296308049E +:201A90002140061E010020740140207421000804294008042140121E00000B0600C020B46F +:201A980018E308041907C83A0005883A10FFF526114F883A39C00017110D883A108001046D +:201AA00031C00015003FF9060100207401402074211D2304295D23042140101E00000B06C6 +:201AA80000C0207418C008041907C83A0005883A10FFF526114F883A39C00017110D883AC1 +:201AB0001080010431C00015003FF90608174100DFC00017DEC001040817480100C020B488 +:201AB80018E0D3041907C83A0005883A18BFF726114F883A39C00017110D883A10800104BB +:201AC00031C00015003FF906DEFFFF040009883ADFC000150816B3800816B580D1A27017C5 +:201AC800D1627117D1227217DFC00017DEC001040812674108173901DEFFFF04DFC00015BF +:201AD00008174840008000441001703ADFC00017DEC00104F800283A008020B41084000431 +:201AD800D0A27415010020B40080673410BF30042122A604D0A2731508170201D0E27317BB +:201AE000D0A2741718000A2610C001040100020419000035013FFFD41100023511000335D3 +:201AE80000800104188000350005883AF800283A00BFFFC4F800283AD0A273171000092654 +:201AF000D0E2741718800404100000351080003718C005371806943A10BFFFCC1884303A4D +:201AF800F800283A00BFFFC4F800283AD0A27317F800283A20001D262804923A20C03017C0 +:201B0000DEFFFD04DC400115DC000015DFC002152823883A2021883A108000D418800335CA +:201B080080C03017188000371080004C100003260100004408173900003FF90619800037A7 +:201B10003007D0BA3009D0FA18C001CC2100020C1908B03A3007D07A18C0040C1906B03AA0 +:201B180088C0042600BFF4840000020600BFFA84F800283ADFC00217DC400117DC00001786 +:201B2000DEC00304F800283A20000A26280009263000082620800C173080001520800C1756 +:201B28001000062621000D04290000150005883AF800283A00BFFA84F800283A00BFFEC4B8 +:201B3000F800283A2005883A20001D262809883A28001B1610C0311728C0192E11403417C2 +:201B380028FFFFC41906703A1800151EDEFFFE04DC000015DFC001151021883A08160A00EF +:201B40001004923A00C0403418FFC00410C4703A80C03017108000941880033580C0301716 +:201B480018C00404188000371080004C10000626008000441880003500BFFEC4000002069C +:201B500000BFFA84F800283ADFC00117DC000017DEC00204F800283ADEFFF504DC0001156E +:201B5800DFC00A15DF000915DDC00815DD800715DD400615DD000515DCC00415DC80031527 +:201B6000DC400215DC000B1728003A163023883A300038162027883A20003626382B883A7F +:201B680038003426208031173080322E2880312E208034173147C83A10C7C83A1C002D360F +:201B700080002C1610BFFFC4114A703A2800291E0029883A05BFFFC405C000C40700010486 +:201B780080002226DD800015890000CC20000626E105C83A8025883A1400012E1025883AE9 +:201B80008923C83A00000406BC0002368025883A0000010604800104AD0B883A900D883AC9 +:201B8800D909883A08161B4098802E17D8C00017A4A9883A84A1C83A8885883A10C000350A +:201B9000988030171080040410C0003718C0008C1800042600C0008410C0003500BFFEC4C7 +:201B9800000005068C400104003FDD060005883A0000010600BFFA84DFC00A17DF00091765 +:201BA000DDC00817DD800717DD400617DD000517DCC00417DC800317DC400217DC00011765 +:201BA800DEC00B04F800283A20001626DEFFF604DD000515DFC00915DDC00815DD800715FC +:201BB000DD400615DCC00415DC800315DC400215DC0001153029883A30000C262021883A0F +:201BB80020802E1780C02F172823883A2885883A382B883A3889883A10C0042E20C0053661 +:201BC0000000020600BFFA84F800283A00BFFA8400002406814034178809883A002D883AB1 +:201BC80008160A00102F883A80803317B8801C2EA8001B2684C0341704E7C83A9C66703AF7 +:201BD0008CC002268CE5C83A000001060025883A980B883A8009883A0816CC401000111E07 +:201BD8008080341714A5C83AAC80012EA825883ADC800015A58F883A880D883A980B883ADA +:201BE0008009883A0816D5801000061EACABC83AB4AD883A8CA3883ABDC00044003FE2069E +:201BE8000005883ADFC00917DDC00817DD800717DD400617DD000517DCC00417DC800317C0 +:201BF000DC400217DC000117DEC00A04F800283A200008263007883A3000062620802E171E +:201BF800288B883A20802F17394D883A2880012E3080023600BFFA84F800283ADEFFFF04F4 +:201C0000380D883A1809883ADFC0001508161B400005883ADFC00017DEC00104F800283A33 +:201C080020004E262080301710004E2620C03217DEFFFB04DFC00415DCC00315DC800215D9 +:201C1000DC400115DC00001518001E1E1480023700C0030494803FCC90BFFAC4188043366C +:201C1800100490BA00C0207418DC1E0410C5883A108000171000683A008170E4008170F43A +:201C2000008170FC008170EC008170AC0081716C0081716C0081716C0081716C0081716C67 +:201C28000081716C008170B4008170BC044080040000130604410004000011060442000461 +:201C300000000F06148001370080058494803FCC90800A26008006049080042600800504FE +:201C38009080221E0440080400000506044040040000030604401004000001060440200489 +:201C400024C034172021883A8809883A980B883A081615C080C0311710C0021E80C03317A5 +:201C480088C0022680000C150000100600C000448480361580C00C1580000D1580800E15DC +:201C500084400F1584C01015D16029048009883A081741400005883A0000050600BFFA84CB +:201C5800F800283A00BFFB44F800283A00BFFB44DFC00417DCC00317DC800217DC400117A3 +:201C6000DC000017DEC00504F800283A300001260005C03200FFFF042005883A28C6703AA1 +:201C6800110DC83A30C0042E11800017300DC0F210800104003FFA06294000CC00C000C4F6 +:201C700028C0041E10C0000B1807C0B2108000830000080600C0008428C0031E1080000BD5 +:201C78001005C0B20000040600C0004428C0021E108000031005C0720005C132F800283A83 +:201C8000DEFFFD04DC400115DC0000152823883A2021883A014001443009883ADFC00215FC +:201C8800081615C0100B883A8809883A08160A0010BFFFC480C00204180000350100004487 +:201C90008100043511003FCC810000351004D23A10803FCC80800135008020041880003546 +:201C9800DFC00217DC400117DC000017DEC00304F800283A3180004C294B883A298B883AA5 +:201CA00021400335210004040080240420800035208000371080008C103FFD1E20800037B1 +:201CA8001004D1FA1080004CF800283A20C004042800022600801A0400000106008008049E +:201CB00018800035188000371080008C103FFD1E20800337F800283A29403FCC21400335B1 +:201CB800210004043000022600801404000001060080040420800035208000371080008C9C +:201CC000103FFD1E208000371004D1FA1080004CF800283A21C004042805883A02000B04C5 +:201CC800210003041147C83A1980090E3A00003538C0003718C0008C183FFD1E2800022606 +:201CD00020C0003710C0000510800044003FF506F800283A21C003042805883A21000404A0 +:201CD800020007041147C83A1980080E10C0000338C000352200003520C0003718C0008C04 +:201CE000183FFD1E10800044003FF606F800283A014AAAF4DEFFFE04296AAA84DC0000158F +:201CE800DFC001152021883A08160A0010000F2601600034013555740007883A297FFFC4EF +:201CF00021155584297FFFC4283FFE1E18C000448121883A18BFFB168405883A1421883A2D +:201CF800843FFFC4803FFE1E000004068405883A1421883A843FFFC4043FFE160005883A7B +:201D0000DFC00117DC000017DEC00204F800283AF800283A20000226208002171000101E82 +:201D0800D0A0281710000926DEFFFF04DFC00015103EE83A00C0058410C0001500BFFA845E +:201D1000DFC00017DEC00104F800283AD0A2750400C0058410C0001500BFFA84F800283A50 +:201D18002880001721400115208000152880001711000115290000150005883AF800283A7B +:201D2000F800283A000170FAF800283A2520732500632575252E75256B75322E25207A4876 +:201D28002E252E757A4875320000000074204B4F6E69206F00007469656D69540074756FE4 +:201D3000252E75256D75322E00000073252E75256D75322E75252F73322E252E00736D757E +:201D38004353534F776620207525202E322E252E0000617574696E49727265202020726FA7 +:201D4000000064252020202053204F4E00434E59343130323130322D6D202037737172615E +:201D48000000000074736554746170206E726574000000003A31564142475220000000536D +:201D50003A31564173475220000000423A31564162505920000072503A32564162505920E6 +:201D5800000072503A32564173475220000000423A33564142475220000056483A33564197 +:201D600042475220000000533A33564173475220000000423A3356416250592000007250B2 +:201D68007473614C65737520000000640081752400817534008175400081754C00817558EC +:201D700000817564008175700081757C0081758800817594008175A0000000000001000082 +:201D780001010000000100010000000001100000060B00000100034400000000800001005C +:201D80001A1A80800000001A7365725000000073666E6F43006D72696D73694D68637461E4 +:201D88006572202C00797274646F4D567325203A00000000203A434C56207525203A4D535E +:201D900000007525656E694C746C756D646F6D2000003A65736572702D3120730000003570 +:201D98002078752575736E75726F707000646574666F725020656C6964616F6C0000003A65 +:201DA000736572702D30207300000039000000310000003200000033000000340000003640 +:201DA8000000003700000038554E454D0000000000004B4F4B434142000000000000505527 +:201DB0004E574F44000000005446454C0000000048474952000000544F464E490000000006 +:201DB8005F44434C4B4341424847494C000000544E414353454E494C444F4D5F000000457F +:201DC0004E414353454E494C5059545F000000454E414353454E494C544E495F0000002B53 +:201DC8004E414353454E494C544E495F0000002D454E494C544C554D444F4D5F0000004549 +:201DD0005341485000002B455341485000002D45464F52505F454C494B544F480100594574 +:201DD800030F031F3E2903033E693EA93E193EE93E593E993E393ED93E4D3EC93EED3E1D2A +:201DE0003ECD3E2D3E6D3EAD3E013E651C181C481CD01C505E581CC83EB95ED80081768CBB +:201DE8000081769000817694008176980081765C0081769C008176A0008176A400817688A3 +:201DF00000817EF4008176A8008176B0008176B4008176BC008176C0008176C8008176D0FF +:201DF800008176D8008176E0008176F00081770000817710008177200081773000817740C6 +:201E0000008177480081775053206F4E6163204464206472002E746561766E492064696C9A +:201E080067616D690000006561766E492064696C646165680000726561766E492064696C80 +:201E1000207264680043524361766E492064696C6174616443524320000000006164705579 +:201E18006320657465636E6164656C6C0000000073616C4665722068652064610000727203 +:201E200073616C4672652068206573610072726573616C4672772068206574690072726579 +:201E280073616C4665762068206669726C696166000000006F727245000000724353534F72 +:201E300000000000696C6156697461646420676E00617461622075257365747900000000F4 +:201E3800252E75252575322E0073257361647055676E69740057462061656C70772065738E +:201E40002E74696100002E2E697265566E6979666C6620670068736161656C7072206573CD +:201E4800617473650000747272746552676E6979647075200065746161647055203F65742E +:201E50002C593D314E3D3220000000006D726946657261776470752064657461000000005E +:201E5800202020200000752564206425000067656C20752573656E6900000000252E7525B5 +:201E60002075322E000073756D20642500000056702075256C6578690000007325257525E6 +:201E680000000000656E6F44000000006C6961460000646500007325656469566E69206F09 +:201E70006F7270203E20206300000000706D6153676E696C74706F203E20202E00000000A6 +:201E7800636E795374706F202020202E3E202020000000007074754F6F207475202E7470BC +:201E80003E2020200000000074736F506F72702D20202E633E20202000000000706D6F4382 +:201E88006269746174696C693E2020790000000069647541706F206F6E6F69743E20207355 +:201E9000000000007474655373676E6974706F203E20202000000000616F4C3C7270206412 +:201E98006C69666F003E20657661533C727020656C69666F003E20657365523C73207465B1 +:201EA000697474653E73676E0000000074696E49206C616975706E69000000746B6E694C3E +:201EA800706E6920702F747500666F722E77463C64707520206574613E202020000000005C +:201EB0006E776F446D61732D6E696C70000000677061775366656C2069722F74007468673F +:201EB8006C6C75462058542075746573000000702033564165746E6963616C727869666572 +:201EC000000000006E616353656E696C000000736E616353656E696C727473200000002E8E +:201EC8006E616353656E696C70797420000000656E616353656E696C696C61202E6D6E67F8 +:201ED000000000006E616353656E696C746E6F43747361720000000069726F48746E6F7A1A +:201ED8006D206C61006B7361747265566C61636973616D200000006B6B73614D6972622062 +:201EE0006E7468670073736565766552206573720046504C5949443C74616C206574202E5E +:201EE800003E7473703034323838322F727020700000636F703438336F72702000000063B7 +:201EF000693038343637352F727020690000636F703038343637352F727020700000636F9E +:201EF800693036393830312F7020693000636F72656E694C6D2078320065646F656E694C0E +:201F00006D2078330065646F656E694C6D2078340065646F656E694C6D2078350065646F5E +:201F0800656E694C66207835616D726F000000747836353220303432657073610000746390 +:201F10006D2058540065646F494D444843544920000000006C616E417320676F20636E79CF +:201F18000046504C6C616E417320676F20636E79006874566E7973486F7420636172656C9A +:201F20000065636E6E797356687420636873657200646C6F4C502D487250204C6F432D65E8 +:201F2800007473614C502D486F50204C432D74737473616F00000000706D6153676E696CCC +:201F3000616870200000657370303834206E6920706D61730072656C6F6C6C415654207780 +:201F38005048205078324C4C000000006F6C6C4170752077706D61737832656C000000000F +:201F40007664413C6974202E676E696D3E2020200000000065646956504C206F00000046BD +:201F4800506250596E6920726C6F43200061705372502F5266666F200074657320592F477A +:201F50007366666F0000746562502F4266666F200074657372502F52696167200000006E1E +:201F580020592F476E6961670000000062502F42696167200000006E73202E486C706D6146 +:201F6000746172650000006573202E486C636E7900006E6562202E48706B63616863726F7B +:201F68000000000061202E48766974630000006573202E566C636E7900006E6562202E56A1 +:201F7000706B63616863726F0000000061202E5676697463000000650066664F00776F4C99 +:201F780068676948000000002D706F547466656C00000000746E65430000726574746F42C4 +:201F8000722D6D6F74686769000000002066664F207366283639203D297A486B000000009C +:201F880020207832207366283834203D297A486B0000000000706F5474746F4200006D6F67 +:201F900069726F48746E6F7A00006C61747265566C6163690000000065746C4174616E7292 +:201F980000676E696F74754100000000756E614D00006C61494D44480000000000495644EF +:201FA00000373A38737361507572687400000000656E694C2820783229626F620000000048 +:201FA800656E694C00007832656E694C282078336563616C00002964656E694C28207834CE +:201FB00029626F6200000000656E694C00007833656E694C00007834656E694C0000783519 +:201FB800303239313830317800000030303036313032317800000030303239313032317823 +:201FC00000000030656E65472063697200333A3478303233203034326974706F00002E6D39 +:201FC80078363532203034326974706F00002E6D656E654720636972393A36310000000020 +:201FD000484D33336D28207A00296E69484D30316D28207A002964654D352E3228207A48C4 +:201FD8002978616D0000000020565444703038340000000041534556303436203038347863 +:201FE000003036402E63655231303620000000002E6365523930372000000000484D353931 +:201FE8004828207A2056544400294949484D35334828207A2056544400002949484D363183 +:201FF0004528207A29565444000000007A484D39445328200029565400006E4F00819501E5 +:201FF8000000000200813A04008195100000000900813818008195000000001B008139CC51 +:2020000000817DE800817DF400817DFC44525355004154410000002000817F840000200016 +:2020080020002CE5E926F4FD38BC20000000000000817F90000020002000323EF113FA0431 +:202010003B6120000000000036333531303432780600000007FE00F00FEA01060112039670 +:2020180032312002327830380000303400F005000106061803480FAA04420112783036391F +:202020000030343203C00000049200F00F80010601120336323300823432783000000030BA +:2020280000F00140010601AA031F0E3149100112783635320030343201000000015500F0F6 +:202030000E2701060112031934329220000070300000000000F002D00106035A033E0F39BE +:20203800000E011236333531303432780600004C07FE00F029EA01380112039632312002C6 +:202040003278303800003838012005000138061803480FAA0442011278303639003838326B +:2020480003C00000049201200F80013801120336323300823432783000424C3000F0014006 +:20205000013801AA031F293149100112783635324C30343201000042015500F0292701389B +:2020580001120319383292200000703800000000012002D001380360033F1345000E01122B +:20206000703438330000000001F00000028001801D3201A70204033E3436000E3833783094 +:20206800000000340180028001EC032002603F30000E0210693038340000000002D0000049 +:20207000035A00F00F39020D0312033E3834044F000070300000000001E002D0020D035AD8 +:20207800063E1E3C000C0414783034360030383402800000032001E02130020D0414026078 +:202080003436000C3135783000000032020002800238032002601C30000C041469363735CC +:202088000000000002D0000003600120134502710312033F3735044F00007036000000005B +:20209000024002D00271036005402744000C0404783030380030303603200000042002583B +:20209800175802740010048032370004000070300000000002D0050002EE0672052814DC46 +:2020A00000040018343230313836377804000000054003001DA003260010068832310004E9 +:2020A800317830380034323004000500042A0698037026F8000400107830343669303639DD +:2020B00002800000032001E02130041A051402603031000D0069303800000000021C0780BC +:2020B80004650898052C1094000D0518303830310000007007800000089804382494046543 +:2020C0000018052C36310004317830300030303204B0064004E2087003F12EFF0004001024 +:2020C800FFFFFFFFFFFFFFFF0000FFFF7665642F6370652F6F635F716F72746E72656C6C19 +:2020D000615F305F6D5F6C7600006D65000000000000000000000000000000000000000021 +:2020D8000000000000000000000000000000000000000000000000000000000000000000E8 +:2020E0000000000000000000000000000000000000000000000000000000000000000000E0 +:2020E8000000000000000000000000000000000000000000000000000000000000000000D8 +:2020F0000000000000000000000000000000000000000000000000000000000000000000D0 +:2020F8000000000000000000000000000000000000000000000000000000000000000000C8 +:202100000000000000000000000000000000000000000000000000000000000000000000BF :202108000000000000000000000000000000000000000000000000000000000000000000B7 :202110000000000000000000000000000000000000000000000000000000000000000000AF :202118000000000000000000000000000000000000000000000000000000000000000000A7 @@ -1120,82 +1120,82 @@ :2022F0000000000000000000000000000000000000000000000000000000000000000000CE :2022F8000000000000000000000000000000000000000000000000000000000000000000C6 :202300000000000000000000000000000000000000000000000000000000000000000000BD -:202308000000000000000000000000000000000000000000000000000000000000000000B5 -:202310000000000000000000000000000000000000000000000000000000000000000000AD -:202318000000000000000000000000000000000000000000000000000000000000000000A5 -:2023200000000000000000000000000000000000000000000000000000000000000000009D -:20232800000000000000000000000000000000000000000000000000000000000000000095 -:202330000000000000000000000000000000000000000000017804E53CCE00813FAE03832D -:202338003F333D4905B80383009301B404163C493CD93F9F04163F10020E04093D0E00C8D7 -:202340003F6E03833ED03DAC04B2038300E9026404163C933D493F5604163E9F00818C3090 -:20234800000000000000000000000000000000000000000000817A700000000300818C708A -:20235000000000000000000000817A840000000300818C68000000000000000000817A98E3 -:202358000000000300818C60000000000000000000817AAC0000000300818C5800000000E6 -:202360000000000000817AC00000000300818C50000000000000000000817AD40000000370 -:2023680000818C48000000000000000000817AE80000000300818C400000000000000000CD -:2023700000817AFC0000000300818C38000000000000000000817B100000000400811FE07E -:20237800008180900000000000817B200000000400812048008180900000000000817B30EE -:202380000000000400812B5C000000000000000000817B4400000000008195AA000A000126 -:2023880000818A4000817B5400000000008195B90001000100818CB800817B6400000004A0 -:20239000008132CC000000000000000000817B7800000000008196C90001000100818C80CB -:2023980000817B8800000000008196CA0001000100818CB800817B9800000001008196CB82 -:2023A00000180000008139E000817BA800000000008196C60001000100818CB800817BB86F -:2023A80000000000008196C70001000100818CB800817BCC00000000008196A500020001E9 -:2023B000008189B400817BD800000001008196A7000F00000081399800817BE80000000077 -:2023B800008196A600020001008189A800817BF800000000008196A80001000100818C8849 -:2023C00000817C0C00000001008196B5003F00000081397C00817C1C00000001008196B6CB -:2023C800003F00000081397C00817C2C00000001008196B7000F00000081382C00817C3C5B -:2023D00000000001008196C8001F00000081382C00817C4800000004008123DC00818084BB -:2023D8000000000000817C5800000000008196AF00040001008189D000817C680000000086 -:2023E000008196B00001000100818CA800817C7400000000008196B100030001008189C058 -:2023E80000817C8400000000008196B20001000100818CA800817C9400000000008196B379 -:2023F0000001000100818CA000817CA400000000008196AA00020001008189F000817CB012 -:2023F80000000000008196AB00030001008189FC00817CBC00000000008196AC000200017A -:20240000008189F000817CC800000000008196AD00020001008189F000817CD4000000006B -:20240800008196AE00020001008189E400817CE400000000008196B40001000100818C98AB -:2024100000817CF400000000008196B80001000100818C9000817CFC00000000008196B984 -:202418000001000100818CB800817D0800000000008196C20003000100818A0C00817D18CD -:2024200000000001008196BF001F00000081393800817D2800000001008196C000FF0000B7 -:20242800008138A800817D3800000001008196C100C80A00008138A800817D4800000001AA -:20243000008196C4000500000081388C00817D5800000001008196C5000500000081388CEA -:2024380000817D6C00000001008196BB001F00010081384800817D7C00000000008196BADB -:202440000002000100818A1C00817D8C00000000008196BC0001000100818CB800817DA090 -:2024480000000000008196BD0001000100818CB800817DB40000000300818C780081809C02 -:20245000008120B000817DC800000000008196C30005000100818A2800817DD40000000070 -:20245800008196BE0001000100818CB000817DE400000001008196CC00FF00000081382C26 -:2024600000817DF000000001008196CD00FF00000081382C00817DFC00000001008196CEC5 -:2024680000FF00000081382C00817E0800000001008196CF00FF00000081382C00817E148B -:2024700000000001008196D000FF00000081382C00817E2000000001008196D100FF000079 -:202478000081382C00817E2C00000002008195B608FC012C0081214000817E3C0000000216 -:20248000008195C200FF000A0081214000817E4800000002008195A600FF00010081214092 -:2024880000817E5800000002008195B4078000C80081214000817E6400000002008195AEB7 -:20249000000700010081214000817E7000000002008195BC003F00010081214000817E805E -:2024980000000002008195B204B000C80081214000817EE400817EF000817EFC00817F0827 -:2024A00000817F0C00817F1400817F2C00817F3800817F5000817F6000817F2C00817F4874 -:2024A80000817F7000817F7800817F8000817F8800817F9400817FA000817FAC00817FB88C -:2024B00000817FC800817FD800817FAC00817FB800817FC800817F0800817FE800817FF45C -:2024B8000081800000817F0C008180100081801C00817F0C00817F0800818044008180541B -:2024C0000081806400818074008175D4008175E4008175F0008175FC00817608008176149C -:2024C800008176200081762C0081763800817644008176500000000000818B2C00818B3491 -:2024D00000818B3C00000000000000000000000000000000000000000000000000000000A4 -:2024D8000000000000000000000000000000000000000000000000000000000000000000E4 -:2024E0000000000000000000000000000000000000000000000000000000000000000000DC +:20230800017804E53CCE00813FAE03833F333D4905B80383009301B404163C493CD93F9F40 +:2023100004163F10020E04093D0E00C83F6E03833ED03DAC04B2038300E9026404163C9376 +:202318003D493F5604163E9F00818B7C00000000000000000000000000000000000000000B +:20232000008179B80000000300818BBC0000000000000000008179CC0000000300818BB497 +:202328000000000000000000008179E00000000300818BAC0000000000000000008179F412 +:202330000000000300818BA4000000000000000000817A080000000300818B9C000000002C +:202338000000000000817A1C0000000300818B94000000000000000000817A30000000039D +:2023400000818B8C000000000000000000817A440000000300818B84000000000000000013 +:2023480000817A580000000400811FCC00817FE80000000000817A6800000004008120348E +:2023500000817FE80000000000817A780000000400812B48000000000000000000817A8C93 +:202358000000000000819502000A00010081898C00817A9C000000000081951100010001EC +:2023600000818C0400817AAC00000004008132B8000000000000000000817AC0000000007B +:20236800008196220001000100818BCC00817AD000000000008196230001000100818C042A +:2023700000817AE0000000000081961E0001000100818C0400817AF0000000000081961F09 +:202378000001000100818C0400817B0400000000008195FD000200010081890000817B1006 +:2023800000000001008195FF000F00000081398400817B2000000000008195FE00020001A7 +:20238800008188F400817B3000000000008196000001000100818BD400817B4400000000D3 +:202390000081962100020001008188E800817B58000000010081960D003F00000081396827 +:2023980000817B68000000010081960E003F00000081396800817B78000000010081960F9F +:2023A000000F00000081381800817B880000000100819620001F00000081381800817B9401 +:2023A80000000004008123C800817FDC0000000000817BA400000000008196070004000106 +:2023B0000081891C00817BB400000000008196080001000100818BF400817BC0000000005A +:2023B80000819609000300010081890C00817BD0000000000081960A0001000100818BF4DC +:2023C00000817BE0000000000081960B0001000100818BEC00817BF0000000000081960200 +:2023C800000200010081893C00817BFC0000000000819603000300010081894800817C083F +:2023D0000000000000819604000200010081893C00817C1400000000008196050002000159 +:2023D8000081893C00817C200000000000819606000200010081893000817C3000000000FB +:2023E0000081960C0001000100818BE400817C4000000000008196100001000100818BDC7A +:2023E80000817C4800000000008196110001000100818C0400817C54000000000081961AD3 +:2023F000000300010081895800817C640000000100819617001F00000081392400817C7469 +:2023F800000000010081961800FF00000081389400817C84000000010081961900C80A00C5 +:202400000081389400817C94000000010081961C000500000081387800817CA400000001D2 +:202408000081961D000500000081387800817CB80000000100819613001F0001008138345D +:2024100000817CC80000000000819612000200010081896800817CD8000000000081961449 +:202418000001000100818C0400817CEC00000000008196150001000100818C0400817D006B +:202420000000000300818BC400817FF40081209C00817D14000000000081961B000500014E +:202428000081897400817D2000000000008196160001000100818BFC00817D300000000192 +:202430000081962400FF00000081381800817D3C000000010081962500FF0000008138183A +:2024380000817D48000000010081962600FF00000081381800817D5400000001008196279F +:2024400000FF00000081381800817D60000000010081962800FF00000081381800817D6CD4 +:20244800000000010081962900FF00000081381800817D78000000020081950E08FC012C96 +:202450000081212C00817D88000000020081951A00FF000A0081212C00817D94000000027B +:20245800008194FE00FF00010081212C00817DA4000000020081950C078000C80081212CA0 +:2024600000817DB00000000200819506000700010081212C00817DBC0000000200819514D4 +:20246800003F00010081212C00817DCC000000020081950A04B000C80081212C00817DD83A +:2024700000817DDC00817DE000817E4000817E4C00817E5800817DD800817E6400817E6C0F +:2024780000817E8400817E9000817EA800817EB800817E8400817EA000817EC800817ED01C +:2024800000817ED800817EE000817EEC00817EF800817F0400817F1000817F2000817F3040 +:2024880000817F0400817F1000817F2000817DD800817F4000817F4C00817F5800817E64E3 +:2024900000817F6800817F7400817E6400817DD800817F9C00817FAC00817FBC00817FCC47 +:202498000081752400817534008175400081754C0081755800817564008175700081757CE8 +:2024A0000081758800817594008175A00000000000818A7800818A8000818A8800000000DD +:2024A800000000000000000000000000000000000000000000000000000000000000000014 +:2024B00000000000000000000000000000000000000000000000000000000000000000000C +:2024B800000000000000000000000000000000000000000000000000000000000000000004 +:2024C0000000000000000000000000000000000000000000000000000000000000000000FC +:2024C8000000000000000000000000000000000000000000000000000000000000000000F4 +:2024D00000000000000000000000000000000004000000000001000A000000000002000AD1 +:2024D80000000000000000000000000000000000000000000081832C0000000000000000B4 +:2024E00000816EA800816FD000816C8800816CC400816D5800000000008000000000000099 :2024E8000000000000000000000000000000000000000000000000000000000000000000D4 :2024F0000000000000000000000000000000000000000000000000000000000000000000CC -:2024F800000000000000000000000000000000000000000000000004000000000001000AB5 -:20250000000000000002000A0000000000000000000000000000000000000000008183ECBF -:20250800000000000000000000816F580081708000816D3800816D7400816E08000000007B -:2025100000800000000000000000000000000000000000000000000000000000000000002B -:202518000000000000000000000000000000000000000000000000000000000000000000A3 -:2025200000000000000000000000000000000000000000000000000000000000000000009B -:20252800000000000000000000000000000000000000000000000000000000000000000093 -:20253000000000000000000000816CA4000000000080000000821020008000000000000147 -:20253800000000800001000000000100000000000010801000000080000000080081846C68 -:20254000000000060081850C000000030081858400000002008185C000000009008185E817 -:202548000000000D0081869C00000006008187A00000000500818818000000080081887C62 -:20255000000000070081891C00817EB000817EC400817ED800817EDC00817F1C00817F24DA -:2025580000817FB400817F2800817F2C00817F3800817F2C00817F480081802C0081803849 -:2025600000817F0800818080C896554B00818A6C0000000000818CCC00818CCC00000000AB +:2024F8000000000000000000000000000000000000000000000000000000000000000000C4 +:202500000000000000000000000000000000000000000000000000000000000000000000BB +:2025080000816BF4000000000080000000821020008000000000000100000080000100009F +:202510000000010000000000001080100000008000000008008183AC000000060081844C7B +:2025180000000002008184C400000002008184EC0000000A008185140000000D008185DCD2 +:2025200000000006008186E0000000050081875800000008008187BC000000070081885C11 +:2025280000817E0C00817E2000817E3400817E3800817E7400817E7C00817F0C00817E8086 +:2025300000817E8400817E9000817E8400817EA000817F8400817F9000817DD800817FD895 +:20253800C896554B008189B80000000000818C1800818C1800000000000000000000000079 +:2025400000000000000000000000000000000000000000000000000000000000000000007B +:20254800000000000000000000000000000000000000000000000000000000000000000073 +:2025500000000000000000000000000000000000000000000000000000000000000000006B +:20255800000000000000000000000000000000000000000000000000000000000000000063 +:2025600000000000000000000000000000000000000000000000000000000000000000005B :20256800000000000000000000000000000000000000000000000000000000000000000053 :2025700000000000000000000000000000000000000000000000000000000000000000004B :20257800000000000000000000000000000000000000000000000000000000000000000043 diff --git a/software/sys_controller/ossc/av_controller.c b/software/sys_controller/ossc/av_controller.c index 239d975..92d8317 100644 --- a/software/sys_controller/ossc/av_controller.c +++ b/software/sys_controller/ossc/av_controller.c @@ -301,6 +301,8 @@ status_t get_status(tvp_input_t input, video_format format) if ((tc.sl_mode != cm.cc.sl_mode) || (tc.sl_type != cm.cc.sl_type) || + (tc.sl_hybr_str != cm.cc.sl_hybr_str) || + (tc.sl_method != cm.cc.sl_method) || (tc.sl_str != cm.cc.sl_str) || (tc.sl_id != cm.cc.sl_id) || (tc.h_mask != cm.cc.h_mask) || @@ -368,8 +370,8 @@ status_t get_status(tvp_input_t input, video_format format) // v_info: [31:29] [28:27] [26] [25:20] [19:17] [16:11] [10:0] // | V_MULTMODE[2:0] | V_SCANLINEMODE[1:0] | V_SCANLINEID | V_MASK[5:0] | V_SYNCLEN[2:0] | V_BACKPORCH[5:0] | V_ACTIVE[10:0] | // -// extra: [31:13] [12:8] [7:4] [3:0] -// | | X_REV_LPF_STR | H_MASK_BR[3:0] | H_SCANLINESTR[3:0] | +// extra: [31:19] [18:14] [13:10] [9] [8:4] [3:0] +// | | X_REV_LPF_STR | H_MASK_BR[3:0] | H_SCANLINE_METHOD | H_SL_HYBRSTR[4:0] | H_SCANLINESTR[3:0] | // void set_videoinfo() { @@ -464,9 +466,11 @@ void set_videoinfo() (video_modes[cm.id].v_synclen<<17) | (v_backporch<<11) | v_active); - IOWR_ALTERA_AVALON_PIO_DATA(PIO_6_BASE, (cm.cc.reverse_lpf<<8) | - (cm.cc.mask_br<<4) | - cm.cc.sl_str); + IOWR_ALTERA_AVALON_PIO_DATA(PIO_6_BASE, (cm.cc.reverse_lpf<<14) | + (cm.cc.mask_br<<10) | + (cm.cc.sl_method << 9) | + (cm.cc.sl_hybr_str << 4) | + cm.cc.sl_str); } // Configure TVP7002 and scan converter logic based on the video mode diff --git a/software/sys_controller/ossc/avconfig.h b/software/sys_controller/ossc/avconfig.h index 37aead6..d062c5a 100644 --- a/software/sys_controller/ossc/avconfig.h +++ b/software/sys_controller/ossc/avconfig.h @@ -24,6 +24,7 @@ #include "tvp7002.h" #define SCANLINESTR_MAX 15 +#define SL_HYBRIDSTR_MAX 28 #define HV_MASK_MAX 63 #define HV_MASK_MAX_BR 15 #define VIDEO_LPF_MAX 5 @@ -50,6 +51,8 @@ typedef struct { alt_u8 sl_mode; alt_u8 sl_type; + alt_u8 sl_hybr_str; + alt_u8 sl_method; alt_u8 sl_str; alt_u8 sl_id; alt_u8 linemult_target; diff --git a/software/sys_controller/ossc/menu.c b/software/sys_controller/ossc/menu.c index 3f13e1e..3fe17d2 100644 --- a/software/sys_controller/ossc/menu.c +++ b/software/sys_controller/ossc/menu.c @@ -60,6 +60,7 @@ static const char *pm_1080i_desc[] = { LNG("Passthru","パススルー"), "Li static const char *ar_256col_desc[] = { "4:3", "8:7" }; static const char *tx_mode_desc[] = { "HDMI", "DVI" }; static const char *sl_mode_desc[] = { LNG("Off","オフ"), LNG("Auto","オート"), LNG("Manual","カスタム") }; +static const char *sl_method_desc[] = { LNG("Multiplication","Multiplication"), LNG("Subtraction","Subtraction") }; static const char *sl_type_desc[] = { LNG("Horizontal","ヨコ"), LNG("Vertical","タテ"), LNG("Alternating","コウゴ") }; static const char *sl_id_desc[] = { LNG("Top","ウエ"), LNG("Bottom","シタ") }; static const char *audio_dw_sampl_desc[] = { LNG("Off (fs = 96kHz)","オフ (fs = 96kHz)"), "2x (fs = 48kHz)" }; @@ -70,6 +71,7 @@ static void sync_vth_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, "%d mV static void intclks_to_time_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, "%u.%.2u us", (unsigned)(((1000000U*v)/(TVP_INTCLK_HZ/1000))/1000), (unsigned)((((1000000U*v)/(TVP_INTCLK_HZ/1000))%1000)/10)); } static void extclks_to_time_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, "%u.%.2u us", (unsigned)(((1000000U*v)/(TVP_EXTCLK_HZ/1000))/1000), (unsigned)((((1000000U*v)/(TVP_EXTCLK_HZ/1000))%1000)/10)); } static void sl_str_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, "%u%%", ((v+1)*625)/100); } +static void sl_hybr_str_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, "%u%%", (v*625)/100); } static void lines_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, LNG("%u lines","%u ライン"), v); } static void pixels_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, LNG("%u pixels","%u ドット"), v); } static void value_disp(alt_u8 v) { sniprintf(menu_row2, LCD_ROW_LEN+1, " %u", v); } @@ -140,6 +142,8 @@ MENU(menu_output, P99_PROTECT({ \ MENU(menu_postproc, P99_PROTECT({ \ { LNG("Scanlines","スキャンライン"), OPT_AVCONFIG_SELECTION, { .sel = { &tc.sl_mode, OPT_WRAP, SETTING_ITEM(sl_mode_desc) } } }, { LNG("Scanline str.","スキャンラインツヨサ"), OPT_AVCONFIG_NUMVALUE, { .num = { &tc.sl_str, OPT_NOWRAP, 0, SCANLINESTR_MAX, sl_str_disp } } }, + { LNG("Sl. hybrid str.","Sl. hybrid str."), OPT_AVCONFIG_NUMVALUE, { .num = { &tc.sl_hybr_str, OPT_NOWRAP, 0, SL_HYBRIDSTR_MAX, sl_hybr_str_disp } } }, + { LNG("Scanline method","Scanline method"), OPT_AVCONFIG_SELECTION, { .sel = { &tc.sl_method, OPT_WRAP, SETTING_ITEM(sl_method_desc) } } }, { LNG("Scanline type","スキャンラインルイ"), OPT_AVCONFIG_SELECTION, { .sel = { &tc.sl_type, OPT_WRAP, SETTING_ITEM(sl_type_desc) } } }, { LNG("Scanline alignm.","スキャンラインポジション"), OPT_AVCONFIG_SELECTION, { .sel = { &tc.sl_id, OPT_WRAP, SETTING_ITEM(sl_id_desc) } } }, { LNG("Horizontal mask","スイヘイマスク"), OPT_AVCONFIG_NUMVALUE, { .num = { &tc.h_mask, OPT_NOWRAP, 0, HV_MASK_MAX, pixels_disp } } },