├── FinalProject_Report_CincottiMalhotraQuercetti.pdf ├── README.md ├── Comparing.v ├── dac_driver.ucf ├── header_LCD_driver_pm10to4.v ├── adc_driver.ucf ├── header_ADC_driver.v ├── module_counter_8_bit.v ├── module_lowPassFilter.v ├── Module_HighPassFilter.v ├── lcd_driver.ucf ├── header_DAC_driver.v ├── lowPassFilter.ucf ├── Module_HR_Detection.v ├── bin2bcd_8_bit.v ├── ECG_summary.html ├── ECG_main.v ├── module_chipStore.v ├── DAC_Driver.ngc ├── LCD_Driver_pm10to4.ngc ├── ECG.xise └── ADC_Driver.ngc /FinalProject_Report_CincottiMalhotraQuercetti.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CountingLogic/ECG-Verilog-FPGA/HEAD/FinalProject_Report_CincottiMalhotraQuercetti.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ECG-Verilog-FPGA 2 | An accurate Electro Cardio Gram system, with peak detection and counting mechanism programmed in Verilog and implimented in Xilinx-FPGA. 3 | 4 | The entire code and the analogue steps involved in heart beat processing are explained in the Final Project report (the only pdf file in this repo) 5 | -------------------------------------------------------------------------------- /Comparing.v: -------------------------------------------------------------------------------- 1 | module Comparing ( qzt_clk, 2 | Vin, 3 | Thr, 4 | overthr); 5 | 6 | input qzt_clk; 7 | input [19:0] Vin; 8 | input [19:0] Thr; //threashold 9 | 10 | output overthr; 11 | 12 | reg overthr; 13 | 14 | 15 | always @(posedge qzt_clk) begin 16 | overthr= (Vin>Thr)? 1 : 0; 17 | end 18 | 19 | endmodule -------------------------------------------------------------------------------- /dac_driver.ucf: -------------------------------------------------------------------------------- 1 | NET "SPI_SCK" LOC = "AA20" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 2 | NET "SPI_MOSI" LOC = "AB14" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 3 | NET "DAC_CS" LOC = "W7" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 4 | NET "DAC_CLR" LOC = "AB13" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 5 | -------------------------------------------------------------------------------- /header_LCD_driver_pm10to4.v: -------------------------------------------------------------------------------- 1 | module LCD_Driver_pm10to4 ( qzt_clk, 2 | fourDigitInput, 3 | signFlag, 4 | dashFlag, 5 | 6 | lcd_flags, 7 | lcd_data); 8 | 9 | input qzt_clk; 10 | input [15:0] fourDigitInput; 11 | input signFlag; 12 | input dashFlag; 13 | 14 | output [1:0] lcd_flags; 15 | output [3:0] lcd_data; 16 | 17 | endmodule 18 | -------------------------------------------------------------------------------- /adc_driver.ucf: -------------------------------------------------------------------------------- 1 | NET "SPI_SCK" LOC = "AA20" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 2 | NET "SPI_MOSI" LOC = "AB14" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 3 | NET "ADC_OUT" LOC = "D16" | IOSTANDARD = LVCMOS33 ; # Private MISO for ADC 4 | NET "AMP_CS" LOC = "W6" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 5 | NET "AD_CONV" LOC = "Y6" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 6 | -------------------------------------------------------------------------------- /header_ADC_driver.v: -------------------------------------------------------------------------------- 1 | module ADC_Driver ( qzt_clk, 2 | SPI_SCK, 3 | enable, 4 | ADC_OUT, 5 | gainLabel, 6 | waitTime, 7 | 8 | AD_CONV, 9 | Va_Vb, 10 | AMP_CS, 11 | SPI_MOSI); 12 | 13 | input qzt_clk; 14 | input SPI_SCK; 15 | input enable; 16 | input ADC_OUT; 17 | input gainLabel; 18 | input [4:0] waitTime; 19 | 20 | output AD_CONV; 21 | output [27:0] Va_Vb; 22 | output AMP_CS; 23 | output SPI_MOSI; 24 | 25 | endmodule 26 | -------------------------------------------------------------------------------- /module_counter_8_bit.v: -------------------------------------------------------------------------------- 1 | module Module_Counter_8_bit ( clk_in, 2 | limit, 3 | 4 | out, 5 | carry); 6 | 7 | input clk_in; 8 | input [7:0] limit; 9 | 10 | output [7:0] out; 11 | output carry; 12 | 13 | reg [7:0] out; 14 | reg carry; 15 | 16 | always @(posedge clk_in) begin 17 | if (out >= (limit - 8'b00000001)) begin 18 | out = 0; 19 | carry = 1; 20 | end else if (out == 0) begin 21 | out = 1; 22 | carry = 0; 23 | end else 24 | out = out + 1; 25 | end 26 | 27 | endmodule 28 | -------------------------------------------------------------------------------- /module_lowPassFilter.v: -------------------------------------------------------------------------------- 1 | `define uni 25'b1111111111111111111111111 2 | module Module_LowPassFilter ( qzt_clk, 3 | clk_in, 4 | k, 5 | Vin, 6 | 7 | Vout); 8 | 9 | input qzt_clk; 10 | input clk_in; 11 | input [3:0] k; 12 | input [19:0] Vin; 13 | 14 | output [19:0] Vout; 15 | 16 | reg [19:0] Vout; 17 | reg [19:0] tmp; 18 | reg [19:0] old; 19 | reg clk_in_old; 20 | 21 | always @(posedge qzt_clk) begin 22 | if (clk_in & !clk_in_old) begin 23 | tmp<=Vin[19]? ({`uni,Vin}>>(k+1)): Vin>>(k+1); 24 | Vout<= old + tmp; 25 | old<= Vout + ~(Vout[19]? ({`uni,Vout}>>(k)): Vout>>(k))+1+ tmp; 26 | end 27 | clk_in_old <= clk_in; 28 | end 29 | endmodule 30 | -------------------------------------------------------------------------------- /Module_HighPassFilter.v: -------------------------------------------------------------------------------- 1 | `define uni 25'b1111111111111111111111111 2 | module Module_HighPassFilter ( qzt_clk, 3 | clk_in, 4 | k, 5 | Vin, 6 | 7 | Vout); 8 | 9 | input qzt_clk; 10 | input clk_in; 11 | input [3:0] k; 12 | input [19:0] Vin; 13 | 14 | output [19:0] Vout; 15 | 16 | reg [19:0] Vout; 17 | reg [19:0] tmp; 18 | reg [19:0] old; 19 | reg clk_in_old; 20 | 21 | always @(posedge qzt_clk) begin 22 | if (clk_in & !clk_in_old) begin 23 | tmp<=Vin + ~ (Vin[19]? ({`uni,Vin}>>(k+1)): Vin>>(k+1)) + 1; 24 | Vout<= old + Vin + ~ (Vin[19]? ({`uni,Vin}>>(k+1)): Vin>>(k+1)) + 1 + ~tmp+1; 25 | old<= Vout + ~ (Vout[19]? ({`uni,Vout}>>(k)): Vout>>(k)) + 1; 26 | end 27 | clk_in_old <= clk_in; 28 | end 29 | endmodule 30 | -------------------------------------------------------------------------------- /lcd_driver.ucf: -------------------------------------------------------------------------------- 1 | NET "LCD_DB<0>" LOC = "Y13" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 2 | NET "LCD_DB<1>" LOC = "AB18" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 3 | NET "LCD_DB<2>" LOC = "AB17" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 4 | NET "LCD_DB<3>" LOC = "AB12" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 5 | NET "LCD_DB<4>" LOC = "AA12" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 6 | NET "LCD_DB<5>" LOC = "Y16" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 7 | NET "LCD_DB<6>" LOC = "AB16" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 8 | NET "LCD_DB<7>" LOC = "Y15" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 9 | NET "LCD_E" LOC = "AB4" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 10 | NET "LCD_RS" LOC = "Y14" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 11 | NET "LCD_RW" LOC = "W13" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 12 | -------------------------------------------------------------------------------- /header_DAC_driver.v: -------------------------------------------------------------------------------- 1 | /**********************/ 2 | /* Timing description */ 3 | /**********************/ 4 | // clock period frequency note 5 | // CLK_50M 20 ns 50 MHz 6 | // SPI_SCK 160 ns 6.25 MHz generated from CLK_50M via Module_FrequencyDivider with period = 4 7 | // DAC_CS 5.28 us 189.394 kHz generated from SPI_SCK via DAC_Driver, that requires 33 clk cycles 8 | // for each of the two DACs (160 * 33 = 5.28 us) 9 | // Consequently each DAC is refreshed each 66 SPI_SCK cycles 10 | // 10.56 us 94.697 kHz 11 | 12 | /**************/ 13 | /* Conversion */ 14 | /**************/ 15 | // 16 | // Vout = 3.3 V * nDAC / 2^12 17 | 18 | module DAC_Driver ( CLK_50M, 19 | SPI_SCK, 20 | Va, Vb, 21 | startEnable, 22 | 23 | SPI_MOSI, DAC_CS, DAC_CLR, 24 | dacNumber 25 | ); 26 | 27 | input CLK_50M; 28 | input SPI_SCK; 29 | input [11:0] Va; 30 | input [11:0] Vb; 31 | input startEnable; 32 | 33 | output SPI_MOSI; 34 | output DAC_CS; 35 | output DAC_CLR; 36 | output dacNumber; 37 | 38 | endmodule 39 | -------------------------------------------------------------------------------- /lowPassFilter.ucf: -------------------------------------------------------------------------------- 1 | CONFIG VCCAUX = "3.3" ; 2 | CONFIG ENABLE_SUSPEND = "FILTERED" ; 3 | CONFIG POST_CRC = "DISABLE" ; 4 | 5 | NET "CLK_50M" LOC = "E12" | IOSTANDARD = LVCMOS33 | PERIOD = 20.000 ; 6 | OFFSET = IN 10.000 VALID 20.000 BEFORE "CLK_50M" ; 7 | OFFSET = OUT 20.000 AFTER "CLK_50M" ; 8 | 9 | 10 | ############################################ 11 | ############################################ 12 | # DO NOT MODIFY ANYTHING ABOVE THIS POINT!!! 13 | ############################################ 14 | ############################################ 15 | 16 | //NET "SW<0>" LOC = "V8" | IOSTANDARD = LVCMOS33 ; 17 | //NET "SW<1>" LOC = "U10" | IOSTANDARD = LVCMOS33 ; 18 | //NET "SW<2>" LOC = "U8" | IOSTANDARD = LVCMOS33 ; 19 | //NET "SW<3>" LOC = "T9" | IOSTANDARD = LVCMOS33 ; 20 | 21 | NET "LED<0>" LOC = "R20" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 22 | NET "LED<1>" LOC = "T19" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 23 | NET "LED<2>" LOC = "U20" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 24 | NET "LED<3>" LOC = "U19" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 25 | NET "LED<4>" LOC = "V19" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 26 | NET "LED<5>" LOC = "V20" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 27 | NET "LED<6>" LOC = "Y22" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 28 | NET "LED<7>" LOC = "W21" | IOSTANDARD = LVCMOS33 | DRIVE = 8 | SLEW = SLOW ; 29 | -------------------------------------------------------------------------------- /Module_HR_Detection.v: -------------------------------------------------------------------------------- 1 | `timescale 1ns / 1ps 2 | `define minuto 16'b1110101001100000 3 | ////////////////////////////////////////////////////////////////////////////////// 4 | // Company: unitn 5 | // Engineer: Sagar M., Sara Q., Giancarlo C. 6 | // 7 | // Create Date: 17:01:32 01/31/2018 8 | // Design Name: 9 | // Module Name: Module_HR_Detection 10 | // Project Name: ECG 11 | // Target Devices: 12 | // Tool versions: 13 | // Description: the module operates a division to return a value of HR [bits/minute] 14 | // to print on a display. the division is: 15 | // 60seconds[in bits] / counter time [in bits] 16 | // it uses an algorithm fount on wikipedia to perform division 17 | // Dependencies: 18 | // 19 | // Revision: 20 | // Revision 0.01 - File Created 21 | // Additional Comments: 22 | // 23 | ////////////////////////////////////////////////////////////////////////////////// 24 | module Module_HR_Detection (qzt_clk, 25 | clk_in, 26 | counter, 27 | 28 | HR); 29 | 30 | input qzt_clk; 31 | input clk_in; 32 | input [15:0] counter; 33 | 34 | output [15:0] HR; 35 | 36 | reg [15:0] HR; 37 | reg [15:0] Q; 38 | reg [15:0] minute; 39 | reg count_flag; 40 | reg old_clk_in; 41 | 42 | always @ (posedge qzt_clk) begin 43 | if(clk_in & !old_clk_in) begin 44 | count_flag=1; 45 | Q=0; 46 | minute = `minuto; 47 | end 48 | if (count_flag) begin 49 | if(minute 4) 45 | bcd[3:0] = bcd[3:0] + 3; 46 | if(i < 7 && bcd[7:4] > 4) 47 | bcd[7:4] = bcd[7:4] + 3; 48 | if(i < 7 && bcd[11:8] > 4) 49 | bcd[11:8] = bcd[11:8] + 3; 50 | end 51 | end 52 | 53 | endmodule -------------------------------------------------------------------------------- /ECG_summary.html: -------------------------------------------------------------------------------- 1 | Xilinx Design Summary 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
ECG Project Status
Project File:ECG.xiseParser Errors: No Errors
Module Name:ECGImplementation State:New
Target Device:xc3s700an-4fgg484
  • Errors:
 
Product Version:ISE 14.7
  • Warnings:
 
Design Goal:Balanced
  • Routing Results:
34 |  
Design Strategy:Xilinx Default (unlocked)
  • Timing Constraints:
 
Environment: 
  • Final Timing Score:
  
