diff --git a/rtl/library/adc_driver.v b/rtl/library/adc_driver.v index 5ca8b49..895f23f 100644 --- a/rtl/library/adc_driver.v +++ b/rtl/library/adc_driver.v @@ -9,7 +9,7 @@ module adc_driver( output [1:0] channel, output [11:0] adc_val, - output reg vld, + output vld, input ack ); @@ -23,6 +23,7 @@ assign vld = vld_ff; reg [2:0] sck_strobe = 0; wire strobe = &sck_strobe; +wire strobe2 = &(sck_strobe^3'b100); always @(posedge clk) begin if (rstn) @@ -35,8 +36,8 @@ localparam INIT = 0, CONFIG = 1, ADC = 2; reg [1:0] state = INIT; reg [1:0] state_next; -reg [3:0] bit_pos = 0; -reg [3:0] bit_pos_next; +reg [4:0] bit_pos = 0; +reg [4:0] bit_pos_next; reg [15:0] so_ff = 0; reg [15:0] so_ff_next; @@ -65,7 +66,7 @@ assign config_word = { 1'b0, // SWCNV enable, not used in external clock mode 1'b0 // reserved }; -assign config_bit = config_word[15-bit_pos]; +assign config_bit = config_word[15-bit_pos[4:1]]; always @* begin state_next = state; @@ -82,6 +83,18 @@ always @* begin ss_next = adc_ss; sck_next = adc_sck; + if (strobe2) begin + if (state == CONFIG || state == ADC) begin + // deassert slave select so it can be triggered on the next frame + if (bit_pos == 31 & ~ss_next & ~adc_sck) begin + ss_next = 1; + //bit_pos_next = 0; // don't need this because it's going to + // overflow + end else begin + ss_next = 0; + end + end + end if (strobe) begin case (state) INIT: begin @@ -90,46 +103,38 @@ always @* begin bit_pos_next = 0; end CONFIG: begin - ss_next = 0; - sck_next = ~adc_sck; + sck_next = bit_pos[0]; + bit_pos_next = bit_pos + 1; // update on the falling edge if (adc_sck) begin - bit_pos_next = bit_pos + 1; si_next = config_bit; - // deassert slave select so it can be triggered on the next frame - if (bit_pos == 15) begin - ss_next = 1; - //bit_pos_next = 0; // don't need this because it's going to - // overflow - end end // switch state on the rising edge after the overflow // and reassert ss to start the next frame - if (~adc_sck & (bit_pos == 0)) begin - ss_next = 0; + if (~adc_sck & (bit_pos == 31)) begin + //ss_next = 0; state_next = ADC; end end ADC: begin - ss_next = 0; + //ss_next = 0; si_next = 0; - sck_next = ~adc_sck; + sck_next = bit_pos[0]; + bit_pos_next = bit_pos + 1; // update bit pos state on the rising edge // shift in data as well if (~adc_sck) begin - bit_pos_next = bit_pos + 1; so_ff_next = {so_ff[14:0], adc_so}; // after reading the last bit // deassert ss so it can be reasserted on the next rising edge - if (bit_pos == 15) begin - ss_next = 1; + if (bit_pos == 31) begin + //ss_next = 1; write_out = 1; end end - end endcase end diff --git a/rtl/tb/a.out b/rtl/tb/a.out deleted file mode 100755 index 9baedce..0000000 --- a/rtl/tb/a.out +++ /dev/null @@ -1,563 +0,0 @@ -#! /usr/bin/vvp -:ivl_version "10.3 (stable)"; -:ivl_delay_selection "TYPICAL"; -:vpi_time_precision - 8; -:vpi_module "system"; -:vpi_module "vhdl_sys"; -:vpi_module "v2005_math"; -:vpi_module "va_math"; -:vpi_module "v2009"; -S_0x55c406b87500 .scope module, "top" "top" 2 3; - .timescale -8 -8; -v0x55c406bd3a20_0 .var "ack", 0 0; -v0x55c406bd3ae0 .array/i "adc_out", 0 3, 31 0; -v0x55c406bd3b80_0 .var/i "adc_pos", 31 0; -v0x55c406bd3c40_0 .net "adc_sck", 0 0, L_0x55c406bd4e50; 1 drivers -v0x55c406bd3d10_0 .net "adc_si", 0 0, L_0x55c406bd4ca0; 1 drivers -v0x55c406bd3db0_0 .var "adc_so", 0 0; -v0x55c406bd3e80_0 .net "adc_ss", 0 0, L_0x55c406bd4d90; 1 drivers -v0x55c406bd3f50_0 .net "adc_val", 11 0, L_0x55c406ba6030; 1 drivers -v0x55c406bd4020_0 .var/i "bit_pos", 31 0; -v0x55c406bd40c0_0 .net "channel", 1 0, L_0x55c406ba6120; 1 drivers -v0x55c406bd4190_0 .var/i "channel_num", 31 0; -v0x55c406bd4230_0 .var "clk", 0 0; -v0x55c406bd4300_0 .var/i "configdata", 31 0; -v0x55c406bd43c0_0 .var "configured", 0 0; -v0x55c406bd4480_0 .var "enabled", 0 0; -v0x55c406bd4540_0 .var/i "i", 31 0; -v0x55c406bd4620_0 .var "out", 15 0; -v0x55c406bd4700_0 .var "rstn", 0 0; -v0x55c406bd47d0_0 .var "sck_old", 0 0; -v0x55c406bd4870_0 .var "ss_old", 0 0; -v0x55c406bd4930_0 .var/i "tosend", 31 0; -v0x55c406bd4a10_0 .net "vld", 0 0, L_0x55c406ba5f40; 1 drivers -E_0x55c406ba5370 .event edge, v0x55c406bd3b80_0; -S_0x55c406b5f260 .scope module, "dut" "adc_driver" 2 21, 3 1 0, S_0x55c406b87500; - .timescale -8 -8; - .port_info 0 /INPUT 1 "clk" - .port_info 1 /INPUT 1 "rstn" - .port_info 2 /INPUT 1 "adc_so" - .port_info 3 /OUTPUT 1 "adc_si" - .port_info 4 /OUTPUT 1 "adc_ss" - .port_info 5 /OUTPUT 1 "adc_sck" - .port_info 6 /OUTPUT 2 "channel" - .port_info 7 /OUTPUT 12 "adc_val" - .port_info 8 /OUTPUT 1 "vld" - .port_info 9 /INPUT 1 "ack" -P_0x55c406b87140 .param/l "ADC" 1 3 34, +C4<00000000000000000000000000000010>; -P_0x55c406b87180 .param/l "CONFIG" 1 3 34, +C4<00000000000000000000000000000001>; -P_0x55c406b871c0 .param/l "INIT" 1 3 34, +C4<00000000000000000000000000000000>; -L_0x55c406ba6120 .functor BUFZ 2, v0x55c406bd2930_0, C4<00>, C4<00>, C4<00>; -L_0x55c406ba6030 .functor BUFZ 12, v0x55c406bd25b0_0, C4<000000000000>, C4<000000000000>, C4<000000000000>; -L_0x55c406ba5f40 .functor BUFZ 1, v0x55c406bd3550_0, C4<0>, C4<0>, C4<0>; -L_0x55c406bd4ca0 .functor BUFZ 1, v0x55c406bd21d0_0, C4<0>, C4<0>, C4<0>; -L_0x55c406bd4d90 .functor BUFZ 1, v0x55c406bd2410_0, C4<0>, C4<0>, C4<0>; -L_0x55c406bd4e50 .functor BUFZ 1, v0x55c406bd2050_0, C4<0>, C4<0>, C4<0>; -L_0x7ff03e59d060 .functor BUFT 1, C4<00000000000000000000000000001111>, C4<0>, C4<0>, C4<0>; -v0x55c406bb29b0_0 .net/2u *"_s16", 31 0, L_0x7ff03e59d060; 1 drivers -v0x55c406b8a8d0_0 .net *"_s18", 31 0, L_0x55c406be4fc0; 1 drivers -L_0x7ff03e59d0a8 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>; -v0x55c406bd1ce0_0 .net *"_s21", 27 0, L_0x7ff03e59d0a8; 1 drivers -v0x55c406bd1da0_0 .net *"_s22", 31 0, L_0x55c406be5140; 1 drivers -v0x55c406bd1e80_0 .net "ack", 0 0, v0x55c406bd3a20_0; 1 drivers -v0x55c406bd1f90_0 .net "adc_sck", 0 0, L_0x55c406bd4e50; alias, 1 drivers -v0x55c406bd2050_0 .var "adc_sck_ff", 0 0; -v0x55c406bd2110_0 .net "adc_si", 0 0, L_0x55c406bd4ca0; alias, 1 drivers -v0x55c406bd21d0_0 .var "adc_si_ff", 0 0; -v0x55c406bd2290_0 .net "adc_so", 0 0, v0x55c406bd3db0_0; 1 drivers -v0x55c406bd2350_0 .net "adc_ss", 0 0, L_0x55c406bd4d90; alias, 1 drivers -v0x55c406bd2410_0 .var "adc_ss_ff", 0 0; -v0x55c406bd24d0_0 .net "adc_val", 11 0, L_0x55c406ba6030; alias, 1 drivers -v0x55c406bd25b0_0 .var "adc_val_ff", 11 0; -v0x55c406bd2690_0 .var "bit_pos", 3 0; -v0x55c406bd2770_0 .var "bit_pos_next", 3 0; -v0x55c406bd2850_0 .net "channel", 1 0, L_0x55c406ba6120; alias, 1 drivers -v0x55c406bd2930_0 .var "channel_ff", 1 0; -v0x55c406bd2a10_0 .net "clk", 0 0, v0x55c406bd4230_0; 1 drivers -v0x55c406bd2ad0_0 .net "config_bit", 0 0, L_0x55c406be5320; 1 drivers -L_0x7ff03e59d018 .functor BUFT 1, C4<0010000110100100>, C4<0>, C4<0>, C4<0>; -v0x55c406bd2b90_0 .net "config_word", 15 0, L_0x7ff03e59d018; 1 drivers -v0x55c406bd2c70_0 .net "rstn", 0 0, v0x55c406bd4700_0; 1 drivers -v0x55c406bd2d30_0 .var "sck_next", 0 0; -v0x55c406bd2df0_0 .var "sck_strobe", 2 0; -v0x55c406bd2ed0_0 .var "si_next", 0 0; -v0x55c406bd2f90_0 .var "so_ff", 15 0; -v0x55c406bd3070_0 .var "so_ff_next", 15 0; -v0x55c406bd3150_0 .var "ss_next", 0 0; -v0x55c406bd3210_0 .var "state", 1 0; -v0x55c406bd32f0_0 .var "state_next", 1 0; -v0x55c406bd33d0_0 .net "strobe", 0 0, L_0x55c406bd4ba0; 1 drivers -v0x55c406bd3490_0 .net "vld", 0 0, L_0x55c406ba5f40; alias, 1 drivers -v0x55c406bd3550_0 .var "vld_ff", 0 0; -v0x55c406bd3820_0 .var "write_out", 0 0; -E_0x55c406ba3660 .event posedge, v0x55c406bd2a10_0; -E_0x55c406ba4480/0 .event edge, v0x55c406bd3210_0, v0x55c406bd2690_0, v0x55c406bd2f90_0, v0x55c406bd2c70_0; -E_0x55c406ba4480/1 .event edge, v0x55c406bd2110_0, v0x55c406bd2350_0, v0x55c406bd1f90_0, v0x55c406bd33d0_0; -E_0x55c406ba4480/2 .event edge, v0x55c406bd2ad0_0, v0x55c406bd2290_0; -E_0x55c406ba4480 .event/or E_0x55c406ba4480/0, E_0x55c406ba4480/1, E_0x55c406ba4480/2; -L_0x55c406bd4ba0 .reduce/and v0x55c406bd2df0_0; -L_0x55c406be4fc0 .concat [ 4 28 0 0], v0x55c406bd2690_0, L_0x7ff03e59d0a8; -L_0x55c406be5140 .arith/sub 32, L_0x7ff03e59d060, L_0x55c406be4fc0; -L_0x55c406be5320 .part/v L_0x7ff03e59d018, L_0x55c406be5140, 1; - .scope S_0x55c406b5f260; -T_0 ; - %pushi/vec4 0, 0, 2; - %store/vec4 v0x55c406bd2930_0, 0, 2; - %pushi/vec4 0, 0, 12; - %store/vec4 v0x55c406bd25b0_0, 0, 12; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3550_0, 0, 1; - %pushi/vec4 0, 0, 3; - %store/vec4 v0x55c406bd2df0_0, 0, 3; - %pushi/vec4 0, 0, 2; - %store/vec4 v0x55c406bd3210_0, 0, 2; - %pushi/vec4 0, 0, 4; - %store/vec4 v0x55c406bd2690_0, 0, 4; - %pushi/vec4 0, 0, 16; - %store/vec4 v0x55c406bd2f90_0, 0, 16; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd21d0_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd2410_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd2050_0, 0, 1; - %end; - .thread T_0, $init; - .scope S_0x55c406b5f260; -T_1 ; - %wait E_0x55c406ba3660; - %load/vec4 v0x55c406bd2c70_0; - %flag_set/vec4 8; - %jmp/0xz T_1.0, 8; - %load/vec4 v0x55c406bd2df0_0; - %addi 1, 0, 3; - %assign/vec4 v0x55c406bd2df0_0, 0; - %jmp T_1.1; -T_1.0 ; - %pushi/vec4 0, 0, 3; - %assign/vec4 v0x55c406bd2df0_0, 0; -T_1.1 ; - %jmp T_1; - .thread T_1; - .scope S_0x55c406b5f260; -T_2 ; - %wait E_0x55c406ba4480; - %load/vec4 v0x55c406bd3210_0; - %store/vec4 v0x55c406bd32f0_0, 0, 2; - %load/vec4 v0x55c406bd2690_0; - %store/vec4 v0x55c406bd2770_0, 0, 4; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3820_0, 0, 1; - %load/vec4 v0x55c406bd2f90_0; - %store/vec4 v0x55c406bd3070_0, 0, 16; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd2d30_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %load/vec4 v0x55c406bd2c70_0; - %flag_set/vec4 8; - %jmp/0xz T_2.0, 8; - %load/vec4 v0x55c406bd2110_0; - %store/vec4 v0x55c406bd2ed0_0, 0, 1; - %load/vec4 v0x55c406bd2350_0; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %load/vec4 v0x55c406bd1f90_0; - %store/vec4 v0x55c406bd2d30_0, 0, 1; - %load/vec4 v0x55c406bd33d0_0; - %flag_set/vec4 8; - %jmp/0xz T_2.2, 8; - %load/vec4 v0x55c406bd3210_0; - %dup/vec4; - %pushi/vec4 0, 0, 2; - %cmp/u; - %jmp/1 T_2.4, 6; - %dup/vec4; - %pushi/vec4 1, 0, 2; - %cmp/u; - %jmp/1 T_2.5, 6; - %dup/vec4; - %pushi/vec4 2, 0, 2; - %cmp/u; - %jmp/1 T_2.6, 6; - %jmp T_2.7; -T_2.4 ; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %pushi/vec4 1, 0, 2; - %store/vec4 v0x55c406bd32f0_0, 0, 2; - %pushi/vec4 0, 0, 4; - %store/vec4 v0x55c406bd2770_0, 0, 4; - %jmp T_2.7; -T_2.5 ; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %load/vec4 v0x55c406bd1f90_0; - %inv; - %store/vec4 v0x55c406bd2d30_0, 0, 1; - %load/vec4 v0x55c406bd1f90_0; - %flag_set/vec4 8; - %jmp/0xz T_2.8, 8; - %load/vec4 v0x55c406bd2690_0; - %addi 1, 0, 4; - %store/vec4 v0x55c406bd2770_0, 0, 4; - %load/vec4 v0x55c406bd2ad0_0; - %store/vec4 v0x55c406bd2ed0_0, 0, 1; - %load/vec4 v0x55c406bd2690_0; - %pad/u 32; - %cmpi/e 15, 0, 32; - %jmp/0xz T_2.10, 4; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; -T_2.10 ; -T_2.8 ; - %load/vec4 v0x55c406bd1f90_0; - %inv; - %load/vec4 v0x55c406bd2690_0; - %pad/u 32; - %pushi/vec4 0, 0, 32; - %cmp/e; - %flag_get/vec4 4; - %and; - %flag_set/vec4 8; - %jmp/0xz T_2.12, 8; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %pushi/vec4 2, 0, 2; - %store/vec4 v0x55c406bd32f0_0, 0, 2; -T_2.12 ; - %jmp T_2.7; -T_2.6 ; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd2ed0_0, 0, 1; - %load/vec4 v0x55c406bd1f90_0; - %inv; - %store/vec4 v0x55c406bd2d30_0, 0, 1; - %load/vec4 v0x55c406bd1f90_0; - %inv; - %flag_set/vec4 8; - %jmp/0xz T_2.14, 8; - %load/vec4 v0x55c406bd2690_0; - %addi 1, 0, 4; - %store/vec4 v0x55c406bd2770_0, 0, 4; - %load/vec4 v0x55c406bd2f90_0; - %parti/s 15, 0, 2; - %load/vec4 v0x55c406bd2290_0; - %concat/vec4; draw_concat_vec4 - %store/vec4 v0x55c406bd3070_0, 0, 16; - %load/vec4 v0x55c406bd2690_0; - %pad/u 32; - %cmpi/e 15, 0, 32; - %jmp/0xz T_2.16, 4; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3820_0, 0, 1; -T_2.16 ; -T_2.14 ; - %jmp T_2.7; -T_2.7 ; - %pop/vec4 1; -T_2.2 ; - %jmp T_2.1; -T_2.0 ; - %pushi/vec4 0, 0, 2; - %store/vec4 v0x55c406bd32f0_0, 0, 2; - %pushi/vec4 0, 0, 4; - %store/vec4 v0x55c406bd2770_0, 0, 4; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd2d30_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3150_0, 0, 1; -T_2.1 ; - %jmp T_2; - .thread T_2, $push; - .scope S_0x55c406b5f260; -T_3 ; - %wait E_0x55c406ba3660; - %load/vec4 v0x55c406bd32f0_0; - %assign/vec4 v0x55c406bd3210_0, 0; - %load/vec4 v0x55c406bd2770_0; - %assign/vec4 v0x55c406bd2690_0, 0; - %load/vec4 v0x55c406bd2d30_0; - %assign/vec4 v0x55c406bd2050_0, 0; - %load/vec4 v0x55c406bd3150_0; - %assign/vec4 v0x55c406bd2410_0, 0; - %load/vec4 v0x55c406bd2ed0_0; - %assign/vec4 v0x55c406bd21d0_0, 0; - %load/vec4 v0x55c406bd3070_0; - %assign/vec4 v0x55c406bd2f90_0, 0; - %load/vec4 v0x55c406bd3820_0; - %flag_set/vec4 8; - %jmp/0xz T_3.0, 8; - %load/vec4 v0x55c406bd3070_0; - %parti/s 14, 0, 2; - %split/vec4 12; - %assign/vec4 v0x55c406bd25b0_0, 0; - %assign/vec4 v0x55c406bd2930_0, 0; - %pushi/vec4 1, 0, 1; - %assign/vec4 v0x55c406bd3550_0, 0; -T_3.0 ; - %load/vec4 v0x55c406bd1e80_0; - %flag_set/vec4 8; - %jmp/0xz T_3.2, 8; - %pushi/vec4 0, 0, 1; - %assign/vec4 v0x55c406bd3550_0, 0; -T_3.2 ; - %jmp T_3; - .thread T_3; - .scope S_0x55c406b87500; -T_4 ; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd4230_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd4700_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3db0_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd47d0_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd4870_0, 0, 1; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd3a20_0, 0, 1; - %end; - .thread T_4, $init; - .scope S_0x55c406b87500; -T_5 ; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd4230_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd4700_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3db0_0, 0, 1; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd47d0_0, 0, 1; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd43c0_0, 0, 1; - %pushi/vec4 0, 0, 16; - %store/vec4 v0x55c406bd4620_0, 0, 16; - %vpi_call/w 2 48 "$dumpfile", "adc_driver_tb.vcd" {0 0 0}; - %vpi_call/w 2 49 "$dumpvars" {0 0 0}; - %end; - .thread T_5; - .scope S_0x55c406b87500; -T_6 ; - %delay 2, 0; - %load/vec4 v0x55c406bd4230_0; - %nor/r; - %store/vec4 v0x55c406bd4230_0, 0, 1; - %jmp T_6; - .thread T_6; - .scope S_0x55c406b87500; -T_7 ; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd4020_0, 0, 32; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd4190_0, 0, 32; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd4930_0, 0, 32; - %pushi/vec4 0, 0, 1; - %store/vec4 v0x55c406bd4480_0, 0, 1; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd4300_0, 0, 32; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd3b80_0, 0, 32; - %pushi/vec4 1, 0, 1; - %store/vec4 v0x55c406bd3db0_0, 0, 1; - %pushi/vec4 0, 0, 32; - %store/vec4 v0x55c406bd4540_0, 0, 32; -T_7.0 ; - %load/vec4 v0x55c406bd4540_0; - %cmpi/s 4, 0, 32; - %jmp/0xz T_7.1, 5; - %pushi/vec4 0, 0, 32; - %ix/getv/s 4, v0x55c406bd4540_0; - %store/vec4a v0x55c406bd3ae0, 4, 0; - %load/vec4 v0x55c406bd4540_0; - %pushi/vec4 1, 0, 32; - %add; - %store/vec4 v0x55c406bd4540_0, 0, 32; - %jmp T_7.0; -T_7.1 ; - %end; - .thread T_7; - .scope S_0x55c406b87500; -T_8 ; - %wait E_0x55c406ba5370; - %load/vec4 v0x55c406bd3b80_0; - %parti/s 2, 0, 2; - %dup/vec4; - %pushi/vec4 0, 0, 2; - %cmp/u; - %jmp/1 T_8.0, 6; - %dup/vec4; - %pushi/vec4 1, 0, 2; - %cmp/u; - %jmp/1 T_8.1, 6; - %dup/vec4; - %pushi/vec4 2, 0, 2; - %cmp/u; - %jmp/1 T_8.2, 6; - %dup/vec4; - %pushi/vec4 3, 0, 2; - %cmp/u; - %jmp/1 T_8.3, 6; - %jmp T_8.4; -T_8.0 ; - %pushi/vec4 511, 0, 16; - %store/vec4 v0x55c406bd4620_0, 0, 16; - %jmp T_8.4; -T_8.1 ; - %pushi/vec4 8191, 0, 16; - %store/vec4 v0x55c406bd4620_0, 0, 16; - %jmp T_8.4; -T_8.2 ; - %pushi/vec4 11754, 0, 16; - %store/vec4 v0x55c406bd4620_0, 0, 16; - %jmp T_8.4; -T_8.3 ; - %pushi/vec4 15535, 0, 16; - %store/vec4 v0x55c406bd4620_0, 0, 16; - %jmp T_8.4; -T_8.4 ; - %pop/vec4 1; - %jmp T_8; - .thread T_8, $push; - .scope S_0x55c406b87500; -T_9 ; - %wait E_0x55c406ba3660; - %load/vec4 v0x55c406bd3e80_0; - %inv; - %load/vec4 v0x55c406bd4870_0; - %and; - %flag_set/vec4 8; - %jmp/0xz T_9.0, 8; - %pushi/vec4 1, 0, 1; - %assign/vec4 v0x55c406bd4480_0, 0; - %pushi/vec4 0, 0, 32; - %assign/vec4 v0x55c406bd4020_0, 0; -T_9.0 ; - %load/vec4 v0x55c406bd4480_0; - %flag_set/vec4 8; - %jmp/0xz T_9.2, 8; - %load/vec4 v0x55c406bd43c0_0; - %nor/r; - %flag_set/vec4 8; - %jmp/0xz T_9.4, 8; - %load/vec4 v0x55c406bd47d0_0; - %inv; - %load/vec4 v0x55c406bd3c40_0; - %and; - %flag_set/vec4 8; - %jmp/0xz T_9.6, 8; - %load/vec4 v0x55c406bd4300_0; - %ix/load 4, 1, 0; - %flag_set/imm 4, 0; - %shiftl 4; - %load/vec4 v0x55c406bd3d10_0; - %pad/u 32; - %or; - %assign/vec4 v0x55c406bd4300_0, 0; - %pushi/vec4 15, 0, 32; - %load/vec4 v0x55c406bd4020_0; - %cmp/s; - %flag_or 5, 4; - %jmp/0xz T_9.8, 5; - %pushi/vec4 1, 0, 1; - %assign/vec4 v0x55c406bd43c0_0, 0; - %pushi/vec4 0, 0, 32; - %assign/vec4 v0x55c406bd4020_0, 0; - %jmp T_9.9; -T_9.8 ; - %load/vec4 v0x55c406bd4020_0; - %addi 1, 0, 32; - %assign/vec4 v0x55c406bd4020_0, 0; -T_9.9 ; -T_9.6 ; - %jmp T_9.5; -T_9.4 ; - %load/vec4 v0x55c406bd47d0_0; - %inv; - %load/vec4 v0x55c406bd3c40_0; - %and; - %flag_set/vec4 8; - %jmp/0xz T_9.10, 8; -T_9.10 ; - %load/vec4 v0x55c406bd47d0_0; - %load/vec4 v0x55c406bd3c40_0; - %inv; - %and; - %flag_set/vec4 8; - %jmp/0xz T_9.12, 8; - %pushi/vec4 15, 0, 32; - %load/vec4 v0x55c406bd4020_0; - %cmp/s; - %flag_or 5, 4; - %jmp/0xz T_9.14, 5; - %pushi/vec4 0, 0, 32; - %assign/vec4 v0x55c406bd4020_0, 0; - %jmp T_9.15; -T_9.14 ; - %load/vec4 v0x55c406bd4020_0; - %addi 1, 0, 32; - %assign/vec4 v0x55c406bd4020_0, 0; -T_9.15 ; - %load/vec4 v0x55c406bd4620_0; - %pushi/vec4 15, 0, 32; - %load/vec4 v0x55c406bd4020_0; - %sub; - %part/s 1; - %assign/vec4 v0x55c406bd3db0_0, 0; -T_9.12 ; -T_9.5 ; -T_9.2 ; - %load/vec4 v0x55c406bd4a10_0; - %load/vec4 v0x55c406bd43c0_0; - %and; - %load/vec4 v0x55c406bd3a20_0; - %inv; - %and; - %flag_set/vec4 8; - %jmp/0xz T_9.16, 8; - %load/vec4 v0x55c406bd3b80_0; - %addi 1, 0, 32; - %assign/vec4 v0x55c406bd3b80_0, 0; - %load/vec4 v0x55c406bd3f50_0; - %pad/u 32; - %load/vec4 v0x55c406bd40c0_0; - %pad/u 4; - %ix/vec4 3; - %ix/load 4, 0, 0; Constant delay - %assign/vec4/a/d v0x55c406bd3ae0, 0, 4; - %pushi/vec4 1, 0, 1; - %assign/vec4 v0x55c406bd3a20_0, 0; - %load/vec4 v0x55c406bd40c0_0; - %pad/u 32; - %cmpi/e 3, 0, 32; - %jmp/0xz T_9.18, 4; - %vpi_call/w 2 128 "$finish" {0 0 0}; -T_9.18 ; - %jmp T_9.17; -T_9.16 ; - %pushi/vec4 0, 0, 1; - %assign/vec4 v0x55c406bd3a20_0, 0; -T_9.17 ; - %load/vec4 v0x55c406bd3e80_0; - %assign/vec4 v0x55c406bd4870_0, 0; - %load/vec4 v0x55c406bd3c40_0; - %assign/vec4 v0x55c406bd47d0_0, 0; - %jmp T_9; - .thread T_9; - .scope S_0x55c406b87500; -T_10 ; - %delay 50000, 0; - %vpi_call/w 2 139 "$finish" {0 0 0}; - %end; - .thread T_10; -# The file index is used to find the file name in the following table. -:file_names 4; - "N/A"; - ""; - "adc_driver_tb.v"; - "../library/adc_driver.v"; diff --git a/rtl/tb/adc_driver_tb.v b/rtl/tb/adc_driver_tb.v index c6806db..c14641f 100644 --- a/rtl/tb/adc_driver_tb.v +++ b/rtl/tb/adc_driver_tb.v @@ -60,6 +60,7 @@ integer configdata; integer adc_pos; integer adc_out[3:0]; +integer expected[3:0]; integer i; initial begin @@ -71,6 +72,11 @@ initial begin adc_pos = 0; adc_so = 1; + for (i = 0; i < 4; i++) begin + #1 adc_pos = i; + #1 expected[i] = out; + end + adc_pos = 0; for (i = 0; i < 4; i++) adc_out[i] = 0; end @@ -88,7 +94,7 @@ end always @(posedge clk) begin if (~adc_ss & ss_old) begin enabled <= 1; - bit_pos <= 0; + //bit_pos <= 0; end if (enabled) begin if (!configured) begin @@ -120,11 +126,27 @@ always @(posedge clk) begin if (vld & configured & ~ack) begin adc_pos <= adc_pos + 1; - adc_out[channel] <= adc_val; + adc_out[channel] = adc_val; ack <= 1; if (channel == 3) begin // TODO check configdata - // TODO check adc values + i = { + 1'b0, // ADC Mode Control + 4'b0100, // Standard_Ext + 4'b0011, // Up to AIN3 + 2'b01, // reset FIFO + 2'b00, // normal PM mode + 1'b1, // include channel number in output + 1'b0, // SWCNV enable, not used in external clock mode + 1'b0 // reserved + }; + + if (configdata != i) + $display("config %d != %d", configdata, i); + for (i = 0; i < 4; i++) begin + if (adc_out[i] != (12'hfff & expected[i]) ) + $display("adc %x %x != %x", i, adc_out[i], expected[i]); + end $finish; end end else diff --git a/rtl/tb/adc_driver_tb.vcd b/rtl/tb/adc_driver_tb.vcd deleted file mode 100644 index 00cbced..0000000 --- a/rtl/tb/adc_driver_tb.vcd +++ /dev/null @@ -1,8506 +0,0 @@ -$date - Tue Jan 7 08:44:48 2020 -$end -$version - Icarus Verilog -$end -$timescale - 10ns -$end -$scope module top $end -$var wire 1 ! vld $end -$var wire 2 " channel [1:0] $end -$var wire 12 # adc_val [11:0] $end -$var wire 1 $ adc_ss $end -$var wire 1 % adc_si $end -$var wire 1 & adc_sck $end -$var reg 1 ' ack $end -$var reg 1 ( adc_so $end -$var reg 1 ) clk $end -$var reg 1 * configured $end -$var reg 1 + enabled $end -$var reg 16 , out [15:0] $end -$var reg 1 - rstn $end -$var reg 1 . sck_old $end -$var reg 1 / ss_old $end -$var integer 32 0 adc_pos [31:0] $end -$var integer 32 1 bit_pos [31:0] $end -$var integer 32 2 channel_num [31:0] $end -$var integer 32 3 configdata [31:0] $end -$var integer 32 4 i [31:0] $end -$var integer 32 5 tosend [31:0] $end -$scope module dut $end -$var wire 1 ' ack $end -$var wire 1 & adc_sck $end -$var wire 1 % adc_si $end -$var wire 1 ( adc_so $end -$var wire 1 $ adc_ss $end -$var wire 12 6 adc_val [11:0] $end -$var wire 2 7 channel [1:0] $end -$var wire 1 ) clk $end -$var wire 16 8 config_word [15:0] $end -$var wire 1 - rstn $end -$var wire 1 ! vld $end -$var wire 1 9 strobe $end -$var wire 1 : config_bit $end -$var reg 1 ; adc_sck_ff $end -$var reg 1 < adc_si_ff $end -$var reg 1 = adc_ss_ff $end -$var reg 12 > adc_val_ff [11:0] $end -$var reg 4 ? bit_pos [3:0] $end -$var reg 4 @ bit_pos_next [3:0] $end -$var reg 2 A channel_ff [1:0] $end -$var reg 1 B sck_next $end -$var reg 3 C sck_strobe [2:0] $end -$var reg 1 D si_next $end -$var reg 16 E so_ff [15:0] $end -$var reg 16 F so_ff_next [15:0] $end -$var reg 1 G ss_next $end -$var reg 2 H state [1:0] $end -$var reg 2 I state_next [1:0] $end -$var reg 1 J vld_ff $end -$var reg 1 K write_out $end -$upscope $end -$upscope $end -$enddefinitions $end -#0 -$dumpvars -0K -0J -b0 I -b0 H -1G -b0 F -b0 E -1D -b0 C -1B -b0 A -b0 @ -b0 ? -b0 > -1= -1< -1; -0: -09 -b10000110100100 8 -b0 7 -b0 6 -b0 5 -b100 4 -b0 3 -b0 2 -b0 1 -b0 0 -1/ -1. -1- -b111111111 , -0+ -0* -0) -1( -0' -1& -1% -1$ -b0 # -b0 " -0! -$end -#2 -b1 C -1) -#4 -0) -#6 -b10 C -1) -#8 -0) -#10 -b11 C -1) -#12 -0) -#14 -b100 C -1) -#16 -0) -#18 -b101 C -1) -#20 -0) -#22 -b110 C -1) -#24 -0) -#26 -b1 I -0G -19 -b111 C -1) -#28 -0) -#30 -0G -0$ -0= -b1 H -09 -b0 C -1) -#32 -0) -#34 -b1 C -0/ -1+ -1) -#36 -0) -#38 -b10 C -1) -#40 -0) -#42 -b11 C -1) -#44 -0) -#46 -b100 C -1) -#48 -0) -#50 -b101 C -1) -#52 -0) -#54 -b110 C -1) -#56 -0) -#58 -0D -b1 @ -0B -0G -19 -b111 C -1) -#60 -0) -#62 -0G -0B -0% -0< -0& -0; -b1 ? -09 -b0 C -1) -#64 -0) -#66 -b1 C -0. -1) -#68 -0) -#70 -b10 C -1) -#72 -0) -#74 -b11 C -1) -#76 -0) -#78 -b100 C -1) -#80 -0) -#82 -b101 C -1) -#84 -0) -#86 -b110 C -1) -#88 -0) -#90 -0G -1B -19 -b111 C -1) -#92 -0) -#94 -0G -1& -1; -09 -b0 C -1) -#96 -0) -#98 -b1 C -1. -b1 1 -1) -#100 -0) -#102 -b10 C -1) -#104 -0) -#106 -b11 C -1) -#108 -0) -#110 -b100 C -1) -#112 -0) -#114 -b101 C -1) -#116 -0) -#118 -b110 C -1) -#120 -0) -#122 -b10 @ -0B -0G -19 -b111 C -1) -#124 -0) -#126 -0G -0B -0& -0; -1: -b10 ? -09 -b0 C -1) -#128 -0) -#130 -b1 C -0. -1) -#132 -0) -#134 -b10 C -1) -#136 -0) -#138 -b11 C -1) -#140 -0) -#142 -b100 C -1) -#144 -0) -#146 -b101 C -1) -#148 -0) -#150 -b110 C -1) -#152 -0) -#154 -0G -1B -19 -b111 C -1) -#156 -0) -#158 -0G -1& -1; -09 -b0 C -1) -#160 -0) -#162 -b1 C -1. -b10 1 -1) -#164 -0) -#166 -b10 C -1) -#168 -0) -#170 -b11 C -1) -#172 -0) -#174 -b100 C -1) -#176 -0) -#178 -b101 C -1) -#180 -0) -#182 -b110 C -1) -#184 -0) -#186 -1D -b11 @ -0B -0G -19 -b111 C -1) -#188 -0) -#190 -0G -0B -1% -1< -0& -0; -0: -b11 ? -09 -b0 C -1) -#192 -0) -#194 -b1 C -0. -1) -#196 -0) -#198 -b10 C -1) -#200 -0) -#202 -b11 C -1) -#204 -0) -#206 -b100 C -1) -#208 -0) -#210 -b101 C -1) -#212 -0) -#214 -b110 C -1) -#216 -0) -#218 -0G -1B -19 -b111 C -1) -#220 -0) -#222 -0G -1& -1; -09 -b0 C -1) -#224 -0) -#226 -b1 C -1. -b11 1 -b1 3 -1) -#228 -0) -#230 -b10 C -1) -#232 -0) -#234 -b11 C -1) -#236 -0) -#238 -b100 C -1) -#240 -0) -#242 -b101 C -1) -#244 -0) -#246 -b110 C -1) -#248 -0) -#250 -0D -b100 @ -0B -0G -19 -b111 C -1) -#252 -0) -#254 -0G -0B -0% -0< -0& -0; -b100 ? -09 -b0 C -1) -#256 -0) -#258 -b1 C -0. -1) -#260 -0) -#262 -b10 C -1) -#264 -0) -#266 -b11 C -1) -#268 -0) -#270 -b100 C -1) -#272 -0) -#274 -b101 C -1) -#276 -0) -#278 -b110 C -1) -#280 -0) -#282 -0G -1B -19 -b111 C -1) -#284 -0) -#286 -0G -1& -1; -09 -b0 C -1) -#288 -0) -#290 -b1 C -1. -b100 1 -b10 3 -1) -#292 -0) -#294 -b10 C -1) -#296 -0) -#298 -b11 C -1) -#300 -0) -#302 -b100 C -1) -#304 -0) -#306 -b101 C -1) -#308 -0) -#310 -b110 C -1) -#312 -0) -#314 -b101 @ -0B -0G -19 -b111 C -1) -#316 -0) -#318 -0G -0B -0& -0; -b101 ? -09 -b0 C -1) -#320 -0) -#322 -b1 C -0. -1) -#324 -0) -#326 -b10 C -1) -#328 -0) -#330 -b11 C -1) -#332 -0) -#334 -b100 C -1) -#336 -0) -#338 -b101 C -1) -#340 -0) -#342 -b110 C -1) -#344 -0) -#346 -0G -1B -19 -b111 C -1) -#348 -0) -#350 -0G -1& -1; -09 -b0 C -1) -#352 -0) -#354 -b1 C -1. -b101 1 -b100 3 -1) -#356 -0) -#358 -b10 C -1) -#360 -0) -#362 -b11 C -1) -#364 -0) -#366 -b100 C -1) -#368 -0) -#370 -b101 C -1) -#372 -0) -#374 -b110 C -1) -#376 -0) -#378 -b110 @ -0B -0G -19 -b111 C -1) -#380 -0) -#382 -0G -0B -0& -0; -b110 ? -09 -b0 C -1) -#384 -0) -#386 -b1 C -0. -1) -#388 -0) -#390 -b10 C -1) -#392 -0) -#394 -b11 C -1) -#396 -0) -#398 -b100 C -1) -#400 -0) -#402 -b101 C -1) -#404 -0) -#406 -b110 C -1) -#408 -0) -#410 -0G -1B -19 -b111 C -1) -#412 -0) -#414 -0G -1& -1; -09 -b0 C -1) -#416 -0) -#418 -b1 C -1. -b110 1 -b1000 3 -1) -#420 -0) -#422 -b10 C -1) -#424 -0) -#426 -b11 C -1) -#428 -0) -#430 -b100 C -1) -#432 -0) -#434 -b101 C -1) -#436 -0) -#438 -b110 C -1) -#440 -0) -#442 -b111 @ -0B -0G -19 -b111 C -1) -#444 -0) -#446 -0G -0B -0& -0; -1: -b111 ? -09 -b0 C -1) -#448 -0) -#450 -b1 C -0. -1) -#452 -0) -#454 -b10 C -1) -#456 -0) -#458 -b11 C -1) -#460 -0) -#462 -b100 C -1) -#464 -0) -#466 -b101 C -1) -#468 -0) -#470 -b110 C -1) -#472 -0) -#474 -0G -1B -19 -b111 C -1) -#476 -0) -#478 -0G -1& -1; -09 -b0 C -1) -#480 -0) -#482 -b1 C -1. -b111 1 -b10000 3 -1) -#484 -0) -#486 -b10 C -1) -#488 -0) -#490 -b11 C -1) -#492 -0) -#494 -b100 C -1) -#496 -0) -#498 -b101 C -1) -#500 -0) -#502 -b110 C -1) -#504 -0) -#506 -1D -b1000 @ -0B -0G -19 -b111 C -1) -#508 -0) -#510 -0G -0B -1% -1< -0& -0; -b1000 ? -09 -b0 C -1) -#512 -0) -#514 -b1 C -0. -1) -#516 -0) -#518 -b10 C -1) -#520 -0) -#522 -b11 C -1) -#524 -0) -#526 -b100 C -1) -#528 -0) -#530 -b101 C -1) -#532 -0) -#534 -b110 C -1) -#536 -0) -#538 -0G -1B -19 -b111 C -1) -#540 -0) -#542 -0G -1& -1; -09 -b0 C -1) -#544 -0) -#546 -b1 C -1. -b1000 1 -b100001 3 -1) -#548 -0) -#550 -b10 C -1) -#552 -0) -#554 -b11 C -1) -#556 -0) -#558 -b100 C -1) -#560 -0) -#562 -b101 C -1) -#564 -0) -#566 -b110 C -1) -#568 -0) -#570 -b1001 @ -0B -0G -19 -b111 C -1) -#572 -0) -#574 -0G -0B -0& -0; -0: -b1001 ? -09 -b0 C -1) -#576 -0) -#578 -b1 C -0. -1) -#580 -0) -#582 -b10 C -1) -#584 -0) -#586 -b11 C -1) -#588 -0) -#590 -b100 C -1) -#592 -0) -#594 -b101 C -1) -#596 -0) -#598 -b110 C -1) -#600 -0) -#602 -0G -1B -19 -b111 C -1) -#604 -0) -#606 -0G -1& -1; -09 -b0 C -1) -#608 -0) -#610 -b1 C -1. -b1001 1 -b1000011 3 -1) -#612 -0) -#614 -b10 C -1) -#616 -0) -#618 -b11 C -1) -#620 -0) -#622 -b100 C -1) -#624 -0) -#626 -b101 C -1) -#628 -0) -#630 -b110 C -1) -#632 -0) -#634 -0D -b1010 @ -0B -0G -19 -b111 C -1) -#636 -0) -#638 -0G -0B -0% -0< -0& -0; -1: -b1010 ? -09 -b0 C -1) -#640 -0) -#642 -b1 C -0. -1) -#644 -0) -#646 -b10 C -1) -#648 -0) -#650 -b11 C -1) -#652 -0) -#654 -b100 C -1) -#656 -0) -#658 -b101 C -1) -#660 -0) -#662 -b110 C -1) -#664 -0) -#666 -0G -1B -19 -b111 C -1) -#668 -0) -#670 -0G -1& -1; -09 -b0 C -1) -#672 -0) -#674 -b1 C -1. -b1010 1 -b10000110 3 -1) -#676 -0) -#678 -b10 C -1) -#680 -0) -#682 -b11 C -1) -#684 -0) -#686 -b100 C -1) -#688 -0) -#690 -b101 C -1) -#692 -0) -#694 -b110 C -1) -#696 -0) -#698 -1D -b1011 @ -0B -0G -19 -b111 C -1) -#700 -0) -#702 -0G -0B -1% -1< -0& -0; -0: -b1011 ? -09 -b0 C -1) -#704 -0) -#706 -b1 C -0. -1) -#708 -0) -#710 -b10 C -1) -#712 -0) -#714 -b11 C -1) -#716 -0) -#718 -b100 C -1) -#720 -0) -#722 -b101 C -1) -#724 -0) -#726 -b110 C -1) -#728 -0) -#730 -0G -1B -19 -b111 C -1) -#732 -0) -#734 -0G -1& -1; -09 -b0 C -1) -#736 -0) -#738 -b1 C -1. -b1011 1 -b100001101 3 -1) -#740 -0) -#742 -b10 C -1) -#744 -0) -#746 -b11 C -1) -#748 -0) -#750 -b100 C -1) -#752 -0) -#754 -b101 C -1) -#756 -0) -#758 -b110 C -1) -#760 -0) -#762 -0D -b1100 @ -0B -0G -19 -b111 C -1) -#764 -0) -#766 -0G -0B -0% -0< -0& -0; -b1100 ? -09 -b0 C -1) -#768 -0) -#770 -b1 C -0. -1) -#772 -0) -#774 -b10 C -1) -#776 -0) -#778 -b11 C -1) -#780 -0) -#782 -b100 C -1) -#784 -0) -#786 -b101 C -1) -#788 -0) -#790 -b110 C -1) -#792 -0) -#794 -0G -1B -19 -b111 C -1) -#796 -0) -#798 -0G -1& -1; -09 -b0 C -1) -#800 -0) -#802 -b1 C -1. -b1100 1 -b1000011010 3 -1) -#804 -0) -#806 -b10 C -1) -#808 -0) -#810 -b11 C -1) -#812 -0) -#814 -b100 C -1) -#816 -0) -#818 -b101 C -1) -#820 -0) -#822 -b110 C -1) -#824 -0) -#826 -b1101 @ -0B -0G -19 -b111 C -1) -#828 -0) -#830 -0G -0B -0& -0; -1: -b1101 ? -09 -b0 C -1) -#832 -0) -#834 -b1 C -0. -1) -#836 -0) -#838 -b10 C -1) -#840 -0) -#842 -b11 C -1) -#844 -0) -#846 -b100 C -1) -#848 -0) -#850 -b101 C -1) -#852 -0) -#854 -b110 C -1) -#856 -0) -#858 -0G -1B -19 -b111 C -1) -#860 -0) -#862 -0G -1& -1; -09 -b0 C -1) -#864 -0) -#866 -b1 C -1. -b1101 1 -b10000110100 3 -1) -#868 -0) -#870 -b10 C -1) -#872 -0) -#874 -b11 C -1) -#876 -0) -#878 -b100 C -1) -#880 -0) -#882 -b101 C -1) -#884 -0) -#886 -b110 C -1) -#888 -0) -#890 -1D -b1110 @ -0B -0G -19 -b111 C -1) -#892 -0) -#894 -0G -0B -1% -1< -0& -0; -0: -b1110 ? -09 -b0 C -1) -#896 -0) -#898 -b1 C -0. -1) -#900 -0) -#902 -b10 C -1) -#904 -0) -#906 -b11 C -1) -#908 -0) -#910 -b100 C -1) -#912 -0) -#914 -b101 C -1) -#916 -0) -#918 -b110 C -1) -#920 -0) -#922 -0G -1B -19 -b111 C -1) -#924 -0) -#926 -0G -1& -1; -09 -b0 C -1) -#928 -0) -#930 -b1 C -1. -b1110 1 -b100001101001 3 -1) -#932 -0) -#934 -b10 C -1) -#936 -0) -#938 -b11 C -1) -#940 -0) -#942 -b100 C -1) -#944 -0) -#946 -b101 C -1) -#948 -0) -#950 -b110 C -1) -#952 -0) -#954 -0D -b1111 @ -0B -0G -19 -b111 C -1) -#956 -0) -#958 -0G -0B -0% -0< -0& -0; -b1111 ? -09 -b0 C -1) -#960 -0) -#962 -b1 C -0. -1) -#964 -0) -#966 -b10 C -1) -#968 -0) -#970 -b11 C -1) -#972 -0) -#974 -b100 C -1) -#976 -0) -#978 -b101 C -1) -#980 -0) -#982 -b110 C -1) -#984 -0) -#986 -0G -1B -19 -b111 C -1) -#988 -0) -#990 -0G -1& -1; -09 -b0 C -1) -#992 -0) -#994 -b1 C -1. -b1111 1 -b1000011010010 3 -1) -#996 -0) -#998 -b10 C -1) -#1000 -0) -#1002 -b11 C -1) -#1004 -0) -#1006 -b100 C -1) -#1008 -0) -#1010 -b101 C -1) -#1012 -0) -#1014 -b110 C -1) -#1016 -0) -#1018 -b0 @ -0B -1G -19 -b111 C -1) -#1020 -0) -#1022 -0B -1$ -1= -0& -0; -b0 ? -09 -b0 C -1) -#1024 -0) -#1026 -b1 C -0. -1/ -1) -#1028 -0) -#1030 -b10 C -1) -#1032 -0) -#1034 -b11 C -1) -#1036 -0) -#1038 -b100 C -1) -#1040 -0) -#1042 -b101 C -1) -#1044 -0) -#1046 -b110 C -1) -#1048 -0) -#1050 -b10 I -0G -1B -19 -b111 C -1) -#1052 -0) -#1054 -0G -0$ -0= -1& -1; -b10 H -09 -b0 C -1) -#1056 -0) -#1058 -b1 C -1. -0/ -1* -b10000110100100 3 -b0 1 -1) -#1060 -0) -#1062 -b10 C -1) -#1064 -0) -#1066 -b11 C -1) -#1068 -0) -#1070 -b100 C -1) -#1072 -0) -#1074 -b101 C -1) -#1076 -0) -#1078 -b110 C -1) -#1080 -0) -#1082 -0B -0G -19 -b111 C -1) -#1084 -0) -#1086 -0G -0B -0& -0; -09 -b0 C -1) -#1088 -0) -#1090 -0G -0B -b1 C -0. -0( -b1 1 -1) -#1092 -0) -#1094 -b10 C -1) -#1096 -0) -#1098 -b11 C -1) -#1100 -0) -#1102 -b100 C -1) -#1104 -0) -#1106 -b101 C -1) -#1108 -0) -#1110 -b110 C -1) -#1112 -0) -#1114 -b1 @ -0G -1B -19 -b111 C -1) -#1116 -0) -#1118 -0G -1& -1; -b1 ? -09 -b0 C -1) -#1120 -0) -#1122 -b1 C -1. -1) -#1124 -0) -#1126 -b10 C -1) -#1128 -0) -#1130 -b11 C -1) -#1132 -0) -#1134 -b100 C -1) -#1136 -0) -#1138 -b101 C -1) -#1140 -0) -#1142 -b110 C -1) -#1144 -0) -#1146 -0B -0G -19 -b111 C -1) -#1148 -0) -#1150 -0G -0B -0& -0; -09 -b0 C -1) -#1152 -0) -#1154 -b1 C -0. -b10 1 -1) -#1156 -0) -#1158 -b10 C -1) -#1160 -0) -#1162 -b11 C -1) -#1164 -0) -#1166 -b100 C -1) -#1168 -0) -#1170 -b101 C -1) -#1172 -0) -#1174 -b110 C -1) -#1176 -0) -#1178 -b10 @ -0G -1B -19 -b111 C -1) -#1180 -0) -#1182 -0G -1& -1; -1: -b10 ? -09 -b0 C -1) -#1184 -0) -#1186 -b1 C -1. -1) -#1188 -0) -#1190 -b10 C -1) -#1192 -0) -#1194 -b11 C -1) -#1196 -0) -#1198 -b100 C -1) -#1200 -0) -#1202 -b101 C -1) -#1204 -0) -#1206 -b110 C -1) -#1208 -0) -#1210 -0B -0G -19 -b111 C -1) -#1212 -0) -#1214 -0G -0B -0& -0; -09 -b0 C -1) -#1216 -0) -#1218 -b1 C -0. -b11 1 -1) -#1220 -0) -#1222 -b10 C -1) -#1224 -0) -#1226 -b11 C -1) -#1228 -0) -#1230 -b100 C -1) -#1232 -0) -#1234 -b101 C -1) -#1236 -0) -#1238 -b110 C -1) -#1240 -0) -#1242 -b11 @ -0G -1B -19 -b111 C -1) -#1244 -0) -#1246 -0G -1& -1; -0: -b11 ? -09 -b0 C -1) -#1248 -0) -#1250 -b1 C -1. -1) -#1252 -0) -#1254 -b10 C -1) -#1256 -0) -#1258 -b11 C -1) -#1260 -0) -#1262 -b100 C -1) -#1264 -0) -#1266 -b101 C -1) -#1268 -0) -#1270 -b110 C -1) -#1272 -0) -#1274 -0B -0G -19 -b111 C -1) -#1276 -0) -#1278 -0G -0B -0& -0; -09 -b0 C -1) -#1280 -0) -#1282 -b1 C -0. -b100 1 -1) -#1284 -0) -#1286 -b10 C -1) -#1288 -0) -#1290 -b11 C -1) -#1292 -0) -#1294 -b100 C -1) -#1296 -0) -#1298 -b101 C -1) -#1300 -0) -#1302 -b110 C -1) -#1304 -0) -#1306 -b100 @ -0G -1B -19 -b111 C -1) -#1308 -0) -#1310 -0G -1& -1; -b100 ? -09 -b0 C -1) -#1312 -0) -#1314 -b1 C -1. -1) -#1316 -0) -#1318 -b10 C -1) -#1320 -0) -#1322 -b11 C -1) -#1324 -0) -#1326 -b100 C -1) -#1328 -0) -#1330 -b101 C -1) -#1332 -0) -#1334 -b110 C -1) -#1336 -0) -#1338 -0B -0G -19 -b111 C -1) -#1340 -0) -#1342 -0G -0B -0& -0; -09 -b0 C -1) -#1344 -0) -#1346 -b1 C -0. -b101 1 -1) -#1348 -0) -#1350 -b10 C -1) -#1352 -0) -#1354 -b11 C -1) -#1356 -0) -#1358 -b100 C -1) -#1360 -0) -#1362 -b101 C -1) -#1364 -0) -#1366 -b110 C -1) -#1368 -0) -#1370 -b101 @ -0G -1B -19 -b111 C -1) -#1372 -0) -#1374 -0G -1& -1; -b101 ? -09 -b0 C -1) -#1376 -0) -#1378 -b1 C -1. -1) -#1380 -0) -#1382 -b10 C -1) -#1384 -0) -#1386 -b11 C -1) -#1388 -0) -#1390 -b100 C -1) -#1392 -0) -#1394 -b101 C -1) -#1396 -0) -#1398 -b110 C -1) -#1400 -0) -#1402 -0B -0G -19 -b111 C -1) -#1404 -0) -#1406 -0G -0B -0& -0; -09 -b0 C -1) -#1408 -0) -#1410 -b1 C -0. -b110 1 -1) -#1412 -0) -#1414 -b10 C -1) -#1416 -0) -#1418 -b11 C -1) -#1420 -0) -#1422 -b100 C -1) -#1424 -0) -#1426 -b101 C -1) -#1428 -0) -#1430 -b110 C -1) -#1432 -0) -#1434 -b110 @ -0G -1B -19 -b111 C -1) -#1436 -0) -#1438 -0G -1& -1; -b110 ? -09 -b0 C -1) -#1440 -0) -#1442 -b1 C -1. -1) -#1444 -0) -#1446 -b10 C -1) -#1448 -0) -#1450 -b11 C -1) -#1452 -0) -#1454 -b100 C -1) -#1456 -0) -#1458 -b101 C -1) -#1460 -0) -#1462 -b110 C -1) -#1464 -0) -#1466 -0B -0G -19 -b111 C -1) -#1468 -0) -#1470 -0G -0B -0& -0; -09 -b0 C -1) -#1472 -0) -#1474 -b1 C -0. -b111 1 -1) -#1476 -0) -#1478 -b10 C -1) -#1480 -0) -#1482 -b11 C -1) -#1484 -0) -#1486 -b100 C -1) -#1488 -0) -#1490 -b101 C -1) -#1492 -0) -#1494 -b110 C -1) -#1496 -0) -#1498 -b111 @ -0G -1B -19 -b111 C -1) -#1500 -0) -#1502 -0G -1& -1; -1: -b111 ? -09 -b0 C -1) -#1504 -0) -#1506 -b1 C -1. -1) -#1508 -0) -#1510 -b10 C -1) -#1512 -0) -#1514 -b11 C -1) -#1516 -0) -#1518 -b100 C -1) -#1520 -0) -#1522 -b101 C -1) -#1524 -0) -#1526 -b110 C -1) -#1528 -0) -#1530 -0B -0G -19 -b111 C -1) -#1532 -0) -#1534 -0G -0B -0& -0; -09 -b0 C -1) -#1536 -0) -#1538 -0G -0B -b1 C -0. -1( -b1000 1 -1) -#1540 -0) -#1542 -b10 C -1) -#1544 -0) -#1546 -b11 C -1) -#1548 -0) -#1550 -b100 C -1) -#1552 -0) -#1554 -b101 C -1) -#1556 -0) -#1558 -b110 C -1) -#1560 -0) -#1562 -b1 F -b1000 @ -0G -1B -19 -b111 C -1) -#1564 -0) -#1566 -0G -b1 E -1& -1; -b1000 ? -09 -b0 C -1) -#1568 -0) -#1570 -b1 C -1. -1) -#1572 -0) -#1574 -b10 C -1) -#1576 -0) -#1578 -b11 C -1) -#1580 -0) -#1582 -b100 C -1) -#1584 -0) -#1586 -b101 C -1) -#1588 -0) -#1590 -b110 C -1) -#1592 -0) -#1594 -0B -0G -19 -b111 C -1) -#1596 -0) -#1598 -0G -0B -0& -0; -09 -b0 C -1) -#1600 -0) -#1602 -b1 C -0. -b1001 1 -1) -#1604 -0) -#1606 -b10 C -1) -#1608 -0) -#1610 -b11 C -1) -#1612 -0) -#1614 -b100 C -1) -#1616 -0) -#1618 -b101 C -1) -#1620 -0) -#1622 -b110 C -1) -#1624 -0) -#1626 -b11 F -b1001 @ -0G -1B -19 -b111 C -1) -#1628 -0) -#1630 -0G -b11 E -1& -1; -0: -b1001 ? -09 -b0 C -1) -#1632 -0) -#1634 -b1 C -1. -1) -#1636 -0) -#1638 -b10 C -1) -#1640 -0) -#1642 -b11 C -1) -#1644 -0) -#1646 -b100 C -1) -#1648 -0) -#1650 -b101 C -1) -#1652 -0) -#1654 -b110 C -1) -#1656 -0) -#1658 -0B -0G -19 -b111 C -1) -#1660 -0) -#1662 -0G -0B -0& -0; -09 -b0 C -1) -#1664 -0) -#1666 -b1 C -0. -b1010 1 -1) -#1668 -0) -#1670 -b10 C -1) -#1672 -0) -#1674 -b11 C -1) -#1676 -0) -#1678 -b100 C -1) -#1680 -0) -#1682 -b101 C -1) -#1684 -0) -#1686 -b110 C -1) -#1688 -0) -#1690 -b111 F -b1010 @ -0G -1B -19 -b111 C -1) -#1692 -0) -#1694 -0G -b111 E -1& -1; -1: -b1010 ? -09 -b0 C -1) -#1696 -0) -#1698 -b1 C -1. -1) -#1700 -0) -#1702 -b10 C -1) -#1704 -0) -#1706 -b11 C -1) -#1708 -0) -#1710 -b100 C -1) -#1712 -0) -#1714 -b101 C -1) -#1716 -0) -#1718 -b110 C -1) -#1720 -0) -#1722 -0B -0G -19 -b111 C -1) -#1724 -0) -#1726 -0G -0B -0& -0; -09 -b0 C -1) -#1728 -0) -#1730 -b1 C -0. -b1011 1 -1) -#1732 -0) -#1734 -b10 C -1) -#1736 -0) -#1738 -b11 C -1) -#1740 -0) -#1742 -b100 C -1) -#1744 -0) -#1746 -b101 C -1) -#1748 -0) -#1750 -b110 C -1) -#1752 -0) -#1754 -b1111 F -b1011 @ -0G -1B -19 -b111 C -1) -#1756 -0) -#1758 -0G -b1111 E -1& -1; -0: -b1011 ? -09 -b0 C -1) -#1760 -0) -#1762 -b1 C -1. -1) -#1764 -0) -#1766 -b10 C -1) -#1768 -0) -#1770 -b11 C -1) -#1772 -0) -#1774 -b100 C -1) -#1776 -0) -#1778 -b101 C -1) -#1780 -0) -#1782 -b110 C -1) -#1784 -0) -#1786 -0B -0G -19 -b111 C -1) -#1788 -0) -#1790 -0G -0B -0& -0; -09 -b0 C -1) -#1792 -0) -#1794 -b1 C -0. -b1100 1 -1) -#1796 -0) -#1798 -b10 C -1) -#1800 -0) -#1802 -b11 C -1) -#1804 -0) -#1806 -b100 C -1) -#1808 -0) -#1810 -b101 C -1) -#1812 -0) -#1814 -b110 C -1) -#1816 -0) -#1818 -b11111 F -b1100 @ -0G -1B -19 -b111 C -1) -#1820 -0) -#1822 -0G -b11111 E -1& -1; -b1100 ? -09 -b0 C -1) -#1824 -0) -#1826 -b1 C -1. -1) -#1828 -0) -#1830 -b10 C -1) -#1832 -0) -#1834 -b11 C -1) -#1836 -0) -#1838 -b100 C -1) -#1840 -0) -#1842 -b101 C -1) -#1844 -0) -#1846 -b110 C -1) -#1848 -0) -#1850 -0B -0G -19 -b111 C -1) -#1852 -0) -#1854 -0G -0B -0& -0; -09 -b0 C -1) -#1856 -0) -#1858 -b1 C -0. -b1101 1 -1) -#1860 -0) -#1862 -b10 C -1) -#1864 -0) -#1866 -b11 C -1) -#1868 -0) -#1870 -b100 C -1) -#1872 -0) -#1874 -b101 C -1) -#1876 -0) -#1878 -b110 C -1) -#1880 -0) -#1882 -b111111 F -b1101 @ -0G -1B -19 -b111 C -1) -#1884 -0) -#1886 -0G -b111111 E -1& -1; -1: -b1101 ? -09 -b0 C -1) -#1888 -0) -#1890 -b1 C -1. -1) -#1892 -0) -#1894 -b10 C -1) -#1896 -0) -#1898 -b11 C -1) -#1900 -0) -#1902 -b100 C -1) -#1904 -0) -#1906 -b101 C -1) -#1908 -0) -#1910 -b110 C -1) -#1912 -0) -#1914 -0B -0G -19 -b111 C -1) -#1916 -0) -#1918 -0G -0B -0& -0; -09 -b0 C -1) -#1920 -0) -#1922 -b1 C -0. -b1110 1 -1) -#1924 -0) -#1926 -b10 C -1) -#1928 -0) -#1930 -b11 C -1) -#1932 -0) -#1934 -b100 C -1) -#1936 -0) -#1938 -b101 C -1) -#1940 -0) -#1942 -b110 C -1) -#1944 -0) -#1946 -b1111111 F -b1110 @ -0G -1B -19 -b111 C -1) -#1948 -0) -#1950 -0G -b1111111 E -1& -1; -0: -b1110 ? -09 -b0 C -1) -#1952 -0) -#1954 -b1 C -1. -1) -#1956 -0) -#1958 -b10 C -1) -#1960 -0) -#1962 -b11 C -1) -#1964 -0) -#1966 -b100 C -1) -#1968 -0) -#1970 -b101 C -1) -#1972 -0) -#1974 -b110 C -1) -#1976 -0) -#1978 -0B -0G -19 -b111 C -1) -#1980 -0) -#1982 -0G -0B -0& -0; -09 -b0 C -1) -#1984 -0) -#1986 -b1 C -0. -b1111 1 -1) -#1988 -0) -#1990 -b10 C -1) -#1992 -0) -#1994 -b11 C -1) -#1996 -0) -#1998 -b100 C -1) -#2000 -0) -#2002 -b101 C -1) -#2004 -0) -#2006 -b110 C -1) -#2008 -0) -#2010 -b11111111 F -b1111 @ -0G -1B -19 -b111 C -1) -#2012 -0) -#2014 -0G -b11111111 E -1& -1; -b1111 ? -09 -b0 C -1) -#2016 -0) -#2018 -b1 C -1. -1) -#2020 -0) -#2022 -b10 C -1) -#2024 -0) -#2026 -b11 C -1) -#2028 -0) -#2030 -b100 C -1) -#2032 -0) -#2034 -b101 C -1) -#2036 -0) -#2038 -b110 C -1) -#2040 -0) -#2042 -0B -0G -19 -b111 C -1) -#2044 -0) -#2046 -0G -0B -0& -0; -09 -b0 C -1) -#2048 -0) -#2050 -b1 C -0. -b0 1 -1) -#2052 -0) -#2054 -b10 C -1) -#2056 -0) -#2058 -b11 C -1) -#2060 -0) -#2062 -b100 C -1) -#2064 -0) -#2066 -b101 C -1) -#2068 -0) -#2070 -b110 C -1) -#2072 -0) -#2074 -1K -b111111111 F -b0 @ -1G -1B -19 -b111 C -1) -#2076 -0) -#2078 -0K -1! -1J -b111111111 # -b111111111 6 -b111111111 > -b111111111 E -1$ -1= -1& -1; -b0 ? -09 -b0 C -1) -#2080 -0) -#2082 -b1111111111111 , -b1 C -1. -1/ -1' -b1 0 -1) -#2084 -0) -#2086 -0' -0! -0J -b10 C -1) -#2088 -0) -#2090 -b11 C -1) -#2092 -0) -#2094 -b100 C -1) -#2096 -0) -#2098 -b101 C -1) -#2100 -0) -#2102 -b110 C -1) -#2104 -0) -#2106 -0B -0G -19 -b111 C -1) -#2108 -0) -#2110 -0G -0B -0$ -0= -0& -0; -09 -b0 C -1) -#2112 -0) -#2114 -0G -0B -b1 C -0. -0/ -0( -b1 1 -1) -#2116 -0) -#2118 -b10 C -1) -#2120 -0) -#2122 -b11 C -1) -#2124 -0) -#2126 -b100 C -1) -#2128 -0) -#2130 -b101 C -1) -#2132 -0) -#2134 -b110 C -1) -#2136 -0) -#2138 -b1111111110 F -b1 @ -0G -1B -19 -b111 C -1) -#2140 -0) -#2142 -0G -b1111111110 E -1& -1; -b1 ? -09 -b0 C -1) -#2144 -0) -#2146 -b1 C -1. -1) -#2148 -0) -#2150 -b10 C -1) -#2152 -0) -#2154 -b11 C -1) -#2156 -0) -#2158 -b100 C -1) -#2160 -0) -#2162 -b101 C -1) -#2164 -0) -#2166 -b110 C -1) -#2168 -0) -#2170 -0B -0G -19 -b111 C -1) -#2172 -0) -#2174 -0G -0B -0& -0; -09 -b0 C -1) -#2176 -0) -#2178 -b1 C -0. -b10 1 -1) -#2180 -0) -#2182 -b10 C -1) -#2184 -0) -#2186 -b11 C -1) -#2188 -0) -#2190 -b100 C -1) -#2192 -0) -#2194 -b101 C -1) -#2196 -0) -#2198 -b110 C -1) -#2200 -0) -#2202 -b11111111100 F -b10 @ -0G -1B -19 -b111 C -1) -#2204 -0) -#2206 -0G -b11111111100 E -1& -1; -1: -b10 ? -09 -b0 C -1) -#2208 -0) -#2210 -b1 C -1. -1) -#2212 -0) -#2214 -b10 C -1) -#2216 -0) -#2218 -b11 C -1) -#2220 -0) -#2222 -b100 C -1) -#2224 -0) -#2226 -b101 C -1) -#2228 -0) -#2230 -b110 C -1) -#2232 -0) -#2234 -0B -0G -19 -b111 C -1) -#2236 -0) -#2238 -0G -0B -0& -0; -09 -b0 C -1) -#2240 -0) -#2242 -b1 C -0. -b11 1 -1) -#2244 -0) -#2246 -b10 C -1) -#2248 -0) -#2250 -b11 C -1) -#2252 -0) -#2254 -b100 C -1) -#2256 -0) -#2258 -b101 C -1) -#2260 -0) -#2262 -b110 C -1) -#2264 -0) -#2266 -b111111111000 F -b11 @ -0G -1B -19 -b111 C -1) -#2268 -0) -#2270 -0G -b111111111000 E -1& -1; -0: -b11 ? -09 -b0 C -1) -#2272 -0) -#2274 -b1 C -1. -1) -#2276 -0) -#2278 -b10 C -1) -#2280 -0) -#2282 -b11 C -1) -#2284 -0) -#2286 -b100 C -1) -#2288 -0) -#2290 -b101 C -1) -#2292 -0) -#2294 -b110 C -1) -#2296 -0) -#2298 -0B -0G -19 -b111 C -1) -#2300 -0) -#2302 -0G -0B -0& -0; -09 -b0 C -1) -#2304 -0) -#2306 -0G -0B -b1 C -0. -1( -b100 1 -1) -#2308 -0) -#2310 -b10 C -1) -#2312 -0) -#2314 -b11 C -1) -#2316 -0) -#2318 -b100 C -1) -#2320 -0) -#2322 -b101 C -1) -#2324 -0) -#2326 -b110 C -1) -#2328 -0) -#2330 -b1111111110001 F -b100 @ -0G -1B -19 -b111 C -1) -#2332 -0) -#2334 -0G -b1111111110001 E -1& -1; -b100 ? -09 -b0 C -1) -#2336 -0) -#2338 -b1 C -1. -1) -#2340 -0) -#2342 -b10 C -1) -#2344 -0) -#2346 -b11 C -1) -#2348 -0) -#2350 -b100 C -1) -#2352 -0) -#2354 -b101 C -1) -#2356 -0) -#2358 -b110 C -1) -#2360 -0) -#2362 -0B -0G -19 -b111 C -1) -#2364 -0) -#2366 -0G -0B -0& -0; -09 -b0 C -1) -#2368 -0) -#2370 -b1 C -0. -b101 1 -1) -#2372 -0) -#2374 -b10 C -1) -#2376 -0) -#2378 -b11 C -1) -#2380 -0) -#2382 -b100 C -1) -#2384 -0) -#2386 -b101 C -1) -#2388 -0) -#2390 -b110 C -1) -#2392 -0) -#2394 -b11111111100011 F -b101 @ -0G -1B -19 -b111 C -1) -#2396 -0) -#2398 -0G -b11111111100011 E -1& -1; -b101 ? -09 -b0 C -1) -#2400 -0) -#2402 -b1 C -1. -1) -#2404 -0) -#2406 -b10 C -1) -#2408 -0) -#2410 -b11 C -1) -#2412 -0) -#2414 -b100 C -1) -#2416 -0) -#2418 -b101 C -1) -#2420 -0) -#2422 -b110 C -1) -#2424 -0) -#2426 -0B -0G -19 -b111 C -1) -#2428 -0) -#2430 -0G -0B -0& -0; -09 -b0 C -1) -#2432 -0) -#2434 -b1 C -0. -b110 1 -1) -#2436 -0) -#2438 -b10 C -1) -#2440 -0) -#2442 -b11 C -1) -#2444 -0) -#2446 -b100 C -1) -#2448 -0) -#2450 -b101 C -1) -#2452 -0) -#2454 -b110 C -1) -#2456 -0) -#2458 -b111111111000111 F -b110 @ -0G -1B -19 -b111 C -1) -#2460 -0) -#2462 -0G -b111111111000111 E -1& -1; -b110 ? -09 -b0 C -1) -#2464 -0) -#2466 -b1 C -1. -1) -#2468 -0) -#2470 -b10 C -1) -#2472 -0) -#2474 -b11 C -1) -#2476 -0) -#2478 -b100 C -1) -#2480 -0) -#2482 -b101 C -1) -#2484 -0) -#2486 -b110 C -1) -#2488 -0) -#2490 -0B -0G -19 -b111 C -1) -#2492 -0) -#2494 -0G -0B -0& -0; -09 -b0 C -1) -#2496 -0) -#2498 -b1 C -0. -b111 1 -1) -#2500 -0) -#2502 -b10 C -1) -#2504 -0) -#2506 -b11 C -1) -#2508 -0) -#2510 -b100 C -1) -#2512 -0) -#2514 -b101 C -1) -#2516 -0) -#2518 -b110 C -1) -#2520 -0) -#2522 -b1111111110001111 F -b111 @ -0G -1B -19 -b111 C -1) -#2524 -0) -#2526 -0G -b1111111110001111 E -1& -1; -1: -b111 ? -09 -b0 C -1) -#2528 -0) -#2530 -b1 C -1. -1) -#2532 -0) -#2534 -b10 C -1) -#2536 -0) -#2538 -b11 C -1) -#2540 -0) -#2542 -b100 C -1) -#2544 -0) -#2546 -b101 C -1) -#2548 -0) -#2550 -b110 C -1) -#2552 -0) -#2554 -0B -0G -19 -b111 C -1) -#2556 -0) -#2558 -0G -0B -0& -0; -09 -b0 C -1) -#2560 -0) -#2562 -b1 C -0. -b1000 1 -1) -#2564 -0) -#2566 -b10 C -1) -#2568 -0) -#2570 -b11 C -1) -#2572 -0) -#2574 -b100 C -1) -#2576 -0) -#2578 -b101 C -1) -#2580 -0) -#2582 -b110 C -1) -#2584 -0) -#2586 -b1111111100011111 F -b1000 @ -0G -1B -19 -b111 C -1) -#2588 -0) -#2590 -0G -b1111111100011111 E -1& -1; -b1000 ? -09 -b0 C -1) -#2592 -0) -#2594 -b1 C -1. -1) -#2596 -0) -#2598 -b10 C -1) -#2600 -0) -#2602 -b11 C -1) -#2604 -0) -#2606 -b100 C -1) -#2608 -0) -#2610 -b101 C -1) -#2612 -0) -#2614 -b110 C -1) -#2616 -0) -#2618 -0B -0G -19 -b111 C -1) -#2620 -0) -#2622 -0G -0B -0& -0; -09 -b0 C -1) -#2624 -0) -#2626 -b1 C -0. -b1001 1 -1) -#2628 -0) -#2630 -b10 C -1) -#2632 -0) -#2634 -b11 C -1) -#2636 -0) -#2638 -b100 C -1) -#2640 -0) -#2642 -b101 C -1) -#2644 -0) -#2646 -b110 C -1) -#2648 -0) -#2650 -b1111111000111111 F -b1001 @ -0G -1B -19 -b111 C -1) -#2652 -0) -#2654 -0G -b1111111000111111 E -1& -1; -0: -b1001 ? -09 -b0 C -1) -#2656 -0) -#2658 -b1 C -1. -1) -#2660 -0) -#2662 -b10 C -1) -#2664 -0) -#2666 -b11 C -1) -#2668 -0) -#2670 -b100 C -1) -#2672 -0) -#2674 -b101 C -1) -#2676 -0) -#2678 -b110 C -1) -#2680 -0) -#2682 -0B -0G -19 -b111 C -1) -#2684 -0) -#2686 -0G -0B -0& -0; -09 -b0 C -1) -#2688 -0) -#2690 -b1 C -0. -b1010 1 -1) -#2692 -0) -#2694 -b10 C -1) -#2696 -0) -#2698 -b11 C -1) -#2700 -0) -#2702 -b100 C -1) -#2704 -0) -#2706 -b101 C -1) -#2708 -0) -#2710 -b110 C -1) -#2712 -0) -#2714 -b1111110001111111 F -b1010 @ -0G -1B -19 -b111 C -1) -#2716 -0) -#2718 -0G -b1111110001111111 E -1& -1; -1: -b1010 ? -09 -b0 C -1) -#2720 -0) -#2722 -b1 C -1. -1) -#2724 -0) -#2726 -b10 C -1) -#2728 -0) -#2730 -b11 C -1) -#2732 -0) -#2734 -b100 C -1) -#2736 -0) -#2738 -b101 C -1) -#2740 -0) -#2742 -b110 C -1) -#2744 -0) -#2746 -0B -0G -19 -b111 C -1) -#2748 -0) -#2750 -0G -0B -0& -0; -09 -b0 C -1) -#2752 -0) -#2754 -b1 C -0. -b1011 1 -1) -#2756 -0) -#2758 -b10 C -1) -#2760 -0) -#2762 -b11 C -1) -#2764 -0) -#2766 -b100 C -1) -#2768 -0) -#2770 -b101 C -1) -#2772 -0) -#2774 -b110 C -1) -#2776 -0) -#2778 -b1111100011111111 F -b1011 @ -0G -1B -19 -b111 C -1) -#2780 -0) -#2782 -0G -b1111100011111111 E -1& -1; -0: -b1011 ? -09 -b0 C -1) -#2784 -0) -#2786 -b1 C -1. -1) -#2788 -0) -#2790 -b10 C -1) -#2792 -0) -#2794 -b11 C -1) -#2796 -0) -#2798 -b100 C -1) -#2800 -0) -#2802 -b101 C -1) -#2804 -0) -#2806 -b110 C -1) -#2808 -0) -#2810 -0B -0G -19 -b111 C -1) -#2812 -0) -#2814 -0G -0B -0& -0; -09 -b0 C -1) -#2816 -0) -#2818 -b1 C -0. -b1100 1 -1) -#2820 -0) -#2822 -b10 C -1) -#2824 -0) -#2826 -b11 C -1) -#2828 -0) -#2830 -b100 C -1) -#2832 -0) -#2834 -b101 C -1) -#2836 -0) -#2838 -b110 C -1) -#2840 -0) -#2842 -b1111000111111111 F -b1100 @ -0G -1B -19 -b111 C -1) -#2844 -0) -#2846 -0G -b1111000111111111 E -1& -1; -b1100 ? -09 -b0 C -1) -#2848 -0) -#2850 -b1 C -1. -1) -#2852 -0) -#2854 -b10 C -1) -#2856 -0) -#2858 -b11 C -1) -#2860 -0) -#2862 -b100 C -1) -#2864 -0) -#2866 -b101 C -1) -#2868 -0) -#2870 -b110 C -1) -#2872 -0) -#2874 -0B -0G -19 -b111 C -1) -#2876 -0) -#2878 -0G -0B -0& -0; -09 -b0 C -1) -#2880 -0) -#2882 -b1 C -0. -b1101 1 -1) -#2884 -0) -#2886 -b10 C -1) -#2888 -0) -#2890 -b11 C -1) -#2892 -0) -#2894 -b100 C -1) -#2896 -0) -#2898 -b101 C -1) -#2900 -0) -#2902 -b110 C -1) -#2904 -0) -#2906 -b1110001111111111 F -b1101 @ -0G -1B -19 -b111 C -1) -#2908 -0) -#2910 -0G -b1110001111111111 E -1& -1; -1: -b1101 ? -09 -b0 C -1) -#2912 -0) -#2914 -b1 C -1. -1) -#2916 -0) -#2918 -b10 C -1) -#2920 -0) -#2922 -b11 C -1) -#2924 -0) -#2926 -b100 C -1) -#2928 -0) -#2930 -b101 C -1) -#2932 -0) -#2934 -b110 C -1) -#2936 -0) -#2938 -0B -0G -19 -b111 C -1) -#2940 -0) -#2942 -0G -0B -0& -0; -09 -b0 C -1) -#2944 -0) -#2946 -b1 C -0. -b1110 1 -1) -#2948 -0) -#2950 -b10 C -1) -#2952 -0) -#2954 -b11 C -1) -#2956 -0) -#2958 -b100 C -1) -#2960 -0) -#2962 -b101 C -1) -#2964 -0) -#2966 -b110 C -1) -#2968 -0) -#2970 -b1100011111111111 F -b1110 @ -0G -1B -19 -b111 C -1) -#2972 -0) -#2974 -0G -b1100011111111111 E -1& -1; -0: -b1110 ? -09 -b0 C -1) -#2976 -0) -#2978 -b1 C -1. -1) -#2980 -0) -#2982 -b10 C -1) -#2984 -0) -#2986 -b11 C -1) -#2988 -0) -#2990 -b100 C -1) -#2992 -0) -#2994 -b101 C -1) -#2996 -0) -#2998 -b110 C -1) -#3000 -0) -#3002 -0B -0G -19 -b111 C -1) -#3004 -0) -#3006 -0G -0B -0& -0; -09 -b0 C -1) -#3008 -0) -#3010 -b1 C -0. -b1111 1 -1) -#3012 -0) -#3014 -b10 C -1) -#3016 -0) -#3018 -b11 C -1) -#3020 -0) -#3022 -b100 C -1) -#3024 -0) -#3026 -b101 C -1) -#3028 -0) -#3030 -b110 C -1) -#3032 -0) -#3034 -b1000111111111111 F -b1111 @ -0G -1B -19 -b111 C -1) -#3036 -0) -#3038 -0G -b1000111111111111 E -1& -1; -b1111 ? -09 -b0 C -1) -#3040 -0) -#3042 -b1 C -1. -1) -#3044 -0) -#3046 -b10 C -1) -#3048 -0) -#3050 -b11 C -1) -#3052 -0) -#3054 -b100 C -1) -#3056 -0) -#3058 -b101 C -1) -#3060 -0) -#3062 -b110 C -1) -#3064 -0) -#3066 -0B -0G -19 -b111 C -1) -#3068 -0) -#3070 -0G -0B -0& -0; -09 -b0 C -1) -#3072 -0) -#3074 -b1 C -0. -b0 1 -1) -#3076 -0) -#3078 -b10 C -1) -#3080 -0) -#3082 -b11 C -1) -#3084 -0) -#3086 -b100 C -1) -#3088 -0) -#3090 -b101 C -1) -#3092 -0) -#3094 -b110 C -1) -#3096 -0) -#3098 -1K -b1111111111111 F -b0 @ -1G -1B -19 -b111 C -1) -#3100 -0) -#3102 -0K -1! -1J -b1 " -b1 7 -b1 A -b111111111111 # -b111111111111 6 -b111111111111 > -b1111111111111 E -1$ -1= -1& -1; -b0 ? -09 -b0 C -1) -#3104 -0) -#3106 -b10110111101010 , -b1 C -1. -1/ -1' -b10 0 -1) -#3108 -0) -#3110 -0' -0! -0J -b10 C -1) -#3112 -0) -#3114 -b11 C -1) -#3116 -0) -#3118 -b100 C -1) -#3120 -0) -#3122 -b101 C -1) -#3124 -0) -#3126 -b110 C -1) -#3128 -0) -#3130 -0B -0G -19 -b111 C -1) -#3132 -0) -#3134 -0G -0B -0$ -0= -0& -0; -09 -b0 C -1) -#3136 -0) -#3138 -0G -0B -b1 C -0. -0/ -0( -b1 1 -1) -#3140 -0) -#3142 -b10 C -1) -#3144 -0) -#3146 -b11 C -1) -#3148 -0) -#3150 -b100 C -1) -#3152 -0) -#3154 -b101 C -1) -#3156 -0) -#3158 -b110 C -1) -#3160 -0) -#3162 -b11111111111110 F -b1 @ -0G -1B -19 -b111 C -1) -#3164 -0) -#3166 -0G -b11111111111110 E -1& -1; -b1 ? -09 -b0 C -1) -#3168 -0) -#3170 -b1 C -1. -1) -#3172 -0) -#3174 -b10 C -1) -#3176 -0) -#3178 -b11 C -1) -#3180 -0) -#3182 -b100 C -1) -#3184 -0) -#3186 -b101 C -1) -#3188 -0) -#3190 -b110 C -1) -#3192 -0) -#3194 -0B -0G -19 -b111 C -1) -#3196 -0) -#3198 -0G -0B -0& -0; -09 -b0 C -1) -#3200 -0) -#3202 -b1 C -0. -b10 1 -1) -#3204 -0) -#3206 -b10 C -1) -#3208 -0) -#3210 -b11 C -1) -#3212 -0) -#3214 -b100 C -1) -#3216 -0) -#3218 -b101 C -1) -#3220 -0) -#3222 -b110 C -1) -#3224 -0) -#3226 -b111111111111100 F -b10 @ -0G -1B -19 -b111 C -1) -#3228 -0) -#3230 -0G -b111111111111100 E -1& -1; -1: -b10 ? -09 -b0 C -1) -#3232 -0) -#3234 -b1 C -1. -1) -#3236 -0) -#3238 -b10 C -1) -#3240 -0) -#3242 -b11 C -1) -#3244 -0) -#3246 -b100 C -1) -#3248 -0) -#3250 -b101 C -1) -#3252 -0) -#3254 -b110 C -1) -#3256 -0) -#3258 -0B -0G -19 -b111 C -1) -#3260 -0) -#3262 -0G -0B -0& -0; -09 -b0 C -1) -#3264 -0) -#3266 -0G -0B -b1 C -0. -1( -b11 1 -1) -#3268 -0) -#3270 -b10 C -1) -#3272 -0) -#3274 -b11 C -1) -#3276 -0) -#3278 -b100 C -1) -#3280 -0) -#3282 -b101 C -1) -#3284 -0) -#3286 -b110 C -1) -#3288 -0) -#3290 -b1111111111111001 F -b11 @ -0G -1B -19 -b111 C -1) -#3292 -0) -#3294 -0G -b1111111111111001 E -1& -1; -0: -b11 ? -09 -b0 C -1) -#3296 -0) -#3298 -b1 C -1. -1) -#3300 -0) -#3302 -b10 C -1) -#3304 -0) -#3306 -b11 C -1) -#3308 -0) -#3310 -b100 C -1) -#3312 -0) -#3314 -b101 C -1) -#3316 -0) -#3318 -b110 C -1) -#3320 -0) -#3322 -0B -0G -19 -b111 C -1) -#3324 -0) -#3326 -0G -0B -0& -0; -09 -b0 C -1) -#3328 -0) -#3330 -0G -0B -b1 C -0. -0( -b100 1 -1) -#3332 -0) -#3334 -b10 C -1) -#3336 -0) -#3338 -b11 C -1) -#3340 -0) -#3342 -b100 C -1) -#3344 -0) -#3346 -b101 C -1) -#3348 -0) -#3350 -b110 C -1) -#3352 -0) -#3354 -b1111111111110010 F -b100 @ -0G -1B -19 -b111 C -1) -#3356 -0) -#3358 -0G -b1111111111110010 E -1& -1; -b100 ? -09 -b0 C -1) -#3360 -0) -#3362 -b1 C -1. -1) -#3364 -0) -#3366 -b10 C -1) -#3368 -0) -#3370 -b11 C -1) -#3372 -0) -#3374 -b100 C -1) -#3376 -0) -#3378 -b101 C -1) -#3380 -0) -#3382 -b110 C -1) -#3384 -0) -#3386 -0B -0G -19 -b111 C -1) -#3388 -0) -#3390 -0G -0B -0& -0; -09 -b0 C -1) -#3392 -0) -#3394 -0G -0B -b1 C -0. -1( -b101 1 -1) -#3396 -0) -#3398 -b10 C -1) -#3400 -0) -#3402 -b11 C -1) -#3404 -0) -#3406 -b100 C -1) -#3408 -0) -#3410 -b101 C -1) -#3412 -0) -#3414 -b110 C -1) -#3416 -0) -#3418 -b1111111111100101 F -b101 @ -0G -1B -19 -b111 C -1) -#3420 -0) -#3422 -0G -b1111111111100101 E -1& -1; -b101 ? -09 -b0 C -1) -#3424 -0) -#3426 -b1 C -1. -1) -#3428 -0) -#3430 -b10 C -1) -#3432 -0) -#3434 -b11 C -1) -#3436 -0) -#3438 -b100 C -1) -#3440 -0) -#3442 -b101 C -1) -#3444 -0) -#3446 -b110 C -1) -#3448 -0) -#3450 -0B -0G -19 -b111 C -1) -#3452 -0) -#3454 -0G -0B -0& -0; -09 -b0 C -1) -#3456 -0) -#3458 -b1 C -0. -b110 1 -1) -#3460 -0) -#3462 -b10 C -1) -#3464 -0) -#3466 -b11 C -1) -#3468 -0) -#3470 -b100 C -1) -#3472 -0) -#3474 -b101 C -1) -#3476 -0) -#3478 -b110 C -1) -#3480 -0) -#3482 -b1111111111001011 F -b110 @ -0G -1B -19 -b111 C -1) -#3484 -0) -#3486 -0G -b1111111111001011 E -1& -1; -b110 ? -09 -b0 C -1) -#3488 -0) -#3490 -b1 C -1. -1) -#3492 -0) -#3494 -b10 C -1) -#3496 -0) -#3498 -b11 C -1) -#3500 -0) -#3502 -b100 C -1) -#3504 -0) -#3506 -b101 C -1) -#3508 -0) -#3510 -b110 C -1) -#3512 -0) -#3514 -0B -0G -19 -b111 C -1) -#3516 -0) -#3518 -0G -0B -0& -0; -09 -b0 C -1) -#3520 -0) -#3522 -0G -0B -b1 C -0. -0( -b111 1 -1) -#3524 -0) -#3526 -b10 C -1) -#3528 -0) -#3530 -b11 C -1) -#3532 -0) -#3534 -b100 C -1) -#3536 -0) -#3538 -b101 C -1) -#3540 -0) -#3542 -b110 C -1) -#3544 -0) -#3546 -b1111111110010110 F -b111 @ -0G -1B -19 -b111 C -1) -#3548 -0) -#3550 -0G -b1111111110010110 E -1& -1; -1: -b111 ? -09 -b0 C -1) -#3552 -0) -#3554 -b1 C -1. -1) -#3556 -0) -#3558 -b10 C -1) -#3560 -0) -#3562 -b11 C -1) -#3564 -0) -#3566 -b100 C -1) -#3568 -0) -#3570 -b101 C -1) -#3572 -0) -#3574 -b110 C -1) -#3576 -0) -#3578 -0B -0G -19 -b111 C -1) -#3580 -0) -#3582 -0G -0B -0& -0; -09 -b0 C -1) -#3584 -0) -#3586 -0G -0B -b1 C -0. -1( -b1000 1 -1) -#3588 -0) -#3590 -b10 C -1) -#3592 -0) -#3594 -b11 C -1) -#3596 -0) -#3598 -b100 C -1) -#3600 -0) -#3602 -b101 C -1) -#3604 -0) -#3606 -b110 C -1) -#3608 -0) -#3610 -b1111111100101101 F -b1000 @ -0G -1B -19 -b111 C -1) -#3612 -0) -#3614 -0G -b1111111100101101 E -1& -1; -b1000 ? -09 -b0 C -1) -#3616 -0) -#3618 -b1 C -1. -1) -#3620 -0) -#3622 -b10 C -1) -#3624 -0) -#3626 -b11 C -1) -#3628 -0) -#3630 -b100 C -1) -#3632 -0) -#3634 -b101 C -1) -#3636 -0) -#3638 -b110 C -1) -#3640 -0) -#3642 -0B -0G -19 -b111 C -1) -#3644 -0) -#3646 -0G -0B -0& -0; -09 -b0 C -1) -#3648 -0) -#3650 -b1 C -0. -b1001 1 -1) -#3652 -0) -#3654 -b10 C -1) -#3656 -0) -#3658 -b11 C -1) -#3660 -0) -#3662 -b100 C -1) -#3664 -0) -#3666 -b101 C -1) -#3668 -0) -#3670 -b110 C -1) -#3672 -0) -#3674 -b1111111001011011 F -b1001 @ -0G -1B -19 -b111 C -1) -#3676 -0) -#3678 -0G -b1111111001011011 E -1& -1; -0: -b1001 ? -09 -b0 C -1) -#3680 -0) -#3682 -b1 C -1. -1) -#3684 -0) -#3686 -b10 C -1) -#3688 -0) -#3690 -b11 C -1) -#3692 -0) -#3694 -b100 C -1) -#3696 -0) -#3698 -b101 C -1) -#3700 -0) -#3702 -b110 C -1) -#3704 -0) -#3706 -0B -0G -19 -b111 C -1) -#3708 -0) -#3710 -0G -0B -0& -0; -09 -b0 C -1) -#3712 -0) -#3714 -b1 C -0. -b1010 1 -1) -#3716 -0) -#3718 -b10 C -1) -#3720 -0) -#3722 -b11 C -1) -#3724 -0) -#3726 -b100 C -1) -#3728 -0) -#3730 -b101 C -1) -#3732 -0) -#3734 -b110 C -1) -#3736 -0) -#3738 -b1111110010110111 F -b1010 @ -0G -1B -19 -b111 C -1) -#3740 -0) -#3742 -0G -b1111110010110111 E -1& -1; -1: -b1010 ? -09 -b0 C -1) -#3744 -0) -#3746 -b1 C -1. -1) -#3748 -0) -#3750 -b10 C -1) -#3752 -0) -#3754 -b11 C -1) -#3756 -0) -#3758 -b100 C -1) -#3760 -0) -#3762 -b101 C -1) -#3764 -0) -#3766 -b110 C -1) -#3768 -0) -#3770 -0B -0G -19 -b111 C -1) -#3772 -0) -#3774 -0G -0B -0& -0; -09 -b0 C -1) -#3776 -0) -#3778 -b1 C -0. -b1011 1 -1) -#3780 -0) -#3782 -b10 C -1) -#3784 -0) -#3786 -b11 C -1) -#3788 -0) -#3790 -b100 C -1) -#3792 -0) -#3794 -b101 C -1) -#3796 -0) -#3798 -b110 C -1) -#3800 -0) -#3802 -b1111100101101111 F -b1011 @ -0G -1B -19 -b111 C -1) -#3804 -0) -#3806 -0G -b1111100101101111 E -1& -1; -0: -b1011 ? -09 -b0 C -1) -#3808 -0) -#3810 -b1 C -1. -1) -#3812 -0) -#3814 -b10 C -1) -#3816 -0) -#3818 -b11 C -1) -#3820 -0) -#3822 -b100 C -1) -#3824 -0) -#3826 -b101 C -1) -#3828 -0) -#3830 -b110 C -1) -#3832 -0) -#3834 -0B -0G -19 -b111 C -1) -#3836 -0) -#3838 -0G -0B -0& -0; -09 -b0 C -1) -#3840 -0) -#3842 -0G -0B -b1 C -0. -0( -b1100 1 -1) -#3844 -0) -#3846 -b10 C -1) -#3848 -0) -#3850 -b11 C -1) -#3852 -0) -#3854 -b100 C -1) -#3856 -0) -#3858 -b101 C -1) -#3860 -0) -#3862 -b110 C -1) -#3864 -0) -#3866 -b1111001011011110 F -b1100 @ -0G -1B -19 -b111 C -1) -#3868 -0) -#3870 -0G -b1111001011011110 E -1& -1; -b1100 ? -09 -b0 C -1) -#3872 -0) -#3874 -b1 C -1. -1) -#3876 -0) -#3878 -b10 C -1) -#3880 -0) -#3882 -b11 C -1) -#3884 -0) -#3886 -b100 C -1) -#3888 -0) -#3890 -b101 C -1) -#3892 -0) -#3894 -b110 C -1) -#3896 -0) -#3898 -0B -0G -19 -b111 C -1) -#3900 -0) -#3902 -0G -0B -0& -0; -09 -b0 C -1) -#3904 -0) -#3906 -0G -0B -b1 C -0. -1( -b1101 1 -1) -#3908 -0) -#3910 -b10 C -1) -#3912 -0) -#3914 -b11 C -1) -#3916 -0) -#3918 -b100 C -1) -#3920 -0) -#3922 -b101 C -1) -#3924 -0) -#3926 -b110 C -1) -#3928 -0) -#3930 -b1110010110111101 F -b1101 @ -0G -1B -19 -b111 C -1) -#3932 -0) -#3934 -0G -b1110010110111101 E -1& -1; -1: -b1101 ? -09 -b0 C -1) -#3936 -0) -#3938 -b1 C -1. -1) -#3940 -0) -#3942 -b10 C -1) -#3944 -0) -#3946 -b11 C -1) -#3948 -0) -#3950 -b100 C -1) -#3952 -0) -#3954 -b101 C -1) -#3956 -0) -#3958 -b110 C -1) -#3960 -0) -#3962 -0B -0G -19 -b111 C -1) -#3964 -0) -#3966 -0G -0B -0& -0; -09 -b0 C -1) -#3968 -0) -#3970 -0G -0B -b1 C -0. -0( -b1110 1 -1) -#3972 -0) -#3974 -b10 C -1) -#3976 -0) -#3978 -b11 C -1) -#3980 -0) -#3982 -b100 C -1) -#3984 -0) -#3986 -b101 C -1) -#3988 -0) -#3990 -b110 C -1) -#3992 -0) -#3994 -b1100101101111010 F -b1110 @ -0G -1B -19 -b111 C -1) -#3996 -0) -#3998 -0G -b1100101101111010 E -1& -1; -0: -b1110 ? -09 -b0 C -1) -#4000 -0) -#4002 -b1 C -1. -1) -#4004 -0) -#4006 -b10 C -1) -#4008 -0) -#4010 -b11 C -1) -#4012 -0) -#4014 -b100 C -1) -#4016 -0) -#4018 -b101 C -1) -#4020 -0) -#4022 -b110 C -1) -#4024 -0) -#4026 -0B -0G -19 -b111 C -1) -#4028 -0) -#4030 -0G -0B -0& -0; -09 -b0 C -1) -#4032 -0) -#4034 -0G -0B -b1 C -0. -1( -b1111 1 -1) -#4036 -0) -#4038 -b10 C -1) -#4040 -0) -#4042 -b11 C -1) -#4044 -0) -#4046 -b100 C -1) -#4048 -0) -#4050 -b101 C -1) -#4052 -0) -#4054 -b110 C -1) -#4056 -0) -#4058 -b1001011011110101 F -b1111 @ -0G -1B -19 -b111 C -1) -#4060 -0) -#4062 -0G -b1001011011110101 E -1& -1; -b1111 ? -09 -b0 C -1) -#4064 -0) -#4066 -b1 C -1. -1) -#4068 -0) -#4070 -b10 C -1) -#4072 -0) -#4074 -b11 C -1) -#4076 -0) -#4078 -b100 C -1) -#4080 -0) -#4082 -b101 C -1) -#4084 -0) -#4086 -b110 C -1) -#4088 -0) -#4090 -0B -0G -19 -b111 C -1) -#4092 -0) -#4094 -0G -0B -0& -0; -09 -b0 C -1) -#4096 -0) -#4098 -0G -0B -b1 C -0. -0( -b0 1 -1) -#4100 -0) -#4102 -b10 C -1) -#4104 -0) -#4106 -b11 C -1) -#4108 -0) -#4110 -b100 C -1) -#4112 -0) -#4114 -b101 C -1) -#4116 -0) -#4118 -b110 C -1) -#4120 -0) -#4122 -1K -b10110111101010 F -b0 @ -1G -1B -19 -b111 C -1) -#4124 -0) -#4126 -0K -1! -1J -b10 " -b10 7 -b10 A -b110111101010 # -b110111101010 6 -b110111101010 > -b10110111101010 E -1$ -1= -1& -1; -b0 ? -09 -b0 C -1) -#4128 -0) -#4130 -b11110010101111 , -b1 C -1. -1/ -1' -b11 0 -1) -#4132 -0) -#4134 -0' -0! -0J -b10 C -1) -#4136 -0) -#4138 -b11 C -1) -#4140 -0) -#4142 -b100 C -1) -#4144 -0) -#4146 -b101 C -1) -#4148 -0) -#4150 -b110 C -1) -#4152 -0) -#4154 -0B -0G -19 -b111 C -1) -#4156 -0) -#4158 -0G -0B -0$ -0= -0& -0; -09 -b0 C -1) -#4160 -0) -#4162 -b1 C -0. -0/ -b1 1 -1) -#4164 -0) -#4166 -b10 C -1) -#4168 -0) -#4170 -b11 C -1) -#4172 -0) -#4174 -b100 C -1) -#4176 -0) -#4178 -b101 C -1) -#4180 -0) -#4182 -b110 C -1) -#4184 -0) -#4186 -b101101111010100 F -b1 @ -0G -1B -19 -b111 C -1) -#4188 -0) -#4190 -0G -b101101111010100 E -1& -1; -b1 ? -09 -b0 C -1) -#4192 -0) -#4194 -b1 C -1. -1) -#4196 -0) -#4198 -b10 C -1) -#4200 -0) -#4202 -b11 C -1) -#4204 -0) -#4206 -b100 C -1) -#4208 -0) -#4210 -b101 C -1) -#4212 -0) -#4214 -b110 C -1) -#4216 -0) -#4218 -0B -0G -19 -b111 C -1) -#4220 -0) -#4222 -0G -0B -0& -0; -09 -b0 C -1) -#4224 -0) -#4226 -b1 C -0. -b10 1 -1) -#4228 -0) -#4230 -b10 C -1) -#4232 -0) -#4234 -b11 C -1) -#4236 -0) -#4238 -b100 C -1) -#4240 -0) -#4242 -b101 C -1) -#4244 -0) -#4246 -b110 C -1) -#4248 -0) -#4250 -b1011011110101000 F -b10 @ -0G -1B -19 -b111 C -1) -#4252 -0) -#4254 -0G -b1011011110101000 E -1& -1; -1: -b10 ? -09 -b0 C -1) -#4256 -0) -#4258 -b1 C -1. -1) -#4260 -0) -#4262 -b10 C -1) -#4264 -0) -#4266 -b11 C -1) -#4268 -0) -#4270 -b100 C -1) -#4272 -0) -#4274 -b101 C -1) -#4276 -0) -#4278 -b110 C -1) -#4280 -0) -#4282 -0B -0G -19 -b111 C -1) -#4284 -0) -#4286 -0G -0B -0& -0; -09 -b0 C -1) -#4288 -0) -#4290 -0G -0B -b1 C -0. -1( -b11 1 -1) -#4292 -0) -#4294 -b10 C -1) -#4296 -0) -#4298 -b11 C -1) -#4300 -0) -#4302 -b100 C -1) -#4304 -0) -#4306 -b101 C -1) -#4308 -0) -#4310 -b110 C -1) -#4312 -0) -#4314 -b110111101010001 F -b11 @ -0G -1B -19 -b111 C -1) -#4316 -0) -#4318 -0G -b110111101010001 E -1& -1; -0: -b11 ? -09 -b0 C -1) -#4320 -0) -#4322 -b1 C -1. -1) -#4324 -0) -#4326 -b10 C -1) -#4328 -0) -#4330 -b11 C -1) -#4332 -0) -#4334 -b100 C -1) -#4336 -0) -#4338 -b101 C -1) -#4340 -0) -#4342 -b110 C -1) -#4344 -0) -#4346 -0B -0G -19 -b111 C -1) -#4348 -0) -#4350 -0G -0B -0& -0; -09 -b0 C -1) -#4352 -0) -#4354 -b1 C -0. -b100 1 -1) -#4356 -0) -#4358 -b10 C -1) -#4360 -0) -#4362 -b11 C -1) -#4364 -0) -#4366 -b100 C -1) -#4368 -0) -#4370 -b101 C -1) -#4372 -0) -#4374 -b110 C -1) -#4376 -0) -#4378 -b1101111010100011 F -b100 @ -0G -1B -19 -b111 C -1) -#4380 -0) -#4382 -0G -b1101111010100011 E -1& -1; -b100 ? -09 -b0 C -1) -#4384 -0) -#4386 -b1 C -1. -1) -#4388 -0) -#4390 -b10 C -1) -#4392 -0) -#4394 -b11 C -1) -#4396 -0) -#4398 -b100 C -1) -#4400 -0) -#4402 -b101 C -1) -#4404 -0) -#4406 -b110 C -1) -#4408 -0) -#4410 -0B -0G -19 -b111 C -1) -#4412 -0) -#4414 -0G -0B -0& -0; -09 -b0 C -1) -#4416 -0) -#4418 -b1 C -0. -b101 1 -1) -#4420 -0) -#4422 -b10 C -1) -#4424 -0) -#4426 -b11 C -1) -#4428 -0) -#4430 -b100 C -1) -#4432 -0) -#4434 -b101 C -1) -#4436 -0) -#4438 -b110 C -1) -#4440 -0) -#4442 -b1011110101000111 F -b101 @ -0G -1B -19 -b111 C -1) -#4444 -0) -#4446 -0G -b1011110101000111 E -1& -1; -b101 ? -09 -b0 C -1) -#4448 -0) -#4450 -b1 C -1. -1) -#4452 -0) -#4454 -b10 C -1) -#4456 -0) -#4458 -b11 C -1) -#4460 -0) -#4462 -b100 C -1) -#4464 -0) -#4466 -b101 C -1) -#4468 -0) -#4470 -b110 C -1) -#4472 -0) -#4474 -0B -0G -19 -b111 C -1) -#4476 -0) -#4478 -0G -0B -0& -0; -09 -b0 C -1) -#4480 -0) -#4482 -b1 C -0. -b110 1 -1) -#4484 -0) -#4486 -b10 C -1) -#4488 -0) -#4490 -b11 C -1) -#4492 -0) -#4494 -b100 C -1) -#4496 -0) -#4498 -b101 C -1) -#4500 -0) -#4502 -b110 C -1) -#4504 -0) -#4506 -b111101010001111 F -b110 @ -0G -1B -19 -b111 C -1) -#4508 -0) -#4510 -0G -b111101010001111 E -1& -1; -b110 ? -09 -b0 C -1) -#4512 -0) -#4514 -b1 C -1. -1) -#4516 -0) -#4518 -b10 C -1) -#4520 -0) -#4522 -b11 C -1) -#4524 -0) -#4526 -b100 C -1) -#4528 -0) -#4530 -b101 C -1) -#4532 -0) -#4534 -b110 C -1) -#4536 -0) -#4538 -0B -0G -19 -b111 C -1) -#4540 -0) -#4542 -0G -0B -0& -0; -09 -b0 C -1) -#4544 -0) -#4546 -0G -0B -b1 C -0. -0( -b111 1 -1) -#4548 -0) -#4550 -b10 C -1) -#4552 -0) -#4554 -b11 C -1) -#4556 -0) -#4558 -b100 C -1) -#4560 -0) -#4562 -b101 C -1) -#4564 -0) -#4566 -b110 C -1) -#4568 -0) -#4570 -b1111010100011110 F -b111 @ -0G -1B -19 -b111 C -1) -#4572 -0) -#4574 -0G -b1111010100011110 E -1& -1; -1: -b111 ? -09 -b0 C -1) -#4576 -0) -#4578 -b1 C -1. -1) -#4580 -0) -#4582 -b10 C -1) -#4584 -0) -#4586 -b11 C -1) -#4588 -0) -#4590 -b100 C -1) -#4592 -0) -#4594 -b101 C -1) -#4596 -0) -#4598 -b110 C -1) -#4600 -0) -#4602 -0B -0G -19 -b111 C -1) -#4604 -0) -#4606 -0G -0B -0& -0; -09 -b0 C -1) -#4608 -0) -#4610 -b1 C -0. -b1000 1 -1) -#4612 -0) -#4614 -b10 C -1) -#4616 -0) -#4618 -b11 C -1) -#4620 -0) -#4622 -b100 C -1) -#4624 -0) -#4626 -b101 C -1) -#4628 -0) -#4630 -b110 C -1) -#4632 -0) -#4634 -b1110101000111100 F -b1000 @ -0G -1B -19 -b111 C -1) -#4636 -0) -#4638 -0G -b1110101000111100 E -1& -1; -b1000 ? -09 -b0 C -1) -#4640 -0) -#4642 -b1 C -1. -1) -#4644 -0) -#4646 -b10 C -1) -#4648 -0) -#4650 -b11 C -1) -#4652 -0) -#4654 -b100 C -1) -#4656 -0) -#4658 -b101 C -1) -#4660 -0) -#4662 -b110 C -1) -#4664 -0) -#4666 -0B -0G -19 -b111 C -1) -#4668 -0) -#4670 -0G -0B -0& -0; -09 -b0 C -1) -#4672 -0) -#4674 -0G -0B -b1 C -0. -1( -b1001 1 -1) -#4676 -0) -#4678 -b10 C -1) -#4680 -0) -#4682 -b11 C -1) -#4684 -0) -#4686 -b100 C -1) -#4688 -0) -#4690 -b101 C -1) -#4692 -0) -#4694 -b110 C -1) -#4696 -0) -#4698 -b1101010001111001 F -b1001 @ -0G -1B -19 -b111 C -1) -#4700 -0) -#4702 -0G -b1101010001111001 E -1& -1; -0: -b1001 ? -09 -b0 C -1) -#4704 -0) -#4706 -b1 C -1. -1) -#4708 -0) -#4710 -b10 C -1) -#4712 -0) -#4714 -b11 C -1) -#4716 -0) -#4718 -b100 C -1) -#4720 -0) -#4722 -b101 C -1) -#4724 -0) -#4726 -b110 C -1) -#4728 -0) -#4730 -0B -0G -19 -b111 C -1) -#4732 -0) -#4734 -0G -0B -0& -0; -09 -b0 C -1) -#4736 -0) -#4738 -0G -0B -b1 C -0. -0( -b1010 1 -1) -#4740 -0) -#4742 -b10 C -1) -#4744 -0) -#4746 -b11 C -1) -#4748 -0) -#4750 -b100 C -1) -#4752 -0) -#4754 -b101 C -1) -#4756 -0) -#4758 -b110 C -1) -#4760 -0) -#4762 -b1010100011110010 F -b1010 @ -0G -1B -19 -b111 C -1) -#4764 -0) -#4766 -0G -b1010100011110010 E -1& -1; -1: -b1010 ? -09 -b0 C -1) -#4768 -0) -#4770 -b1 C -1. -1) -#4772 -0) -#4774 -b10 C -1) -#4776 -0) -#4778 -b11 C -1) -#4780 -0) -#4782 -b100 C -1) -#4784 -0) -#4786 -b101 C -1) -#4788 -0) -#4790 -b110 C -1) -#4792 -0) -#4794 -0B -0G -19 -b111 C -1) -#4796 -0) -#4798 -0G -0B -0& -0; -09 -b0 C -1) -#4800 -0) -#4802 -0G -0B -b1 C -0. -1( -b1011 1 -1) -#4804 -0) -#4806 -b10 C -1) -#4808 -0) -#4810 -b11 C -1) -#4812 -0) -#4814 -b100 C -1) -#4816 -0) -#4818 -b101 C -1) -#4820 -0) -#4822 -b110 C -1) -#4824 -0) -#4826 -b101000111100101 F -b1011 @ -0G -1B -19 -b111 C -1) -#4828 -0) -#4830 -0G -b101000111100101 E -1& -1; -0: -b1011 ? -09 -b0 C -1) -#4832 -0) -#4834 -b1 C -1. -1) -#4836 -0) -#4838 -b10 C -1) -#4840 -0) -#4842 -b11 C -1) -#4844 -0) -#4846 -b100 C -1) -#4848 -0) -#4850 -b101 C -1) -#4852 -0) -#4854 -b110 C -1) -#4856 -0) -#4858 -0B -0G -19 -b111 C -1) -#4860 -0) -#4862 -0G -0B -0& -0; -09 -b0 C -1) -#4864 -0) -#4866 -0G -0B -b1 C -0. -0( -b1100 1 -1) -#4868 -0) -#4870 -b10 C -1) -#4872 -0) -#4874 -b11 C -1) -#4876 -0) -#4878 -b100 C -1) -#4880 -0) -#4882 -b101 C -1) -#4884 -0) -#4886 -b110 C -1) -#4888 -0) -#4890 -b1010001111001010 F -b1100 @ -0G -1B -19 -b111 C -1) -#4892 -0) -#4894 -0G -b1010001111001010 E -1& -1; -b1100 ? -09 -b0 C -1) -#4896 -0) -#4898 -b1 C -1. -1) -#4900 -0) -#4902 -b10 C -1) -#4904 -0) -#4906 -b11 C -1) -#4908 -0) -#4910 -b100 C -1) -#4912 -0) -#4914 -b101 C -1) -#4916 -0) -#4918 -b110 C -1) -#4920 -0) -#4922 -0B -0G -19 -b111 C -1) -#4924 -0) -#4926 -0G -0B -0& -0; -09 -b0 C -1) -#4928 -0) -#4930 -0G -0B -b1 C -0. -1( -b1101 1 -1) -#4932 -0) -#4934 -b10 C -1) -#4936 -0) -#4938 -b11 C -1) -#4940 -0) -#4942 -b100 C -1) -#4944 -0) -#4946 -b101 C -1) -#4948 -0) -#4950 -b110 C -1) -#4952 -0) -#4954 -b100011110010101 F -b1101 @ -0G -1B -19 -b111 C -1) -#4956 -0) -#4958 -0G -b100011110010101 E -1& -1; -1: -b1101 ? -09 -b0 C -1) -#4960 -0) -#4962 -b1 C -1. -1) -#4964 -0) -#4966 -b10 C -1) -#4968 -0) -#4970 -b11 C -1) -#4972 -0) -#4974 -b100 C -1) -#4976 -0) -#4978 -b101 C -1) -#4980 -0) -#4982 -b110 C -1) -#4984 -0) -#4986 -0B -0G -19 -b111 C -1) -#4988 -0) -#4990 -0G -0B -0& -0; -09 -b0 C -1) -#4992 -0) -#4994 -b1 C -0. -b1110 1 -1) -#4996 -0) -#4998 -b10 C -1) -#5000 -0) -#5002 -b11 C -1) -#5004 -0) -#5006 -b100 C -1) -#5008 -0) -#5010 -b101 C -1) -#5012 -0) -#5014 -b110 C -1) -#5016 -0) -#5018 -b1000111100101011 F -b1110 @ -0G -1B -19 -b111 C -1) -#5020 -0) -#5022 -0G -b1000111100101011 E -1& -1; -0: -b1110 ? -09 -b0 C -1) -#5024 -0) -#5026 -b1 C -1. -1) -#5028 -0) -#5030 -b10 C -1) -#5032 -0) -#5034 -b11 C -1) -#5036 -0) -#5038 -b100 C -1) -#5040 -0) -#5042 -b101 C -1) -#5044 -0) -#5046 -b110 C -1) -#5048 -0) -#5050 -0B -0G -19 -b111 C -1) -#5052 -0) -#5054 -0G -0B -0& -0; -09 -b0 C -1) -#5056 -0) -#5058 -b1 C -0. -b1111 1 -1) -#5060 -0) -#5062 -b10 C -1) -#5064 -0) -#5066 -b11 C -1) -#5068 -0) -#5070 -b100 C -1) -#5072 -0) -#5074 -b101 C -1) -#5076 -0) -#5078 -b110 C -1) -#5080 -0) -#5082 -b1111001010111 F -b1111 @ -0G -1B -19 -b111 C -1) -#5084 -0) -#5086 -0G -b1111001010111 E -1& -1; -b1111 ? -09 -b0 C -1) -#5088 -0) -#5090 -b1 C -1. -1) -#5092 -0) -#5094 -b10 C -1) -#5096 -0) -#5098 -b11 C -1) -#5100 -0) -#5102 -b100 C -1) -#5104 -0) -#5106 -b101 C -1) -#5108 -0) -#5110 -b110 C -1) -#5112 -0) -#5114 -0B -0G -19 -b111 C -1) -#5116 -0) -#5118 -0G -0B -0& -0; -09 -b0 C -1) -#5120 -0) -#5122 -b1 C -0. -b0 1 -1) -#5124 -0) -#5126 -b10 C -1) -#5128 -0) -#5130 -b11 C -1) -#5132 -0) -#5134 -b100 C -1) -#5136 -0) -#5138 -b101 C -1) -#5140 -0) -#5142 -b110 C -1) -#5144 -0) -#5146 -1K -b11110010101111 F -b0 @ -1G -1B -19 -b111 C -1) -#5148 -0) -#5150 -0K -1! -1J -b11 " -b11 7 -b11 A -b110010101111 # -b110010101111 6 -b110010101111 > -b11110010101111 E -1$ -1= -1& -1; -b0 ? -09 -b0 C -1) -#5152 -0) -#5154 -b111111111 , -b1 C -1' -b100 0 -1)