49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 |  
61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 |
Detailed Reports [-]
Report NameStatusGeneratedErrorsWarningsInfos
Synthesis Report     
Translation Report     
Map Report     
Place and Route Report     
Power Report     
Post-PAR Static Timing Report     
Bitgen Report     
72 |  
73 | 74 | 75 |
Secondary Reports [-]
Report NameStatusGenerated
76 | 77 | 78 |
Date Generated: 03/23/2018 - 14:00:04
79 | -------------------------------------------------------------------------------- /ECG_main.v: -------------------------------------------------------------------------------- 1 | `define t1millesimo 28'b0000000000000110000110101000 2 | 3 | module ECG ( CLK_50M, 4 | ADC_OUT, 5 | 6 | DAC_CS, 7 | DAC_CLR, 8 | SPI_SCK, 9 | AMP_CS, 10 | SPI_MOSI, 11 | AD_CONV, 12 | LED,LCD_DB, 13 | LCD_E, LCD_RS, LCD_RW); 14 | 15 | input CLK_50M; 16 | input ADC_OUT; 17 | 18 | output DAC_CS; 19 | output DAC_CLR; 20 | output SPI_SCK; 21 | output SPI_MOSI; 22 | output AMP_CS; 23 | output AD_CONV; 24 | output [7:0] LED; 25 | output [7:0] LCD_DB; 26 | output LCD_E; 27 | output LCD_RS; 28 | output LCD_RW; 29 | 30 | wire w_SPI_MOSI_preAmp; 31 | wire w_SPI_MOSI_DAC; 32 | wire w_dacNumber; 33 | wire overthr; 34 | wire monover; 35 | wire beat_period; 36 | wire clk_un_k; 37 | wire c_counter_1; 38 | wire [13:0] wb_Va; 39 | wire [13:0] wb_Vb; 40 | wire [19:0] wb_V_HPF; 41 | wire [19:0] wb_Va_filtered; 42 | wire [15:0] period_count; 43 | wire [15:0] b_period; 44 | wire [15:0] HR_show; 45 | wire [15:0] HR_to_conv; 46 | 47 | buf(SPI_MOSI, ((AMP_CS & w_SPI_MOSI_DAC)|(!AMP_CS & w_SPI_MOSI_preAmp))); 48 | 49 | buf(LCD_RW, 0); 50 | buf(LCD_DB[3:0], 4'b1111); 51 | 52 | 53 | 54 | 55 | Module_Counter_8_bit SPI_SCK_generator ( .clk_in(CLK_50M), 56 | .limit(30'd10), 57 | 58 | .carry(SPI_SCK)); 59 | 60 | Module_HighPassFilter HPF ( .qzt_clk(CLK_50M), 61 | .clk_in(~w_dacNumber), 62 | .k(4'b1011), 63 | .Vin({wb_Va,6'b000000}), 64 | .Vout(wb_V_HPF)); 65 | 66 | Module_LowPassFilter LPF ( .qzt_clk(CLK_50M), 67 | .clk_in(~w_dacNumber), 68 | .k(4'b1000), 69 | .Vin(wb_V_HPF), 70 | 71 | .Vout(wb_Va_filtered)); 72 | 73 | Comparing overt ( .qzt_clk(CLK_50M), 74 | .Vin({!wb_Va_filtered[19],wb_Va_filtered[18:0]}), 75 | .Thr({!wb_Vb[13], wb_Vb[12:0], 6'b000000}), 76 | 77 | .overthr(overthr)); 78 | 79 | Module_Monostable monov ( .clk_in(CLK_50M), 80 | .monostable_input(overthr), 81 | .N(28'b0000010011000100101101000000),//=5*10^6 ---> 100ms 82 | 83 | .monostable_output(monover)); 84 | 85 | 86 | Module_ToggleFlipFlop beat_toggle ( .clk_in(CLK_50M), 87 | .ff_input(monover), 88 | 89 | .ff_output(beat_period)); 90 | 91 | 92 | Module_FrequencyDivider Clock_1kHz ( .clk_in(CLK_50M), 93 | .period(`t1millesimo), 94 | 95 | .clk_out(clk_un_k)); 96 | 97 | 98 | 99 | Module_SynchroCounter_8_bit_SR counter_1 ( .qzt_clk(CLK_50M), 100 | .clk_in(clk_un_k & beat_period), 101 | .set(0), 102 | .reset(!monover & !beat_period), 103 | .presetValue(0), 104 | 105 | .out(period_count[7:0]), 106 | .carry(c_counter_1)); 107 | 108 | Module_SynchroCounter_8_bit_SR counter_2 ( .qzt_clk(CLK_50M), 109 | .clk_in(c_counter_1), 110 | .set(0), 111 | .reset(!monover & !beat_period), 112 | .presetValue(0), 113 | 114 | .out(period_count[15:8])); 115 | 116 | 117 | 118 | assign LED = period_count[9:2]; 119 | 120 | Module_Buffer_16bit_sync display_buff ( .qtz_clk(CLK_50M), 121 | .clk_in(!beat_period), 122 | .buff_input(period_count), 123 | 124 | .buff_output(b_period)); 125 | 126 | Module_HR_Detection frequency (.qzt_clk(CLK_50M), 127 | .clk_in(!beat_period), 128 | .counter(b_period), 129 | 130 | .HR(HR_to_conv)); 131 | 132 | bin2bcd_8_bit decimal_conv( .bin(HR_to_conv), 133 | .bcd(HR_show)); 134 | 135 | 136 | LCD_Driver_pm10to4 lcd_driver ( .qzt_clk(CLK_50M), 137 | .fourDigitInput(HR_show), 138 | .signFlag(0), 139 | .dashFlag(0), 140 | 141 | .lcd_flags({LCD_RS, LCD_E}), 142 | .lcd_data(LCD_DB[7:4])); 143 | 144 | 145 | 146 | ADC_Driver ADC_Driver ( .qzt_clk(CLK_50M), 147 | .SPI_SCK(SPI_SCK), 148 | .enable(1), 149 | .ADC_OUT(ADC_OUT), 150 | .gainLabel(0), 151 | .waitTime(5'b10000), 152 | 153 | .AD_CONV(AD_CONV), 154 | .Va_Vb({wb_Va, wb_Vb}), 155 | .AMP_CS(AMP_CS), 156 | .SPI_MOSI(w_SPI_MOSI_preAmp)); 157 | 158 | DAC_Driver DAC_Driver ( .CLK_50M(CLK_50M), 159 | .SPI_SCK(SPI_SCK), 160 | .Va({!wb_Va_filtered[19], wb_Va_filtered[18:8]}), 161 | .Vb({!wb_Vb[13], wb_Vb[12:2]}), 162 | .startEnable(AD_CONV), 163 | 164 | .SPI_MOSI(w_SPI_MOSI_DAC), 165 | .DAC_CS(DAC_CS), 166 | .DAC_CLR(DAC_CLR), 167 | .dacNumber(w_dacNumber)); 168 | 169 | 170 | 171 | endmodule 172 | -------------------------------------------------------------------------------- /module_chipStore.v: -------------------------------------------------------------------------------- 1 | /*******************************/ 2 | /*** Module_FrequencyDivider ***/ 3 | /*******************************/ 4 | 5 | module Module_FrequencyDivider ( clk_in, 6 | period, 7 | 8 | clk_out); 9 | 10 | input clk_in; 11 | input [29:0] period; 12 | 13 | output clk_out; 14 | 15 | reg clk_out; 16 | 17 | reg [29:0] counter; 18 | 19 | always @(posedge clk_in) begin 20 | if (counter >= (period - 1)) begin 21 | counter = 0; 22 | clk_out = ~clk_out; 23 | end else 24 | counter = counter + 1; 25 | end 26 | 27 | endmodule 28 | 29 | /**************************************/ 30 | /*** Module_SynchroCounter_8_bit_SR ***/ 31 | /**************************************/ 32 | 33 | module Module_SynchroCounter_8_bit_SR ( qzt_clk, 34 | clk_in, 35 | set, 36 | reset, 37 | presetValue, 38 | limit, 39 | 40 | out, 41 | carry); 42 | 43 | input qzt_clk; 44 | input clk_in; 45 | input set; 46 | input reset; 47 | input [7:0] presetValue; 48 | input [7:0] limit; 49 | 50 | output [7:0] out; 51 | output carry; 52 | 53 | reg [7:0] out; 54 | reg carry; 55 | 56 | reg clk_in_old; 57 | 58 | 59 | always @(posedge qzt_clk) begin 60 | if (reset) begin 61 | out = 0; 62 | carry = 0; 63 | end else if (set) begin 64 | out = presetValue; 65 | carry = 0; 66 | end else if (!clk_in_old & clk_in) begin 67 | if (out >= (limit - 8'b00000001)) begin 68 | out = 0; 69 | carry = 1; 70 | end else if (out == 0) begin 71 | out = 1; 72 | carry = 0; 73 | end else 74 | out = out + 1; 75 | end 76 | 77 | clk_in_old = clk_in; 78 | end 79 | 80 | endmodule 81 | 82 | /*********************************************/ 83 | /*** Module_Multiplexer_2_input_8_bit_sync ***/ 84 | /*********************************************/ 85 | 86 | module Module_Multiplexer_2_input_8_bit_sync ( clk_in, 87 | address, 88 | input_0, 89 | input_1, 90 | 91 | mux_output); 92 | 93 | input clk_in; 94 | input address; 95 | input [7:0] input_0; 96 | input [7:0] input_1; 97 | 98 | output [7:0] mux_output; 99 | 100 | reg [7:0] mux_output; 101 | 102 | always @(posedge clk_in) begin 103 | mux_output = (address)? input_1 : input_0; 104 | end 105 | 106 | endmodule 107 | 108 | /*****************************/ 109 | /*** Module_MonostableHold ***/ 110 | /*****************************/ 111 | 112 | `define defaultN 28'b111101000010010000 // 2.5 10^5 ===> 5 ms 113 | 114 | module Module_Monostable ( clk_in, 115 | monostable_input, 116 | N, 117 | 118 | monostable_output); 119 | 120 | input clk_in; 121 | input monostable_input; 122 | input [27:0] N; 123 | 124 | output monostable_output; 125 | 126 | reg monostable_output = 0; 127 | 128 | reg monostable_input_old = 0; 129 | reg [27:0] counter = 0; 130 | 131 | always @(posedge clk_in) begin 132 | if (counter == 0) begin 133 | if (!monostable_input_old & monostable_input) begin 134 | counter =((N)? N : `defaultN) - 1; 135 | monostable_output = 1; 136 | end else 137 | monostable_output = 0; 138 | end else 139 | counter = counter - 1; 140 | 141 | monostable_input_old = monostable_input; 142 | end 143 | 144 | endmodule 145 | 146 | /**********************************/ 147 | /*** Module_ToggleFlipFlop_sync ***/ 148 | /**********************************/ 149 | 150 | module Module_ToggleFlipFlop ( clk_in, 151 | ff_input, 152 | 153 | ff_output); 154 | 155 | input clk_in; 156 | input ff_input; 157 | 158 | output ff_output; 159 | 160 | reg ff_output; 161 | 162 | reg ff_input_previous; 163 | 164 | always @(posedge clk_in) begin 165 | if (!ff_input_previous & ff_input) begin 166 | ff_output = ~ff_output; 167 | end 168 | 169 | ff_input_previous = ff_input; 170 | end 171 | 172 | endmodule 173 | /**********************************/ 174 | /*** Module_Buffer_16bit_sync ***/ 175 | /**********************************/ 176 | 177 | module Module_Buffer_16bit_sync ( qtz_clk, 178 | clk_in, 179 | buff_input, 180 | 181 | buff_output); 182 | 183 | input qtz_clk; 184 | input clk_in; 185 | input [15:0] buff_input; 186 | 187 | output [15:0] buff_output; 188 | 189 | reg [15:0] buff_output; 190 | reg old_clk; 191 | 192 | always @(posedge qtz_clk) begin 193 | if (!old_clk & clk_in) begin 194 | buff_output <= buff_input; 195 | end 196 | 197 | old_clk<=clk_in; 198 | end 199 | 200 | endmodule 201 | 202 | /***************************/ 203 | /*** Module_Latch_16_bit ***/ 204 | /***************************/ 205 | 206 | module Module_Latch_16_bit ( clk_in, 207 | holdFlag, 208 | twoByteInput, 209 | 210 | twoByteOuput); 211 | 212 | input clk_in; 213 | input holdFlag; 214 | input [15:0] twoByteInput; 215 | 216 | output [15:0] twoByteOuput; 217 | 218 | reg [15:0] twoByteOuput; 219 | 220 | 221 | always @(posedge clk_in) begin 222 | if (!holdFlag) twoByteOuput = twoByteInput; 223 | end 224 | 225 | endmodule 226 | 227 | /***************************/ 228 | /*** Module_Counter_13_bit ***/ 229 | /***************************/ 230 | 231 | module Module_Counter_13_bit ( clk_in, 232 | limit, 233 | 234 | out, 235 | carry); 236 | 237 | input clk_in; 238 | input [12:0] limit; 239 | 240 | output [12:0] out; 241 | output carry; 242 | 243 | reg [12:0] out; 244 | reg carry; 245 | 246 | always @(posedge clk_in) begin 247 | if (out >= (limit - 13'b0000000000001)) begin 248 | out = 0; 249 | carry = 1; 250 | end else if (out == 0) begin 251 | out = 1; 252 | carry = 0; 253 | end else 254 | out = out + 1; 255 | end 256 | 257 | endmodule 258 | -------------------------------------------------------------------------------- /DAC_Driver.ngc: -------------------------------------------------------------------------------- 1 | XILINX-XDB 0.1 STUB 0.1 ASCII 2 | XILINX-XDM V1.6e 3 | $gfx0>6788>0<=H74:21452<81:;86>J010855763881EC^ZT;Tb847=87;:7<<5IORVP?Pe48;1<3:433105>233=:;<95:5GG2?34<>H>0:LON1:57?2@AN=1J>LO=;@:7?D>58=1J4L>;;C:;<==E]ZUBBKA>;B68G3>5<2IH:N<4CD58GIMX=9G27NABMHVWAA1;E08@04?00025f=CIJUO~dxjr.FBGZETWds<=>>2032a>BFKVNye{k}/EC@[FUXe|r;<=?=1^d6a>BFKVNye{k}/O22a>BFKVNye{k}/O35a>BFKVNye{k}/O07a>BFKVNye{k}/O06`>BFKVNye{k}/O727>BFKVNye{k}/RRJ[HITA8h0HLMPDskuaw)TX@UFC^GPaof34566k2NJORJ}iwgq+VVNWDEXERoad123447e3MKHSI|fvdp,WUOXEFYBS`{w01235a=CIJUO~dxjr.QSMZKH[@Ufyu>?01325a=CIJUO~dxjr.QSMZKH[@Ufyu>?01315`=CIJUO~dxjr.QSMZKH[@Ufyu>?013164b?011254c8><5KAB]Gvlpbz&Y[ERC@SH]nq}6789>8S^Y?1e9GEFYCz`|n~"]_I^OLWLYj}q:;<=8<1e9GEFYCz`|n~"]_I^OLWLYj}q:;<=971e9GEFYCz`|n~"]_I^OLWLYj}q:;<=6:179GEFYCz`|n~"]_I^Q@OZikl8>0HLMPDskuaw)QWje{u1>1149GEFYCz`|n~"XPcnrz84699<1OMNQKrhtfv*PXkfzr03?;;EC@[Atn~lx$ZRm`px>0:425=95KAB]Gvlpbz&\Tob~v<4<20>BFKVNye{k}/W]`ku;>7;?7IOL_Epjr`t(^Vid|t28>068@DEXL{c}i!Y_bms}9>99=1OMNQKrhtfv*PXkfzr040>3:FBGZBuaoy#[Qloq{\4453:FBGZBuaoy#[Qloq{\745:?6JNC^Fqmscu'_Uhc}wP5018@DEXL{c}i!Y_bms}Z06;2NJORJ}iwgq+SYdgysT;<=4D@A\@woqm{%]Snay^:27>BFKVNye{k}/W]`kuX18i0HLMPDskuaw)QWje{uRczx12349699m1OMNQKrhtfv*PXkfzrS`{w012385869m1OMNQKrhtfv*PXkfzrS`{w01238469:81OMNQKrhtfv*PXkfzrS`{w01238469WZ];=i5KAB]Gvlpbz&\Tob~v_lw{456748;5=h5KAB]Gvlpbz&\Tob~v_lw{456748;5==5KAB]Gvlpbz&\Tob~v_lw{4567484T_Z>>c:FBGZBuaoy#[Qloq{\ip~789:7>30PSV22g>BFKVNye{k}/W]`kuXe|r;<=>34?03?AGDWMxbzh| V^alt|Yj}q:;<=2;>^QT44e?0=7=65=CIJUO~dxjr.T\gjv~Wds<=>?<4<\WR66k2NJORJ}iwgq+SYdgysTaxv?012?2;473MKHSI|fvdp,RZehxpUfyu>?01>5:ZUP88i0HLMPDskuaw)QWje{uRczx1234919:91OMNQKrhtfv*PXkfzrS`{w0123828X[^::o6JNC^Fqmscu'_Uhc}wPmtz3456;078;7IOL_Epjr`t(^Vid|tQbuy2345:?6VY\<=5KAB]Gvlpbz&\Tob~v_lw{4567404T_Z>>9:FBGZBuaoy#[Qloq{\jjr789;:n6JNC^Fqmscu'_Uhc}wPnnv34576<8l0HLMPDskuaw)QWje{uR``t123542X[^;9=6JNC^Fqmscu'_Uhc}wPnnv34576BFKVNye{k}/bmvjqcu494:96JNC^Fqmscu'je~byk}<0<21>BFKVNye{k}/bmvjqcu4;4:96JNC^Fqmscu'je~byk}<2<21>BFKVNye{k}/bmvjqcu4=4:96JNC^Fqmscu'je~byk}<4<20>BFKVNye{k}/bmvjqcuW9;?7IOL_Epjr`t(kfexh|P1068@DEXL{c}i!lotlwawY59=1OMNQKrhtfv*eh}g~n~R=>4:FBGZBuaoy#naznugq[1733MKHSI|fvdp,gjsi|lxT9>0g8@DEXL{c}i!lotlwawYj}q:;<<2>>03g?AGDWMxbzh| cnwmp`tXe|r;<=?32?3f?AGDWMxbzh| cnwmp`tXe|r;<=?32?32`>BFKVNye{k}/bmvjqcuWds<=>><2<2a>BFKVNye{k}/bmvjqcuWds<=>><2<25a=CIJUO~dxjr.alqkrbzVg~t=>?1=6=64=CIJUO~dxjr.alqkrbzVg~t=>?1=6=[VQ79m1OMNQKrhtfv*eh}g~n~Rczx1235939:81OMNQKrhtfv*eh}g~n~Rczx1235939WZ];><5KAB]Gvlpbz&idyczjr^ov|56795?5S^Y>159GEFYCz`|n~"jncOwnf`t6k2NJORJ}iwgq+agdF|giiQaou23477c3MKHSI|fvdp,`deI}dhn~R``t123647d3MKHSI|fvdp,`deI}dhn~R``t1237754D@A\@woqm{%d`iQKAB]@WZ7Xign;<=?>1:G7?C3A<;1MH>5IDD18BAU33OLMI85Iamqf5>A43NDO=6G=;H21?L753@897D=6;HLJPVRF\L90ECX<;HMA6>JH?2FDKDMNL59OQQ433E__?;5CUU1\@3=K]]9T@95CUU65?ISSH6=:1E=:=4N0;1?K443G8:?6@=329M6059<;O1;7>H41;1E8>5A4118J1753G<97C9=;O;4?KCS_FX@=6A>;Qa8T+479:;;=>QC4:RBVQg;P38W3=TG\XHI55\PH]NKVO03ZZBS^MD4:VZT@e<]ZOYS[G\ICNF7>PDK01]EHYPTXRF1>Pf494=7[o311<;?Sg;980;2;5Ya=32:0=Qi5;596Xn<3<6?Sg;;7?0Zl2;>49Ue939=2\j0;0:;Wc?3;3<^h63285Ya=;=1>Pe494=7[l311<;?Sd;980;2;5Yb=32:0=Qj5;596Xm<3<6?Sd;;7?0Zo2;>49Uf939=2\i0;0:;W`?3;3<^k63285Yb=;=5a=_AECET VKB!2-5%US]K*;"<.NSBKJ2>^T\ECI;6V\T^EM@2=_[]U]ON84Xe`\Ma773QnfS@oeosTfvvohf8:0TicPMhllvScu{`ee?6V|t89gefHrekoyn6}{asvFjddkm880tn=|712bj(2*nnm?49sO@q0b4>FGp;91J7<51zQ2`?`>2jh1=>=n2139744bmrdm;7?4ng:92>"a>3l97p]>c;d:>fd=9:9j>=?5300e4>b5;3:1=7?tS0f9b<:085a~U6l3l26nl5121b657=;88ni6*k7;c:?!ed2oi0n?=50;3e>07=>lqCh85+d5817>\6>38p:795}%c4>>i5:3:17dhm:188ma5=831b=o4?::mg6?6=3`ni6=4+cd8ge>hdl3:07dj6:18'g`5<#kl0om6`ld;08?lc4290/oh4ka:l``?5<3`o96=4+cd8ge>hdl3>07dk>:18'g`5<#kl0om6`ld;48?lba290/oh4ka:l``?1<3`nn6=4+cd8ge>hdl3207djk:18'g`5<#kl0om6`ld;c8?lb?290/oh4ka:l``?d<3`o36=4+cd8f3>hdl3:07dk9:18'g`5<#kl0n;6`ld;08?l`7290/oh4j7:l``?5<3`om6=4+cd8f3>hdl3>07dkj:18'g`5<#kl0n;6`ld;48?lcd290/oh4j7:l``?1<3`oi6=4+cd8f3>hdl3207dkn:18'g`5<#kl0n;6`ld;c8?lc2290/oh4j7:l``?d<3kl>6=4>:183!b32m<0Dk=4He78kfg=831vn4>50;694?6|,m>15l5Gf29K`0=n9>0;66g>a;29?l7b2900cnh50;9~f=4=83>1<7>t$e69=d=On:1Ch85f1683>>o6i3:17d?j:188kf`=831vn5?50;694?6|,m>15l5Gf29K`0=n9>0;66g>a;29?l7b2900cnh50;9~f=6=83>1<7>t$e69=d=On:1Ch85f1683>>o6i3:17d?j:188kf`=831vn:h50;694?6|,m>15l5Gf29K`0=n9>0;66g>a;29?l7b2900cnh50;9~f2c=83>1<7>t$e69=d=On:1Ch85f1683>>o6i3:17d?j:188kf`=831vn:j50;694?6|,m>15l5Gf29K`0=n9>0;66g>a;29?l7b2900cnh50;9~f17=8391<7>t$e69=<=On:1Ch85f1683>>o6m3:17bmi:188yg36290?6=4?{%f7>e;29?jea2900qo;?:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg3>290?6=4?{%f7>e;29?jea2900qo;7:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg30290?6=4?{%f7>e;29?jea2900qo;9:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg32290?6=4?{%f7>e;29?jea2900qo;;:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg34290?6=4?{%f7>e;29?jea2900qo;=:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg2a290?6=4?{%f7>e;29?jea2900qo:j:187>5<7s-n?64o4Hg18La3>o6m3:17bmi:188yg4a290?6=4?{%f7>e;29?jea2900qo69:180>5<7s-n?6lo4Hg18La3<,h?1o6gn1;29?lg52900cn750;9~f=>=83>1<7>t$e69eg=On:1Ch85+a48g?lg62900el<50;9je6<722eh57>5;|`;e?6==3:17)o::d9je4<722cj>7>5;hc0>5<1<75`c883>>{e;80;694?:1y'`1>of;3:17bm6:188yg>d29086=4?{%f7>dg<@o90Di;4$`79b>of93:17do=:188kf?=831vn5l50;794?6|,m>1mh5Gf29K`0=#i<0:56gn1;29?lg52900el=50;9je1<722eh57>5;|`;0?6=<3:17)o::49je4<722cj>7>5;hc0>5<5<>of<3:17bm6:188yg>b290>6=4?{%f7>dc<@o90Di;4$`79=f=ni80;66gn2;29?lg42900el:50;9lg<<722wi4k4?:483>5}#l=0ji6Fi3:Jg1>"f=3;;7do>:188md4=831bm>4?::kb0?6=3fi26=44}c:g>5<2290;w)j;:`g8Lc5<@m?0(l;5199je4<722cj>7>5;hc0>5<1<75`c883>>{e=o0;694?:1y'`150z&g0?gb3Al87Ej:;%c6>45>of;3:17do;:188kf?=831vn:?50;694?6|,m>1mo5Gf29K`0=#i<09<6gn1;29?lg52900el=50;9lg<<722wi;=4?:583>5}#l=0jn6Fi3:Jg1>"f=38;7do>:188md4=831bm>4?::m`=?6=3th=j7>54;294~"c<3ki7Eh<;If6?!g22;:0el?50;9je7<722cj?7>5;na:>5<5Gd49'e0<582cj=7>5;hc1>5<>{e>j0;694?:1y'`150z&g0?ge3Al87Ej:;%c6>76>of;3:17bm6:188yg0f290?6=4?{%f7>dd<@o90Di;4$`7965=ni80;66gn2;29?lg42900cn750;9~f3?=83>1<7>t$e69eg=On:1Ch85+a4814>of93:17do=:188md5=831do44?::a2=<72=0;6=u+d58bf>Na;2Bo96*n5;03?lg62900el<50;9je6<722eh57>5;|`53?6=<3:17)o::328md7=831bm?4?::kb7?6=3fi26=44}c45>5<3290;w)j;:``8Lc5<@m?0(l;5219je4<722cj>7>5;hc0>5<1<729q/h94nb:Je7>Nc=2.j975<>id13:17pl93;290?6=8r.o87om;Id0?Mb23-k>6?>4i`394?=ni;0;66gn3;29?je>2900qo8=:187>5<7s-n?6ll4Hg18La3<,h?1>=5fa083>>of:3:17do<:188kf?=831vn;?50;694?6|,m>1mo5Gf29K`0=#i<09<6gn1;29?lg52900el=50;9lg<<722wi:=4?:583>5}#l=0jn6Fi3:Jg1>"f=38;7do>:188md4=831bm>4?::m`=?6=3th>h7>54;294~"c<3ki7Eh<;If6?!g22;:0el?50;9je7<722cj?7>5;na:>5<5Gd49'e0<>3`k:6=44i`094?=hk00;66sm3883>6<729q/h94na:Je7>Nc=2.j97?j;hc2>5<>{e;?0;6>4?:1y'`1>id13:17pl6<:4i`394?=ni;0;66gn3;29?lg32900cn750;9~f63=83?1<7>t$e69e`=On:1Ch85+a48:<>of93:17do=:188md5=831bm94?::m`=?6=3th987>54;294~"c<33i7Eh<;If6?l702900e5;|`00?6==3:17)o::078md7=831bm?4?::kb7?6=3`k?6=44ob;94?=zj:h1<7=50;2x a2=ih1Cj>5Gd49'e0<>?2cj=7>5;hc1>5<5<>of<3:17bm6:188yg5c290>6=4?{%f7>dc<@o90Di;4$`797>of93:17do=:188md5=831bm94?::m`=?6=3th?<7>55;294~"c<3kn7Eh<;If6?!g22h1bm<4?::kb6?6=3`k86=44i`694?=hk00;66sm2783>0<729q/h94ne:Je7>Nc=2.j97?>;hc2>5<>of<3:17bm6:188yg14290>6=4?{%f7>dc<@o90Di;4$`796>of93:17do=:188md5=831bm94?::m`=?6=3th<87>54;294~"c<3h:7Eh<;If6?lg62900el<50;9j`5<722eh57>5;|`41?6=<3:17)o::008md7=831bm?4?::kb7?6=3fi26=44}c55>5<2290;w)j;:`g8Lc5<@m?0(l;5b:kb5?6=3`k96=44i`194?=ni=0;66al9;29?xd><3:1>7>50z&g0?g13Al87Ej:;hc3>5<Na;2Bo96*n5;c8md7=831bm?4?::kb7?6=3`k?6=44ob;94?=zj;31<7:50;2x a2=j81Cj>5Gd49je4<722cj>7>5;hf3>5<5<>of<3:17bo7:188yg5?290>6=4?{%f7>de<@o90Di;4$`7965=ni80;66gn2;29?lg42900cl650;9lg<<722wi?l4?:783>5}#l=0jj6Fi3:Jg1>"f=3:0el?50;9je7<722cj?7>5;hc7>5<>{e;o0;694?:1y'`150z&g0?d73Al87Ej:;%c6>4=ni80;66gn2;29?lg42900el:50;9le=<722wi?:4?:483>5}#l=0i<6Fi3:Jg1>"f=3k0el?50;9je7<722cj?7>5;hc7>5<168k4>7:?66?7034?86<94=46952=:=<0:;63:6;34?83028=01865169>1<<6?27><7?8;<72>41<5=;1=:527e823>;0m3;<709i:0589=6=9>164<4>7:?;6?70343;6<94=36952=z{;;1<7;5<3im70<9:`38yv422909w0<;:0g8970=k01v?950;0x97>=k016>44n1:p6d<72;q6?i4n4:?07?g?3ty9n7>52z?0=?e>349?6l<4}r0`>5<2s4=>6l?4=3:9e1=:;h0h5636<h4?:3y>1c63=f;ae?8502h>0q~=?:18;84a28k01:j51`9>3`<6i274g<51;1=l528382e>;493i27p}<2;296~;5n3;n70=::b;8yv532909w0=;:b;896c=i=1v>850;0x960=k016?h4n2:p72<72;q6?84n3:?03?g?3ty8o7>52z?0a?g4349h6l64}r1f>5<5s49n6n74=279e1=z{:l1<77}:<90h563<5;c1?xu393:1;v3;1;ae?8562h901>75a39>63d5<5>91m?5rs5094?4|5=o1ok52618b7>{t<<0;6?u24g8`b>;1:3k87p};3;297~;283im70;i:`1896b=i;1v9:50;1x907=ko16?94n1:?0g?g63ty?:7>52z?66?ea345<5s4?86nh4=749e6=z{=21<710j?6s|4883>7}:=<0hj639a;c0?xu3i3:1>v3:6;ae?80d2h90q~:m:1818302jl01;k5a29~w1e=838p1865cg9>351<o7o<;|q6e?6=:r7?i7?j;<7a>f?4c<5{t>90;6?u24g82a>;183i27p}92;296~;2:3;n708=:b;8yv032909w0;<:0g8932=k01v;850;0x902=9l16:;4l9:p2=<72;q6984>e:?53ty=m7>52z?62?7b345<5s4?<6l0h56s|7183>7}:=00:i6380;a:?xu0:3:1hv3;e;3b?82a28k018<51`9>16<6i27>87?n;<76>4g<5<<1=l525682e>;203;j70;6:0c8906=9h169<4>a:?47?e>3ty<;7>5cz?4`?ea342=6l<4=9:9e6=:0h0j?637c;c1?8>42h8015k5a29>d4<5:k1m9523g8b6>{t?10;6nu27d8`b>;?>3k:7067:`089=g=i;164n4n1:?;0?g6342n6l<4=9d9e7=:<90j>6386;c1?8542h901>o5a29~w2?=83ip1:h5cg9><=d5<5191m>528d8b5>;?n3k:70=9:`38920=i816?>4n4:?0e?g5349m6l?4}r5b>5c2h;01>85a39>05d7<5:k1m<5rs6`94?d|51;1ok528c8b6>;?<3k9706j:`689=`=i=168=4n1:?40?b734836l?4=2g9e4=:;k0j>63<7;c2?xu0k3:14v372;ae?8>32h9015j5a39>6=;<1a>d7<5>91m>52368b7>{t0:0;6?u27e82a>;?;3i27p}75;296~;0m3;n7069:b;8yv>02909w09i:0g89=>=k01v5750;0x9=6=9l164l4l9:pe:?;f?e>3ty3h7>52z?;6?7b342o6n74}r;3>5<6:rTmm6360;ae?83e2h801:?5a09>2c;<4a>d7<5?31m<52668b5>;1=3k:708<:`38937=i8169i4n1:?:2?g534=>6l<4=869e5=:;10j=6393:1>v360;3b?8?52j30q~7<:1818?728o014:5c89~w<3=83;;w0;i:`3890d=i816;=4n1:?5a?g63410j=6396;c2?8032h;01;<5a09>25o7o>;<;5>f?<5;<1m?52358b0>;4k3k?7p}m2;296~;1n3i2708j:`08yvd42909w08k:b;893e=i;1vo:50;0x93d=k016:l4n2:pf0<72;q6:44l9:?552z?53?e>34<=6l<4}r`4>5<5s42h6n74=9`9e1=z{k21<7=0j>6s|b883>7}:>:0h56392;c1?xuei3:1>v391;a:?8072h80q~lm:18183c2j3018m5a39~wge=838p1>l5c89>=37ad2f?<5>>1m<5rsb294?4|5><1o452758b6>{tk80;6?u2f58:a>;513k97p}l2;296~;?<3i2706<:`68yve42909w0=7:`:8962=i:1vn:50;0x96g=i1165;4n4:pg0<72;q64h4l9:?;`?g33tyh:7>52z?;b?e>342o6l=4}ra4>5<5s4=:6n74=629e7=z{m91<76t^e18917=9l16?<4n2:?0=?g6348=6l:4=619e4=::00o<63vPk8:?6f?g43tyo57>52z\g=>;2l3k87p}kb;296~Xcj27847o<;|qgg?6=:rToo6391;c0?xucl3:1>vPkd:?57?g43tyoi7>52z\ga>;1=3k87p}kf;296~Xcn27=;7o<;|qf4?6=:rTn<6399;c0?xub93:1>vPj1:?5f?g43tyn>7>52z\f6>;1l3k87p}j3;296~Xb;27=j7o<;|qf0?6=:rTn86381;c0?xub=3:1>vPj5:?6f?g33tyn:7>52z\f2>;2l3k97p}j8;296~Xb027847o=;|qf=?6=:rTn56391;c1?xubi3:1>vPja:?57?g53tynn7>52z\ff>;1=3k97p}jc;296~Xbk27=;7o=;|qf`?6=:rTnh6399;c1?xubm3:1>vPje:?5f?g53tynj7>52z\fb>;1l3k97p}i0;296~Xa827=j7o=;|qe5?6=:rTm=6381;c1?xuaj3:1?vPib:?41?g4343=6l?4}|l2g1<728qCh85rn0a6>5<6sAn>7p`>c783>4}Ol<1vb{If6?xh6kh0;65<6sAn>7p`>cd83>4}Ol<1vb{If6?xh6l;0;65<6sAn>7p`>d783>4}Ol<1vb{If6?xh6lh0;65<6sAn>7p`>dd83>4}Ol<1vb{If6?xh6m;0;65<6sAn>7p`>e783>4}Ol<1vb{If6?xh6mh0;65<6sAn>7p`>ed83>4}Ol<1vb{If6?xh6n;0;65<6sAn>7p`>f783>4}Ol<1vb{If6?xh6nh0;65<6sAn>7p`>fd83>4}Ol<1vb{If6?xh58;0;65<6sAn>7p`=0783>4}Ol<1vb?>8:182Mb23td9<54?:0yK`0=zf;:26=4>{If6?xh58h0;65<6sAn>7p`=0d83>4}Ol<1vb?>i:182Mb23td9==4?:0yK`0=zf;;:6=4>{If6?xh59;0;65<6sAn>7p`=1783>4}Ol<1vb??8:182Mb23td9=54?:0yK`0=zf;;26=4>{If6?xh59h0;65<6sAn>7p`=1d83>4}Ol<1vb??i:182Mb23td9>=4?:0yK`0=zf;8:6=4>{If6?xh5:;0;65<6sAn>7p`=2783>4}Ol<1vb?<8:182Mb23td9>54?:0yK`0=zf;826=4>{If6?xh5:h0;65<6sAn>7p`=2d83>4}Ol<1vb?{If6?x{zuIJHw?o?:`777r@ARxyEF -------------------------------------------------------------------------------- /LCD_Driver_pm10to4.ngc: -------------------------------------------------------------------------------- 1 | XILINX-XDB 0.1 STUB 0.1 ASCII 2 | XILINX-XDM V1.6e 3 | $3074=7<2:;<<:401210>678=>0<=>94:234=2<898;86>?81684467<2:9<=<409684=6A<2:2<=:40G220>6A81;0=95>0122`>712@D[YY4iotpGmbosAgz~x1?::1<2?72<:9:;=:5=:NWWTPR=djnTjaohs=394;2<;:;8=6:;;523440<<3E^X][[:mag[agsi591<3:455D75>053?8?7;<;039531=08O:97:H>;908<52<09:;866?0968<5>?<2234=:4A1@00>G5IH>0M:H84:CB@BLJ>0JHHL4:DFBC2D<2LMHK:4FGGB0>@ANM>0JKHJ5:Dbhvc63N90KCJ>;H08M545FNW18MJD6:2FHHRJ}iwgq[uk68}e?>6BF2:NL3>JHO@IJ@95CUU37?ISS:?1GYYTH;5CUU6\H0=J]QIR96CZXG72g>KflmUhcx`{es]pldtb89:;Snw30?3g?HgclVidyczjr^qkewc789:Tot2>0?03?HgclVidyczjr^qkewc789:Tot2>0?]qp4b?0^az8449:91FmijPcnwmp`tX{akyi=>?0^az8449W{~:h6Cnde]`kphsm{Uxdl|j0123[f;9:49<6Cnde]`kphsm{Uxdl|j0123[f;9:4T~y?k;Lcg`Zeh}g~n~R}gasg3456Xkp6:83328IdbcWje~byk}_rjbv`6789Uhu1?:>^pw5a=JimnTob{atdp\wmgum9:;?_b{?528582GjhiQlotlwawYt`hxn<=>?_b{?528Xz};o7@okd^alqkrbzVycmk?012\g|:6078;7@okd^alqkrbzVycmk?012\g|:607Uyx4M`fg[firf}oyS~fnrd2345Ydq5;22R|{1b9NeabXkfexh|Psicqa5678Vir0<0>f:Ob`aYdg|diQ|h`pf4567Wjs7=3Q}t0a8IdbcWje~byk}_rjbv`6789Uhu1<11g9NeabXkfexh|Psicqa5678Vir0?0Pru3`?HgclVidyczjr^qkewc789:Tot2<>0d8IdbcWje~byk}_rjbv`6789Uhu1=1_sv2g>KflmUhcx`{es]pldtb89:;Snw34?3e?HgclVidyczjr^qkewc789:Tot2;>^pw5f=JimnTob{atdp\wmgum9:;KflmUhcx`{es]pldtb89:;Snw35?]qp4ePcx>4:4`?_b{?<;7a3DkohRm`uovfvZuoi{o;<=>Pcx>;:Zts9j1FmijPcnwmp`tX{akyi=>?0^az8<86n2GjhiQlotlwawYt`hxn<=>?_b{?=;Yu|8n0Aljk_bmvjqcuWzbj~h>?01]oqq:76;90Aljk_bmvjqcuWzbj~h>?01]oqq:76VCEZR>>d:Ob`aYdg|diQ|h`pf4567Wqey0=0>e:Ob`aYdg|diQ|h`pf4567Wqey0<>11d9NeabXkfexh|Psicqa5678Vrd~1?>>0g8IdbcWje~byk}_rjbv`6789Usc2>2?3f?HgclVidyczjr^qkewc789:Ttb|312<2a>KflmUhcx`{es]pldtb89:;Sua}<06=5`=JimnTob{atdp\wmgum9:;22;7b3DkohRm`uovfvZuoi{o;<=>Pxnp?5286m2GjhiQlotlwawYt`hxn<=>?_ymq84>99l1FmijPcnwmp`tX{akyi=>?0^zlv97>68n0Aljk_bmvjqcuWzbj~h>?01]{kw:668o0Aljk_bmvjqcuWzbj~h>?01]{kw:5878:7@okd^alqkrbzVycmk?012\|jt;:94T~y?k;Lcg`Zeh}g~n~R}gasg3456Xpfx7>3?k;Lcg`Zeh}g~n~R}gasg3456Xpfx7?3?k;Lcg`Zeh}g~n~R}gasg3456Xpfx783?k;Lcg`Zeh}g~n~R}gasg3456Xpfx793?k;Lcg`Zeh}g~n~R}gasg3456Xpfx7:3?k;Lcg`Zeh}g~n~R}gasg3456Xpfx7;3?k;Lcg`Zeh}g~n~R}gasg3456Xpfx743?k;Lcg`Zeh}g~n~R}gasg3456Xpfx753<4N118J5753G;?7C??359M55333G;;;95A11;7?K76<=1E=<8;;O32<6=I9;>0B<2568J44?;2D:?95A1227?K749=1E=><;;O3071=I9:>?7C?<559M56033G;8;95A12:7?K741:1E=9:4N0630>H6<8>0B<:=4:L2062?86@>4468J421<2D:8::4N06;0>H6<0>0B<;?4:L2145H3=:1E8;=4N400?K34;2D>5>5A6218J3343G<887C993:L436=I?090B5?<;O:07>H?=:1E4:<4N818J<543G3VNFVH^_DJWb:RJJZDR[GKFI<5^1:Q5?VIRZJO?7YW_Eb9VW@TX^@YBNAK<;WA@=>PNM^U_U]K>d:ZJHLH_%QNI,= > RVVF%6)9)KXODG:;YMQG\026;d2o5lotlwaw:6>7h0ob{atdp?528e3je~byk}<0:=f>eh}g~n~1?6>`9`kphsm{6:2o5lotlwaw:587k0ob{atdp?6;ga:alqkrbzV;;m6m`uovfvZ76i2idyczjr^31g>eh}g~n~R?=_0c8gjsi|lxT=>m4cnwmp`tX9:U:m6m`uovfvZ73i2idyczjr^36e>eh}g~n~R?9a:alqkrbzV;eh}g~n~R56m`uovfvZ0>3je~byk}_6;8gjsi|lxT445lotlwawY>9;1hcx`{es]nq}67896;2<=4cnwmp`tXe|r;<=>30?321>eh}g~n~Rczx123496998;:56m`uovfvZkrp9:;<1>1103\WR66?2idyczjr^ov|56785:5=R]X0058gjsi|lxTaxv?012?4;7X[^;:?6m`uovfvZkrp9:;<1>12018gjsi|lxTaxv?012?5586<2idyczjr^ov|56785;;2?<03=51=dg|diQbuy2345:697;:?6m`uovfvZkrp9:;<1?=>068gjsi|lxTaxv?012?57869:1hcx`{es]nq}67896:?3?;;bmvjqcuWds<=>?<01=545030?firf}oyS`{w012384399=1hcx`{es]nq}67896:93?>3:alqkrbzVg~t=>?0=35:425lotlwawYj}q:;<=2>7?37?firf}oyS`{w012384199890ob{atdp\ip~789:7=50>4:alqkrbzVg~t=>?0=3;:4743je~byk}_lw{45674835=95lotlwawYj}q:;<=2>9?326>eh}g~n~Rczx12349799:1hcx`{es]nq}67896:2?<32=51=dg|diQbuy2345:587;:>6m`uovfvZkrp9:;<1<1129`kphsm{Ufyu>?01>1:4753je~byk}_lw{45674:4:?6m`uovfvZkrp9:;<1=11008gjsi|lxTaxv?012?0;743je~byk}_lw{45674=4:=?5lotlwawYj}q:;<=2:>018gjsi|lxTaxv?012?1;76:2idyczjr^ov|56785<5=>5lotlwawYj}q:;<=29>031?firf}oyS`{w01238286;2idyczjr^ov|56785=5=<<4cnwmp`tXe|r;<=>38?30?firf}oyS`{w01238=869;1hcx`{es]nq}6789622<=4cnwmp`tXe|r;<=>39?3f?firf}oySb|?012e?firf}oySb|?012251=dg|diQ|h`pf4567494:96m`uovfvZuoi{o;<=>311<21>eh}g~n~R}gasg3456;984:96m`uovfvZuoi{o;<=>313<21>eh}g~n~R}gasg3456;9:4:96m`uovfvZuoi{o;<=>315<21>eh}g~n~R}gasg3456;9<4:96m`uovfvZuoi{o;<=>317<21>eh}g~n~R}gasg3456;9>4:96m`uovfvZuoi{o;<=>319<21>eh}g~n~R}gasg3456;904:86m`uovfvZuoi{o;<=>31?36?firf}oyS~fnrd2345:587;?7naznugq[vnfzl:;<=2=>068gjsi|lxTeo}e12349599=1hcx`{es]pldtb89:;090>4:alqkrbzVycmk?012?1;733je~byk}_rjbv`67896=2<:4cnwmp`tX{akyi=>?0=5=51=dg|diQ|h`pf4567414:86m`uovfvZuoi{o;<=>39?:8`duoNekl=<5iotpGmbosAgz~x1>1139ekptCancEc~zt=33:442:dlqwBno`~Bb}{{<01=57=ag|xOejg{Iorvp97368>0jb{}DhejpLhw}}6:97>1139ekptCancEc~zt=36:47038bjsuL`mbxD`uu>7:47038bjsuL`mbxD`uu>;:476820ecg{i`nj~`JfjlfTJ^CPFGf25f=nf`~bmagueMcaaiYA[DUMJi?"Io32`>oia}cj`dtjL``fhZ@TEVLMh<#Fn032<>oia}cj`dtjL``fhZ@TEVLMh??m;hljplgkasoGmokc_GQN[C@c:$Ce=k5fnhvjeio}mEkiiaQISL]EBa4*AgUX[?03]PS47d3`dbxdoci{gOegckWjg{Sh?012054`?011\WR76i2ceeygnlhxfHddbdVif|Rk~01225a=nf`~bmagueMcaaiYdeyUn}=>?10325a=nf`~bmagueMcaaiYdeyUn}=>?10315a=nf`~bmagueMcaaiYdeyUn}=>?100164=nf`~bmagueMcaaiYdeyUn}=>?1001[VQ79j1bbdzfamkyaIgemeUha}Qjq1235416j2ceeygnlhxfHddbdVif|Rk~012264g?023b?lhn|`kgewkCacgo[fkwWl{;<=:m;mag[agsi5:5n6bld^fbpd:66k1goiQkauc?6;bjdlVnjxlQlmq]fu567;8;37amk_ecweZejxVoz<=><1^QT445?5^QT540?0=2=54669k1goiQkauc\ip~789:7<3?>04]PS57e3eioSio{a^ov|56785:5=<>:_RU25g=kkmUomyoPmtz3456;87;:<8Q\W33a?iecWmkmRczx123496998:>S^Y;1c9ogaYci}kTaxv?012?4;768?0=2=5446?2fhhRjnt`]nq}67896;2<<>1048hfbXlh~jS`{w01238586<1;=7amk_ecweZkrp9:;<1>11402e>jdlVnjxlQbuy2345:768?9S^Y?179ogaYci}kTaxv?012?4;72;8<0`njPd`vb[hs89:;0=0>5735?iecWmkmRczx12349699??:;6bld^fbpdYj}q:;<=2?>0:354>179ogaYci}kTaxv?012?4;7?<8=0`njPd`vb[hs89:;0=0=1332=>jdlVnjxlQbuy2345:76:;T_Z>>9:n``Zbf|hUfyu>?01>3:67X[^;:96bld^fbpdYj}q:;<=2?>2121>jdlVnjxlQbuy2345:76=2:96bld^fbpdYj}q:;<=2?>6222>jdlVnjxlQbuy2345:66889=;5cce]geqgXe|r;<=>31?30740?0=3=501X[^:::6bld^fbpdYj}q:;<=2>>05552=kkmUomyoPmtz3456;97;<:?0=3=5=703eioSio{a^ov|56785;5=5QI169ogaYci}kTaxv?012?5;7?WN;>7amk_ecweZkrp9:;<1?1203:?iecWmkmRczx1234979;8UX[=?6;mag[agsiVg~t=>?0=3=74YT_8;>7amk_ecweZkrp9:;<1?1473:?iecWmkmRczx1234979?0=3=<4743eioSio{a^ov|5678585=85cce]geqgXe|r;<=>32?3253=kkmUomyoPmtz3456;:7;:8<;4lbf\`drfWds<=>?<3<2<43?<3<0043?<3<;743<84lbf\`drfWds<=>?<2<242713eioSio{a^ov|5678595=?9>7:n``Zbf|hUfyu>?01>0:44098?0`njPd`vb[hs89:;0>0>40;8hfbXlh~jS`{w01238686?<2<054?0<8^D23>jdlVnjxlQbuy2345:46:2TK<;4lbf\`drfWds<=>?<2<4043jdlVlgmj}Paof34566:2fhhRhcafq\ekb789::=<5cce]ehdatWhdo<=<=169ogaYadhmxS`{w0123858681;37amk_gnbcvYj}q:;<=2?>03334>03154>199ogaYadhmxS`{w012385869==:46bld^doebuXe|r;<=>30?32207?3eioSkbngr]nq}67896;200252=kkmUm`li|_lw{4567494:>??8;mag[cjfozUfyu>?01>3:440901goiQil`ep[hs89:;0=0>2^d652=kkmUm`li|_lw{4567494:?:?7;mag[cjfozUfyu>?01>3:45098=0`njPfmcdwZkrp9:;<1>115:23>jdlVlgmj}Pmtz3456;87;>:<84lbf\big`{Vg~t=>?0=2=74713eioSkbngr]nq}67896;2>7>5:n``Z`kinyTaxv?012?4;26?2fhhRhcafq\ip~789:7<3:>1048hfbXneklRczx1234969?<;37amk_gnbcvYj}q:;<=2?>67\B4>1zvyQllj:8wlaiNekl=?5wc2q445gi%='mkj:74|BCt3?b3IJs:94I:382V5128:o6ko51214f14=9?>0c82?k77k3<0(<>n:026?xU4=3;;h7hn:0103g25284<6sZ9=6<>k:gc95650j=81=;:8a:tW556=83;1=7??czQ02?77l3lj6<=<7c61>403?h1/==:5669'bg<5::1i:94?:0;9a2<68jqC==<4$022>32hak3:07b?m0;29 cb=9k;0bkm51:9l5d`=83.mh7?m1:leg?4<3f;ji7>5$gf95g74;h3;2?6=,on1=594nga95>=n91?1<7*id;3;3>hak3807d?74;29 cb=91=0bkm53:9j5=5=83.mh7?77:leg?2<3`;3>7>5$gf95=183:1(kj51958jce=?21b=5h50;&e`?7??2dmo764;h3;a?6=,on1=594nga9=>=n91n1<7*id;3;3>hak3k07d?7c;29 cb=91=0bkm5b:9j5=d=83.mh7?77:leg?e<3`;3m7>5$gf95=1m7>5;|`24<<7280;6=u+1139555<@8:<7E??2:me=?6=3th:n84?:283>5}#99;18:5G1158L4653`8n6=44i2594?=hnl0;66sm13194?5=83:p(<>>:558L4603A;;>6g=e;29?l502900ckk50;9~f44329086=4?{%335?203A;;;6F>039j6`<722c8;7>5;ndf>5<53;294~"6880?;6F>069K554>iam3:17pl>3283>6<729q/==?5469K551<@8:97dt$022>11<@8:<7E??2:k1a?6=3`9<6=44ogg94?=zj89>6=4<:183!7793><7E??7:J247=n:l0;66g<7;29?j`b2900qo?<6;297?6=8r.:<<4;7:J242=O9980e?k50;9j72<722emi7>5;|`272<72:0;6=u+113902=O99=0D<>=;h0f>5<>{e9:21<7=50;2x 4662==0D<>8;I336>o5m3:17d=8:188kcc=831vn<=6:180>5<7s-;;=7:8;I333>N68;1b>h4?::k03?6=3fln6=44}c311?6=;3:100873>N68>1C==<4i3g94?=n;>0;66aie;29?xd6:?0;6>4?:1y'557=<>1C==94H021?l4b2900e>950;9lb`<722wi=?950;194?6|,8::6994H024?M77:2c9i7>5;h14>5<5<4290;w)??1;64?M77?2B:>o4?3:17bhj:188yg75j3:1?7>50z&244<3?2B:<:5G1108m7c=831b?:4?::mea?6=3th:>n4?:283>5}#99;18:5G1158L4653`8n6=44i2594?=hnl0;66sm13f94?5=83:p(<>>:558L4603A;;>6g=e;29?l502900ckk50;9~f44b29086=4?{%335?203A;;;6F>039j6`<722c8;7>5;ndf>5<53;294~"6880?;6F>069K554>iam3:17pl>3183>6<729q/==?5469K551<@8:97dt$022>11<@8:<7E??2:k1a?6=3`9<6=44ogg94?=zj;:;6=4<:183!7793><7E??7:J247=n:l0;66g<7;29?j`b2900qo9;:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zj0n1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo66:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh21<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6m:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjhh1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6k:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjhi1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6i:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjhn1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo7>:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjho1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo7<:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjhl1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo7::187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjk:1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo78:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjk;1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo76:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjk81<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo9::187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zj0o1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo98:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zj0l1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo96:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh:1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo9m:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh;1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo9k:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh81<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo9i:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh91<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6>:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh>1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6<:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh?1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo6::187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh<1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qo68:187>5<7s-;;=79=;I333>N68;1b?94?::k0f?6=3`lm6=44og:94?=zjh=1<7=50;2x 46628:=7E??7:J247=n;=0;66g95;29?j`?2900qoo6:180>5<7s-;;=7??6:J242=O9980e>:50;9j20<722em47>5;|`2=0<72:0;6=u+113902=O99=0D<>=;%42>5=n:l0;66g<7;29?j`b2900qo?69;297?6=8r.:<<499:J242=O9980(;?5179j1a<722c>i7>5;nd;>5<53;294~"6880=56F>069K554<,?;1?:5f5e83>>o2m3:17bh7:188yg4613:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c350085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?96;297?6=8r.:<<499:J242=O9980(;?5219j1a<722c>i7>5;nd;>5<53;294~"6880=56F>069K554<,?;1>=5f5e83>>o2m3:17bh7:188yg71:3:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c354?6=;3:10085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?:e;297?6=8r.:<<499:J242=O9980(;?5219j1a<722c>i7>5;nd;>5<o7>53;294~"6880=56F>069K554<,?;1>=5f5e83>>o2m3:17bh7:188yg72i3:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c360085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?:6;297?6=8r.:<<499:J242=O9980(;?5219j1a<722c>i7>5;nd;>5<87>53;294~"6880=56F>069K554<,?;1>=5f5e83>>o2m3:17bh7:188yg72:3:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c364?6=;3:10085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?;e;297?6=8r.:<<499:J242=O9980(;?5219j1a<722c>i7>5;nd;>5<53;294~"6880=56F>069K554<,?;1>=5f5e83>>o2m3:17bh7:188yg73i3:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c370085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?;6;297?6=8r.:<<499:J242=O9980(;?5219j1a<722c>i7>5;nd;>5<53;294~"6880=56F>069K554<,?;1>=5f5e83>>o2m3:17bh7:188yg73:3:1?7>50z&244<112B:<:5G1108 37=:91b9i4?::k6a?6=3fl36=44}c374?6=;3:10085=>N68>1C==<4$73965=n=m0;66g:e;29?j`?2900qo?i5;291?6=8r.:<<49f:J242=O9980(;?5169j1a<722c>i7>5;h7e>5<>{e9:l1<7;50;2x 4662?l0D<>8;I336>"1938<7d;k:188m0c=831b9k4?::k54?6=3fl36=44}c036?6==3:10085b>N68>1C==<4$73952=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi>=k50;794?6|,8::6;h4H024?M77:2.==7;<;h7g>5<>o183:17bh7:188yg4693:187>50z&244<0;2B:<:5G1108m0b=831b9h4?::keb?6=3fl36=44}c020085b>N68>1C==<4$73960=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi><950;794?6|,8::6;h4H024?M77:2.==7:4i4f94?=n=l0;66g:f;29?l072900ck650;9~f76?290>6=4?{%335?0a3A;;;6F>039'24<2:2c>h7>5;h7f>5<>ia03:17pl=1583>0<729q/==?56g9K551<@8:97)8>:438m0b=831b9h4?::k6b?6=3`<;6=44og:94?=zj;;>6=4::183!779380><6g:d;29?l3b2900e8h50;9j25<722em47>5;|`14<<72<0;6=u+11392c=O99=0D<>=;%42>a=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi>=l50;794?6|,8::6;h4H024?M77:2.==75<>o183:17bh7:188yg7fj3:187>50z&244<1k2B:<:5G1108 37=:81b9i4?::k6a?6=3`?m6=44og:94?=zj83h6=4<:183!7793<27E??7:J247=#>809<6g:d;29?l3b2900ck650;9~f4gf290>6=4?{%335?0a3A;;;6F>039'24<5:2c>h7>5;h7f>5<>ia03:17pl>a683>0<729q/==?56g9K551<@8:97)8>:308m0b=831b9h4?::k6b?6=3`<;6=44og:94?=zj8n:6=4::183!77938097d;k:188m0c=831b9k4?::k54?6=3fl36=44}c3f0085b>N68>1C==<4$739=>o2l3:17d;j:188m0`=831b:=4?::me5}#99;1:k5G1158L4653-<:6>?4i4f94?=n=l0;66g:f;29?l072900ck650;9~f4cc290>6=4?{%335?0a3A;;;6F>039'24<202c>h7>5;h7f>5<>ia03:17pl>ed83>6<729q/==?5689K551<@8:97)8>:0c8m0b=831b9h4?::me5}#99;1:k5G1158L4653-<:6>h4i4f94?=n=l0;66g:f;29?l072900ck650;9~f4`f290>6=4?{%335?0a3A;;;6F>039'24<5n2c>h7>5;h7f>5<>ia03:17pl>fc83>0<729q/==?56g9K551<@8:97)8>:028m0b=831b9h4?::k6b?6=3`<;6=44og:94?=zj8n<6=4::183!779380>:6g:d;29?l3b2900e8h50;9j25<722em47>5;|`2g4<72=0;6=u+11392f=O99=0D<>=;%42>4b>o2n3:17bh7:188yg7e;3:187>50z&244<3i2B:<:5G1108m7c=831b?:4?::keb?6=3fln6=44}c3a0?6=<3:10087e>N68>1C==<4i3g94?=n;>0;66gif;29?j`b2900qo?m6;290?6=8r.:<<4;a:J242=O9980e?k50;9j72<722cmj7>5;ndf>5<54;294~"6880?m6F>069K554>oan3:17bhj:188yg7>:3:187>50z&244<3i2B:<:5G1108 37=82c9i7>5;h14>5<>{e0h0;6?4?:1y'557=>11C==94H021?!062880e8j50;9lb=<722wi4n4?:383>5}#99;1:55G1158L4653-<:6<<4i4f94?=hn10;66sm8d83>7<729q/==?5699K551<@8:97)8>:008m0b=831dj54?::a=5<72;0;6=u+11392==O99=0D<>=;%42>44>{e1;0;6?4?:1y'557=>11C==94H021?!062880e8j50;9lb=<722wi594?:383>5}#99;1:55G1158L4653-<:6<<4i4f94?=hn10;66sm9783>7<729q/==?5699K551<@8:97)8>:008m0b=831dj54?::a==<72;0;6=u+11392==O99=0D<>=;%42>44>{e1h0;6?4?:1y'557=>11C==94H021?!062880e8j50;9lb=<722wi;;4?:383>5}#99;1:55G1158L4653-<:6<<4i4f94?=hn10;66sm7983>7<729q/==?5699K551<@8:97)8>:008m0b=831dj54?::a3d<72;0;6=u+11392==O99=0D<>=;%42>44>{e?j0;6?4?:1y'557=>11C==94H021?!062880e8j50;9lb=<722wi;h4?:383>5}#99;1:55G1158L4653-<:6<<4i4f94?=hn10;66sm8183>7<729q/==?5699K551<@8:97)8>:008m0b=831dj54?::a<7<72;0;6=u+11392==O99=0D<>=;%42>44>{e0=0;6?4?:1y'557=>11C==94H021?!062880e8j50;9lb=<722wi4;4?:383>5}#99;1:55G1158L4653-<:6<<4i4f94?=hn10;66sm8983>7<729q/==?5699K551<@8:97)8>:008m0b=831dj54?::aed<72;0;6=u+11392==O99=0D<>=;%42>44>{e9:o1<7;50;2x 4662?l0D<>8;I336>"193>27d;k:188m0c=831b9k4?::k54?6=3fl36=44}c027?6==3:10085b>N68>1C==<4$73904=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi>;h7g>5<>o183:17bh7:188yg47n3:197>50z&244<1n2B:<:5G1108 37=;:1b9i4?::k6a?6=3`?m6=44i7294?=hn10;66sm1`094?2=83:p(<>>:7a8L4603A;;>6*91;3e?l3c2900e8k50;9j1c<722em47>5;|`2e5<72<0;6=u+11392c=O99=0D<>=;%42>01>o2n3:17d8?:188kc>=831vn5<7s-;;=78l;I333>N68;1/:<4>:7d8L4603A;;>6*91;6`?l3c2900e8k50;9j1c<722c=<7>5;nd;>5<55;294~"6880=j6F>069K554<,?;18<5f5e83>>o2m3:17d;i:188m36=831dj54?::a5c4=83?1<7>t$022>3`<@8:<7E??2:&55?263`?o6=44i4g94?=n=o0;66g90;29?j`?2900qo?k0;291?6=8r.:<<49f:J242=O9980(;?5339j1a<722c>i7>5;h7e>5<>{e9h21<7;50;2x 4662?l0D<>8;I336>"193897d;k:188m0c=831b9k4?::k54?6=3fl36=44}c3a0085b>N68>1C==<4$739<>o2l3:17d;j:188m0`=831b:=4?::me4?:483>5}#99;1:k5G1158L4653-<:6?:4i4f94?=n=l0;66g:f;29?l072900ck650;9~f4ec290>6=4?{%335?0a3A;;;6F>039'24<4n2c>h7>5;h7f>5<>ia03:17pl>d583>0<729q/==?56g9K551<@8:97)8>:368m0b=831b9h4?::k6b?6=3`<;6=44og:94?=zj8n26=4::183!779380?<6g:d;29?l3b2900e8h50;9j25<722em47>5;|`2`3<72<0;6=u+11392c=O99=0D<>=;%42>65>o2n3:17d8?:188kc>=831vn5<7s-;;=78i;I333>N68;1/:<4>3:k6`?6=3`?n6=44i4d94?=n>90;66ai8;29?xd6k?0;684?:1y'557=>o1C==94H021?!062:o0e8j50;9j1`<722c>j7>5;h43>5<5<2290;w)??1;4e?M77?2B:o2l3:17d;j:188m0`=831b:=4?::me5}#99;1:k5G1158L4653-<:6<=4i4f94?=n=l0;66g:f;29?l072900ck650;9~f4ef290>6=4?{%335?0a3A;;;6F>039'24<512c>h7>5;h7f>5<>ia03:17pl>9e83>6<729q/==?5689K551<@8:97)8>:2a8m0b=831b9h4?::me5}#99;1:n5G1158L4653-<:6>o4i4f94?=n=l0;66g:f;29?j`?2900qo?j4;297?6=8r.:<<499:J242=O9980(;?5f:k6`?6=3`?n6=44og:94?=zj;:=6=4;:183!779380:n6g:d;29?l3b2900e8h50;9lb=<722wi=n750;794?6|,8::6;h4H024?M77:2.==7=4i4f94?=n=l0;66g:f;29?l072900ck650;9~f4b?290>6=4?{%335?0a3A;;;6F>039'24<33`?o6=44i4g94?=n=o0;66g90;29?j`?2900qo?l7;290?6=8r.:<<49c:J242=O9980(;?5389j1a<722c>i7>5;h7e>5<5<4290;w)??1;4:?M77?2B:o2l3:17d;j:188kc>=831vn5<7s-;;=78i;I333>N68;1/:<4m;h7g>5<>o183:17bh7:188yg7el3:187>50z&244<1k2B:<:5G1108 37=80>7d;k:188m0c=831b9k4?::k54?6=3fl36=44}c3ae?6==3:10085b>N68>1C==<4$73966=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi=h=50;694?6|,8::6;m4H024?M77:2.==7?i;h7g>5<>ia03:17pl=1`83>1<729q/==?5729K551<@8:97d;k:188m0c=831bjk4?::me5}#99;1:k5G1158L4653-<:6:5f5e83>>o2m3:17d;i:188m36=831dj54?::a64e=83?1<7>t$022>3`<@8:<7E??2:&55?703`?o6=44i4g94?=n=o0;66g90;29?j`?2900qo?67;291?6=8r.:<<49f:J242=O9980(;?5189j1a<722c>i7>5;h7e>5<>{e90<1<7;50;2x 4662?l0D<>8;I336>"193>37d;k:188m0c=831b9k4?::k54?6=3fl36=44}c3`f?6==3:10085b>N68>1C==<4$7390a=n=m0;66g:e;29?l3a2900e;>50;9lb=<722wi=4:50;794?6|,8::6;h4H024?M77:2.==7<=;h7g>5<>o183:17bh7:188yg7a<3:197>50z&244<1n2B:<:5G1108 37=:11b9i4?::k6a?6=3`?m6=44i7294?=hn10;66sm13c94?5=83:p(<>>:558L4603A;;>6g=e;29?l502900ckk50;9~f44?29086=4?{%335?203A;;;6F>039j6`<722c8;7>5;ndf>5<0;694?:1y'557=?:1C==94H021?l3c2900e8k50;9jbc<722em47>5;|`2b=<72=0;6=u+11392f=O99=0D<>=;%42>d=n=m0;66g:e;29?l3a2900ck650;9~f4`>290>6=4?{%335?0a3A;;;6F>039'24<6k2c>h7>5;h7f>5<>ia03:17pl>dd83>1<729q/==?5729K551<@8:97d;k:188m0c=831bjk4?::me5}#99;1:n5G1158L4653-<:6??4i4f94?=n=l0;66g:f;29?j`?2900qo?j0;291?6=8r.:<<49f:J242=O9980(;?5399j1a<722c>i7>5;h7e>5<>{e:;:1<7850;2x 4662>:0D<>8;I336>"193i0e8j50;9j1`<722c>j7>5;h43>5<>{e9021<7:50;2x 4662?k0D<>8;I336>"193l0e8j50;9j1`<722e=:7>5;nd;>5<7>56;294~"6880<<6F>069K554<,?;1:6g:d;29?l3b2900e8h50;9j25<722e=:7>5;nd;>5<54;294~"6880=m6F>069K554<,?;1?n5f5e83>>o2m3:17b89:188kc>=831vn<=m:185>5<7s-;;=79?;I333>N68;1/:<4;f:k6`?6=3`?n6=44i4d94?=n>90;66a96;29?j`?2900qo<>0;291?6=8r.:<<481:J242=O9980(;?5149j1a<722c>i7>5;h7e>5<>{e:9i1<7850;2x 4662>:0D<>8;I336>"193>>7d;k:188m0c=831b9k4?::k54?6=3f<=6=44og:94?=zj8k=6=4<:183!7793809<6g:d;29?l3b2900c;850;9~f4?f290=6=4?{%335?173A;;;6F>039'24<63`?o6=44i4g94?=n=o0;66g90;29?j012900ck650;9~f4?e290=6=4?{%335?173A;;;6F>039'24<63`?o6=44i4g94?=n=o0;66g90;29?j012900ck650;9~f4ce290?6=4?{%335?0f3A;;;6F>039'24<6:2c>h7>5;h7f>5<>{e9ji1<7;50;2x 4662>;0D<>8;I336>"1939:7d;k:188m0c=831b9k4?::k54?6=3f<=6=44}c3g1?6=<3:10085a>N68>1C==<4$73975=n=m0;66g:e;29?l3a2900c;850;9~f4e?290>6=4?{%335?163A;;;6F>039'24<3<2c>h7>5;h7f>5<>i1>3:17pl>e783>0<729q/==?5709K551<@8:97)8>:5g8m0b=831b9h4?::k6b?6=3`<;6=44o7494?=zj;;n6=4::183!7793=:7E??7:J247=#>809>6g:d;29?l3b2900e8h50;9j25<722e=:7>5;|`27f<72?0;6=u+113935=O99=0D<>=;%42>4c>o2n3:17d8?:188k30=831dj54?::a5d5=83<1<7>t$022>26<@8:<7E??2:&55?453`?o6=44i4g94?=n=o0;66g90;29?j012900ck650;9~f4?a290=6=4?{%335?173A;;;6F>039'24<682c>h7>5;h7f>5<>i1>3:17bh7:188yg7d:3:197>50z&244<092B:<:5G1108 37=<91b9i4?::k6a?6=3`?m6=44i7294?=h>?0;66sm1`;94?2=83:p(<>>:7g8L4603A;;>6*91;02?l3c2900e8k50;9j1c<722e=:7>5;|`2e4<72?0;6=u+113935=O99=0D<>=;%42>0>>o2n3:17d8?:188k30=831dj54?::a5f2=83<1<7>t$022>26<@8:<7E??2:&55?333`?o6=44i4g94?=n=o0;66g90;29?j012900ck650;9~f76f290>6=4?{%335?163A;;;6F>039'24<5k2c>h7>5;h7f>5<>i1>3:17pl>e383>6<729q/==?56c9K551<@8:97)8>:328m0b=831b9h4?::m52?6=3th:j;4?:483>5}#99;1;<5G1158L4653-<:6?o4i4f94?=n=l0;66g:f;29?l072900c;850;9~f4?b290=6=4?{%335?173A;;;6F>039'24<23`?o6=44i4g94?=n=o0;66g90;29?j012900ck650;9~f4`7290>6=4?{%335?163A;;;6F>039'2490;66a96;29?j`?2900qo?j5;291?6=8r.:<<481:J242=O9980(;?5429j1a<722c>i7>5;h7e>5<>{e9:n1<7;50;2x 4662?n0D<>8;I336>"193k0e8j50;9j1`<722c>j7>5;n45>5<5<2290;w)??1;4g?M77?2B:o2l3:17d;j:188m0`=831d:;4?::me5}#99;1;<5G1158L4653-<:6984i4f94?=n=l0;66g:f;29?l072900c;850;9~f4d>290>6=4?{%335?163A;;;6F>039'24<2=2c>h7>5;h7f>5<>i1>3:17pl>c483>0<729q/==?5709K551<@8:97)8>:348m0b=831b9h4?::k6b?6=3`<;6=44o7494?=zj8l86=4<:183!779380m7d;k:188m0c=831d:;4?::p31<72:q6;94i8:?;=?5334k36>:4}r56>5<4s4=>6k64=65971=:1o0886s|7783>6}:??0m46385;de?8?b2??0q~98:1808102o201:75359>e5<4<2wx;54?:2y>3=33c><5>h1?952a0800>{t?h0;6>u27`8e<>;013lm70o?:778yv1e2908w09m:g:892b=;=16m?4<4:p3f<72:q6;n4i8:?4f?`a34k:6;;4}r5g>5<4s4=o6k64=6d971=:i:0886s|7d83>6}:?l0m4638d;de?8g52??0q~9i:18081a2o2015?5359>e1<4<2wx4=4?:2y><533c><5191?952a4800>{t0;0;6>u2838e<>;?93lm70o;:778yv>42908w06<:g:89=3=;=16m;4<4:p<1<72:q6494i8:?;7?`a34k>6;;4}r:6>5<4s42>6k64=95971=:i>0886s|8783>6}:0?0m46375;de?8g12??0q~68:1818>02o201l75359~w=>=839p1565f99><262<5hh1?95rs9c94?5|51k1j552888eb>;f03<>7p}7b;297~;?j3l3706k:2689de=;=1v5m50;1x9=e=n1164o4if:?bf?023ty3h7>53z?;`?`?342m6>:4=`f971=z{1o1<7=t=9g9b==:0m0mj63nc;46?xu?n3:1?v37f;d;?8?62:>01lk5359~w<6=839p14>5f99>62<5hl1?95rs8094?5|5081j552908eb>;fm3<>7p}63;297~;>;3l3707::2689g6=;=1v4:50;1x9<2=n1165>4if:?bb?023ty297>53z?:1?`?343<6>:4=c3971=z{0<1<7=t=849b==:1<0mj63m0;46?xu>?3:1?v367;d;?8?>2:>01o<5359~w<>=839p1465f99>=262<50o1?95rs8c94?5|50k1j552988eb>;e:3<>7p}6b;297~;0<3lm707k:77897:4c8922=;=165i4<4:?;=?5e342i6>l4=9f97g=:0o08n6361;1a?8?42:h014;53c9>=2<4j27257=m;<56>6d<5>=1?o527880f>;0j39i709k:2`892`=;k164<46>l4=9597g=z{k>1<7?:{<35o7;j;<36e?3b34;>47;j;<362?3b34;>87;j;<366?3b34;><7;j;<37a?3b34;?o7;j;<37e?3b34;?47;j;<372?3b34;?87;j;<376?3b34;?<7;j;<30f?`?3tyi97>52z?24<5ag==l16=>j5f99~wg>=838p1v3>d`854>;6lk0=:6s|bc83>7}:9kn1j5521ca925=z{ki1<7c><58h268h4}r`g>5<1s4;j47h7;<3:0?3c34;jn7;i;<3g5?3a34;8o78?;<3`1?3b3tyii7>52z?2a664g==m1vn>50;0x977d2o201??n:4g8yve62909w0?67;d;?87>>3?m7p}l2;296~;6n=0m463>f286a>{tk:0;6;u21gc91c=:9l;1j5521dd91`=:9jn19i521e;91a=::8o19h5rsb694?4|58l36k64=0d4>0b6=4={<3e=?`?34;m;7;j;|q`2?6=:r7:hk4i8:?2``<2l2wxo:4?:3y>5`6=n116=ik55d9~wf>=838p1?03<=70?k4;7f?xudi3:1>v3>d3852>;6mm0>h6s|cc83>7}::8<1:;52206925=z{ji1<730<58<=68k4}rag>5<5s48;o789;<027?3a3tyhi7>57z?14c<2l27:5;4:d:?27c<1827:h>490:?2`1<18279<94:e:?2=`5?16=4m55e9~wa6=838p1<7m:74894dd2:18187bj3<=70?jc;43?xuc:3:1>v3>3b852>;6mo0=<6s|d283>7}:9h91:;521g7925=z{m>1<730<5;:96;>4}rf6>5<5s4;j=789;<3a52z?2g1<1>27:hi4:f:p`2<72;q6=4k5679>56c=>91vi650;0x94db2?<01:728yvb>2909w0?d286b>{tlk0;6:u212g91c=:90<19h5212d91c=::8h1:=522049b==::9k1:=521e`91c=z{mi1<7c><58ni6;>4}rfg>5<1s48;i7;k;<30a?3c34;2;7;j;<3f5?3a34;j?7h7;<3b0?3a3tyoi7>52z?2`2<2l27:h?4i8:p`c<72:q6><75f99>642==o16>p1??7:72894e12?:01<=m:4g8945d2o20q~k>:18184703<;70?n6;45?xub:3:1?v3>f48e<>;5910>j63>fc86b>{tm:0;6?u212g9b==:9:h19k5rsd694?4|589m6k64=01a>366=4={<02`?3b348:i789;|qf2?6=:r7:m?4i8:?2f=<2m2wxi:4?:5y>65`==o16=i:55g9>652==m16=l:5f99~w`>=838p1v3>c28e<>;6m00=<6s|ec83>7}:9o819k521b69b==z{li1<70`<58i>6;84}rgg>5<5s4;h:7h7;<3g4?3b3tyni7>52z?2e=<1827:m4496:pac<72;q6=l?5f99>5g?=>91vk>50;0x94b42o201c586`>{tn:0;6:u22039b==:9l319h52201925=::8n1:=521ef925=:9o81:=521e2925=z{o>1<70c<58o96;84}rd6>5<5s4;n=78?;<3e2?013tym:7>52z?2gd<1827:n4496:p55c=83>p1<<<:gg895d?==m1vf2248ea>;0>3?o70?n8;7e?87>i3?m7p}>1183>1}:9;<1jh521`c91a=:?10>h63>9`86`>{t98;1<7?6{<313?`b348;>7;k;<3f0c<58o?68j4=0;7>0`<58l?68h4=0d4>c`<58nm68h4=0g3>0`<58ki68j4=0g`>0`<58oj68h4=0f1>0`<58ih68h4=01`>0b<58k:6;>4=0g1>0c<58l=6;>4=0d3>0`<589o68j4=0fa>0b52z?26=2`8ea>;6i90=<63>ec86a>{t9891<7?8{<31f?`b348:;7;i;<030`<58l368k4=0d:>0b<58nn6kh4=0g;>0c<58li68j4=0c3>0c<58oj68k4=33a>0b<58n968k4=333>0b<58oi68j4=0f6>0`<58k:68k4=0d5>0c<58o>68h4=0d0>0b5dz?26f57b=nl16=k;55d9>65c==l164?4:d:?2e7<2n279=l4if:?150<2l27:m=4:d:?2fd<2m279==4:e:?2b3<2l2wx=<850;4x944b2oo01?>=:4g89=2==m16=l<55d9>5gg==m16=l=55d9~w470290jw0?=f;df?846?3?n70128;292~;6;90mi63=0386b>;?03?o70?n2;7g?87f;3?o70?m9;7g?xu69k0;69u21239b`=:9hk19k528b86`>;61k0>i6s|10c94?3|58996kk4=0d6>0`<5;:n68h4=`c91a=:9l;19i5rs03`>5<3s4;8?7hj;<3be?07342n68j4=0;a>0b511y>562=nl16>=755g9>=5<2l279<;4:f:?2g<<2n27:h54:f:?15f<2m27:oo4:d:?2fc<2m27:ni4:e:?2fd<2n279>=490:?153<2l27:m;4:d:?2e<<2m27:m94:d:p54c=83;9w0?<5;df?846?3<;70f;29f~;6;?0mi63=08854>;><3?o70l3?o70?mf;7g?84583?n70?6f;7g?87f93?o7p}>2183>f}:9:=1jh5221;91`=:1?0>h63>bb86b>;6i>0=<63>b986`>;61m0>i63=2186b>;61o0>i63=0`86`>;6jl0>j63>b886a>{t9;;1<7:t=01;>cc<50219i521`591`=:90k1:=5rs001>5<3s4;857hj;<;b>0b<58k<68j4=0;b>0c52z?277<4?27:8=4i8:p517=838p1<<::25894252o20q~?;3;296~;6;008;63>458e<>{t9=?1<761<58>=6k64}r373?6=:r7:?:4<7:?20=v3>34803>;694=06f>c>52z?276<4?27:9=4i8:p507=838p1<=>:25894352o20q~?:3;296~;6:=08;63>558e<>{t961<58?=6k64}r363?6=:r7:>>4<7:?21=v3>2d803>;6=j0m46s|14f94?4|588o6>94=07f>c>j7>52z?26f<4?27::=4i8:p537=838p1<658e<>;6:h08;6s|17794?5|588<6>94=045>c><58836>94}r353?6=:r7:>;4<7:?22=l3l370?:8;7g?xu6>j0;6?u29d8e<>;6<;0>h6s|17f94?4|50l1j55217:91a=z{8c><58<=68j4}r35b?6=:r7j=7h7;<350?3c3ty:;=4?:3y>e7536==m1v<9=:1818g32o201<;j:4f8yv70;3:1>v3n5;d;?872k3?o7p}>7583>7}:i?0m463>5`86`>{t9>?1<75<5s4k36k64=077>0b52z?b=?`?34;?<7;k;|q23=<72;q6mo4i8:?217<2l2wx=:750;0x9de=n116=8>55e9~w41f2909w0ok:g:8942b2;6h6s|16f94?4|5k:1j55215:91a=z{8=n6=4={<`2>c><58>=68j4}r34b?6=:r7i>7h7;<370?3c3ty:4=4?:2y]5=6<58o;68k4=0f6>0c52z\2<4=:9ji19h5rs0:1>5<5sW;3>63>e`86`>{t9191<78583>7}Y91>01vP>849>5`3==l1v<69:181[7?>27:i54:d:p5=>=838pR<67;<3e0?3b3ty:444?:3y]5=?<58o;6;>4}r3;e?6=:rT:4l521da91`=z{82i6=4={_3;f>;6n00=<6s|19a94?4|V82h70?lc;7g?xu60m0;6?uQ19f894c22a2909wS?7f:?2b=<2l2wx=4>50;0xZ4?734;o97;k;|q2=4<72;qU=4?4=0fe>0c7>5bz?22d<2l27:?k4:d:?154=3:1ov3>948ea>;6>h0>i63=0d854>;58o0>i63=0486`>;61>0>j63>97854>;61=0=<63>9886a>;6110>h63>3c86`>;6;m0>i6s|18494?4|583>6>94=0;5>c>57z?2ff<2m27:5l4i8:?15`<1827:5k490:?14d<2n27:5h4:d:?2f`<2m2wx=4l50;5x94?d2{t9h=1<7c><58k368k4}r3be?6=:r7:ml4i8:?2e=<2l2wx=lm50;5x94b42l:4f894e323b86b>;6n90>i63>dc86a>{t9ho1<7:t^0cf?87e;3ln70?l6;7g?87d=3?o7p}>ag83>6}Y9hl015f5==m16=n<55e9~w4d52908wS?m2:?2f3p1d086a>;6nk0=<63>c986a>;6m?0>h6s|1cg94?g|58lj68k4=0a0>0c<58nj68j4=0a5>0`<58o868h4=0a;>0`<58o=6;>4=0a1>0c<58l;68j4=0`f>c>52z?2ag:g:894e?2i63>c68e<>{t9j21<736<58i36;84}r3`=?6=:r7:o44i8:?2`6<2l2wx=no50;1x94ef2o2010=<63>cb852>{t9jn1<7c`<58io6k64}r3`a?6=;r79e886`>;6l90>h63>c5854>{t9m?1<736<58n>6;84}r3g2?6=:r7:h:4:f:?2`3v3>d98e<>;6l=0>h6s|1e;94?4|58h?6kh4=0f:>c>52z?2`de786b>{t9l>1<7c><58o=68k4}r3f2?6=:r7:h44:f:?2a3<1>2wx=h950;0x94d22:=01v3>e98e<>;6mm0>i6s|1dc94?4|58oo68h4=0gb>c>52z?2afeg86`>{t9ll1<7=t=0ge>c><58i868h4=0a1>3652z?2b7<2m27:j=496:p5c7=838p1h63>f2852>{t9o=1<736<58l<6k64}r3ee?6=:r7:jl4i8:?2f3fb9>5c`=nl16><=55e9~w4`b2908wS?ie:?145=:g:897632?:01?>l:4g8yv47;3:18v3>9b8e<>;6kh0>j63=1986a>;6j10=<6s|21694?4|5;:?6k64=330>0c52z?14g<2m279<;4i8:p651=838p1?>7:g:897722{t:9k1<736<5;:j6;84}r03f?6=:r79=m50;0x977c2l:g:8yv47l3:1>v3=0d8e<>;5980>i6s|21g94?4|5;;:68j4=32e>c>52z?150<2m279==496:p644=838p14;296~;59=0m463=14854>{t:8?1<7c><5;:h6;>4}r023?6=:r79=:4i8:?15f<2n2wx><650;0x977?2o201v3=1`8e<>;58=0>j6s|20f94?4|5;:;6>94=33g>c>52z?165>4=e:?261<5m27:?<4=e:?276<5m27:?94=e:?270<5m27:?;4=e:?272<5m27:?54=e:?27<<5m27:>84=e:?263<5m27:>:4=e:?26<<5m27:>o4=e:?26f<5m27:>i4=e:?26`<5m27:>k4=e:?275<5m27:??4=e:?145<5m27:584=e:?2f6<5m27:n94=e:?2f3<5m27:jk4=e:?2=7<5m27:>l4=e:?26=<5m2wx>?<50;1xZ74534;m878?;<3g6?3c3twe85850;3xL4653td?4:4?:0yK554347>51zJ247=zf=226=4>{I336>{i<1k1<7?tH021?xh30k0;6039~j1>c290:wE??2:m0=c=83;pD<>=;|l75<6sA;;>6sa48094?7|@8:97p`;9283>4}O9980qc:64;295~N68;1vb97::182M77:2we84850;3xL4653td?5:4?:0yK554247>51zJ247=zf=326=4>{I336>{i<0k1<7?tH021?xh31k0;6k3:1=vF>039~j1?c290:wE??2:m0=;|l7=c<728qC==<4}o6b4?6=9rB:5<6sA;;>6sa4`094?7|@8:97p`;a283>4}O9980qc:n4;295~N68;1vb9o::182M77:2we8l850;3xL4653td?m:4?:0yK554j47>51zJ247=zf=k26=4>{I336>{i039~j1gc290:wE??2:m0dc=83;pD<>=;|l7ec<728qC==<4}o6a4?6=9rB:5<6sA;;>6sa4c094?7|@8:97p`;b283>4}O9980qc:m4;295~N68;1vb9l::182M77:2we8o850;3xL4653td?n:4?:0yK554i47>51zJ247=zf=h26=4>{I336>{i039~j1dc290:wE??2:m0gc=83;pD<>=;|l7fc<728qC==<4}o6`4?6=9rB:5<6sA;;>6sa4b094?7|@8:97p`;c283>4}O9980qc:l4;295~N68;1vb9m::182M77:2we8n850;3xL4653td?o:4?:0yK554h47>51zJ247=zf=i26=4>{I336>{i039~j1ec290:wE??2:m0fc=83;pD<>=;|l7gc<728qC==<4}o6g4?6=9rB:5<6sA;;>6sa4e094?7|@8:97p`;d283>4}O9980qc:k4;295~N68;1vb9j::182M77:2we8i850;3xL4653td?h:4?:0yK554o47>51zJ247=zf=n26=4>{I336>{i039~j1bc290:wE??2:m0ac=83;pD<>=;|l7`c<728qC==<4}o6f4?6=9rB:5<6sA;;>6sa4d094?7|@8:97p`;e283>4}O9980qc:j4;295~N68;1vb9k::182M77:2we8h850;3xL4653td?i:4?:0yK554n47>51zJ247=zf=o26=4>{I336>{i039~j1cc290:wE??2:m0`c=83;pD<>=;|l7ac<728qC==<4}o6e4?6=9rB:5<6sA;;>6sa4g094?7|@8:97p`;f283>4}O9980qc:i4;295~N68;1vb9h::182M77:2we8k850;3xL4653td?j:4?:0yK554m47>51zJ247=zf=l26=4>{I336>{i039~j1`c290:wE??2:m0cc=83;pD<>=;|l7bc<728qC==<4}o734?6=9rB:5<6sA;;>6sa51094?7|@8:97p`:0283>4}O9980qc;?4;295~N68;1vb8>::182M77:2we9=850;3xL4653td><:4?:0yK55451zJ247=zf<:26=4>{I336>{i=9k1<7?tH021?xh28k0;6039~j06c290:wE??2:m15c=83;pD<>=;|l64c<728qC==<4}o724?6=9rB:5<6sA;;>6sa50094?7|@8:97p`:1283>4}O9980qc;>4;295~N68;1vb8?::182M77:2we9<850;3xL4653td>=:4?:0yK55451zJ247=zf<;26=4>{I336>{i=8k1<7?tH021?xh29k0;6039~j07c290:wE??2:m14c=83;pD<>=;|l65c<728qC==<4}o714?6=9rB:5<6sA;;>6sa53094?7|@8:97p`:2283>4}O9980qc;=4;295~N68;1vb8<::182M77:2we9?850;3xL4653td>>:4?:0yK55451zJ247=zf<826=4>{I336>{i=;k1<7?tH021?xh2:k0;6039~j04c290:wE??2:m17c=83;pD<>=;|l66c<728qC==<4}o704?6=9rB:5<6sA;;>6sa52094?7|@8:97p`:3283>4}O9980qc;<4;295~N68;1vb8=::182M77:2we9>850;3xL4653td>?:4?:0yK55451zJ247=zf<926=4>{I336>{i=:k1<7?tH021?xh2;k0;6039~j05c290:wE??2:m16c=83;pD<>=;|l67c<728qC==<4}o774?6=9rB:5<6sA;;>6sa55094?7|@8:97p`:4283>4}O9980qc;;4;295~N68;1vb8:::182M77:2we99850;3xL4653td>8:4?:0yK55451zJ247=zf<>26=4>{I336>{i==k1<7?tH021?xh2039~j02c290:wE??2:m11c=83;pD<>=;|l60c<728qC==<4}o764?6=9rB:5<6sA;;>6sa54094?7|@8:97p`:5283>4}O9980qc;:4;295~N68;1vb8;::182M77:2we98850;3xL4653td>9:4?:0yK55447>51zJ247=zf{I336>{i=039~j03c290:wE??2:m10c=83;pD<>=;|l61c<728qC==<4}o754?6=9rB:5<6sA;;>6sa57094?7|@8:97p`:6283>4}O9980qc;94;295~N68;1vb88::182M77:2we9;850;3xL4653td>::4?:0yK55451zJ247=zf<<26=4>{I336>{i=?k1<7?tH021?xh2>k0;6039~j00c290:wE??2:m13c=83;pD<>=;|l62c<728qC==<4}o744?6=9rB:5<6sA;;>6sa56094?7|@8:97p`:7283>4}O9980qc;84;295~N68;1vb89::182M77:2we9:850;3xL4653td>;:4?:0yK55451zJ247=zf<=26=4>{I336>{i=>k1<7?tH021?xh2?k0;6039~j01c290:wE??2:m12c=83;pD<>=;|l63c<728qC==<4}o7;4?6=9rB:5<6sA;;>6sa59094?7|@8:97p`:8283>4}O9980qc;74;295~N68;1vb86::182M77:2we95850;3xL4653td>4:4?:0yK55451zJ247=zf<226=4>{I336>{i=1k1<7?tH021?xh20k0;6039~j0>c290:wE??2:m1=c=83;pD<>=;|l65<6sA;;>6sr}|BCG~0>m38nn?ok6eCDG}7uIJ[wpNO -------------------------------------------------------------------------------- /ECG.xise: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | 373 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 419 | 420 | 421 | 422 | 423 | 424 | 425 |
426 | -------------------------------------------------------------------------------- /ADC_Driver.ngc: -------------------------------------------------------------------------------- 1 | XILINX-XDB 0.1 STUB 0.1 ASCII 2 | XILINX-XDM V1.6e 3 | $3721=789;?7=>705934C1539;97=<;;16341=7<;;97=6>;0685566<2;?98?425916C46=2836B[[PTV9RdYQj58<6=0>;56805E7<2>:>=:440A00>33=<>098:>4:7600723<0BB][[:vcjpQojm5>1<3?4659565633?<;>?59A595EDG63>80;K:47GGG6>>7<22;<=<48368<726<222<<<48D38=1=>89:?74LKF59B67G53H2?7L6?059B@CZL90JI]=;GG7?CC2==1MJ=<;;GD141=AN1:?7KHIB59EBCC23Okgh?4G29DJA7OI^:1BCO<4LH08HJ1KflmUTmij?012\g|:687;<7@okd^]b`a6789Uhu1??>^pw51=JimnTSljk0123[f;984:;6Cnde]\eab789:Tot2>1?]qp42^pw56=JimnTSljk0123[f;;7;=7@okd^]b`a6789Uhu1=1_sv27>KflmUTmij?012\g|:368<0Aljk_^cg`5678Vir090Pru30?HgclVUjhi>?01]`}9399?1FmijP_`fg4567Wjs793Q}t018IdbcWVkoh=>?0^az8386>2GjhiQPaef3456Xkp6=2R|{129NeabXWhno<=>?_b{?3;713DkohRQnde2345Ydq5=5Sz>3:Ob`aYXimn;<=>Pcx>;:40?0^zlv9699<1FmijP_`fg4567Wqey0<>1149NeabXWhno<=>?_ymq84799<1FmijP_`fg4567Wqey0<<1149NeabXWhno<=>?_ymq8459911FmijP_`fg4567Wqey0<=1_sv20>KflmUTmij?012\|jt;97;?7@okd^]b`a6789Usc2=>068IdbcWVkoh=>?0^zlv9599=1FmijP_`fg4567Wqey090>4:Ob`aYXimn;<=>Pxnp?1;733DkohRQnde2345Yg{6=2<:4M`fg[Zgcl9:;?00]`}9699=1FmijP_`fg4566Wjs7==0>7:Ob`aYXimn;<=?Pcx>24;Yu|8>0Aljk_^cg`5679Vir0>_b{?548Xz};?7@okd^]b`a6788Uhu1?=>058IdbcWVkoh=>?1^az8449W{~:?6Cnde]\eab789;Tot2>>048IdbcWVkoh=>?1^az848Xz};87@okd^]b`a6788Uhu1<1179NeabXWhno<=>>_b{?6;Yu|890Aljk_^cg`5679Vir0>0>6:Ob`aYXimn;<=?Pcx>0:Zts9:1FmijP_`fg4566Wjs783?9;Lcg`ZYflm:;<2<84M`fg[Zgcl9:;=Rmv<4<\vq743DkohRQnde2344Ydq5<5=;5Baef\[dbc89::Snw36?]qp454::6Cnde]\eab789;Tot28>^pw56=JimnTSljk0122[f;07;=7@okd^]b`a6788Uhu161_sv27>KflmUTmij?013\g|:>68<0Aljk_^cg`5679Vir040Pru37?HgclVUjhi>?00]oqq:768k0Aljk_^cg`5679Vf~x1>1_HLU[5733DkohRQnde2344Yg{6;2<;4M`fg[Zgcl9:;=Rv`r=33:43?00]{kw:368>0Aljk_^cg`5679Vrd~1;1159NeabXWhno<=>>_ymq8386<2GjhiQPaef3457Xpfx7;3?;;Lcg`ZYflm:;<;:42;LalqkrXkfexh|Palr\wqgu|Vir0<0Pru3f?Heh}g~Tob{atdp\ehvX{}kyxRmv<3<15>Kdg|dSnaznugq[dkwWz~j~yQly=0=[wr6m2Ghcx`{_bmvjqcuWhg{S~znru]`}959:81Fob{at^alqkrbzVkf|R}{asv\g|:46Vx=h5BcnwmpZeh}g~n~Robp^qwewrXkp6?2??4MbmvjqYdg|diQnmq]ppdtsWjs783Q}t0g8Ifirf}Uhcx`{es]biuYt|hxSnw35?02?Heh}g~Tob{atdp\ehvX{}kyxRmv<4<\vq7b3DidyczPcnwmp`tXidzTyo}t^az838592Ghcx`{_bmvjqcuWhg{S~znru]`}909W{~:j6Clotlw[firf}oySlc_rvbvqYk}}6;2?;4MbmvjqYdg|diQnmq]ppdtsWe0=0PIOT\44`f:O`kphsWje~byk}_`os[vrfz}Usc2:>0d8Ifirf}Uhcx`{es]biuYt|hxSua}<7<2b>Kdg|dSnaznugq[dkwWz~j~yQwos>4:740B<:>3:L226=I9>90B<7<;O037>H59:1E>?=4N347?K419:1E>5=4N227?K579:1E??=4N260?K51;2D8;>5A3918J6?43G>;?6@;129M075HB\^EYG<5@1:R`?U(5889:<<=PL59SEWRf3YCESO[\IEZa?UOIWK_XBLCJ1:S2?W?`9Qavsk|5:5=45]erwop979i2Xnxb{<0<2=>Tb{|f0?0n;Sgpqir;:7;27_k|umv?7;g0;8V`urd}6?245]erwop93912Xnxb{<7<:?Wct}e~7;3?4S79PKPTDM11X\DQBORK24>UWAVGD_DQnne2345773ZZBS@A\I^ov|5678880_]GPMNQJ[hs89:;>4?9;RRJ[HITAVg~t=>?053\WR66:2Y[ERC@SH]nq}6789?==>5\PH]NKVOXe|r;<=>:6030?VVNWDEXERczx12340059<1X\DQBORK\ip~789:>:Rh:7:QSMZUDC=1_U]Kl;TQFVZPN[@HGI>5YCB;8RLCPW]S[I55Ya^Ta858>3_kTZo2>0?;8RdYQj5;:245Ya^Ta844912\jS[l312<:?SgX^k6:8374V`]Uf972601]mRXm<04==>PfW_h7=:06;Wc\Rg:60730ZlQYb=3::==QiV\i0<06;Wc\Rg:58730ZlQYb=02:<=QiV\i0?<19:Tb[Sd;::427[oPVc>10;?<^hU]n1<:>89UeZPe4;<5n6Xn_W`?62<7601]mRXm<35=<>PfW_h7>364V`]Uf95902\jS[l34?:8RdYQj5?546Xn_W`?2;><^hU]n1918:Tb[Sd;0720ZlQYb=;=3>PfW_hT<:5Ya^Ta[4><^hU]nR??8:Tb[SdX9820ZlQYb^31<>PfW_hT=>??;Wc\RgY6;Vddx=>?1038RdYQjV;8Sca{0122644<^hU]nR?<_omw4566:9;97[oPVc]27Zhh|9:;=?9>2:Tb[SdX9:Uecy>?0074<>PfW_hT=964V`]UfZ7202\jS[lP17:8RdYQjV;<46Xn_W`\5=><^hU]nR?67:Tb[SdX:11]mRXm_32;?SgX^kU9=55Ya^Ta[74?3_kTZoQ=399UeZPeW;>37[oPVc]11==QiV\iS?87;Wc\RgY5?>1]mRXm_258RdYQjV><7[oPVc]63>PfW_hT::5Ya^Ta[21<^hU]nR68;Wc\RgY>l2\jS[lPtdos858b3_kTZoQ{elr?558b3_kTZoQ{elr?548b3_kTZoQ{elr?578b3_kTZoQ{elr?568b3_kTZoQ{elr?518b3_kTZoQ{elr?508b3_kTZoQ{elr?538b3_kTZoQ{elr?528b3_kTZoQ{elr?5=8b3_kTZoQ{elr?5<8c3_kTZoQ{elr?5;c<^hU]nRzjmq>14;c<^hU]nRzjmq>15;c<^hU]nRzjmq>16;c<^hU]nRzjmq>17;c<^hU]nRzjmq>10;c<^hU]nRzjmq>11;c<^hU]nRzjmq>12;c<^hU]nRzjmq>13;b<^hU]nRzjmq>1:a=QiV\iSykbp=1=`>PfW_hTxhc<5e9UeZPeW}of|191d:Tb[SdX|lg{050k;Wc\RgYsmdz753m4V`]UfZrbeyU;=95Ya^Ta[qcjxV:Taxv?01221>PfW_hTxhc_1]nq}6789;:46Xn_W`\p`kwW9Ufyu>?013254703_kTZoQ{elr\4Zkrp9:;<<<>179UeZPeW}of|R>Pmtz34566;8k0ZlQYb^vfiuY7Wds<=>?12]PS4703_kTZoQ{elr\4Zkrp9:;<Pmtz34566WN;>7[oPVc]wahvX8Vg~t=>?0337?SgX^kUi`~P0^llp56798<0ZlQYb^vfiuY7Wge<=>>20a8RdYQjV~na}Q>d:Tb[SdX|lg{S<>k;Wc\RgYsmdzT=i5Ya^Ta[qcjxV;8h6Xn_W`\p`kwW8>o7[oPVc]wahvX9m1]mRXm_ugntZ70l2\jS[lPtdos[4>c3_kTZoQ{elr\5PfW_hTxhc_32g?SgX^kUi`~P20f8RdYQjV~na}Q=2e9UeZPeW}of|R<8j4V`]UfZrbeyU9:i5Ya^Ta[qcjxV8<=85Ya^Ta[qcjxV8d:ZJHLH_%QNI,= > RVVF%6)9)KXODG:;YMQG\01c:]b`a67896:<3m4_`fg456748;5o6Qnde2345:6:7i0Sljk01238459j2Ujhi>?01>2:g=Ximn;<=>32?`8[dbc89:;0>0m;^cg`56785>5n6Qnde2345:26k1Tmij?012?2;d?<6?00>25;e><00=g>Yflm:;<<2>3?`8[dbc89::0<0m;^cg`5679585n6Qnde2344:46k1Tmij?013?0;d><4eh}g~n~1>1a:alqkrbz5;5m6m`uovfv949i2idyczjr=1=e>eh}g~n~1:1a:alqkrbz5?556m`uovfvZ6>3je~byk}_0`8gjsi|lxT=R?6;bmvjqcuW;h0ob{atdp\6Z7>3je~byk}_2;8gjsi|lxT845lotlwawY2m2idyczjr^cnt969m2idyczjr^cnt979m2idyczjr^cnt949m2idyczjr^cnt959l2idyczjr^cntZ6c3je~byk}_`os[4b7naznugq[dkwWhdo<=>?1037?firf}oySlc_`lg4567:8>0ob{atdp\ehvX{}kyx1>1159`kphsm{Uja}Q|t`pw8486<2idyczjr^cntZusi{~7>3?;;bmvjqcuWhg{S~znru>0:425=95lotlwawYfeyUxxl|{<4<20>eh}g~n~Robp^qwewr;>7;?7naznugq[dkwWz~j~y28>018gjsi|lxTm`~PsucqpZ66;2idyczjr^cntZusi{~T=<=4cnwmp`tXidzTyo}t^027>eh}g~n~Robp^qwewrX;890ob{atdp\ehvX{}kyxR:>3:alqkrbzVkf|R}{asv\1454:alqkrbzVg~t=>?0=2=57733je~byk}_lw{4567494:;<64cnwmp`tXe|r;<=>30?62[VQ79j1hcx`{es]nq}67896;29?PSV2\WR6602idyczjr^ov|56785:588>0ob{atdp\ip~789:7<36;139`kphsm{Ufyu>?01>2:43<;4cnwmp`tXe|r;<=>31?3114331?37542==95lotlwawYj}q:;<=2>>5;20>eh}g~n~Rczx1234979?8;?7naznugq[hs89:;0<072008gjsi|lxTaxv?012?6;713je~byk}_lw{45674;4T_Z>>2:alqkrbzVg~t=>?0=1=56=dg|diQbuy2345:468;97naznugq[hs89:;090>4:alqkrbzVg~t=>?0=6=55733je~byk}_lw{45674=4?:<64cnwmp`tXe|r;<=>34?65[VQ79=1hcx`{es]nq}67896?2:8>2:alqkrbzVg~t=>?0=7=51=dg|diQbuy2345:268;:86m`uovfvZkrp9:;<1;11437?firf}oyS`{w012380838?1nbllce89delhKikogo6inioNbf`jHdm;?7jofnMcaaiIklVg~t=>?0078cdoiDhhn`Bbk_lw{456798>0klgaL``fhJjcWge<=>>149delhKikogCajPnnv345769>1lmd`CacgoKibXff~;<=?Pf4f8cdoi[}xbbj2?>e9delhT|{cek1?1d:ebmkUsz`dl0?0k;fcjjVruagm7?3j4g`kmWqtnfn6?2i5hahlPpwoio5?5h6inioQwvlh`4?4o7jofnRvqmka;?7i0klgaSupjjbY7k2mjec]{rhld[4eafagY~d`h_2a8cdoi[}xbbjQ;c:ebmkUsz`dlS8m4g`kmWqtnfnU=o6inioQwvlh`W>;>7jofnRvqmkaXe|r;<=>30?35?bgnfZ~yeciPmtz3456;87;:96inioQwvlh`Wds<=>?<0<22>afagY~d`h_lw{4567484:=85hahlPpwoioVg~t=>?0=0=53=`i`dXxgag^ov|5678585=<;4g`kmWqtnfnUfyu>?01>0:405:ebmkUsz`dlS`{w01238086>2mjec]{rhld[hs89:;080>149delhT|{cekRczx12349099?1lmd`\tskmcZkrp9:;<1811078cdoi[}xbbjQbuy2345:068<0klgaSupjjbYj}q:;<=28>031?bgnfZ~yeciPnnv34576;2mjec]{rhld[kis89::=<64omf\gjsi|lxT=Rmbp^gr45679k1d`iQlotlwawY6Wjg{Sh?0125547d3ffoSnaznugq[4YdeyUn}=>?073024e?601:65=hdmUhcx`{es]2[fkwWl{;<=>912;\WR6582eghRm`uovfvZ7XkdzTi|>?0142739j1d`iQlotlwawY6Wjg{Sh?01255<16k2eghRm`uovfvZ7XkdzTi|>?01410<7d3ffoSnaznugq[4YdeyUn}=>?0713776?6220[VQ79j1d`iQlotlwawY6Wjg{Sh?01257426k2eghRm`uovfvZ7XkdzTi|>?01407<7e3ffoSnaznugq[4YdeyUn}=>?07665g=hdmUhcx`{es]2[fkwWl{;<=>9493a?jjcWje~byk}_0]`iuYby9:;<;9>7:sypZekck1|mdz[ilg?4;d<hcXdcj<0FGp;o1J7<51zQ0b?7f?3lj6<=677k1qe=l;51:l2e3<13-;j87?6f:P7`<6i>0mm7?<3`035?568jh0h?k50;395~U4n3;j;7hn:010e7662:;;o55yT02g>5<6280:>:u\3g82e2<,8;i6;>4$g`9606440sA;:56*>1981a>\4038ph7?::|&6`?343f9;6=44o2694?=n:=31<75f10594?=n:o0;66a>0d83>>o58l0;66g=0g83>>i6;90;6)hk:00e?k`d2910c<;:m26a<72-lo6<7=2c83>!`c288m7chl:598k44f290/ji4>2g9mbf<232e:>44?:%dg>44a3glh6;54o00;>5<#nm0:>k5afb84?>i6:?0;6)hk:00e?k`d2110c<<::18'ba<6:o1ejn46;:m261<72-lo6<d=2383>!`c288m7chl:b98k446290/ji4>2g9mbf=4?:%dg>44a3glh6h54o03e>5<#nm0:>k5afb8e?>i69l0;6)hk:00e?k`d28:07b?>d;29 cb=9;l0bkm51098k45?290/ji4>2g9mbf<6:21d=>950;&e`?75n2dmo7?<;:m273<72-lo6<42<3f;897>5$gf957`5<#nm0:>k5afb822>=h9:91<7*id;31b>hak3;<76a>3383>!`c288m7chl:0:8?j7493:1(kj513d8jce=9010c<<8:18'ba<6:o1ejn4>a:9l54e=83.mh7?=f:leg?7e32c98k4?:%dg>72b3glh6=54i36g>5<#nm098h5afb82?>o51=:183!7603?>7E?n1:J25<=h==0;66sm1`194?7=83:p(>{e;90;694?:1y'54>=<01C=l?4H03:?l5>2900e>m50;9j05<722emi7>5;|`2gg<72=0;6=u+10:90<=O9h;0D5<>iam3:17pl>cb83>1<729q/=<65489K5d7<@8;27d=6:188m6e=831b8=4?::mea?6=3th:oh4?:583>5}#9821845G1`38L47>3`926=44i2a94?=n<90;66aie;29?xd6l90;694?:1y'54>=<01C=l?4H03:?l5>2900e>m50;9j05<722emi7>5;|`2`4<72=0;6=u+10:90<=O9h;0D5<>iam3:17pl>d383>1<729q/=<65489K5d7<@8;27d=6:188m6e=831b8=4?::mea?6=3th:;;4?:583>5}#9821845G1`38L47>3`926=44i2a94?=n<90;66aie;29?xd6k=0;6>4?:1y'54>=<11C=l?4H03:?l5>2900e9>50;9lb`<722wi><>50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e:8o1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a64`=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm23294?2=83:p(50;9lb`<722wi>??50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e:;81<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a675=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm23694?2=83:p(50;9lb`<722wi>?;50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e99o1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5=4=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm19f94?2=83:p(50;9lb`<722wi=4650;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9031<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a51<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm18`94?2=83:p(50;9lb`<722wi=4m50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e90n1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a51<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm19194?2=83:p(50;9lb`<722wi=5:50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e91?1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5=0=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm19594?2=83:p(50;9lb`<722wi=5650;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9:o1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a56d=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm12f94?2=83:p(50;9lb`<722wi=>m50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9<31<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a50>=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm14794?2=83:p(50;9lb`<722wi=8950;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9<<1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a502=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm14194?2=83:p(50;9lb`<722wi=>750;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9=k1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a56g=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm19;94?2=83:p(50;9lb`<722wi=5o50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e91h1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5=e=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm19g94?2=83:p(50;9lb`<722wi=5h50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e90:1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5<7=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm18094?2=83:p(50;9lb`<722wi=4=50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e90>1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5<3=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm14294?2=83:p(50;9lb`<722wi=8<50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9<;1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a51b=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm15d94?2=83:p(50;9lb`<722wi=9k50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9=i1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a51d=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm15594?2=83:p(50;9lb`<722wi=9750;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9=21<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a510=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm15794?2=83:p(50;9lb`<722wi=9:50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9l<1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5`1=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm1d:94?2=83:p(50;9lb`<722wi=h750;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9lk1<7:50;2x 47?2=30D;I32=>o413:17d=l:188m16=831djh4?::a5`d=83>1<7>t$03;>1?<@8k:7E?>9:k0=?6=3`9h6=44i5294?=hnl0;66sm1da94?2=83:p(50;9lb`<722wi=hj50;694?6|,8;36974H0c2?M7612c857>5;h1`>5<>{e9m=1<7;50;2x 47?2=k0D;I32=>o413:17d=l:188m16=831bjk4?::mea?6=3th:h54?:483>5}#98218l5G1`38L47>3`926=44i2a94?=n<90;66gif;29?j`b2900qo?k9;291?6=8r.:=54;a:J2e4=O9830e>750;9j7f<722c?<7>5;hde>5<5<2290;w)?>8;6b?M7f92B:=45f3883>>o4k3:17d:?:188mc`=831djh4?::a2f<72=0;6=u+10:92d=O9h;0D5<6<729q/=<651`28L4g63A;:56g1<7>t$03;>3g<@8k:7E?>9:k0`?6=3`>96=44i02`>5<>o2m3:17bh7:188yg12290?6=4?{%32189j7a<722c?>7>5;h33g?6=3fl36=44}c:f>5<4290;w)?>8;3b4>N6i81C=<74i2f94?=n=l0;66ai8;29?xd0?3:187>50z&25=<1i2B:m<5G10;8m6b=831b8?4?::k24f<722em47>5;|`;b?6=;3:11982e5=O9h;0D5<>{e?00;694?:1y'54>=>h1C=l?4H03:?l5c2900e9<50;9j55e=831dj54?::a=5<72:0;6=u+10:95d6<@8k:7E?>9:k0`?6=3`?n6=44og:94?=zj>h1<7:50;2x 47?2?k0D;I32=>o4l3:17d:=:188m46d2900ck650;9~f<7=8391<7>t$03;>4g73A;j=6F>189j7a<722c>i7>5;nd;>5<54;294~"6910=m6F>a09K54?>o68j0;66ai8;29?xd>;3:1?7>50z&25=<6i91C=l?4H03:?l5c2900e8k50;9lb=<722wi4<4?:583>5}#9821:l5G1`38L47>3`9o6=44i5094?=n99i1<75`f983>>{e1=0;6>4?:1y'54>=9h:0D;I32=>o4l3:17d;j:188kc>=831vn5=50;694?6|,8;36;o4H0c2?M7612c8h7>5;h61>5<5<7s-;:478n;I3b5>N6901b?i4?::k76?6=3`;;o7>5;nd;>5<a09K54?>ia03:17pl9f;290?6=8r.:=549a:J2e4=O9830e>j50;9j07<722c:53;294~"6910:m=5G1`38L47>3`9o6=44i4g94?=hn10;66sm7083>1<729q/=<656`9K5d7<@8;27d=k:188m14=831b==m50;9lb=<722wi4l4?:283>5}#9821=l>4H0c2?M7612c8h7>5;h7f>5<>o2m3:17bh7:188yg?1290?6=4?{%32189j7a<722c?>7>5;h33g?6=3fl36=44}c`2>5<4290;w)?>8;3b4>N6i81C=<74i2f94?=n=l0;66ai8;29?xd>l3:187>50z&25=<1i2B:m<5G10;8m6b=831b8?4?::k24f<722em47>5;|`a2?6=;3:11982e5=O9h;0D5<>{e1o0;694?:1y'54>=>h1C=l?4H03:?l5c2900e9<50;9j55e=831dj54?::af2<72:0;6=u+10:95d6<@8k:7E?>9:k0`?6=3`?n6=44og:94?=zjh;1<7:50;2x 47?2?k0D;I32=>o4l3:17d:=:188m46d2900ck650;9~fg>=8391<7>t$03;>4g73A;j=6F>189j7a<722c>i7>5;nd;>5<29086=4?{%3254;294~"6910=m6F>a09K54?>o68j0;66ai8;29?xdei3:1?7>50z&25=<6i91C=l?4H03:?l5c2900e8k50;9lb=<722wim:4?:583>5}#9821:l5G1`38L47>3`9o6=44i5094?=n99i1<75`f983>>{ejk0;6>4?:1y'54>=9h:0D;I32=>o4l3:17d;j:188kc>=831vnl750;694?6|,8;36;o4H0c2?M7612c8h7>5;h61>5<5<7s-;:478n;I3b5>N6901b?i4?::k76?6=3`;;o7>5;nd;>5<a09K54?>ia03:17plnd;290?6=8r.:=549a:J2e4=O9830e>j50;9j07<722c:53;294~"6910:m=5G1`38L47>3`9o6=44i4g94?=hn10;66sm9683>1<729q/=<656`9K5d7<@8;27d=k:188m14=831b==m50;9lb=<722win?4?:283>5}#9821=l>4H0c2?M7612c8h7>5;h7f>5<l:188kc>=831vno=50;194?6|,8;36N6901b?i4?::k6a?6=3fl36=44}c;a>5<3290;w)?>8;4b?M7f92B:=45f3e83>>o3:3:17d??c;29?j`?2900qol;:180>5<7s-;:47?n0:J2e4=O9830e>j50;9j1`<722em47>5;|`a1?6=;3:11982e5=O9h;0D5<>{ejo0;694?:1y'54>=>h1C=l?4H03:?l5c2900e9<50;9j55e=831dj54?::ag`<72:0;6=u+10:95d6<@8k:7E?>9:k0`?6=3`?n6=44og:94?=zjj:1<7:50;2x 47?2?k0D;I32=>o4l3:17d:=:188m46d2900ck650;9~ff`=8391<7>t$03;>4g73A;j=6F>189j7a<722c>i7>5;nd;>5<54;294~"6910=m6F>a09K54?>o68j0;66ai8;29?xdc93:1?7>50z&25=<6i91C=l?4H03:?l5c2900e8k50;9lb=<722wio;4?:583>5}#9821:l5G1`38L47>3`9o6=44i5094?=n99i1<75`f983>>{el;0;6>4?:1y'54>=9h:0D;I32=>o4l3:17d;j:188kc>=831vnn650;694?6|,8;36;o4H0c2?M7612c8h7>5;h61>5<5<7s-;:478n;I3b5>N6901b?i4?::k76?6=3`;;o7>5;nd;>5<a09K54?>ia03:17plk5;297?6=8r.:=54>a19K5d7<@8;27d=k:188m0c=831dj54?::a663=8391<7>t$03;>34<@8k:7E?>9:&6f?c>ia03:17pl=1383>6<729q/=<65639K5d7<@8;27);m:368m01=831b954?::me53;294~"6910=>6F>a09K54?<,>o203:17bh7:188yg44;3:187>50z&25=<1=2B:m<5G10;8 0d=::1b9:4?::k67E?n1:J25<=#=k09<6g:7;29?l3?2900e8750;9lb=<722wi>?h50;694?6|,8;36;;4H0c2?M7612.>n75<>ia03:17pl=2e83>1<729q/=<65649K5d7<@8;27);m:318m01=831b954?::k6=?6=3fl36=44}c01f?6=<3:119851>N6i81C=<74$4`966=n=>0;66g:8;29?l3>2900ck650;9~f74>290?6=4?{%32189'1g<582c>;7>5;h7;>5<>{e:;=1<7:50;2x 47?2??0D;I32=>"2j38;7d;8:188m0>=831b944?::me54;294~"6910=96F>a09K54?<,>o203:17d;6:188kc>=831vnio50;794?6|,8;36;94H0c2?M7612.>n7?n;h74>5<>o2i3:17bh7:188yg44?3:187>50z&25=<1=2B:m<5G10;8 0d=?2c>;7>5;h7;>5<>{e9ll1<7:50;2x 47?2??0D;I32=>"2j3>0e8950;9j1=<722c>57>5;nd;>5<55;294~"6910=;6F>a09K54?<,5;|`2`f<72=0;6=u+10:920=O9h;0D1=n=>0;66g:8;29?l3>2900ck650;9~f4?0290?6=4?{%32189'1g<502c>;7>5;h7;>5<>{e91;1<7;50;2x 47?2?=0D;I32=>"2j3;0e8950;9j1=<722c>57>5;h7b>5<5<2290;w)?>8;44?M7f92B:=45+5c86?l302900e8650;9j1<<722c>m7>5;nd;>5<55;294~"6910=;6F>a09K54?<,>o203:17d;6:188m0g=831dj54?::a516=83>1<7>t$03;>33<@8k:7E?>9:&6f?4?3`?<6=44i4:94?=n=00;66ai8;29?xd6<;0;684?:1y'54>=>>1C=l?4H03:?!3e28=0e8950;9j1=<722c>57>5;h7b>5<5<2290;w)?>8;44?M7f92B:=45+5c81=>o2?3:17d;7:188m0?=831b9l4?::me5}#9821::5G1`38L47>3-?i6189'1g<6k2c>;7>5;h7;>5<>{e:9;1<7;50;2x 47?2?=0D;I32=>"2j3;:7d;8:188m0>=831b944?::k6e?6=3fl36=44}c03f?6==3:119853>N6i81C=<74$4`951=n=>0;66g:8;29?l3>2900e8o50;9lb=<722wi>=j50;794?6|,8;36;94H0c2?M7612.>n7?=;h74>5<>o2i3:17bh7:188yg47>3:1?7>50z&25=<1:2B:m<5G10;8 0d=9?1b9:4?::k619853>N6i81C=<74$4`95a=n=>0;66g:8;29?l3>2900e8o50;9lb=<722wi=kk50;194?6|,8;36;<4H0c2?M7612.>n7k4i4594?=n=10;66ai8;29?xd6no0;6>4?:1y'54>=>;1C=l?4H03:?!3e28h0e8950;9j1=<722em47>5;|`145<72<0;6=u+10:922=O9h;0D7=n=>0;66g:8;29?l3>2900e8o50;9lb=<722wi=k750;694?6|,8;36;;4H0c2?M7612.>n7?j;h74>5<>ia03:17pl>f`83>6<729q/=<65639K5d7<@8;27);m:d9j12<722c>47>5;nd;>5<55;294~"6910=;6F>a09K54?<,>o203:17d;6:188m0g=831dj54?::a5c7=8391<7>t$03;>34<@8k:7E?>9:&6f?7e3`?<6=44i4:94?=hn10;66sm1g094?3=83:p(m7>5;nd;>5<55;294~"6910=;6F>a09K54?<,5;|`103<72<0;6=u+10:922=O9h;0D3=n=>0;66g:8;29?l3>2900e8o50;9lb=<722wi>9950;194?6|,8;36;<4H0c2?M7612.>n7k4i4594?=n=10;66ai8;29?xd5;h0;684?:1y'54>=>>1C=l?4H03:?!3e28l0e8950;9j1=<722c>57>5;h7b>5<5<2290;w)?>8;44?M7f92B:=45+5c81e>o2?3:17d;7:188m0?=831b9l4?::me5}#9821::5G1`38L47>3-?i6?;4i4594?=n=10;66g:9;29?l3f2900ck650;9~f726290>6=4?{%32189'1g<682c>;7>5;h7;>5<>ia03:17pl=4583>6<729q/=<65639K5d7<@8;27);m:d9j12<722c>47>5;nd;>5<i7E?n1:J25<=n;00;66g;0;29?l77k3:17bhj:188yg1329096=4?{%32189'1g<1<7<50;2x 47?2?;0D;I32=>"2j3h0e8950;9lb=<722wi;54?:383>5}#9821:<5G1`38L47>3-?i6o5f5683>>ia03:17pl8a;296?6=8r.:=5491:J2e4=O9830(8l5b:k63?6=3fl36=44}c5`>5<5290;w)?>8;42?M7f92B:=45+5c8a?l302900ck650;9~f2c=8381<7>t$03;>37<@8k:7E?>9:&6f?d>{e090;6?4?:1y'54>=>81C=l?4H03:?!3e2k1b9:4?::me7>52;294~"6910==6F>a09K54?<,5<7s-;:478>;I3b5>N6901/9o4m;h74>5<g=n=>0;66ai8;29?xd0:3:1>7>50z&25=<192B:m<5G10;8 0d=j2c>;7>5;nd;>5<=831vnl>50;094?6|,8;36;?4H0c2?M7612.>n7l4i4594?=hn10;66sma383>7<729q/=<65609K5d7<@8;27);m:c9j12<722em47>5;|`b0?6=:3:119855>N6i81C=<74$4`9f>o2?3:17bh7:188ygg129096=4?{%32189'1g;I32=>"2j3h0e8950;9lb=<722wiml4?:383>5}#9821:<5G1`38L47>3-?i6o5f5683>>ia03:17plnc;296?6=8r.:=5491:J2e4=O9830(8l5b:k63?6=3fl36=44}ccf>5<5290;w)?>8;42?M7f92B:=45+5c8a?l302900ck650;9~f<>=8381<7>t$03;>37<@8k:7E?>9:&6f?d>{e1h0;6?4?:1y'54>=>81C=l?4H03:?!3e2k1b9:4?::me52;294~"6910==6F>a09K54?<,:181>5<7s-;:478>;I3b5>N6901/9o4m;h74>5<g=n=>0;66ai8;29?xdd?3:1>7>50z&25=<192B:m<5G10;8 0d=j2c>;7>5;nd;>5<=831vnnl50;094?6|,8;36;?4H0c2?M7612.>n7l4i4594?=hn10;66sm8b83>7<729q/=<65609K5d7<@8;27);m:c9j12<722em47>5;|`g2?6=:3:119855>N6i81C=<74$4`9f>o2?3:17bh7:188yg44l3:197>50z&25=<1?2B:m<5G10;8 0d=;h1b9:4?::k65;|`107<72<0;6=u+10:922=O9h;0D1c>o213:17d;n:188kc>=831vn?>6:186>5<7s-;:4788;I3b5>N6901/9o4l;h74>5<>o2i3:17bh7:188yg70j3:187>50z&25=<1=2B:m<5G10;8 0d=;2c>;7>5;h7;>5<>{e:921<7=50;2x 47?2?80D;I32=>"2j3>87d;8:188m0>=831dj54?::a651=83?1<7>t$03;>31<@8k:7E?>9:&6f?7?3`?<6=44i4:94?=n=00;66g:a;29?j`?2900qo=>>1C=l?4H03:?!3e2<1b9:4?::k60<729q/=<65669K5d7<@8;27);m:408m01=831b954?::k6=?6=3`?j6=44og:94?=zj:81<7;50;2x 47?2?=0D;I32=>"2j3><7d;8:188m0>=831b944?::k6e?6=3fl36=44}c3e7?6==3:119853>N6i81C=<74$4`967=n=>0;66g:8;29?l3>2900e8o50;9lb=<722wi=<<50;794?6|,8;36;94H0c2?M7612.>n75<>o2i3:17bh7:188yg7a=3:197>50z&25=<1?2B:m<5G10;8 0d==91b9:4?::k6m7>5;nd;>5<54;294~"6910?56F>a09K54?>o383:17bhj:188yg7dn3:187>50z&25=<312B:m<5G10;8m6?=831b?n4?::k74?6=3fln6=44}c:5>5<5290;w)?>8;7`?M7f92B:=45f5783>>ia03:17plm0;296?6=8r.:=54:c:J2e4=O9830e8850;9lb=<722wioi4?:383>5}#98219n5G1`38L47>3`?=6=44og:94?=zjm=1<7<50;2x 47?2;I32=>o2>3:17bh7:188yg52290?6=4?{%32189j12<722c>47>5;h33g?6=3fl36=44}c15>5<2290;w)?>8;44?M7f92B:=45+5c813>o2?3:17d;7:188m0?=831b9l4?::me54;294~"6910=96F>a09K54?<,>o203:17d;6:188kc>=831vn<97:187>5<7s-;:478m;I3b5>N6901b9:4?::k65;nd;>5<55;294~"6910=;6F>a09K54?<,

i5f5683>>o203:17d;6:188m0g=831dj54?::a52c=83>1<7>t$03;>33<@8k:7E?>9:&6f?233`?<6=44i4:94?=n=00;66ai8;29?xd59=0;684?:1y'54>=>>1C=l?4H03:?!3e2h1b9:4?::k6l:188kc>=831vn5<7s-;:4788;I3b5>N6901/9o4>3:k63?6=3`?36=44i4;94?=n=h0;66ai8;29?xd69<0;6>4?:1y'54>=>;1C=l?4H03:?!3e2l1b9:4?::k61985f>N6i81C=<74i4594?=n=10;66g>0b83>>ia03:17pl=4983>1<729q/=<65629K5d7<@8;27);m:0`8m01=831b954?::m6b?6=3fl36=44}c34e?6=>3:11985<>N6i81C=<74$4`957=n=>0;66g:8;29?l3>2900e8o50;9l1c<722em47>5;|`23<<72=0;6=u+10:923=O9h;0D1e>o213:17b;i:188yg7393:1?7>50z&25=<1<2B:m<5G10;8 0d=02c>;7>5;h7;>5<5<1290;w)?>8;4;?M7f92B:=45+5c815>o2?3:17d;7:188m0?=831b9l4?::m6b?6=3fl36=44}c3ef?6==3:11985=>N6i81C=<74$4`9b>o2?3:17d;7:188m0?=831b9l4?::m6b?6=3th9?k4?:283>5}#9821:95G1`38L47>3-?i6h5f5683>>o203:17b;i:188yg43=3:1:7>50z&25=<102B:m<5G10;8 0d=:j1b9:4?::k6=>01C=l?4H03:?!3e2=;0e8950;9j1=<722c>57>5;h7b>5<5<2290;w)?>8;4:?M7f92B:=45+5c812>o2?3:17d;7:188m0?=831b9l4?::m6b?6=3th:;n4?:783>5}#9821:55G1`38L47>3-?i69j4i4594?=n=10;66g:9;29?l3f2900c8h50;9lb=<722wx>k4?:3y]6c=:9>l19:5rs2294?5|V::01>>5fd9>77<2i2wx?<4?:ey>75<4k27:oo40b9>515==>1v><50;0x966=<916??4i8:p71<72>qU?9521ea91==:91;19452358ea>;6lm0>;63<6;74?8502<30q~=::1818532=:01>;5f99~w3e=839p1;m5f99>36<4l273h7=k;|q5`?6=;r7=h7h7;<4e>6b<5131?i5rs7g94?5|5?o1j5526e824f=:010>i6s|6g83>6}:>o0m46381;1g?8>f2:n0q~9?:1808172o201;h511a89=?==l1v:?50;0x927=n1164o46b<51o1?i5rs6694?5|5>>1j55272824f=:0m0>i6s|7483>6}:?<0m46387;1g?8>a2:n0q~99:1808112o201:;511a89=c==l1v:950;1x921=n116;4453z?4l;<:e>0cc><5>h1?i529080`>{t?h0;6>u27`8e<>;013;;o6360;7f?xu0j3:1?v38b;d;?81c2:n014<53e9~w2e=839p1:m5f99>3g<68j165<4:e:p3a<72:q6;i4i8:?4b?5c34386>j4}r5f>5<4s4=n6k64=6f955e<50819h5rs6d94?5|5>l1j5528080`>;><39o7p}70;297~;?83l3709i:02`?8?42:1808>62o2015=53e9>=0<4l2wx4?4?:2y><753z?;7?`?34j4=9:97a=z{1>1<7=t=969b==:0:0:{t0<0;6>u26b824f=:0>0>i6376;d;?xu?k3:1>v37c;d;?8>e2f3<4l2wx5:4?:2y>=26bc><50=1==m4=c091`=z{031<7=t=8;9b==:1k08h63m4;1g?xu>i3:1?v36a;d;?8?>28:h70l<:4g8yv?e2909w07m:g:89g3=;m1v4m50;1x90b9>f1<2m2wx5i4?:2y>=a6bc><50n1==m4=c491`=z{0l1<7=t=8d9b==:i808h63m8;1g?xuf83:1?v3n0;d;?8?a28:h70l8:4g8yvg62908w0o>:g:89d5=;m16n446b<5kk1?i5rs`694?5|5h>1j552a2824f=:j00>i6s|a483>6}:i<0m463n7;1g?8de2:n0q~o9:1808g12o201l;511a89gg==l1vl950;1x9d1=n116m4453z?bl;<`a>0cc><5hh1?i52be80`>{tih0;6>u2a`8e<>;f13;;o63mc;7f?xufj3:1?v3nb;d;?8gc2:n01ok53e9~wde=839p1lm5f99>eg<68j16ni4:e:pea<72:q6mi4i8:?:3?5c34h96>j4}rcf>5<4s4kn6k64=`f955e<5ko19h5rs`d94?5|50<1==m4=c391`=:j90m46s|bg83>6}:jo0m463l0;1g?8ea2:n0q~m?:1808e72o201n<53e9>`5<4l2wxo<4?:2y>g47>53z?`6?`?34i?6>j4=e397a=z{j91<7=t=b19b==:k;0:{tk=0;6>u2c58e<>;d>39o70j=:2f8yve22908w0m::g:89f2=99i01i?55d9~wf0=839p1n85f99>g=<4l27o?7=k;|q`3?6=;r7h;7h7;46d34n968k4}ra;>5<4s4i36k64=bc97a=:l=08h6s|c883>6}:k00m463l8;33g>;c;3?n7p}la;296~;di3l370j::2f8yvee2908w0mm:g:89fg=99i01i:55d9~wfe=839p1oh511a89fc==l16oi4i8:p`3<72;q6h;4i8:?g1?3b3tyon7>527y>5d4===16:n40?>6389;61?81e2=801:j5439>3c<3:273=7:=;<:0>14<5?n18?526g876>;093>97079:2f89g7=;m165i4;2:?:b?2534k:69<4=`1907=:i<0?>63n7;61?8g>2=801ll5439>ea<3:272;7:=;<;:>14<50h18?52bg80`>;dm39o70m?:5089f4=<;16o94;2:?`2?2534i369<4=bc907=::8?19:5rsea94?5|5;>;6874=31:>c><5;>868o4}rfg>5<3s4;j?7h6;<4`>14<50<18?52bg876>{tll0;6>u216f912=:9>o1945216c9b==z{ml1<7c><5;::6874}rg3>5<5s488o7h7;<00f?3>3tyn=7>52z?17a9<5589>615==o1vh=50;0x972?2o201<9n:4c8yvc32909w0?i3;d;?87a?3?37p}j5;296~;6n>0>563>f48e<>{tm?0;6?u216`9b==:90=1955rsd594?4|58=o68o4=05`>c>767;6;|qff?6=:r7:j>4:9:?2b1544=n116=<:55`9>543==11vhj50;0x960=n116?84:7:pa`<72;q6?:4i8:?01?3?3tynj7>52z?23a52>==11vk?50;0x972?2;:4:8yv`52909w0?8a;7e?87>?3?27p}i3;296~;5;00>j63=4686<>{tn=0;6?u225791c=:9=919l5rsg794?4|58=h68h4=05a>0?5`0=<916oh4i8:p557=838p1=:18187b?3>;70mi:g:8yv77;3:1>v3>d9874>;c03l37p}>0583>7}:9l218=52d18e<>{t99?1<716<5m31j55rs025>5<5s4;n57:?;c>52z?2`d<3827om7h7;|q24=<72;q6=ho5419>`7d680g>;6l108o63>d880g>;6lh08o63>db8e<>{t98:1<716<58;=6k64}r325?6=:r7:=<4i8:?253<68j1v6;7;?xu69=0;6?u21079b==:98<19:5rs034>5c5874>;5;>0>;63>eg863>;6980>563>db86=>;6080>;63>7g86=>;6090>463>de86=>;69;0>463<6;7;?8502<201??::02`?xu69j0;6?uQ10a8945>2oo0q~?=7;296~X6:>16=>o5fd9~w47c2909wS?>d:?27gcc52z\265=:9:o1jh5rs01e>5<6lr7:?h444i8:p516=838p1<:?:g:894242<30q~?;1;296~;6<;0>m63>4086b>{t9=81<7c><58>86864}r315?6=:rT:><521569b`=z{8896=4={_316>;6<<0mi6s|13194?4|V88870?;6;df?xu6:=0;6?uQ136894202oo0q~?=5;296~X6:<16=965fd9~w4412909wS?=6:?20<?50;0xZ45634;?m7hj;|q26=<72;qU=?64=06a>cc52z\26<=:9=i1jh5rs00b>5<5sW;9m63>4e8ea>{t9;h1<72b83>7}Y9;i01<:i:gg8yv75l3:1>vP>2e9>506=nl1v<521469b`=z{89?6=4={_300>;6=<0mi6s|12794?4|V89>70?:6;df?xu6;?0;6?uQ124894302oo0q~?<7;296~X6;>16=865fd9~w45?2909wS?<8:?21<3>;70?8f;d;?xu6090;6?u216497f=:91:1j55rs046>5<4s4;3>7hj;<3;`?2734=?6894}r36f?6=;r7:4>4ie:?2<1<3827=i7;8;|q21f<72:q6=5:5fd9>5=3=<916;=4:7:p50b=839p1<6::gg894>12=:01:<5569~w43b2908w0?76;df?87??3>;706l:458yv72n3:1?v3>868ea>;6010?<63m0;75?xu6>90;6>u219:9b`=:91318=529d863>{t9?;1<7=t=0::>cc<582j69>4=`2912=z{8<96=4<{<3;e?`b34;3n7:?;0153z?25=e=nl16=5k5419>e3<2?2wx=;k50;1x94>c2oo01<77:528920==>1v<89:18087?m3ln70?7f;63?8g?2<=0q~?97;297~;60o0mi63>91874>;fi3?<7p}>6983>6}:90:1jh52183905=:ij0>;6s|17;94?5|583:6kk4=0;1>16<5ho19:5rs04b>5<4s4;2>7hj;<3:7?2734336894}r35f?6=;r7:5>4ie:?2=1<38272m7;8;|q22f<72:q6=4:5fd9>5<3=<9165n4:7:p53b=838p1<7::gg89g3==l1v<79:182`~;60;08o63>8e80g>;61108o63>9880g>;61h08o63>9c80g>;61j08o63>9e80g>;61l08o63>8280g>;60=08o63>8480g>;60?08o63>8680g>;60108o63>8880g>;60h08o63>8c80g>;60j08o63>8d80g>;60o08o63>9180g>;61808o63>9380g>;61:08o63>9580g>;61<08o63>968e<>;6090>m6s|17d94?5|58336kk4=0;:>16<5>219:5rs053>5<4s4;257hj;<3:e?2734=j6894}r345?6=;r7:5l4ie:?2=g<382755569~w4132908w0?6d;df?87>m3>;706=:458yv70=3:1?v3>9d8ea>;60:0?<6374;74?xu6i10;6?u212;905=:0>0m46s|1`;94?4|589i69>4=9:9b==z{8kj6=4={<30g?2734226k64}r3bf?6=:r7:?i4;0:?;e?`?3ty:mn4?:3y>56c=<9164o4i8:p5db=838p1<=n:5289=b=n11v;706j:g:8yv7fn3:1>v3>52874>;?n3l37p}>b183>7}:9<>18=52918e<>{t9k;1<716<50;1j55rs0`1>5<5s4;>:7:?;<;1>c>52z?212<38272?7h7;|q2f1<72;q6=865419>=12=:014;5f99~w4d12909w0?;4;63?8d62o20q~?m7;296~;64=c69b==z{8hj6=4={<366?2734h>6k64}r3af?6=:r7:884;0:?a2?`?3ty:nn4?:3y>510=<916n:4i8:p5gb=838p1<:8:5289g>=n11v;70l6:g:8yv7en3:1>v3>48874>;ei3l37p}>c183>7}:9=h18=52bc8e<>{t9j;1<716<5ki1j55rs0a1>5<5s4;?h7:?;<`g>c>52z?20`<3827ii7h7;|q2g1<72jq6=n:5fd9>661==016=hh5599>547==h16=im5569>5=7==h16=:h55`9>5=6==>16=ij55`9>544==h16?84>0b9>642==>1v4186<>;6<;0>463=0386=>;58m0>;63=07863>;6nm0>;63>f8863>;6n80>463=45863>;6?k0>463=06863>;4:3?370?i3;74?87a=3?370?8d;7:?84783?<70<c783>42|58ih6kk4=061>01<5;:96864=32a>0?<5;:=6864=0dg>0?<58lj6864=0d1>01<5;>96864=05a>01<5;:<6864=32`>01<5:819:521g191==:9o?1945216f91==:9>o19:5221291==::=<19l5225:91==z{8io6=4<{<3``?`b3488m7;n;<00b?3?3ty:o:4?:06x94eb2oo01?>;:4;897652<=01?>m:4:894`c22<201l:4:8965==>16=k:5569>610==016=:o5589>52?==>16=9?5569>615==116=:m5589~w4ea2909w0?lf;df?844i3?27p}>c983>45|58n;6kk4=32a>0g<58lo6864=0de>0><58l26874=0d2>01<58l=6864=32;>0><5;:h6874=2191==:9o>1945221391==::=;19l5216c91==:9>31955215391==:::319l5222`912=:9>i1955rs0a:>5<68r7:h<4ie:?207<2127:jl4:7:?2bf<2?27:j?4:8:?2b3<21279<:4:9:?14f<2i278?7;6;<3e0?3f348?=7;6;<00`?3f3488o7;n;<34=?3>348857;6;<34g?303ty:ol4?:02x94b52oo01<:?:45897632<=01?>m:45894`b2<=012<201>=55`9>5c3==h16=k:5599>52c==116>=?5569>52g==>16=kl5569>613==>16=:m55`9~w4b4290>w0?k7;df?8b?2<201i75589>`d<2127o;7;9;|q2`1<72=q6=i65fd9>`=<2?27o57;7;0>53z?2`<0g56z?2`d01<58;>6894}r3gf?6==r7:h:4if:?2`=:458yv7b83:1>v3>e98ea>;d;3?<7p}>e083>7}:9l31jh52c4863>{t9l81<7cc<5j=19:5rs0g0>5<5s4;nn7hj;0152z?2af644==>16>>95599>5``==016=`3<2?27:=?4:9:?151<2i2wx=hk50;cx94c12:i01:511a8yv7a83:1>v3>d3874>;6n>0m46s|1g394?4|58l:6k64=0d1>0?7>52z?2b7v3>d0874>;6nj0m46s|1g;94?4|58l26k64=0da>0?52z?2bdfd86<>{t9oo1<7c><58lh6864}r3eb?6=:r7:jk4i8:?145<212wx>=>50;0x97672o201v3>d1874>;5880m46s|21194?5|58in69>4=327>c><58im69>4}r031?6=;r7:on4;0:?14<9:g:8976>2<30q~;63=068e<>{t:9k1<716<5;:o6k64}r03f?6=:r79=m50;0x976d2o201?>k:4;8yv47m3:1>vP=0d9>5=7==11v?>i:18g[47n279?84:7:?157<20279?>4:7:?174<20279>k4:8:?16a<21279>o4:7:?16<<20279>:4:8:?02?3>348:87;7;<320?3?3ty9==4?:by>646=nl16>>;5599>665==016>>?5589>67`==016>?j5569>67d==016>?75589>671==016?;4:a:?151<2127:=94:9:p647=838p1???:52897752o20q~<>3;296~;59908o63=148e<>{t:8>1<7c><5;;>6864}r022?6=:r79=h4ie:?176<202wx><950;0x977a2oo01?=>:458yv4603:1>v3=218ea>;5:o0>;6s|20;94?4|5;8:6kk4=30g>0>52z?167o4:8:p64d=838p1?<<:gg8974>2<=0q~<>c;297~;5:=0mi63=26863>;6980>;6s|20f94?4|5;8>6kk4=031>0152z?160<38279>:4i8:p67>=838p1?<;:528974>2o20q~<=a;296~;5::0?<63=2c8e<>{t:;i1<716<5;8o6k64}r01a?6=:r79><4;0:?16c>>50;0x97472=:01?=>:g:8yv44:3:1>v3=1g874>;5;:0m46s|22694?4|5;;n69>4=316>c>59z?15`<4k279=k4<4>484>650;:x976326:4c897662k:4c897672v3=3`8e<>;5;k0>m6s|22`94?4|5;9n6874=31a>0`52z?17`{t:=;1<7c><5;>86874}r076?6=:r798?4i8:?100<212wx>9:50;0x97232o201?:::4:8yv43>3:1>v3=478e<>;5;l0>46s|25594?4|5;><6k64=31f>0g55`y]61?<5::1?4521b`97<=:9ji1?4521bg97<=:9m:1?4521e397<=:9m81?45216497<=:9j>1?45220297<=::8o1?45220d97<=::;:1?45223397<=::;81?45223197<=::;>1?45223797<=:99o1?45219097<=:91n1?45218:97<=:9031?45218c97<=:90h1?45218a97<=:90n1?45218g97<=:9191?45219697<=:91?1?45219497<=:91=1?45219:97<=:9:o1?45212`97<=:9:n1?45212a97<=:9<31?45214:97<=:91?45218797<=:9<:1?45214097<=:9<;1?45215f97<=:9=l1?45215g97<=:9=i1?45215`97<=:9==1?45215;97<=:9=21?45215497<=:9=?1?45215697<=:9l<1?4521d597<=:9l21?4521d;97<=:9lk1?4521d`97<=:9li1?4521df97<=:9m=1?4521e:97<=:9m31?4521ec97<=:;=08563>ce80=>;6ko0856s|25c94?3|V;>j70<;7;74?843<3?370<0}Y:=h01?:9:4:8975f2<201?:=:458975a2<=0q~<;c;291~X59>5569>610==>16>>o5569>615==>1v?:k:186[43l2798<4:7:?17a<20279?n4:7:?17<<2?2wx>9h50;7xZ72a348?=7;7;<00`?3>3488o7;6;<00=?3?3twe98k50;3xL47>3td>9k4?:0yK54?51zJ25<=zf<<:6=4>{I32=>{i=?81<7?tH03:?xh2>:0;6189~j002290:wE?>9:m130=83;pD5<6sA;:56sa57c94?7|@8;27p`:6c83>4}O9830qc;9c;295~N6901vb88k:182M7612we9;k50;3xL47>3td>:k4?:0yK54?51zJ25<=zf<=:6=4>{I32=>{i=>81<7?tH03:?xh2?:0;6189~j012290:wE?>9:m120=83;pD5<6sA;:56sa56c94?7|@8;27p`:7c83>4}O9830qc;8c;295~N6901vb89k:182M7612we9:k50;3xL47>3td>;k4?:0yK54?51zJ25<=zf<2:6=4>{I32=>{i=181<7?tH03:?xh20:0;6189~j0>2290:wE?>9:m1=0=83;pD5<6sA;:56sa59c94?7|@8;27p`:8c83>4}O9830qc;7c;295~N6901vb86k:182M7612we95k50;3xL47>3td>4k4?:0yK54?51zJ25<=zf<3:6=4>{I32=>{i=081<7?tH03:?xh21:0;6<3:1=vF>189~j0?2290:wE?>9:m1<0=83;pD5<6sA;:56sa58c94?7|@8;27p`:9c83>4}O9830qc;6c;295~N6901vb87k:182M7612we94k50;3xL47>3td>5k4?:0yK54?51zJ25<=zf{I32=>{i=h81<7?tH03:?xh2i:0;6189~j0g2290:wE?>9:m1d0=83;pD5<6sA;:56sa5`c94?7|@8;27p`:ac83>4}O9830qc;nc;295~N6901vb8ok:182M7612we9lk50;3xL47>3td>mk4?:0yK54?51zJ25<=zf{I32=>{i=k81<7?tH03:?xh2j:0;6189~j0d2290:wE?>9:m1g0=83;pD5<6sA;:56sa5cc94?7|@8;27p`:bc83>4}O9830qc;mc;295~N6901vb8lk:182M7612we9ok50;3xL47>3td>nk4?:0yK54?51zJ25<=zf{I32=>{i=j81<7?tH03:?xh2k:0;6189~j0e2290:wE?>9:m1f0=83;pD5<6sA;:56sa5bc94?7|@8;27p`:cc83>4}O9830qc;lc;295~N6901vb8mk:182M7612we9nk50;3xL47>3td>ok4?:0yK54?51zJ25<=zf{I32=>{i=m81<7?tH03:?xh2l:0;6189~j0b2290:wE?>9:m1a0=83;pD5<6sA;:56sa5ec94?7|@8;27p`:dc83>4}O9830qc;kc;295~N6901vb8jk:182M7612we9ik50;3xL47>3td>hk4?:0yK54?51zJ25<=zf{I32=>{i=l81<7?tH03:?xh2m:0;6189~j0c2290:wE?>9:m1`0=83;pD5<6sA;:56sa5dc94?7|@8;27p`:ec83>4}O9830qc;jc;295~N6901vb8kk:182M7612we9hk50;3xL47>3td>ik4?:0yK54?51zJ25<=zf{I32=>{i=o81<7?tH03:?xh2n:0;6189~j0`2290:wE?>9:m1c0=83;pD5<6sA;:56sa5gc94?7|@8;27p`:fc83>4}O9830qc;ic;295~N6901vb8hk:182M7612we9kk50;3xL47>3td>jk4?:0yK54?51zJ25<=zf?::6=4>{I32=>{i>981<7?tH03:?xh18:0;6189~j362290:wE?>9:m250=83;pD5<6sA;:56sa61c94?7|@8;27p`90c83>4}O9830qc8?c;295~N6901vb;>k:182M7612we:=k50;3xL47>3td=51zJ25<=zf?;:6=4>{I32=>{i>881<7?tH03:?xh19:0;6189~j372290:wE?>9:m240=83;pD5<6sA;:56sa60c94?7|@8;27p`91c83>4}O9830qc8>c;295~N6901vb;?k:182M7612we:3td==k4?:0yK54?51zJ25<=zf?8:6=4>{I32=>{i>;81<7?tH03:?xh1::0;6189~j342290:wE?>9:m270=83;pD5<6sA;:56sa63c94?7|@8;27p`92c83>4}O9830qc8=c;295~N6901vb;3td=>k4?:0yK54?51zJ25<=zf?9:6=4>{I32=>{i>:81<7?tH03:?xh1;:0;6189~j352290:wE?>9:m260=83;pD5<6sA;:56sa62c94?7|@8;27p`93c83>4}O9830qc8k50;3xL47>3td=?k4?:0yK54?51zJ25<=zf?>:6=4>{I32=>{i>=81<7?tH03:?xh1<:0;6189~j322290:wE?>9:m210=83;pD5<6sA;:56sa65c94?7|@8;27p`94c83>4}O9830qc8;c;295~N6901vb;:k:182M7612we:9k50;3xL47>3td=8k4?:0yK54?<7>51zJ25<=zf??:6=4>{I32=>{i><81<7?tH03:?xh1=:0;6189~j332290:wE?>9:m200=83;pD5<6sA;:56sa64c94?7|@8;27p`95c83>4}O9830qc8:c;295~N6901vb;;k:182M7612we:8k50;3xL47>3td=9k4?:0yK54?51zJ25<=zf?<:6=4>{I32=>{i>?81<7?tH03:?xh1>:0;6189~j302290:wE?>9:m230=83;pD5<6sA;:56sa67c94?7|@8;27p`96c83>4}O9830qc89c;295~N6901vb;8k:182M7612we:;k50;3xL47>3td=:k4?:0yK54?51zJ25<=zf?=:6=4>{I32=>{i>>81<7?tH03:?xh1?:0;6189~j312290:wE?>9:m220=83;pD5<6sA;:56sa66c94?7|@8;27p`97c83>4}O9830qc88c;295~N6901vb;9k:182M7612we::k50;3xL47>3td=;k4?:0yK54?51zJ25<=zf?2:6=4>{I32=>{i>181<7?tH03:?xh10:0;6189~yx{GHJq